1 /*- 2 * SPDX-License-Identifier: BSD-3-Clause 3 * 4 * Copyright (c) 1983, 1993 5 * The Regents of the University of California. All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 3. Neither the name of the University nor the names of its contributors 16 * may be used to endorse or promote products derived from this software 17 * without specific prior written permission. 18 * 19 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 20 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 21 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 22 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 23 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29 * SUCH DAMAGE. 30 * 31 * @(#)siglist.c 8.1 (Berkeley) 6/4/93 32 * $FreeBSD: head/lib/libc/gen/siglist.c 335898 2018-07-03 17:31:45Z jhb $ 33 */ 34 35 #include <signal.h> 36 37 const char *const sys_signame[NSIG] = { 38 [0] = "Signal 0", 39 [SIGHUP] = "HUP", 40 [SIGINT] = "INT", 41 [SIGQUIT] = "QUIT", 42 [SIGILL] = "ILL", 43 [SIGTRAP] = "TRAP", 44 [SIGABRT] = "ABRT", 45 [SIGEMT] = "EMT", 46 [SIGFPE] = "FPE", 47 [SIGKILL] = "KILL", 48 [SIGBUS] = "BUS", 49 [SIGSEGV] = "SEGV", 50 [SIGSYS] = "SYS", 51 [SIGPIPE] = "PIPE", 52 [SIGALRM] = "ALRM", 53 [SIGTERM] = "TERM", 54 [SIGURG] = "URG", 55 [SIGSTOP] = "STOP", 56 [SIGTSTP] = "TSTP", 57 [SIGCONT] = "CONT", 58 [SIGCHLD] = "CHLD", 59 [SIGTTIN] = "TTIN", 60 [SIGTTOU] = "TTOU", 61 [SIGIO] = "IO", 62 [SIGXCPU] = "XCPU", 63 [SIGXFSZ] = "XFSZ", 64 [SIGVTALRM] = "VTALRM", 65 [SIGPROF] = "PROF", 66 [SIGWINCH] = "WINCH", 67 [SIGINFO] = "INFO", 68 [SIGUSR1] = "USR1", 69 [SIGUSR2] = "USR2", 70 71 /* 32-63 */ 72 73 [SIGTHR] = "THR", 74 [SIGCKPT] = "CKPT", 75 [SIGCKPTEXIT] = "CKPTEXIT", 76 [35] = "Signal 35", 77 [36] = "Signal 36", 78 [37] = "Signal 37", 79 [38] = "Signal 38", 80 [39] = "Signal 39", 81 [40] = "Signal 40", 82 [41] = "Signal 41", 83 [42] = "Signal 42", 84 [43] = "Signal 43", 85 [44] = "Signal 44", 86 [45] = "Signal 45", 87 [46] = "Signal 46", 88 [47] = "Signal 47", 89 [48] = "Signal 48", 90 [49] = "Signal 49", 91 [50] = "Signal 50", 92 [51] = "Signal 51", 93 [52] = "Signal 52", 94 [53] = "Signal 53", 95 [54] = "Signal 54", 96 [55] = "Signal 55", 97 [56] = "Signal 56", 98 [57] = "Signal 57", 99 [58] = "Signal 58", 100 [59] = "Signal 59", 101 [60] = "Signal 60", 102 [61] = "Signal 61", 103 [62] = "Signal 62", 104 [63] = "Signal 63" 105 }; 106 107 const char *const sys_siglist[NSIG] = { 108 [0] = "Signal 0", 109 [SIGHUP] = "Hangup", 110 [SIGINT] = "Interrupt", 111 [SIGQUIT] = "Quit", 112 [SIGILL] = "Illegal instruction", 113 [SIGTRAP] = "Trace/BPT trap", 114 [SIGABRT] = "Abort trap", 115 [SIGEMT] = "EMT trap", 116 [SIGFPE] = "Floating point exception", 117 [SIGKILL] = "Killed", 118 [SIGBUS] = "Bus error", 119 [SIGSEGV] = "Segmentation fault", 120 [SIGSYS] = "Bad system call", 121 [SIGPIPE] = "Broken pipe", 122 [SIGALRM] = "Alarm clock", 123 [SIGTERM] = "Terminated", 124 [SIGURG] = "Urgent I/O condition", 125 [SIGSTOP] = "Suspended (signal)", 126 [SIGTSTP] = "Suspended", 127 [SIGCONT] = "Continued", 128 [SIGCHLD] = "Child exited", 129 [SIGTTIN] = "Stopped (tty input)", 130 [SIGTTOU] = "Stopped (tty output)", 131 [SIGIO] = "I/O possible", 132 [SIGXCPU] = "Cputime limit exceeded", 133 [SIGXFSZ] = "Filesize limit exceeded", 134 [SIGVTALRM] = "Virtual timer expired", 135 [SIGPROF] = "Profiling timer expired", 136 [SIGWINCH] = "Window size changes", 137 [SIGINFO] = "Information request", 138 [SIGUSR1] = "User defined signal 1", 139 [SIGUSR2] = "User defined signal 2", 140 141 /* 32-63 */ 142 143 [SIGTHR] = "Thread Scheduler", 144 [SIGCKPT] = "CheckPoint", 145 [SIGCKPTEXIT] = "CheckPointExit", 146 [35] = "Signal 35", 147 [36] = "Signal 36", 148 [37] = "Signal 37", 149 [38] = "Signal 38", 150 [39] = "Signal 39", 151 [40] = "Signal 40", 152 [41] = "Signal 41", 153 [42] = "Signal 42", 154 [43] = "Signal 43", 155 [44] = "Signal 44", 156 [45] = "Signal 45", 157 [46] = "Signal 46", 158 [47] = "Signal 47", 159 [48] = "Signal 48", 160 [49] = "Signal 49", 161 [50] = "Signal 50", 162 [51] = "Signal 51", 163 [52] = "Signal 52", 164 [53] = "Signal 53", 165 [54] = "Signal 54", 166 [55] = "Signal 55", 167 [56] = "Signal 56", 168 [57] = "Signal 57", 169 [58] = "Signal 58", 170 [59] = "Signal 59", 171 [60] = "Signal 60", 172 [61] = "Signal 61", 173 [62] = "Signal 62", 174 [63] = "Signal 63" 175 }; 176 const int sys_nsig = sizeof(sys_siglist) / sizeof(sys_siglist[0]); 177