xref: /netbsd-src/sys/compat/linux/arch/aarch64/linux_sigarray.c (revision abbc8a65e23054d25cf7067e2df63d999881954c)
1 /*	$NetBSD: linux_sigarray.c,v 1.1 2021/09/23 06:56:27 ryo Exp $	*/
2 
3 /*-
4  * Copyright (c) 2021 The NetBSD Foundation, Inc.
5  * 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  *
16  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
17  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
18  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
20  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26  * POSSIBILITY OF SUCH DAMAGE.
27  */
28 
29 const int linux_to_native_signo[LINUX__NSIG] = {
30 	/*  0 */ [0]			= 0,
31 	/*  1 */ [LINUX_SIGHUP]		= SIGHUP,
32 	/*  2 */ [LINUX_SIGINT]		= SIGINT,
33 	/*  3 */ [LINUX_SIGQUIT]	= SIGQUIT,
34 	/*  4 */ [LINUX_SIGILL]		= SIGILL,
35 	/*  5 */ [LINUX_SIGTRAP]	= SIGTRAP,
36 	/*  6 */ [LINUX_SIGABRT]	= SIGABRT,
37 	/*  7 */ [LINUX_SIGBUS]		= SIGBUS,
38 	/*  8 */ [LINUX_SIGFPE]		= SIGFPE,
39 	/*  9 */ [LINUX_SIGKILL]	= SIGKILL,
40 	/* 10 */ [LINUX_SIGUSR1]	= SIGUSR1,
41 	/* 11 */ [LINUX_SIGSEGV]	= SIGSEGV,
42 	/* 12 */ [LINUX_SIGUSR2]	= SIGUSR2,
43 	/* 13 */ [LINUX_SIGPIPE]	= SIGPIPE,
44 	/* 14 */ [LINUX_SIGALRM]	= SIGALRM,
45 	/* 15 */ [LINUX_SIGTERM]	= SIGTERM,
46 	/* 16 */ [LINUX_SIGSTKFLT]	= 0,
47 	/* 17 */ [LINUX_SIGCHLD]	= SIGCHLD,
48 	/* 18 */ [LINUX_SIGCONT]	= SIGCONT,
49 	/* 19 */ [LINUX_SIGSTOP]	= SIGSTOP,
50 	/* 20 */ [LINUX_SIGTSTP]	= SIGTSTP,
51 	/* 21 */ [LINUX_SIGTTIN]	= SIGTTIN,
52 	/* 22 */ [LINUX_SIGTTOU]	= SIGTTOU,
53 	/* 23 */ [LINUX_SIGURG]		= SIGURG,
54 	/* 24 */ [LINUX_SIGXCPU]	= SIGXCPU,
55 	/* 25 */ [LINUX_SIGXFSZ]	= SIGXFSZ,
56 	/* 26 */ [LINUX_SIGVTALRM]	= SIGVTALRM,
57 	/* 27 */ [LINUX_SIGPROF]	= SIGPROF,
58 	/* 28 */ [LINUX_SIGWINCH]	= SIGWINCH,
59 	/* 29 */ [LINUX_SIGIO]		= SIGIO,
60 	/* 30 */ [LINUX_SIGPWR]		= SIGPWR,
61 	/* 31 */ [LINUX_SIGSYS]		= SIGSYS,
62 	/* 32 */ /* SIGCANCEL */
63 	/* 33 */ /* SIGSETXID */
64 	/* 34 */ [LINUX_SIGRTMIN + 0]	= SIGRTMIN + 0,
65 	/* 35 */ [LINUX_SIGRTMIN + 1]	= SIGRTMIN + 1,
66 	/* 36 */ [LINUX_SIGRTMIN + 2]	= SIGRTMIN + 2,
67 	/* 37 */ [LINUX_SIGRTMIN + 3]	= SIGRTMIN + 3,
68 	/* 38 */ [LINUX_SIGRTMIN + 4]	= SIGRTMIN + 4,
69 	/* 39 */ [LINUX_SIGRTMIN + 5]	= SIGRTMIN + 5,
70 	/* 40 */ [LINUX_SIGRTMIN + 6]	= SIGRTMIN + 6,
71 	/* 41 */ [LINUX_SIGRTMIN + 7]	= SIGRTMIN + 7,
72 	/* 42 */ [LINUX_SIGRTMIN + 8]	= SIGRTMIN + 8,
73 	/* 43 */ [LINUX_SIGRTMIN + 9]	= SIGRTMIN + 9,
74 	/* 44 */ [LINUX_SIGRTMIN + 10]	= SIGRTMIN + 10,
75 	/* 45 */ [LINUX_SIGRTMIN + 11]	= SIGRTMIN + 11,
76 	/* 46 */ [LINUX_SIGRTMIN + 12]	= SIGRTMIN + 12,
77 	/* 47 */ [LINUX_SIGRTMIN + 13]	= SIGRTMIN + 13,
78 	/* 48 */ [LINUX_SIGRTMIN + 14]	= SIGRTMIN + 14,
79 	/* 49 */ [LINUX_SIGRTMIN + 15]	= SIGRTMIN + 15,
80 	/* 50 */ [LINUX_SIGRTMIN + 16]	= SIGRTMIN + 16,
81 	/* 51 */ [LINUX_SIGRTMIN + 17]	= SIGRTMIN + 17,
82 	/* 52 */ [LINUX_SIGRTMIN + 18]	= SIGRTMIN + 18,
83 	/* 53 */ [LINUX_SIGRTMIN + 19]	= SIGRTMIN + 19,
84 	/* 54 */ [LINUX_SIGRTMIN + 20]	= SIGRTMIN + 20,
85 	/* 55 */ [LINUX_SIGRTMIN + 21]	= SIGRTMIN + 21,
86 	/* 56 */ [LINUX_SIGRTMIN + 22]	= SIGRTMIN + 22,
87 	/* 57 */ [LINUX_SIGRTMIN + 23]	= SIGRTMIN + 23,
88 	/* 58 */ [LINUX_SIGRTMIN + 24]	= SIGRTMIN + 24,
89 	/* 59 */ [LINUX_SIGRTMIN + 25]	= SIGRTMIN + 25,
90 	/* 60 */ [LINUX_SIGRTMIN + 26]	= SIGRTMIN + 26,
91 	/* 61 */ [LINUX_SIGRTMIN + 27]	= SIGRTMIN + 27,
92 	/* 62 */ [LINUX_SIGRTMIN + 28]	= SIGRTMIN + 28,
93 	/* 63 */ [LINUX_SIGRTMIN + 29]	= SIGRTMIN + 29,
94 	/* 64 */ [LINUX_SIGRTMIN + 30]	= SIGRTMIN + 30,
95 };
96