d65da58fb9551b130f44831e06f8fdf6713b5147
[mmh] / h / signals.h
1 /*
2  * signals.h -- header file for nmh signal interface
3  */
4
5 #include <config.h>
6
7 /*
8  * The type for a signal handler
9  */
10 typedef RETSIGTYPE (*SIGNAL_HANDLER)(int);
11
12 /*
13  * If not a POSIX machine, then we create our
14  * own POSIX style signal sets functions. This
15  * currently assumes you have 31 signals, which
16  * should be true on most pure BSD machines.
17  */
18 #ifndef POSIX_SIGNALS
19 # define sigemptyset(s)    (*(s) = 0)
20 # define sigfillset(s)     (*(s) = ~((sigset_t) 0), 0)
21 # define sigaddset(s,n)    (*(s) |=  (1 << ((n) - 1)), 0)
22 # define sigdelset(s,n)    (*(s) &= ~(1 << ((n) - 1)), 0)
23 # define sigismember(s,n)  ((*(s) & (1 << ((n) - 1))) != 0)
24 #endif
25
26 /*
27  * prototypes
28  */
29 int SIGPROCMASK (int, const sigset_t *, sigset_t *);
30 SIGNAL_HANDLER SIGNAL (int, SIGNAL_HANDLER);
31 SIGNAL_HANDLER SIGNAL2 (int, SIGNAL_HANDLER);