tests: preserve-gid: don't chown temporary PATH dir to a nameless UID
authorJim Meyering <meyering@redhat.com>
Sun, 3 Apr 2011 14:37:45 +0000 (16:37 +0200)
committerJim Meyering <meyering@redhat.com>
Mon, 4 Apr 2011 16:21:32 +0000 (18:21 +0200)
* tests/cp/preserve-gid: Simply chmod a+rx instead.
That is safer, in case the nameless UID actually has an account,
and might take advantage of root running a program in a directory
under its control

tests/cp/preserve-gid

index 4b80fa7..de4bc5b 100755 (executable)
@@ -103,9 +103,14 @@ t0 c1 0 "$nameless_gid2" cp -p
 # $nameless_uid can access it and then make that directory the search path.
 tmp_path=
 cleanup_() { rm -rf "$tmp_path"; }
+
+# Cause mktemp to create a directory directly under /tmp.
+# Setting TMPDIR explicitly is required here, in case $TMPDIR
+# is not readable by our nameless IDs.
+test -d /tmp && TMPDIR=/tmp
 tmp_path=$(mktemp -d) || fail_ "failed to create temporary directory"
 cp "$abs_path_dir_/cp" "$tmp_path"
-chown -R $nameless_uid "$tmp_path"
+chmod -R a+rx "$tmp_path"
 
 t1() {
   f=$1; shift