diff options
Diffstat (limited to 'tests/rm/inaccessible')
-rwxr-xr-x | tests/rm/inaccessible | 24 |
1 files changed, 6 insertions, 18 deletions
diff --git a/tests/rm/inaccessible b/tests/rm/inaccessible index 0d6e5399e..8d05b3ede 100755 --- a/tests/rm/inaccessible +++ b/tests/rm/inaccessible @@ -2,7 +2,7 @@ # Ensure that rm works even when run from a directory # for which the user has no access at all. -# Copyright (C) 2004, 2006 Free Software Foundation, Inc. +# Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -22,7 +22,6 @@ if test "$VERBOSE" = yes; then rm --version fi -PRIV_CHECK_ARG=require-non-root . $srcdir/../priv-check . $srcdir/../lang-default # Skip this test if your system has neither the openat-style functions @@ -35,24 +34,14 @@ if test $skip = yes; then (exit 77); exit 77 fi -pwd=`pwd` -t0=`echo "$0"|sed 's,.*/,,'`.tmp; tmp=$t0/$$ -trap 'status=$?; cd "$pwd" && chmod -R u+rwx $t0 && rm -rf $t0 && exit $status' 0 -trap '(exit $?); exit $?' 1 2 13 15 +. $srcdir/../test-lib.sh +skip_if_root_ -framework_failure=0 -mkdir -p $tmp || framework_failure=1 -cd $tmp || framework_failure=1 -mkdir abs1 abs2 no-access || framework_failure=1 - -if test $framework_failure = 1; then - echo "$0: failure in testing framework" 1>&2 - (exit 1); exit 1 -fi +p=`pwd` +mkdir abs1 abs2 no-access || framework_failure fail=0 -p=$pwd/$tmp set +x (cd no-access; chmod 0 . && rm -r "$p/abs1" rel "$p/abs2") 2> out && fail=1 test -d "$p/abs1" && fail=1 @@ -68,7 +57,6 @@ EOF # to the expected one: sed 's/: The file access permissions.*/: Permission denied/'<out>o1;mv o1 out -cmp out exp || fail=1 -test $fail = 1 && diff out exp 2> /dev/null +compare out exp || fail=1 (exit $fail); exit $fail |