+
+#ifdef BSD_KERNEL_PRIVATE
+#include <machine/types.h>
+
+union __user32_sigaction_u {
+ user32_addr_t __sa_handler;
+ user32_addr_t __sa_sigaction;
+};
+
+struct user32_sigaction {
+ union __user32_sigaction_u __sigaction_u; /* signal handler */
+ sigset_t sa_mask; /* signal mask to apply */
+ int sa_flags; /* see signal options below */
+};
+
+struct __user32_sigaction {
+ union __user32_sigaction_u __sigaction_u; /* signal handler */
+ user32_addr_t sa_tramp;
+ sigset_t sa_mask; /* signal mask to apply */
+ int sa_flags; /* see signal options below */
+};
+
+union __user64_sigaction_u {
+ user64_addr_t __sa_handler;
+ user64_addr_t __sa_sigaction;
+};
+
+struct user64_sigaction {
+ union __user64_sigaction_u __sigaction_u; /* signal handler */
+ sigset_t sa_mask; /* signal mask to apply */
+ int sa_flags; /* see signal options below */
+};
+
+struct __user64_sigaction {
+ union __user64_sigaction_u __sigaction_u; /* signal handler */
+ user64_addr_t sa_tramp; /* signal mask to apply */
+ sigset_t sa_mask; /* signal mask to apply */
+ int sa_flags; /* see signal options below */
+};
+
+union __kern_sigaction_u {
+ user_addr_t __sa_handler;
+ user_addr_t __sa_sigaction;
+};
+
+struct kern_sigaction {
+ union __kern_sigaction_u __sigaction_u; /* signal handler */
+ sigset_t sa_mask; /* signal mask to apply */
+ int sa_flags; /* see signal options below */
+};
+
+struct __kern_sigaction {
+ union __kern_sigaction_u __sigaction_u; /* signal handler */
+ user_addr_t sa_tramp; /* signal mask to apply */
+ sigset_t sa_mask; /* signal mask to apply */
+ int sa_flags; /* see signal options below */
+};
+
+#undef SIG_DFL
+#undef SIG_IGN
+#undef SIG_ERR
+#define SIG_DFL ((user_addr_t)0LL)
+#define SIG_IGN ((user_addr_t)1LL)
+#define SIG_ERR ((user_addr_t)-1LL)
+
+#endif /* BSD_KERNEL_PRIVATE */
+
+