|
|
1.1 root 1: /*
2: * /usr/include/signal.h
3: *
4: * COHERENT signal support.
5: *
6: * Revised: Wed May 12 07:56:47 1993 CDT
7: */
8: #ifndef __SIGNAL_H__
9: #define __SIGNAL_H__
10:
11: #include <common/feature.h>
12: #include <common/ccompat.h>
13: #include <common/__pid.h>
14:
15: #if _I386
16:
17: #include <sys/signal.h>
18:
19: typedef long sig_atomic_t;
20:
21:
22: __EXTERN_C_BEGIN__
23:
24: __sigfunc_t signal __PROTO ((int _sig, __sigfunc_t _func));
25: int raise __PROTO ((int _sig));
26:
27: #if ! _STDC_SOURCE
28:
29: int kill __PROTO ((__pid_t _pid, int _sig));
30: int sigaction __PROTO ((int _sig,
31: __CONST__ struct sigaction * _act,
32: struct sigaction * _oact));
33: int sigaddset __PROTO ((sigset_t * _set, int _signo));
34: int sigdelset __PROTO ((sigset_t * _set, int _signo));
35: int sigemptyset __PROTO ((sigset_t * _set));
36: int sigfillset __PROTO ((sigset_t * _set));
37: int sigismember __PROTO ((__CONST__ sigset_t * _set,
38: int _signo));
39: int sigpending __PROTO ((sigset_t * _set));
40: int sigprocmask __PROTO ((int _how,
41: __CONST__ sigset_t * _set,
42: sigset_t * _oset));
43: int sigsuspend __PROTO ((__CONST__ sigset_t * _sigmask));
44:
45: #if _SYSV3
46:
47: /*
48: * Pre-SVR4 systems make these available as inlines. For us, this is optional
49: * but still legal. For SVR4 systems, we require proper error checking. For
50: * this to work, we depend on __SIGSET_UNIT (ss, n) not evaluating "n".
51: */
52:
53: #define sigfillset(set) ((set)->_sigbits [0] = -1UL, 0)
54: #define sigemptyset(set) ((set)->_sigbits [0] = 0)
55: #define sigismember(set, signo) ((set)->_sigbits [0] & __SIGSET_MASK (signo))
56: #define sigaddset(set, signo) ((set)->_sigbits [0] |= \
57: __SIGSET_MASK (signo), 0)
58: #define sigdelset(set, signo) ((set)->_sigbits [0] &= \
59: ~ __SIGSET_MASK (signo), 0)
60:
61: #endif /* _SYSV3 */
62:
63: #endif /* ! _STDC_SOURCE */
64:
65: __EXTERN_C_END__
66:
67: #else /* if ! _I386 */
68:
69: #include <sys/msig.h>
70:
71: #define SIGHUP 1 /* Hangup */
72: #define SIGINT 2 /* Interrupt */
73: #define SIGQUIT 3 /* Quit */
74: #define SIGALRM 4 /* Alarm */
75: #define SIGTERM 5 /* Software termination signal */
76: #define SIGREST 6 /* Restart */
77: #define SIGSYS 7 /* Bad argument to system call */
78: #define SIGPIPE 8 /* Write to pipe with no readers */
79: #define SIGKILL 9 /* Kill */
80: #define SIGTRAP 10 /* Breakpoint */
81: #define SIGSEGV 11 /* Segmentation violation */
82:
83: #endif /* ! _I386 */
84:
85: #endif /* ! defined (__SIGNAL_H__) */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.