blob: 02fea2aa78c2732ee12e4858d3eb690a97fd5d7f [file] [log] [blame]
Dmitry V. Levin1da7c952014-12-13 18:24:13 +00001#!/bin/sh
2
3# Check uid decoding.
4
5. "${srcdir=.}/init.sh"
6
7check_prog awk
8
9s="${uid_syscall_suffix-}"
10w="${uid_t_size-}"
11uid="uid$s$w"
12./"$uid" || {
13 if [ $? -eq 77 ]; then
14 framework_skip_ "some uid$s or uid${w}_t syscalls are not available"
15 else
16 fail_ "$uid failed"
17 fi
18}
19
20syscalls="getuid$s,setuid$s,getresuid$s,setreuid$s,setresuid$s,chown$s"
21args="-e trace=$syscalls"
22$STRACE -o "$LOG" $args ./"$uid"|| {
23 cat "$LOG"
24 fail_ "$STRACE $args ./$uid failed"
25}
26
27awk -f "$srcdir"/uid.awk -v suffix="$s" "$LOG" || {
28 cat "$LOG"
29 fail_ 'unexpected output'
30}
31
32exit 0