strace/tests/prctl-seccomp-strict.test

19 lines
414 B
Plaintext
Raw Normal View History

#!/bin/sh
# Check how prctl PR_SET_SECCOMP SECCOMP_MODE_STRICT is decoded.
. "${srcdir=.}/init.sh"
check_prog grep
tests: run every test except ksysent.test in its own subdirectory Many test executables create temporary files in the current work directory for the duration of their execution. This level of test isolation allows more test executables to be invoked several times simultaneously. * tests/.gitignore: Add *.dir, remove *.log.*, *.tmp, *.tmp-*, and *.tmp.* patterns. * tests/Makefile.am (clean-local, clean-local-check): New rules. (.PHONY): Add clean-local-check. (CLEANFILES): Remove all but ksysent.h. * tests/init.sh: Strip test-specific prefix from LOG, OUT, and EXP variables. When invoked from a test, create a new test-specific directory, chdir into it, and add more ../ prefix to STRACE variable. (run_prog): Replace "./" with "../". * tests/attach-f-p.test: Replace "./" with "../". * tests/attach-p-cmd.test: Likewise. * tests/bexecve.test: Likewise. * tests/btrfs-v.test: Likewise. * tests/btrfs-vw.test: Likewise. * tests/btrfs-w.test: Likewise. * tests/count.test: Likewise. * tests/detach-running.test: Likewise. * tests/detach-sleeping.test: Likewise. * tests/detach-stopped.test: Likewise. * tests/mmap.test: Likewise. * tests/net-y-unix.test: Likewise. * tests/net-yy-inet.test: Likewise. * tests/net-yy-netlink.test: Likewise. * tests/net-yy-unix.test: Likewise. * tests/net.test: Likewise. * tests/opipe.test: Likewise. * tests/poll.test: Likewise. * tests/prctl-seccomp-strict.test: Likewise. * tests/qual_fault-exit_group.test: Likewise. * tests/qual_fault.test: Likewise. * tests/qual_inject-error-signal.test: Likewise. * tests/qual_inject-retval.test: Likewise. * tests/qual_inject-signal.test: Likewise. * tests/qual_signal.test: Likewise. * tests/qual_syscall.test: Likewise. * tests/readv.test: Likewise. * tests/redirect-fds.test: Likewise. * tests/sched.test: Likewise. * tests/scm_rights-fd.test: Likewise. * tests/seccomp-strict.test: Likewise. * tests/strace-C.test: Likewise. * tests/strace-E.expected: Likewise. * tests/strace-E.test: Likewise. * tests/strace-S.test: Likewise. * tests/strace-T.test: Likewise. * tests/strace-V.test: Likewise. * tests/strace-ff.test: Likewise. * tests/strace-k.test: Likewise. * tests/strace-r.expected: Likewise. * tests/strace-r.test: Likewise. * tests/strace-t.test: Likewise. * tests/strace-tt.test: Likewise. * tests/strace-ttt.test: Likewise. * tests/sun_path.test: Likewise. * tests/uname.test: Likewise. * tests/unix-pair-send-recv.test: Likewise. * tests/unix-pair-sendto-recvfrom.test: Likewise.
2017-04-02 04:03:24 +03:00
set -- "../$NAME"
"$@" > /dev/null || {
case $? in
77) skip_ "$* exited with code 77" ;;
137) framework_skip_ "$* killed by SIGKILL, fix your kernel" ;;
*) fail_ "$args failed" ;;
esac
}
run_strace -eprctl "$@" > "$EXP"
grep -v '^prctl(PR_GET_' < "$LOG" > "$OUT"
match_diff "$OUT" "$EXP"