1 #ifndef _UAPI_ASM_X86_SIGNAL_H 2 #define _UAPI_ASM_X86_SIGNAL_H 3 4 #ifndef __ASSEMBLY__ 5 #include <linux/types.h> 6 #include <linux/time.h> 7 #include <linux/compiler.h> 8 9 /* Avoid too many header ordering problems. */ 10 struct siginfo; 11 12 #ifndef __KERNEL__ 13 /* Here we must cater to libcs that poke about in kernel headers. */ 14 15 #define NSIG 32 16 typedef unsigned long sigset_t; 17 18 #endif /* __KERNEL__ */ 19 #endif /* __ASSEMBLY__ */ 20 21 22 #define SIGHUP 1 23 #define SIGINT 2 24 #define SIGQUIT 3 25 #define SIGILL 4 26 #define SIGTRAP 5 27 #define SIGABRT 6 28 #define SIGIOT 6 29 #define SIGBUS 7 30 #define SIGFPE 8 31 #define SIGKILL 9 32 #define SIGUSR1 10 33 #define SIGSEGV 11 34 #define SIGUSR2 12 35 #define SIGPIPE 13 36 #define SIGALRM 14 37 #define SIGTERM 15 38 #define SIGSTKFLT 16 39 #define SIGCHLD 17 40 #define SIGCONT 18 41 #define SIGSTOP 19 42 #define SIGTSTP 20 43 #define SIGTTIN 21 44 #define SIGTTOU 22 45 #define SIGURG 23 46 #define SIGXCPU 24 47 #define SIGXFSZ 25 48 #define SIGVTALRM 26 49 #define SIGPROF 27 50 #define SIGWINCH 28 51 #define SIGIO 29 52 #define SIGPOLL SIGIO 53 /* 54 #define SIGLOST 29 55 */ 56 #define SIGPWR 30 57 #define SIGSYS 31 58 #define SIGUNUSED 31 59 60 /* These should not be considered constants from userland. */ 61 #define SIGRTMIN 32 62 #define SIGRTMAX _NSIG 63 64 /* 65 * SA_FLAGS values: 66 * 67 * SA_ONSTACK indicates that a registered stack_t will be used. 68 * SA_RESTART flag to get restarting signals (which were the default long ago) 69 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop. 70 * SA_RESETHAND clears the handler when the signal is delivered. 71 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies. 72 * SA_NODEFER prevents the current signal from being masked in the handler. 73 * 74 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single 75 * Unix names RESETHAND and NODEFER respectively. 76 */ 77 #define SA_NOCLDSTOP 0x00000001u 78 #define SA_NOCLDWAIT 0x00000002u 79 #define SA_SIGINFO 0x00000004u 80 #define SA_ONSTACK 0x08000000u 81 #define SA_RESTART 0x10000000u 82 #define SA_NODEFER 0x40000000u 83 #define SA_RESETHAND 0x80000000u 84 85 #define SA_NOMASK SA_NODEFER 86 #define SA_ONESHOT SA_RESETHAND 87 88 #define SA_RESTORER 0x04000000 89 90 /* 91 * sigaltstack controls 92 */ 93 #define SS_ONSTACK 1 94 #define SS_DISABLE 2 95 96 #define MINSIGSTKSZ 2048 97 #define SIGSTKSZ 8192 98 99 #include <asm-generic/signal-defs.h> 100 101 #ifndef __ASSEMBLY__ 102 103 104 #ifdef __i386__ 105 # ifndef __KERNEL__ 106 /* Here we must cater to libcs that poke about in kernel headers. */ 107 108 struct sigaction { 109 union { 110 __sighandler_t _sa_handler; 111 void (*_sa_sigaction)(int, struct siginfo *, void *); 112 } _u; 113 sigset_t sa_mask; 114 unsigned long sa_flags; 115 void (*sa_restorer)(void); 116 }; 117 118 #define sa_handler _u._sa_handler 119 #define sa_sigaction _u._sa_sigaction 120 121 # endif /* ! __KERNEL__ */ 122 #else /* __i386__ */ 123 124 struct sigaction { 125 __sighandler_t sa_handler; 126 unsigned long sa_flags; 127 __sigrestore_t sa_restorer; 128 sigset_t sa_mask; /* mask last for extensibility */ 129 }; 130 131 struct k_sigaction { 132 struct sigaction sa; 133 }; 134 135 #endif /* !__i386__ */ 136 137 typedef struct sigaltstack { 138 void __user *ss_sp; 139 int ss_flags; 140 size_t ss_size; 141 } stack_t; 142 143 #endif /* __ASSEMBLY__ */ 144 145 #endif /* _UAPI_ASM_X86_SIGNAL_H */ 146