Mercurial > gnulib
annotate tests/test-idpriv-drop.su.sh @ 40221:8c1a17df67e0
tests: Prepare for using valgrind.
tests/*.sh: Invoke all test programs through ${CHECKER}.
tests/*/*.sh: Likewise.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sun, 10 Mar 2019 11:32:11 +0100 |
parents | 1202c081f797 |
children |
rev | line source |
---|---|
11614 | 1 #!/bin/sh |
2 # This script must be run as superuser. | |
3 | |
4 origuid=$1 | |
5 origgid=$2 | |
6 | |
7 # A POSIX compliant 'id' program. | |
8 if test -f /usr/xpg4/bin/id; then | |
9 ID=/usr/xpg4/bin/id | |
10 else | |
11 ID=id | |
12 fi | |
13 | |
14 if test `$ID -u` != 0; then | |
15 echo "Skipping test: not superuser" | |
16 exit 77 | |
17 fi | |
18 | |
40221
8c1a17df67e0
tests: Prepare for using valgrind.
Bruno Haible <bruno@clisp.org>
parents:
13444
diff
changeset
|
19 ${CHECKER} ./test-idpriv-drop${EXEEXT} || exit 13 # normal |
11614 | 20 |
21 chown root:root test-idpriv-drop${EXEEXT} 2>/dev/null || \ | |
22 chown root:wheel test-idpriv-drop${EXEEXT} 2>/dev/null || \ | |
23 { echo "Skipping test: root privilege not sufficient on this file system" | |
24 exit 77 | |
25 } | |
26 chmod 4755 test-idpriv-drop${EXEEXT} | |
27 ./test-idpriv-drop${EXEEXT} || exit 13 # setuid root | |
28 chmod 2755 test-idpriv-drop${EXEEXT} | |
29 ./test-idpriv-drop${EXEEXT} || exit 13 # setgid root | |
30 chmod 6755 test-idpriv-drop${EXEEXT} | |
31 ./test-idpriv-drop${EXEEXT} || exit 13 # setuid and setgid root | |
32 | |
33 if chown nobody test-idpriv-drop${EXEEXT} 2>/dev/null; then | |
13444 | 34 chmod 4755 test-idpriv-drop${EXEEXT} |
35 ./test-idpriv-drop${EXEEXT} || exit 13 # setuid nobody | |
36 chmod 2755 test-idpriv-drop${EXEEXT} | |
37 ./test-idpriv-drop${EXEEXT} || exit 13 # setgid root | |
38 chmod 6755 test-idpriv-drop${EXEEXT} | |
39 ./test-idpriv-drop${EXEEXT} || exit 13 # setuid nobody and setgid root | |
11614 | 40 fi |
41 | |
42 if chown root:nobody test-idpriv-drop${EXEEXT} 2>/dev/null; then | |
43 chmod 4755 test-idpriv-drop${EXEEXT} | |
44 ./test-idpriv-drop${EXEEXT} || exit 13 # setuid root | |
45 chmod 2755 test-idpriv-drop${EXEEXT} | |
46 ./test-idpriv-drop${EXEEXT} || exit 13 # setgid nobody | |
47 chmod 6755 test-idpriv-drop${EXEEXT} | |
48 ./test-idpriv-drop${EXEEXT} || exit 13 # setuid root and setgid nobody | |
49 fi | |
50 | |
51 chown "$origuid:$origgid" test-idpriv-drop${EXEEXT} | |
52 chmod 755 test-idpriv-drop${EXEEXT} |