On Mon, Apr 11, 2022 at 2:14 PM Bart Schaefer <schaefer@brasslantern.com> wrote:
>
> These are probably not new; found while experimenting with reproducing
> Axel's test fails.
>
> The first is obviously because of root's expanded privileges. The
> second probably also so, just not immediately clear why.
Fixed the first by just skipping the test. Fixed the second by
dropping privilege and then attempting to escalate again.
diff --git a/Test/D02glob.ztst b/Test/D02glob.ztst
index 72891a2a7..850a535e5 100644
--- a/Test/D02glob.ztst
+++ b/Test/D02glob.ztst
@@ -748,13 +748,21 @@
touch glob.tmp/secret-d$1/dir/file
chmod $1 glob.tmp/secret-d$1
done
- print -raC 2 -- glob.tmp/secret-*/* glob.tmp/secret-*/file
+ if (( EUID == 0 )); then
+ ZTST_skip='Not testing unreadable directories (root reads anything)'
+ else
+ print -raC 2 -- glob.tmp/secret-*/* glob.tmp/secret-*/file
+ fi
0:names inside unreadable directories can be globbed if searchable
>glob.tmp/secret-d444/dir glob.tmp/secret-d444/file
>glob.tmp/secret-s444/dir glob.tmp/secret-s444/file
>glob.tmp/secret-d111/file glob.tmp/secret-s111/file
- print -rC 2 -- glob.tmp/secret-*/dir/*
+ if (( EUID == 0 )); then
+ ZTST_skip='Not testing unreadable directories (root reads anything)'
+ else
+ print -rC 2 -- glob.tmp/secret-*/dir/*
+ fi
0:glob files in readable directories inside unreadable directories
>glob.tmp/secret-d111/dir/file glob.tmp/secret-s111/dir/file
diff --git a/Test/E03posix.ztst b/Test/E03posix.ztst
index caab97ab6..6ac4d1732 100644
--- a/Test/E03posix.ztst
+++ b/Test/E03posix.ztst
@@ -153,7 +153,7 @@ F:This may also need to apply to multibyte whitespace
F:POSIX has neither math functions nor floating point
>42
- ARGV0=sh $ZTST_testdir/../Src/zsh -c 'EUID=10; echo "$EUID"'
+ ARGV0=sh $ZTST_testdir/../Src/zsh -c 'EUID=1; EUID=10; echo $EUID'
-f:EUID is not a special variable
>10