summaryrefslogtreecommitdiff
path: root/tests/gen_tests.in
diff options
context:
space:
mode:
authorleedagee <leedageea@gmail.com>2023-04-29 08:00:00 +0000
committerDmitry V. Levin <ldv@strace.io>2023-04-29 08:00:00 +0000
commit50111982e27976c3dfa3e3411281b88d778f49d5 (patch)
treeec5898c380412863c830c674861531407bf327e1 /tests/gen_tests.in
parent551870dc5cc2421bd960bb42fb25d5027af67efc (diff)
downloadstrace-50111982e27976c3dfa3e3411281b88d778f49d5.tar.gz
Implement decoding of signal masks associated with signalfd file descriptors
When signalfds are used, normal signal handling method is usually disabled, leaving strace without signals to catch and decode. This patch adds decoding of signal masks associated with signalfd file descriptors. Decoding the signalfd_siginfo struct requires additional work mentioned in github#199. Signed-off-by: leedagee <leedageea@gmail.com> * NEWS: Mention this change. * doc/strace.1.in: Document --decode-fds=signalfd. * src/strace.c (usage): Likewise. * src/number_set.h (enum decode_fd_bits): Add DECODE_FD_SIGNALFD. * src/filter_qualify.c (decode_fd_str_to_uint): Handle signalfd. * src/util.c (print_fdinfo_sigmask, printsignalfd): New functions. (printfd_pid_with_finfo): Use printsignalfd when DECODE_FD_SIGNALFD is set in decode_fd_set. * tests/signalfd4.c [PRINT_SIGNALFD]: Check decoding of signal masks associated with signalfd file descriptors. * tests/signalfd4-yy.c: New file. * tests/pure_executables.list: Add signalfd4-yy. * tests/.gitignore: Likewise. * tests/gen_tests.in (signalfd4): Add -a32. (signalfd4-yy): New test. Co-authored-by: Dmitry V. Levin <ldv@strace.io>
Diffstat (limited to 'tests/gen_tests.in')
-rw-r--r--tests/gen_tests.in3
1 files changed, 2 insertions, 1 deletions
diff --git a/tests/gen_tests.in b/tests/gen_tests.in
index 1316ad6e8..f19963b06 100644
--- a/tests/gen_tests.in
+++ b/tests/gen_tests.in
@@ -960,7 +960,8 @@ siginfo -e trace=none
signal -a25 -e signal=none -e trace='/^signal$'
signal_receive -a16 -e trace=kill
signal_receive--pidns-translation test_pidns -a16 -e trace=kill
-signalfd4
+signalfd4 -a32
+signalfd4-yy --trace=signalfd4 -yy
sigpending -a15
sigprocmask -a34
sigreturn -esignal='!USR1'