1 /* 2 * This program is free software; you can redistribute it and/or modify 3 * it under the terms of the GNU General Public License version 2 as 4 * published by the Free Software Foundation, or (at your option) any 5 * later version. See the COPYING file in the top-level directory. 6 */ 7 8 #ifndef GENERIC_SIGNAL_H 9 #define GENERIC_SIGNAL_H 10 11 #define TARGET_SA_NOCLDSTOP 0x00000001 12 #define TARGET_SA_NOCLDWAIT 0x00000002 /* not supported yet */ 13 #define TARGET_SA_SIGINFO 0x00000004 14 #define TARGET_SA_ONSTACK 0x08000000 15 #define TARGET_SA_RESTART 0x10000000 16 #define TARGET_SA_NODEFER 0x40000000 17 #define TARGET_SA_RESETHAND 0x80000000 18 #define TARGET_SA_RESTORER 0x04000000 19 20 #define TARGET_SIGHUP 1 21 #define TARGET_SIGINT 2 22 #define TARGET_SIGQUIT 3 23 #define TARGET_SIGILL 4 24 #define TARGET_SIGTRAP 5 25 #define TARGET_SIGABRT 6 26 #define TARGET_SIGIOT 6 27 #define TARGET_SIGBUS 7 28 #define TARGET_SIGFPE 8 29 #define TARGET_SIGKILL 9 30 #define TARGET_SIGUSR1 10 31 #define TARGET_SIGSEGV 11 32 #define TARGET_SIGUSR2 12 33 #define TARGET_SIGPIPE 13 34 #define TARGET_SIGALRM 14 35 #define TARGET_SIGTERM 15 36 #define TARGET_SIGSTKFLT 16 37 #define TARGET_SIGCHLD 17 38 #define TARGET_SIGCONT 18 39 #define TARGET_SIGSTOP 19 40 #define TARGET_SIGTSTP 20 41 #define TARGET_SIGTTIN 21 42 #define TARGET_SIGTTOU 22 43 #define TARGET_SIGURG 23 44 #define TARGET_SIGXCPU 24 45 #define TARGET_SIGXFSZ 25 46 #define TARGET_SIGVTALRM 26 47 #define TARGET_SIGPROF 27 48 #define TARGET_SIGWINCH 28 49 #define TARGET_SIGIO 29 50 #define TARGET_SIGPWR 30 51 #define TARGET_SIGSYS 31 52 #define TARGET_SIGRTMIN 32 53 54 #define TARGET_SIG_BLOCK 0 /* for blocking signals */ 55 #define TARGET_SIG_UNBLOCK 1 /* for unblocking signals */ 56 #define TARGET_SIG_SETMASK 2 /* for setting the signal mask */ 57 58 /* this struct defines a stack used during syscall handling */ 59 typedef struct target_sigaltstack { 60 abi_ulong ss_sp; 61 abi_int ss_flags; 62 abi_ulong ss_size; 63 } target_stack_t; 64 65 /* 66 * sigaltstack controls 67 */ 68 #define TARGET_SS_ONSTACK 1 69 #define TARGET_SS_DISABLE 2 70 71 #define TARGET_MINSIGSTKSZ 2048 72 73 /* bit-flags */ 74 #define TARGET_SS_AUTODISARM (1U << 31) /* disable sas during sighandling */ 75 /* mask for all SS_xxx flags */ 76 #define TARGET_SS_FLAG_BITS TARGET_SS_AUTODISARM 77 78 #endif 79