summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/kernel_sigaction.h
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/kernel_sigaction.h')
-rw-r--r--sysdeps/unix/sysv/linux/kernel_sigaction.h31
1 files changed, 16 insertions, 15 deletions
diff --git a/sysdeps/unix/sysv/linux/kernel_sigaction.h b/sysdeps/unix/sysv/linux/kernel_sigaction.h
index d005cbce98..2dbec08099 100644
--- a/sysdeps/unix/sysv/linux/kernel_sigaction.h
+++ b/sysdeps/unix/sysv/linux/kernel_sigaction.h
@@ -1,19 +1,20 @@
-/* This is the sigaction structure from the Linux 2.1.20 kernel. */
+#ifndef _KERNEL_SIGACTION_H
+# define _KERNEL_SIGACTION_H
-#define HAVE_SA_RESTORER
-
-struct old_kernel_sigaction {
- __sighandler_t k_sa_handler;
- unsigned long sa_mask;
- unsigned long sa_flags;
- void (*sa_restorer) (void);
+/* This is the sigaction structure from the Linux 3.2 kernel. */
+struct kernel_sigaction
+{
+ __sighandler_t k_sa_handler;
+ unsigned long sa_flags;
+#ifdef SA_RESTORER
+ void (*sa_restorer) (void);
+#endif
+ sigset_t sa_mask;
};
-/* This is the sigaction structure from the Linux 2.1.68 kernel. */
+#ifndef SA_RESTORER
+# define SET_SA_RESTORER(kact, act)
+# define RESET_SA_RESTORER(act, kact)
+#endif
-struct kernel_sigaction {
- __sighandler_t k_sa_handler;
- unsigned long sa_flags;
- void (*sa_restorer) (void);
- sigset_t sa_mask;
-};
+#endif