source: vendor/emx/current/include/sys/signal.h

Last change on this file was 18, checked in by bird, 23 years ago

Initial revision

  • Property cvs2svn:cvs-rev set to 1.1
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 3.0 KB
Line 
1/* sys/signal.h (emx+gcc) */
2
3#ifndef _SYS_SIGNAL_H
4#define _SYS_SIGNAL_H
5
6#if defined (__cplusplus)
7extern "C" {
8#endif
9
10typedef int sig_atomic_t;
11
12#define SIGHUP 1 /* Hangup */
13#define SIGINT 2 /* Interrupt (Ctrl-C) */
14#define SIGQUIT 3 /* Quit */
15#define SIGILL 4 /* Illegal instruction */
16#define SIGTRAP 5 /* Single step (debugging) */
17#define SIGABRT 6 /* abort () */
18#define SIGEMT 7 /* EMT instruction */
19#define SIGFPE 8 /* Floating point */
20#define SIGKILL 9 /* Kill process */
21#define SIGBUS 10 /* Bus error */
22#define SIGSEGV 11 /* Segmentation fault */
23#define SIGSYS 12 /* Invalid argument to system call */
24#define SIGPIPE 13 /* Broken pipe */
25#define SIGALRM 14 /* Alarm */
26#define SIGTERM 15 /* Termination, process killed */
27#define SIGUSR1 16 /* User-defined signal #1 */
28#define SIGUSR2 17 /* User-defined signal #2 */
29#define SIGCHLD 18 /* Death of a child process */
30#define SIGBREAK 21 /* Break (Ctrl-Break) */
31#define SIGWINCH 28 /* Window size change (not implemented) */
32
33#define SIGPTRACENOTIFY 128 /* Notification from ptrace() */
34
35#define SIGCLD SIGCHLD
36
37#define SIG_DFL ((void (*)(int))0)
38#define SIG_IGN ((void (*)(int))1)
39#define SIG_ERR ((void (*)(int))-1)
40
41void (*signal (int, void (*)(int)))(int);
42int raise (int);
43
44
45#if !defined (__STRICT_ANSI__)
46
47#define NSIG 29
48
49#define SA_NOCLDSTOP 0x0001
50
51#define SIG_BLOCK 1
52#define SIG_UNBLOCK 2
53#define SIG_SETMASK 3
54
55#if !defined (_SIGSET_T)
56#define _SIGSET_T
57typedef unsigned long sigset_t;
58#endif
59
60struct sigaction
61{
62 void (*sa_handler)(int);
63 sigset_t sa_mask;
64 int sa_flags;
65};
66
67
68int kill (int, int);
69int pause (void);
70
71int sigaction (int, __const__ struct sigaction *, struct sigaction *);
72int sigpending (sigset_t *);
73int sigprocmask (int, __const__ sigset_t *, sigset_t *);
74int sigsuspend (__const__ sigset_t *);
75
76int sigaddset (sigset_t *, int);
77int sigdelset (sigset_t *, int);
78int sigemptyset (sigset_t *);
79int sigfillset (sigset_t *);
80int sigismember (__const__ sigset_t *, int);
81
82#define _SIGMASK(sig) ((sigset_t)1 << ((sig) - 1))
83#define __sigaddset(set,sig) (*(set) |= _SIGMASK (sig), 0)
84#define __sigdelset(set,sig) (*(set) &= ~_SIGMASK (sig), 0)
85#define __sigemptyset(set) (*(set) = 0, 0)
86#define __sigfillset(set) (*(set) = ~(sigset_t)0, 0)
87#define __sigismember(set,sig) ((*(set) & _SIGMASK (sig)) ? 1 : 0)
88
89int _kill (int, int);
90int _pause (void);
91
92int _sigaction (int, __const__ struct sigaction *, struct sigaction *);
93int _sigpending (sigset_t *);
94int _sigprocmask (int, __const__ sigset_t *, sigset_t *);
95int _sigsuspend (__const__ sigset_t *);
96
97int _sigaddset (sigset_t *, int);
98int _sigdelset (sigset_t *, int);
99int _sigemptyset (sigset_t *);
100int _sigfillset (sigset_t *);
101int _sigismember (__const__ sigset_t *, int);
102
103#endif
104
105
106#if !defined (__STRICT_ANSI__) && !defined (_POSIX_SOURCE)
107
108#define SIG_ACK ((void (*)(int))4)
109
110#define SA_SYSV 0x0002 /* Reset to SIG_DFL */
111#define SA_ACK 0x0004 /* Don't unblock automatically */
112
113#define SIGTY void
114
115#endif
116
117
118#if defined (__cplusplus)
119}
120#endif
121
122#endif /* not _SYS_SIGNAL_H */
Note: See TracBrowser for help on using the repository browser.