diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/regression/bin/sh/builtins/cd1.0 | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/tools/regression/bin/sh/builtins/cd1.0 b/tools/regression/bin/sh/builtins/cd1.0 index b615174..8c69536 100644 --- a/tools/regression/bin/sh/builtins/cd1.0 +++ b/tools/regression/bin/sh/builtins/cd1.0 @@ -6,12 +6,15 @@ cd $P T=$(mktemp -d sh-test.XXXXXX) chmod 0 $T -cd -L $T 2>/dev/null && exit 1 -[ "$PWD" = "$P" ] -[ "$(pwd)" = "$P" ] -cd -P $T 2>/dev/null && exit 1 -[ "$PWD" = "$P" ] -[ "$(pwd)" = "$P" ] +if [ `id -u` -ne 0 ]; then + # Root can always cd, irregardless of directory permissions. + cd -L $T 2>/dev/null && exit 1 + [ "$PWD" = "$P" ] + [ "$(pwd)" = "$P" ] + cd -P $T 2>/dev/null && exit 1 + [ "$PWD" = "$P" ] + [ "$(pwd)" = "$P" ] +fi chmod 755 $T cd $T |