diff options
Diffstat (limited to 'src/pkg/runtime/signals_linux.h')
| -rw-r--r-- | src/pkg/runtime/signals_linux.h | 106 |
1 files changed, 68 insertions, 38 deletions
diff --git a/src/pkg/runtime/signals_linux.h b/src/pkg/runtime/signals_linux.h index 1fc5f8c87c..1df063a187 100644 --- a/src/pkg/runtime/signals_linux.h +++ b/src/pkg/runtime/signals_linux.h @@ -2,50 +2,80 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -#define C SigCatch -#define I SigIgnore -#define R SigRestart -#define Q SigQueue +#define N SigNotify +#define K SigKill +#define T SigThrow #define P SigPanic SigTab runtimeĀ·sigtab[] = { /* 0 */ 0, "SIGNONE: no trap", - /* 1 */ Q+R, "SIGHUP: terminal line hangup", - /* 2 */ Q+R, "SIGINT: interrupt", - /* 3 */ C, "SIGQUIT: quit", - /* 4 */ C, "SIGILL: illegal instruction", - /* 5 */ C, "SIGTRAP: trace trap", - /* 6 */ C, "SIGABRT: abort", - /* 7 */ C+P, "SIGBUS: bus error", - /* 8 */ C+P, "SIGFPE: floating-point exception", + /* 1 */ N+K, "SIGHUP: terminal line hangup", + /* 2 */ N+K, "SIGINT: interrupt", + /* 3 */ N+T, "SIGQUIT: quit", + /* 4 */ T, "SIGILL: illegal instruction", + /* 5 */ T, "SIGTRAP: trace trap", + /* 6 */ N+T, "SIGABRT: abort", + /* 7 */ P, "SIGBUS: bus error", + /* 8 */ P, "SIGFPE: floating-point exception", /* 9 */ 0, "SIGKILL: kill", - /* 10 */ Q+I+R, "SIGUSR1: user-defined signal 1", - /* 11 */ C+P, "SIGSEGV: segmentation violation", - /* 12 */ Q+I+R, "SIGUSR2: user-defined signal 2", - /* 13 */ I, "SIGPIPE: write to broken pipe", - /* 14 */ Q+I+R, "SIGALRM: alarm clock", - /* 15 */ Q+R, "SIGTERM: termination", - /* 16 */ C, "SIGSTKFLT: stack fault", - /* 17 */ Q+I+R, "SIGCHLD: child status has changed", + /* 10 */ N, "SIGUSR1: user-defined signal 1", + /* 11 */ P, "SIGSEGV: segmentation violation", + /* 12 */ N, "SIGUSR2: user-defined signal 2", + /* 13 */ N, "SIGPIPE: write to broken pipe", + /* 14 */ N, "SIGALRM: alarm clock", + /* 15 */ N+K, "SIGTERM: termination", + /* 16 */ T, "SIGSTKFLT: stack fault", + /* 17 */ N, "SIGCHLD: child status has changed", /* 18 */ 0, "SIGCONT: continue", /* 19 */ 0, "SIGSTOP: stop, unblockable", - /* 20 */ Q+I+R, "SIGTSTP: keyboard stop", - /* 21 */ Q+I+R, "SIGTTIN: background read from tty", - /* 22 */ Q+I+R, "SIGTTOU: background write to tty", - /* 23 */ Q+I+R, "SIGURG: urgent condition on socket", - /* 24 */ Q+I+R, "SIGXCPU: cpu limit exceeded", - /* 25 */ Q+I+R, "SIGXFSZ: file size limit exceeded", - /* 26 */ Q+I+R, "SIGVTALRM: virtual alarm clock", - /* 27 */ Q+I+R, "SIGPROF: profiling alarm clock", - /* 28 */ Q+I+R, "SIGWINCH: window size change", - /* 29 */ Q+I+R, "SIGIO: i/o now possible", - /* 30 */ Q+I+R, "SIGPWR: power failure restart", - /* 31 */ C, "SIGSYS: bad system call", + /* 20 */ N, "SIGTSTP: keyboard stop", + /* 21 */ N, "SIGTTIN: background read from tty", + /* 22 */ N, "SIGTTOU: background write to tty", + /* 23 */ N, "SIGURG: urgent condition on socket", + /* 24 */ N, "SIGXCPU: cpu limit exceeded", + /* 25 */ N, "SIGXFSZ: file size limit exceeded", + /* 26 */ N, "SIGVTALRM: virtual alarm clock", + /* 27 */ N, "SIGPROF: profiling alarm clock", + /* 28 */ N, "SIGWINCH: window size change", + /* 29 */ N, "SIGIO: i/o now possible", + /* 30 */ N, "SIGPWR: power failure restart", + /* 31 */ N, "SIGSYS: bad system call", + /* 32 */ N, "signal 32", + /* 33 */ N, "signal 33", + /* 34 */ N, "signal 34", + /* 35 */ N, "signal 35", + /* 36 */ N, "signal 36", + /* 37 */ N, "signal 37", + /* 38 */ N, "signal 38", + /* 39 */ N, "signal 39", + /* 40 */ N, "signal 40", + /* 41 */ N, "signal 41", + /* 42 */ N, "signal 42", + /* 43 */ N, "signal 43", + /* 44 */ N, "signal 44", + /* 45 */ N, "signal 45", + /* 46 */ N, "signal 46", + /* 47 */ N, "signal 47", + /* 48 */ N, "signal 48", + /* 49 */ N, "signal 49", + /* 50 */ N, "signal 50", + /* 51 */ N, "signal 51", + /* 52 */ N, "signal 52", + /* 53 */ N, "signal 53", + /* 54 */ N, "signal 54", + /* 55 */ N, "signal 55", + /* 56 */ N, "signal 56", + /* 57 */ N, "signal 57", + /* 58 */ N, "signal 58", + /* 59 */ N, "signal 59", + /* 60 */ N, "signal 60", + /* 61 */ N, "signal 61", + /* 62 */ N, "signal 62", + /* 63 */ N, "signal 63", + /* 64 */ N, "signal 64", }; -#undef C -#undef I -#undef R -#undef Q -#undef P -#define NSIG 32 +#undef N +#undef K +#undef T +#undef P |
