mirror of
git://git.sv.gnu.org/coreutils.git
synced 2026-04-18 09:46:33 +02:00
tests: adjust PATH to generally include /sbin and /usr/sbin
Commit 5eeaca94 added /sbin to the PATH for tests using mkfs. For other
tests, e.g. tests/cp-fiemap-perf using filefrag, we need /usr/sbin also.
Add both directories generally for the tests, "since many of us always
augment our PATH with all of the sbin paths all of the time anyway" (Bob
in http://lists.gnu.org/archive/html/coreutils/2011-11/msg00107.html).
The previous commit is hereby obsolete.
* tests/init.cfg (sanitize_path_): Add /sbin and /usr/sbin to PATH
unless already included. Needed for tests using admin tools like mkfs
and filefrag on systems where the user's environment does not have
these directories in the PATH.
* tests/init.cfg (require_mkfs_PATH_): Remove obsolete function.
* tests/cp/cp-a-selinux: Remove require_mkfs_PATH_ call.
* tests/cp/cp-mv-enotsup-xattr: Likewise.
* tests/cp/sparse-fiemap: Likewise.
* tests/mkdir/writable-under-readonly: Likewise.
* tests/rm/read-only: Likewise.
This commit is contained in:
committed by
Jim Meyering
parent
92b7b7708e
commit
8df7652cfa
@@ -23,7 +23,6 @@
|
||||
print_ver_ cp
|
||||
require_root_
|
||||
require_selinux_
|
||||
require_mkfs_PATH_
|
||||
|
||||
cwd=`pwd`
|
||||
cleanup_() { cd /; umount "$cwd/mnt"; }
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
print_ver_ cp mv
|
||||
|
||||
require_root_
|
||||
require_mkfs_PATH_
|
||||
|
||||
cwd=`pwd`
|
||||
cleanup_() { cd /; umount "$cwd/noxattr"; umount "$cwd/xattr"; }
|
||||
|
||||
@@ -32,7 +32,6 @@ else
|
||||
|
||||
# It's not; we need to create one, hence we need root access.
|
||||
require_root_
|
||||
require_mkfs_PATH_
|
||||
|
||||
cwd=$PWD
|
||||
cleanup_() { cd /; umount "$cwd/mnt"; }
|
||||
|
||||
@@ -23,6 +23,7 @@ stderr_fileno_=9
|
||||
# Having an unsearchable directory in PATH causes execve to fail with EACCES
|
||||
# when applied to an unresolvable program name, contrary to the desired ENOENT.
|
||||
# Avoid the problem by rewriting PATH to exclude unsearchable directories.
|
||||
# Also, if PATH lacks /sbin and/or /usr/sbin, append it/them.
|
||||
sanitize_path_()
|
||||
{
|
||||
# FIXME: remove double quotes around $IFS when all tests use init.sh.
|
||||
@@ -43,6 +44,13 @@ sanitize_path_()
|
||||
fi
|
||||
done
|
||||
|
||||
for d in /sbin /usr/sbin ; do
|
||||
case ":$new_path:" in
|
||||
*:$d:*) ;;
|
||||
*) new_path="$new_path:$d" ;;
|
||||
esac
|
||||
done
|
||||
|
||||
PATH=$new_path
|
||||
export PATH
|
||||
}
|
||||
@@ -195,23 +203,6 @@ uid_is_privileged_()
|
||||
esac
|
||||
}
|
||||
|
||||
# Some versions of sudo do not include /sbin in PATH.
|
||||
# Test if mkfs is in PATH, otherwise try to adapt PATH.
|
||||
require_mkfs_PATH_()
|
||||
{
|
||||
type mkfs && return
|
||||
|
||||
case ":$PATH:" in
|
||||
*:/sbin:*) skip_ "no usable mkfs found" ;;
|
||||
esac
|
||||
|
||||
test -x /sbin/mkfs \
|
||||
|| skip_ "no usable mkfs found"
|
||||
|
||||
PATH="$PATH:/sbin"
|
||||
export PATH
|
||||
}
|
||||
|
||||
get_process_status_()
|
||||
{
|
||||
sed -n '/^State:[ ]*\([[:alpha:]]\).*/s//\1/p' /proc/$1/status
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
. "${srcdir=.}/init.sh"; path_prepend_ ../src
|
||||
print_ver_ mkdir
|
||||
require_root_
|
||||
require_mkfs_PATH_
|
||||
|
||||
# FIXME: for now, skip it unconditionally
|
||||
skip_ temporarily disabled
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
. "${srcdir=.}/init.sh"; path_prepend_ ../src
|
||||
print_ver_ rm
|
||||
require_root_
|
||||
require_mkfs_PATH_
|
||||
|
||||
cwd=`pwd`
|
||||
cleanup_() { cd /; umount "$cwd/mnt"; }
|
||||
|
||||
Reference in New Issue
Block a user