Mercurial > hg > octave-nkf > gnulib-hg
view tests/test-idpriv-droptemp.sh @ 12404:44954971957b
init.sh: avoid Solaris 10 /bin/sh portability problem
Solaris 10's /bin/sh does not pass '.' arguments 2..N to the
sourced script:
$ printf 'echo "$@"\n' > f; /bin/sh -c '. ./f bar'
$ printf 'echo "$@"\n' > f; bash -c '. ./f bar'
bar
tests/init.sh relied on that, accepting a --set-path=DIR argument,
and two tests used that idiom.
* tests/init.sh: Update suggested usage comments.
(path_prepend_): New function, to be used in place of
the --src-path=DIR option.
Disallow empty strings and strings containing ":".
(setup_): Move PATH-prepending code into path_prepend_.
* tests/test-pread.sh: Adapt to new usage.
* tests/test-xalloc-die.sh: Likewise.
author | Jim Meyering <meyering@redhat.com> |
---|---|
date | Tue, 08 Dec 2009 20:37:50 +0100 |
parents | c992e0b3355b |
children |
line wrap: on
line source
#!/bin/sh # A POSIX compliant 'id' program. if test -f /usr/xpg4/bin/id; then ID=/usr/xpg4/bin/id else ID=id fi # The user's original uid and gid. uid=`$ID -u` gid=`$ID -g` if test `$ID -u` = 0; then # No need to ask for a password. "${srcdir}/test-idpriv-droptemp.su.sh" "$uid" "$gid" else echo "Need root privileges for the 'test-idpriv-droptemp' test. Deny if you don't trust." > /dev/tty if (type sudo) > /dev/null 2>&1; then # Use the 'sudo' program. sudo "${srcdir}/test-idpriv-droptemp.su.sh" "$uid" "$gid" else # Use the 'su' program. su root -c "${srcdir}/test-idpriv-droptemp.su.sh \"$uid\" \"$gid\"" fi result=$? case $result in 0) exit 0;; 77) exit 77;; 13) exit 1;; *) echo "Skipping test: root privileges not granted"; exit 77;; esac fi