1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 #ifndef _UAPI_ASM_SIGNAL_H 3 #define _UAPI_ASM_SIGNAL_H 4 5 #include <linux/types.h> 6 7 #ifndef __KERNEL__ 8 /* Here we must cater to libcs that poke about in kernel headers. */ 9 10 #define NSIG 32 11 typedef unsigned long sigset_t; 12 13 #endif /* !__KERNEL__ */ 14 15 #define SA_RESTORER 0x04000000 /* to get struct sigaction correct */ 16 17 #include <asm-generic/signal.h> 18 19 #ifndef __KERNEL__ 20 /* Here we must cater to libcs that poke about in kernel headers. */ 21 22 struct sigaction { 23 union { 24 __sighandler_t _sa_handler; 25 void (*_sa_sigaction)(int, struct siginfo *, void *); 26 } _u; 27 sigset_t sa_mask; 28 unsigned long sa_flags; 29 void (*sa_restorer)(void); 30 }; 31 32 #define sa_handler _u._sa_handler 33 #define sa_sigaction _u._sa_sigaction 34 35 #endif /* __KERNEL__ */ 36 37 #endif /* _UAPI_ASM_SIGNAL_H */ 38