1 /***********************************************************************
3 * This software is part of the ast package *
4 * Copyright (c) 1982-2010 AT&T Intellectual Property *
5 * and is licensed under the *
6 * Common Public License, Version 1.0 *
7 * by AT&T Intellectual Property *
9 * A copy of the License is available at *
10 * http://www.opensource.org/licenses/cpl1.0.txt *
11 * (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) *
13 * Information and Software Systems Research *
17 * David Korn <dgk@research.att.com> *
19 ***********************************************************************/
24 #if defined(SIGCLD) && !defined(SIGCHLD)
25 # define SIGCHLD SIGCLD
28 #define VAL(sig,mode) ((sig+1)|((mode)<<SH_SIGBITS))
29 #define TRAP(n) (((n)|SH_TRAP)-1)
31 #ifndef ERROR_dictionary
32 # define ERROR_dictionary(s) (s)
34 #define S(s) ERROR_dictionary(s)
37 * This is a table that gives numbers and default settings to each signal.
38 * The signal numbers go in the low bits and the attributes go in the high bits.
39 * The names must be ASCII sorted lo-hi.
42 const struct shtable2 shtab_signals
[] =
45 "ABRT", VAL(SIGABRT
,SH_SIGDONE
), S("Abort"),
48 "AIO", VAL(SIGAIO
,SH_SIGIGNORE
), S("Asynchronous I/O"),
51 "ALRM", VAL(SIGALRM
,SH_SIGDONE
), S("Alarm call"),
54 "ALRM1", VAL(SIGALRM1
,SH_SIGDONE
), S("Scheduling - reserved"),
57 "APOLLO", VAL(SIGAPOLLO
,0), S("SIGAPOLLO"),
58 #endif /* SIGAPOLLO */
60 "BUS", VAL(SIGBUS
,SH_SIGDONE
), S("Bus error"),
63 "CANCEL", VAL(SIGCANCEL
,SH_SIGIGNORE
), S("Thread cancellation"),
66 "CHLD", VAL(SIGCHLD
,SH_SIGFAULT
), S("Death of Child"),
69 "CLD", VAL(SIGCLD
,SH_SIGFAULT
), S("Death of Child"),
74 "CLD", VAL(SIGCLD
,SH_SIGFAULT
), S("Death of Child"),
78 "CONT", VAL(SIGCONT
,SH_SIGIGNORE
), S("Stopped process continued"),
81 "CPUFAIL", VAL(SIGCPUFAIL
,0), S("Predictive processor deconfiguration"),
82 #endif /* SIGRETRACT */
83 "DEBUG", VAL(TRAP(SH_DEBUGTRAP
),0), "",
85 "DANGER", VAL(SIGDANGER
,0), S("System crash soon"),
86 #endif /* SIGDANGER */
88 "DIL", VAL(SIGDIL
,0), S("DIL signal"),
91 "EMT", VAL(SIGEMT
,SH_SIGDONE
), S("EMT trap"),
93 "ERR", VAL(TRAP(SH_ERRTRAP
),0), "",
95 "ERR", VAL(SIGERR
,0), "",
98 "FPE", VAL(SIGFPE
,SH_SIGDONE
), S("Floating exception"),
100 "FREEZE", VAL(SIGFREEZE
,SH_SIGIGNORE
), S("Special signal used by CPR"),
101 #endif /* SIGFREEZE */
103 "GRANT", VAL(SIGGRANT
,0), S("Grant monitor mode"),
104 #endif /* SIGGRANT */
105 "HUP", VAL(SIGHUP
,SH_SIGDONE
), S("Hangup"),
106 "ILL", VAL(SIGILL
,SH_SIGDONE
), S("Illegal instruction"),
108 "INFO", VAL(SIGINFO
,SH_SIGIGNORE
), S("Information request"),
111 "INT", VAL(SIGINT
,SH_SIGINTERACTIVE
), S("Interrupt"),
113 "INT", VAL(SIGINT
,SH_SIGINTERACTIVE
), "",
116 "IO", VAL(SIGIO
,SH_SIGDONE
), S("IO signal"),
119 "IOT", VAL(SIGIOT
,SH_SIGDONE
), S("Abort"),
122 "JVM1", VAL(SIGJVM1
,SH_SIGIGNORE
), S("Special signal used by Java Virtual Machine"),
125 "JVM2", VAL(SIGJVM2
,SH_SIGIGNORE
), S("Special signal used by Java Virtual Machine"),
127 "KEYBD", VAL(TRAP(SH_KEYTRAP
),0), "",
129 "KILL", VAL(SIGKILL
,0), S("Killed"),
132 "LAB", VAL(SIGLAB
,0), S("Security label changed"),
135 "LOST", VAL(SIGLOST
,SH_SIGDONE
), S("Resources lost"),
138 "LWP", VAL(SIGLWP
,SH_SIGIGNORE
), S("Special signal used by thread library"),
141 "MIGRATE", VAL(SIGMIGRATE
,0), S("Migrate process"),
142 #endif /* SIGMIGRATE */
144 "MSG", VAL(SIGMSG
,0), S("Ring buffer input data"),
147 "PHONE", VAL(SIGPHONE
,0), S("Phone interrupt"),
148 #endif /* SIGPHONE */
151 "PIPE", VAL(SIGPIPE
,SH_SIGDONE
), S("Broken Pipe"),
153 "PIPE", VAL(SIGPIPE
,SH_SIGDONE
), "",
157 "POLL", VAL(SIGPOLL
,SH_SIGDONE
), S("Polling alarm"),
160 "PROF", VAL(SIGPROF
,SH_SIGDONE
), S("Profiling time alarm"),
163 "PRE", VAL(SIGPRE
,SH_SIGDONE
), S("Programming exception"),
167 "PWR", VAL(SIGPWR
,SH_SIGIGNORE
), S("Power fail"),
171 "QUIT", VAL(SIGQUIT
,SH_SIGDONE
|SH_SIGINTERACTIVE
), S("Quit"),
174 "RETRACT", VAL(SIGRETRACT
,0), S("Relinquish monitor mode"),
175 #endif /* SIGRETRACT */
177 "RTMIN", VAL(SH_SIGRTMIN
,SH_SIGRUNTIME
), S("Lowest priority realtime signal"),
178 #endif /* SIGRTMIN */
180 "RTMAX", VAL(SH_SIGRTMAX
,SH_SIGRUNTIME
), S("Highest priority realtime signal"),
181 #endif /* SIGRTMAX */
183 "SAK", VAL(SIGSAK
,0), S("Secure attention key"),
185 "SEGV", VAL(SIGSEGV
,0), S("Memory fault"),
187 "SOUND", VAL(SIGSOUND
,0), S("Sound completed"),
188 #endif /* SIGSOUND */
190 "STOP", VAL(SIGSTOP
,0), S("Stopped (SIGSTOP)"),
193 "SYS", VAL(SIGSYS
,SH_SIGDONE
), S("Bad system call"),
195 "TERM", VAL(SIGTERM
,SH_SIGDONE
|SH_SIGINTERACTIVE
), S("Terminated"),
197 "THAW", VAL(SIGTHAW
,SH_SIGIGNORE
), S("Special signal used by CPR"),
201 "TINT", VAL(SIGTINT
,0), S("Interrupt"),
203 "TINT", VAL(SIGTINT
,0), "",
207 "TRAP", VAL(SIGTRAP
,SH_SIGDONE
), S("Trace/BPT trap"),
210 "TSTP", VAL(SIGTSTP
,0), S("Stopped"),
213 "TTIN", VAL(SIGTTIN
,0), S("Stopped (SIGTTIN)"),
216 "TTOU", VAL(SIGTTOU
,0), S("Stopped(SIGTTOU)"),
219 "URG", VAL(SIGURG
,SH_SIGIGNORE
), S("Socket interrupt"),
222 "USR1", VAL(SIGUSR1
,SH_SIGDONE
), S("User signal 1"),
225 "USR2", VAL(SIGUSR2
,SH_SIGDONE
), S("User signal 2"),
228 "VIRT", VAL(SIGVIRT
,0), S("Virtual timer alarm"),
231 "VTALRM", VAL(SIGVTALRM
,SH_SIGDONE
), S("Virtual time alarm"),
232 #endif /* SIGVTALRM */
234 "WAITING", VAL(SIGWAITING
,SH_SIGIGNORE
), S("All threads blocked"),
235 #endif /* SIGWAITING */
237 "WINCH", VAL(SIGWINCH
,SH_SIGIGNORE
), S("Window size change"),
238 #endif /* SIGWINCH */
240 "XCPU", VAL(SIGXCPU
,SH_SIGDONE
|SH_SIGINTERACTIVE
), S("Exceeded CPU time limit"),
243 "XFSZ", VAL(SIGXFSZ
,SH_SIGDONE
|SH_SIGINTERACTIVE
), S("Exceeded file size limit"),
246 "XRES", VAL(SIGXRES
,SH_SIGDONE
|SH_SIGINTERACTIVE
), S("Exceeded resource control"),