100 lines
2.2 KiB
C
100 lines
2.2 KiB
C
/* Need to turn off synchronous error signals (SIGPIPE, SIGSYS). */
|
|
|
|
#include "../scsh_aux.h"
|
|
|
|
/* Make sure our exports match up w/the implementation: */
|
|
#include "../signals1.h"
|
|
|
|
/* This table converts Unix signal numbers to S48/scsh interrupt numbers.
|
|
** If the signal doesn't have an interrupt number, the entry is -1.
|
|
** (Only asynchronous signals have interrupt numbers.)
|
|
**
|
|
** Note that we bake into this table the integer values of the signals --
|
|
** i.e., we assume that SIGHUP=1, SIGALRM=15, etc. So this definition is
|
|
** very system-dependent.
|
|
*/
|
|
const int sig2int[] = {
|
|
-1, /* 0 is not a signal */
|
|
scshint_hup, /* 1: SIGHUP */
|
|
scshint_keyboard, /* 2: SIGINT */
|
|
scshint_quit, /* 3: SIGQUIT */
|
|
-1, /* 4: SIGILL */
|
|
-1, /* 5: SIGTRAP */
|
|
-1, /* 6: SIGABRT */
|
|
-1, /* 7: SIGEMT */
|
|
-1, /* 8: SIGFPE */
|
|
-1, /* 9: SIGKILL */
|
|
-1, /* 10: SIGBUS */
|
|
-1, /* 11: SIGSEGV */
|
|
-1, /* 12: SIGSYS */
|
|
-1, /* 13: SIGPIPE */
|
|
scshint_alarm, /* 14: SIGALRM */
|
|
scshint_term, /* 15: SIGTERM */
|
|
scshint_usr1, /* 16: SIGUSR1 */
|
|
scshint_usr2, /* 17: SIGUSR2 */
|
|
scshint_chld, /* 18: SIGCHLD */
|
|
scshint_pwr, /* 19: SIGPWR */
|
|
scshint_vtalrm, /* 20: SIGVTALRM */
|
|
scshint_prof, /* 21: SIGPROF */
|
|
scshint_io, /* 22: SIGIO */
|
|
scshint_winch, /* 23: SIGWINCH */
|
|
-1, /* 24: SIGSTOP */
|
|
scshint_tstp, /* 25: SIGTSTP */
|
|
scshint_cont, /* 26: SIGCONT */
|
|
-1, /* 27: SIGTTIN */ /* scshint_ttyin */
|
|
-1, /* 28: SIGTTOU */ /* scshint_ttyou */
|
|
scshint_urg, /* 29: SIGURG */
|
|
-1, /* 30: SIGLOST */
|
|
-1, /* 32: SIGDIL */
|
|
scshint_xcpu, /* 33: SIGXCPU */
|
|
scshint_xfsz /* 34: SIGXFSZ */
|
|
};
|
|
|
|
const int max_sig = 34; /* SIGXFSZ */
|
|
|
|
/*
|
|
scshint_alarm
|
|
scshint_keyboard
|
|
scshint_memory_shortage
|
|
scshint_chld
|
|
scshint_cont
|
|
scshint_hup
|
|
scshint_quit
|
|
scshint_term
|
|
scshint_tstp
|
|
scshint_usr1
|
|
scshint_usr2
|
|
scshint_info
|
|
scshint_io
|
|
scshint_poll
|
|
scshint_prof
|
|
scshint_pwr
|
|
scshint_urg
|
|
scshint_vtalrm
|
|
scshint_winch
|
|
scshint_xcpu
|
|
scshint_xfsz
|
|
|
|
scshint_alarm
|
|
scshint_chld
|
|
scshint_cont
|
|
scshint_hup
|
|
scshint_info
|
|
scshint_io
|
|
scshint_keyboard
|
|
scshint_memory_shortage
|
|
scshint_poll
|
|
scshint_prof
|
|
scshint_pwr
|
|
scshint_quit
|
|
scshint_term
|
|
scshint_tstp
|
|
scshint_urg
|
|
scshint_usr1
|
|
scshint_usr2
|
|
scshint_vtalrm
|
|
scshint_winch
|
|
scshint_xcpu
|
|
scshint_xfsz
|
|
*/
|