summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2014-05-25 12:36:15 +0200
committerAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2014-05-25 12:36:15 +0200
commitde79fdeba31751f914d762dba012b7402334d724 (patch)
tree8e06dc4899babdfccd7a96b04a4537fd19a3dfb7
parentb34731ffb97918872a398318163c59ec8dc3e1fa (diff)
downloadstrace-de79fdeba31751f914d762dba012b7402334d724.tar.gz
strace-de79fdeba31751f914d762dba012b7402334d724.tar.bz2
strace-de79fdeba31751f914d762dba012b7402334d724.tar.xz
[EMBTK]printsiginfo(): check siginfo_t si_overrun and si_timerid before trying to use them
Signed-off-by: Abdoulaye Walsimou Gaye <awg@embtoolkit.org>
-rw-r--r--configure.ac4
-rw-r--r--signal.c2
2 files changed, 4 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac
index e5c837b..bc17175 100644
--- a/configure.ac
+++ b/configure.ac
@@ -267,7 +267,9 @@ AC_CHECK_MEMBERS([struct utsname.domainname],,, [#include <sys/utsname.h>])
AC_CHECK_MEMBERS([struct sigevent._sigev_un._pad,
struct sigevent.__pad,
- siginfo_t.si_syscall],,, [#include <signal.h>])
+ siginfo_t.si_overrun,
+ siginfo_t.si_syscall,
+ siginfo_t.si_timerid],,, [#include <signal.h>])
AC_CHECK_TYPES([struct flock64],,, [#include <fcntl.h>])
diff --git a/signal.c b/signal.c
index 162eb53..cdbd5ec 100644
--- a/signal.c
+++ b/signal.c
@@ -607,7 +607,7 @@ printsiginfo(siginfo_t *sip, int verbose)
printsigsource(sip);
break;
#endif
-#ifdef SI_TIMER
+#if defined(SI_TIMER) && defined(HAVE_SIGINFO_T_TIMERID) && defined(HAVE_SIGINFO_T_SI_OVERRUN)
case SI_TIMER:
tprintf(", si_timerid=%#x, si_overrun=%d",
sip->si_timerid, sip->si_overrun);