| 1 | /* sys/signal.h (emx+gcc) */
|
|---|
| 2 |
|
|---|
| 3 | #ifndef _SYS_SIGNAL_H
|
|---|
| 4 | #define _SYS_SIGNAL_H
|
|---|
| 5 |
|
|---|
| 6 | #if defined (__cplusplus)
|
|---|
| 7 | extern "C" {
|
|---|
| 8 | #endif
|
|---|
| 9 |
|
|---|
| 10 | typedef 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 |
|
|---|
| 41 | void (*signal (int, void (*)(int)))(int);
|
|---|
| 42 | int 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
|
|---|
| 57 | typedef unsigned long sigset_t;
|
|---|
| 58 | #endif
|
|---|
| 59 |
|
|---|
| 60 | struct sigaction
|
|---|
| 61 | {
|
|---|
| 62 | void (*sa_handler)(int);
|
|---|
| 63 | sigset_t sa_mask;
|
|---|
| 64 | int sa_flags;
|
|---|
| 65 | };
|
|---|
| 66 |
|
|---|
| 67 |
|
|---|
| 68 | int kill (int, int);
|
|---|
| 69 | int pause (void);
|
|---|
| 70 |
|
|---|
| 71 | int sigaction (int, __const__ struct sigaction *, struct sigaction *);
|
|---|
| 72 | int sigpending (sigset_t *);
|
|---|
| 73 | int sigprocmask (int, __const__ sigset_t *, sigset_t *);
|
|---|
| 74 | int sigsuspend (__const__ sigset_t *);
|
|---|
| 75 |
|
|---|
| 76 | int sigaddset (sigset_t *, int);
|
|---|
| 77 | int sigdelset (sigset_t *, int);
|
|---|
| 78 | int sigemptyset (sigset_t *);
|
|---|
| 79 | int sigfillset (sigset_t *);
|
|---|
| 80 | int 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 |
|
|---|
| 89 | int _kill (int, int);
|
|---|
| 90 | int _pause (void);
|
|---|
| 91 |
|
|---|
| 92 | int _sigaction (int, __const__ struct sigaction *, struct sigaction *);
|
|---|
| 93 | int _sigpending (sigset_t *);
|
|---|
| 94 | int _sigprocmask (int, __const__ sigset_t *, sigset_t *);
|
|---|
| 95 | int _sigsuspend (__const__ sigset_t *);
|
|---|
| 96 |
|
|---|
| 97 | int _sigaddset (sigset_t *, int);
|
|---|
| 98 | int _sigdelset (sigset_t *, int);
|
|---|
| 99 | int _sigemptyset (sigset_t *);
|
|---|
| 100 | int _sigfillset (sigset_t *);
|
|---|
| 101 | int _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 */
|
|---|