summaryrefslogtreecommitdiffstats
path: root/libc/sysdeps/linux/common/bits/kernel_sigaction.h
diff options
context:
space:
mode:
author"Steven J. Hill" <sjhill@realitydiluted.com>2005-11-19 21:04:15 +0000
committer"Steven J. Hill" <sjhill@realitydiluted.com>2005-11-19 21:04:15 +0000
commitaebf0c050a8598c864dda377b4fadb79225d34ca (patch)
treef67c89bb2536f64c390654810b1aa1b95ae0a11e /libc/sysdeps/linux/common/bits/kernel_sigaction.h
parent6f728cdcf296054020c8606cb8cb841d84a64245 (diff)
downloaduClibc-alpine-aebf0c050a8598c864dda377b4fadb79225d34ca.tar.bz2
uClibc-alpine-aebf0c050a8598c864dda377b4fadb79225d34ca.tar.xz
Sync up with trunk.
Diffstat (limited to 'libc/sysdeps/linux/common/bits/kernel_sigaction.h')
-rw-r--r--libc/sysdeps/linux/common/bits/kernel_sigaction.h43
1 files changed, 13 insertions, 30 deletions
diff --git a/libc/sysdeps/linux/common/bits/kernel_sigaction.h b/libc/sysdeps/linux/common/bits/kernel_sigaction.h
index 6eaf61f1d..5baf1e224 100644
--- a/libc/sysdeps/linux/common/bits/kernel_sigaction.h
+++ b/libc/sysdeps/linux/common/bits/kernel_sigaction.h
@@ -4,36 +4,9 @@
/* This file provides whatever this particular arch's kernel thinks
* the sigaction struct should look like... */
-#if defined(__alpha__)
-#undef HAVE_SA_RESTORER
-/* This is the sigaction struction from the Linux 2.1.20 kernel. */
-struct old_kernel_sigaction {
- __sighandler_t k_sa_handler;
- unsigned long sa_mask;
- unsigned int sa_flags;
-};
-/* This is the sigaction structure from the Linux 2.1.68 kernel. */
-struct kernel_sigaction {
- __sighandler_t k_sa_handler;
- unsigned int sa_flags;
- sigset_t sa_mask;
-};
-#elif defined(__hppa__)
-#undef HAVE_SA_RESTORER
-/* This is the sigaction struction from the Linux 2.1.20 kernel. */
-/* Blah. This is bogus. We don't ever use it. */
-struct old_kernel_sigaction {
- __sighandler_t k_sa_handler;
- unsigned long sa_mask;
- unsigned long sa_flags;
-};
-/* This is the sigaction structure from the Linux 2.1.68 kernel. */
-struct kernel_sigaction {
- __sighandler_t k_sa_handler;
- unsigned long sa_flags;
- sigset_t sa_mask;
-};
-#elif defined(__mips__)
+#undef NO_OLD_SIGACTION
+
+#if defined(__mips__)
#undef HAVE_SA_RESTORER
/* This is the sigaction structure from the Linux 2.1.24 kernel. */
#include <sgidefs.h>
@@ -58,6 +31,14 @@ struct kernel_sigaction {
void (*sa_restorer)(void);
int s_resv[1]; /* reserved */
};
+#elif defined(__ia64__)
+#define NO_OLD_SIGACTION
+#undef HAVE_SA_RESTORER
+struct kernel_sigaction {
+ __sighandler_t k_sa_handler;
+ unsigned long sa_flags;
+ sigset_t sa_mask;
+};
#else
#define HAVE_SA_RESTORER
/* This is the sigaction structure from the Linux 2.1.20 kernel. */
@@ -76,8 +57,10 @@ struct kernel_sigaction {
};
#endif
+#ifndef NO_OLD_SIGACTION
extern int __syscall_sigaction (int, const struct old_kernel_sigaction *__unbounded,
struct old_kernel_sigaction *__unbounded);
+#endif
extern int __syscall_rt_sigaction (int, const struct kernel_sigaction *__unbounded,
struct kernel_sigaction *__unbounded, size_t);