2427f37a59ecd7c3fb651d66a48898fdb8f6b5be
[musl] / include / bits / signal.h
1 struct __siginfo
2 {
3         int si_signo;
4         int si_errno;
5         int si_code;
6         union
7         {
8                 char __pad[128 - 3*sizeof(int)];
9                 struct {
10                         pid_t si_pid;
11                         uid_t si_uid;
12                         union sigval si_sigval;
13                 } __rt;
14                 struct {
15                         unsigned int si_timer1;
16                         unsigned int si_timer2;
17                 } __timer;
18                 struct {
19                         pid_t si_pid;
20                         uid_t si_uid;
21                         int si_status;
22                         clock_t si_utime;
23                         clock_t si_stime;
24                 } __sigchld;
25                 struct {
26                         void *si_addr;
27                 } __sigfault;
28                 struct {
29                         long int si_band;
30                         int si_fd;
31                 } __sigpoll;
32         } __si_fields;
33 };
34
35 #define si_pid     __si_fields.__sigchld.si_pid
36 #define si_uid     __si_fields.__sigchld.si_uid
37 #define si_status  __si_fields.__sigchld.si_status
38 #define si_utime   __si_fields.__sigchld.si_utime
39 #define si_stime   __si_fields.__sigchld.si_stime
40 #define si_value   __si_fields.__rt.si_sigval
41 #define si_addr    __si_fields.__sigfault.si_addr
42 #define si_band    __si_fields.__sigpoll.si_band
43
44 #define SA_NOCLDSTOP  1
45 #define SA_NOCLDWAIT  2
46 #define SA_SIGINFO    4
47 #define SA_ONSTACK    0x08000000
48 #define SA_RESTART    0x10000000
49 #define SA_NODEFER    0x40000000
50 #define SA_RESETHAND  0x80000000
51
52 #define SS_ONSTACK    1
53 #define SS_DISABLE    2
54
55 #define SIG_BLOCK     0
56 #define SIG_UNBLOCK   1
57 #define SIG_SETMASK   2
58
59 #define SIG_ERR  ((void (*)(int))-1)
60 #define SIG_DFL  ((void (*)(int)) 0)
61 #define SIG_IGN  ((void (*)(int)) 1)
62 #define SIG_HOLD ((void (*)(int)) 2)
63
64 #define NSIG      64
65
66 #define SIGHUP    1
67 #define SIGINT    2
68 #define SIGQUIT   3
69 #define SIGILL    4
70 #define SIGTRAP   5
71 #define SIGABRT   6
72 #define SIGBUS    7
73 #define SIGFPE    8
74 #define SIGKILL   9
75 #define SIGUSR1   10
76 #define SIGSEGV   11
77 #define SIGUSR2   12
78 #define SIGPIPE   13
79 #define SIGALRM   14
80 #define SIGTERM   15
81 #define SIGSTKFLT 16
82 #define SIGCHLD   17
83 #define SIGCONT   18
84 #define SIGSTOP   19
85 #define SIGTSTP   20
86 #define SIGTTIN   21
87 #define SIGTTOU   22
88 #define SIGURG    23
89 #define SIGXCPU   24
90 #define SIGXFSZ   25
91 #define SIGVTALRM 26
92 #define SIGPROF   27
93 #define SIGWINCH  28
94 #define SIGIO     29
95 #define SIGPOLL   29
96 #define SIGPWR    30
97 #define SIGSYS    31
98 #define SIGUNUSED SIGSYS