Annotation of embedaddon/rsync/testsuite/unsafe-byname.test, revision 1.1

1.1     ! misho       1: #! /bin/sh
        !             2: 
        !             3: # Copyright (C) 2002 by Martin Pool
        !             4: 
        !             5: # Call directly into unsafe_symlink and test its handling of various filenames
        !             6: 
        !             7: . "$suitedir/rsync.fns"
        !             8: 
        !             9: test_unsafe() {
        !            10:     # $1 is the target of a symlink
        !            11:     # $2 is the directory we're copying
        !            12:     # $3 is the expected outcome: "safe" if the link lies within $2,
        !            13:     # or "unsafe" otherwise
        !            14: 
        !            15:     result=`"$TOOLDIR/t_unsafe" "$1" "$2"` || test_fail "Failed to check $1 $2"
        !            16:     if [ "$result" != "$3" ]
        !            17:     then
        !            18:        test_fail "t_unsafe $1 $2 returned \"$result\", expected \"$3\""
        !            19:     fi
        !            20: }
        !            21: 
        !            22: test_unsafe file                       from                            safe
        !            23: test_unsafe dir/file                   from                            safe
        !            24: test_unsafe dir/./file                 from                            safe
        !            25: test_unsafe dir/.                      from                            safe
        !            26: test_unsafe dir/                       from                            safe
        !            27: 
        !            28: test_unsafe /etc/passwd                from                            unsafe
        !            29: test_unsafe //../etc/passwd            from                            unsafe
        !            30: test_unsafe //./etc/passwd             from                            unsafe
        !            31: 
        !            32: test_unsafe ./foo                      from                            safe
        !            33: test_unsafe ../foo                     from                            unsafe
        !            34: test_unsafe ./../foo                   from                            unsafe
        !            35: test_unsafe .//../foo                  from                            unsafe
        !            36: test_unsafe ./../foo                   from/..                         unsafe
        !            37: test_unsafe ../dest                    from/dir                        safe
        !            38: test_unsafe ../../dest                 from//dir                       unsafe
        !            39: test_unsafe ..//../dest                from/dir                        unsafe
        !            40: 
        !            41: test_unsafe ..                         from/file                       safe
        !            42: test_unsafe ../..                      from/file                       unsafe
        !            43: test_unsafe ..//..                     from//file                      unsafe
        !            44: test_unsafe dir/..                     from                            safe
        !            45: test_unsafe dir/../..                  from                            unsafe
        !            46: test_unsafe dir/..//..                 from                            unsafe
        !            47: 
        !            48: test_unsafe ''                         from                            unsafe
        !            49: 
        !            50: # Based on tests from unsafe-links by Vladimír Michl
        !            51: test_unsafe ../../unsafe/unsafefile    from/safe                       unsafe
        !            52: test_unsafe ..//../unsafe/unsafefile   from/safe                       unsafe
        !            53: test_unsafe ../files/file1             from/safe                       safe
        !            54: 
        !            55: test_unsafe ../../unsafe/unsafefile    safe                            unsafe
        !            56: test_unsafe ../files/file1             safe                            unsafe
        !            57: 
        !            58: test_unsafe ../../unsafe/unsafefile    `pwd`/from/safe                 safe
        !            59: test_unsafe ../files/file1             `pwd`/from/safe                 safe

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>