summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@altlinux.org>2014-02-08 00:26:06 +0000
committerDmitry V. Levin <ldv@altlinux.org>2014-02-08 00:50:09 +0000
commit5c7f627f050372dcc57513391e39c93fe360ccb9 (patch)
tree1e8608590b7fc99b2b55a3df9a0ebcb72545c84a
parentab3953b0476a9502c9cd1c59317fa2e98ae301fc (diff)
downloadstrace-5c7f627f050372dcc57513391e39c93fe360ccb9.tar.gz
strace-5c7f627f050372dcc57513391e39c93fe360ccb9.tar.bz2
strace-5c7f627f050372dcc57513391e39c93fe360ccb9.tar.xz
Fix sigaction reporting on non-x86 architectures
If SA_RESTORER is not defined by libc headers but defined by kernel headers, use the definition provided by kernel headers for proper sigaction decoding. * signal.c [!SA_RESTORER]: Define to ASM_SA_RESTORER if the latter is defined, regardless of architecure.
-rw-r--r--signal.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/signal.c b/signal.c
index 588cd62..e2c929f 100644
--- a/signal.c
+++ b/signal.c
@@ -90,11 +90,11 @@ struct sigcontext {
#ifdef HAVE_SIGACTION
-#if defined I386 || defined X86_64 || defined X32
/* The libc headers do not define this constant since it should only be
used by the implementation. So we define it here. */
-# ifndef SA_RESTORER
-# define SA_RESTORER 0x04000000
+#ifndef SA_RESTORER
+# ifdef ASM_SA_RESTORER
+# define SA_RESTORER ASM_SA_RESTORER
# endif
#endif