X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/96557d23a3577ff826132524c66b2f84ce9b2e73..4eea7793ea7f3a2b336aa68dc778ce7f9ee5cdbb:/testsuite/unsafe-byname.test diff --git a/testsuite/unsafe-byname.test b/testsuite/unsafe-byname.test index e18c1123..47809dcb 100644 --- a/testsuite/unsafe-byname.test +++ b/testsuite/unsafe-byname.test @@ -7,6 +7,11 @@ . $srcdir/testsuite/rsync.fns test_unsafe() { + # $1 is the target of a symlink + # $2 is the directory we're copying + # $3 is the expected outcome: "safe" if the link lies within $2, + # or "unsafe" otherwise + result=`"$TOOLDIR/t_unsafe" "$1" "$2"` || test_fail "Failed to check $1 $2" if [ "$result" != "$3" ] then @@ -14,19 +19,21 @@ test_unsafe() { fi } -test_unsafe file from safe -test_unsafe dir/file from safe -test_unsafe dir/./file from safe -test_unsafe dir/. from safe -test_unsafe dir/ from safe +test_unsafe file from safe +test_unsafe dir/file from safe +test_unsafe dir/./file from safe +test_unsafe dir/. from safe +test_unsafe dir/ from safe test_unsafe /etc/passwd from unsafe test_unsafe //../etc/passwd from unsafe test_unsafe //./etc/passwd from unsafe -test_unsafe ./foo from safe -test_unsafe ../foo from unsafe -test_unsafe ../dest from/dir safe +test_unsafe ./foo from safe +test_unsafe ../foo from unsafe +test_unsafe ../dest from/dir safe + +test_unsafe '' from unsafe # Based on tests from unsafe-links by VladimĂ­r Michl test_unsafe ../../unsafe/unsafefile from/safe unsafe @@ -38,6 +45,10 @@ test_unsafe ../files/file1 safe unsafe test_unsafe ../../unsafe/unsafefile `pwd`/from/safe safe test_unsafe ../files/file1 `pwd`/from/safe safe +# I think these are correct, but I don't really understand the code. +# Waiting for an answer from dwd +test_skipped "correct behaviour is unclear" + # Test suspicious handling of '..' in srcdir test_unsafe ../../unsafe/unsafefile from/safe/../safe unsafe test_unsafe ../files/file1 from/safe/../safe safe