diff options
author | Dmitry V. Levin <ldv@altlinux.org> | 2015-08-03 09:47:25 +0000 |
---|---|---|
committer | Dmitry V. Levin <ldv@altlinux.org> | 2015-08-03 09:57:14 +0000 |
commit | 30ac0627f29756306b307504bd35bc5e79288f56 (patch) | |
tree | a84b69fab8792e73c61801cd47f26a461e12e0de /signalfd.c | |
parent | 9e8a84fa3d5ca242b1a05fed1f06c9c3c08b1a2e (diff) | |
download | strace-30ac0627f29756306b307504bd35bc5e79288f56.tar.gz |
signalfd4: fix flags decoding
* configure.ac (AC_CHECK_FUNCS): Add eventfd.
(AC_CHECK_HEADERS): Add sys/signalfd.h.
* signalfd.c: Include <fcntl.h>.
[HAVE_SYS_SIGNALFD_H] Include <sys/signalfd.h>.
Include "xlat/sfd_flags.h".
(do_signalfd): Use sfd_flags for flags decoding.
* xlat/sfd_flags.in: New file.
* tests/signalfd.c: Likewise.
* tests/signalfd.expected: Likewise.
* tests/signalfd.test: New test.
* tests/Makefile.am (check_PROGRAMS): Add signalfd.
(TESTS): Add signalfd.test.
(EXTRA_DIST): Add signalfd.expected.
* tests/.gitignore: Add signalfd.
Diffstat (limited to 'signalfd.c')
-rw-r--r-- | signalfd.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/signalfd.c b/signalfd.c index f574d1b1c..4cfd6de5f 100644 --- a/signalfd.c +++ b/signalfd.c @@ -1,4 +1,10 @@ #include "defs.h" +#include <fcntl.h> +#ifdef HAVE_SYS_SIGNALFD_H +# include <sys/signalfd.h> +#endif + +#include "xlat/sfd_flags.h" static int do_signalfd(struct tcb *tcp, int flags_arg) @@ -10,7 +16,7 @@ do_signalfd(struct tcb *tcp, int flags_arg) tprintf(", %lu", tcp->u_arg[2]); if (flags_arg >= 0) { tprints(", "); - printflags(open_mode_flags, tcp->u_arg[flags_arg], "O_???"); + printflags(sfd_flags, tcp->u_arg[flags_arg], "SFD_???"); } return RVAL_DECODED | RVAL_FD; |