1 /*
2 * Copyright (c) 2016-2018 The strace developers.
3 * All rights reserved.
4 *
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 */
7
8 #include "tests.h"
9 #include <signal.h>
10
11 #define CASE(x) case x: return #x
12
13 const char *
14 signal2name(int sig)
15 {
16 switch (sig) {
17 CASE(SIGALRM);
18 CASE(SIGBUS);
19 CASE(SIGCHLD);
20 CASE(SIGCONT);
21 CASE(SIGFPE);
22 CASE(SIGHUP);
23 CASE(SIGILL);
24 CASE(SIGINT);
25 CASE(SIGIO);
26 CASE(SIGPIPE);
27 CASE(SIGPROF);
28 CASE(SIGQUIT);
29 CASE(SIGSEGV);
30 CASE(SIGSYS);
31 CASE(SIGTERM);
32 CASE(SIGTRAP);
33 CASE(SIGTSTP);
34 CASE(SIGTTIN);
35 CASE(SIGTTOU);
36 CASE(SIGURG);
37 CASE(SIGUSR1);
38 CASE(SIGUSR2);
39 CASE(SIGVTALRM);
40 CASE(SIGWINCH);
41 CASE(SIGXCPU);
42 CASE(SIGXFSZ);
43 #if defined ALPHA
44 CASE(SIGABRT);
45 CASE(SIGEMT);
46 CASE(SIGINFO);
47 #elif defined SPARC || defined SPARC64
48 CASE(SIGABRT);
49 CASE(SIGEMT);
50 CASE(SIGLOST);
51 #elif defined MIPS
52 CASE(SIGEMT);
53 CASE(SIGIOT);
54 CASE(SIGPWR);
55 #else
56 CASE(SIGABRT);
57 CASE(SIGPWR);
58 CASE(SIGSTKFLT);
59 #endif
60 default:
61 perror_msg_and_fail("unknown signal number %d", sig);
62 }
63 }