summaryrefslogtreecommitdiff
path: root/tests/faccessat.test
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@altlinux.org>2020-07-04 08:00:00 +0000
committerDmitry V. Levin <ldv@altlinux.org>2020-07-04 08:00:00 +0000
commit6eea6412a857a406c3b7e151d647decef39d3875 (patch)
treef3531e43389356f3ca3dfbb85af7b4544375b37e /tests/faccessat.test
parent99954980977b62e669c74e89389b7bb195c5f656 (diff)
downloadstrace-6eea6412a857a406c3b7e151d647decef39d3875.tar.gz
tests: check decoding of faccessat syscall in -P, -y, and -yy modes
* tests/faccessat.c: Rewrite. * tests/faccessat-P.c: New file. * tests/faccessat-y.c: Likewise. * tests/faccessat-yy.c: Likewise. * tests/faccessat.test: New test. * tests/Makefile.am (DECODER_TESTS): Add faccessat.test. * tests/gen_tests.in (faccessat): Remove. (faccessat-P, faccessat-y, faccessat-yy): New entries. * tests/pure_executables.list: Add faccessat-P, faccessat-y, and faccessat-yy. * tests/.gitignore: Likewise.
Diffstat (limited to 'tests/faccessat.test')
-rwxr-xr-xtests/faccessat.test19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/faccessat.test b/tests/faccessat.test
new file mode 100755
index 000000000..7b3684937
--- /dev/null
+++ b/tests/faccessat.test
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Check decoding of faccessat syscall.
+#
+# Copyright (c) 2020 Dmitry V. Levin <ldv@altlinux.org>
+# All rights reserved.
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+. "${srcdir=.}/init.sh"
+
+check_prog sed
+
+run_prog > /dev/null
+run_strace -a23 --trace=faccessat "$@" $args > "$EXP"
+
+# Filter out faccessat() calls made by ld.so and libc.
+sed -n '/^faccessat(-1, NULL,/,$p' < "$LOG" > "$OUT"
+match_diff "$OUT" "$EXP"