|
|
1.1 root 1: /* signal.h 6.1 83/08/14 */
2:
3: #ifndef NSIG
4: #define NSIG 32
5:
6: #define SIGHUP 1 /* hangup */
7: #define SIGINT 2 /* interrupt */
8: #define SIGQUIT 3 /* quit */
9: #define SIGILL 4 /* illegal instruction (not reset when caught) */
10: #define ILL_RESAD_FAULT 0x0 /* reserved addressing fault */
11: #define ILL_PRIVIN_FAULT 0x1 /* privileged instruction fault */
12: #define ILL_RESOP_FAULT 0x2 /* reserved operand fault */
13: #define SIGTRAP 5 /* trace trap (not reset when caught) */
14: #define SIGIOT 6 /* IOT instruction */
15: #define SIGEMT 7 /* EMT instruction */
16: #define SIGFPE 8 /* floating point exception */
17: #define FPE_INTOVF_TRAP 0x1 /* integer overflow */
18: #define FPE_INTDIV_TRAP 0x2 /* integer divide by zero */
1.1.1.2 ! root 19: #define FPE_FLTDIV_TRAP 0x3 /* floating/decimal divide by zero */
! 20: #define FPE_FLTOVF_TRAP 0x4 /* floating overflow */
1.1 root 21: #define FPE_FLTUND_TRAP 0x5 /* floating underflow */
22: #define SIGKILL 9 /* kill (cannot be caught or ignored) */
23: #define SIGBUS 10 /* bus error */
24: #define SIGSEGV 11 /* segmentation violation */
25: #define SIGSYS 12 /* bad argument to system call */
26: #define SIGPIPE 13 /* write on a pipe with no one to read it */
27: #define SIGALRM 14 /* alarm clock */
28: #define SIGTERM 15 /* software termination signal from kill */
29: #define SIGURG 16 /* urgent condition on IO channel */
30: #define SIGSTOP 17 /* sendable stop signal not from tty */
31: #define SIGTSTP 18 /* stop signal from tty */
32: #define SIGCONT 19 /* continue a stopped process */
33: #define SIGCHLD 20 /* to parent on child stop or exit */
34: #define SIGTTIN 21 /* to readers pgrp upon background tty read */
35: #define SIGTTOU 22 /* like TTIN for output if (tp->t_local<OSTOP) */
36: #define SIGIO 23 /* input/output possible signal */
37: #define SIGXCPU 24 /* exceeded CPU time limit */
38: #define SIGXFSZ 25 /* exceeded file size limit */
39: #define SIGVTALRM 26 /* virtual time alarm */
40: #define SIGPROF 27 /* profiling time alarm */
41:
42: #ifndef KERNEL
43: int (*signal())();
44: #endif
45:
46: /*
47: * Signal vector "template" used in sigvec call.
48: */
49: struct sigvec {
50: int (*sv_handler)(); /* signal handler */
51: int sv_mask; /* signal mask to apply */
52: int sv_onstack; /* if non-zero, take on signal stack */
53: };
54:
55: /*
56: * Structure used in sigstack call.
57: */
58: struct sigstack {
59: char *ss_sp; /* signal stack pointer */
60: int ss_onstack; /* current status */
61: };
62:
63: /*
64: * Information pushed on stack when a signal is delivered.
65: * This is used by the kernel to restore state following
66: * execution of the signal handler. It is also made available
67: * to the handler to allow it to properly restore state if
68: * a non-standard exit is performed.
69: */
70: struct sigcontext {
71: int sc_onstack; /* sigstack state to restore */
72: int sc_mask; /* signal mask to restore */
73: int sc_sp; /* sp to restore */
74: int sc_pc; /* pc to retore */
75: int sc_ps; /* psl to restore */
76: };
77:
78: #define BADSIG (int (*)())-1
79: #define SIG_DFL (int (*)())0
80: #define SIG_IGN (int (*)())1
81:
82: #ifdef KERNEL
83: #define SIG_CATCH (int (*)())2
84: #define SIG_HOLD (int (*)())3
85: #endif
86: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.