1/*	$NetBSD: ibcs2_signal.c,v 1.14 2001/11/13 02:08:27 lukem Exp $	*/
2
3/*
4 * Copyright (c) 1995 Scott Bartram
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 * 3. The name of the author may not be used to endorse or promote products
16 *    derived from this software without specific prior written permission
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 */
29
30#include <sys/cdefs.h>
31__KERNEL_RCSID(0, "$NetBSD: ibcs2_signal.c,v 1.14 2001/11/13 02:08:27 lukem Exp $");
32
33#include <sys/types.h>
34#include <sys/signal.h>
35
36#include <compat/ibcs2/ibcs2_types.h>
37#include <compat/ibcs2/ibcs2_signal.h>
38
39const int native_to_ibcs2_signo[NSIG] = {
40	0,			/* 0 */
41	IBCS2_SIGHUP,		/* 1 */
42	IBCS2_SIGINT,		/* 2 */
43	IBCS2_SIGQUIT,		/* 3 */
44	IBCS2_SIGILL,		/* 4 */
45	IBCS2_SIGTRAP,		/* 5 */
46	IBCS2_SIGABRT,		/* 6 */
47	IBCS2_SIGEMT,		/* 7 */
48	IBCS2_SIGFPE,		/* 8 */
49	IBCS2_SIGKILL,		/* 9 */
50	IBCS2_SIGBUS,		/* 10 */
51	IBCS2_SIGSEGV,		/* 11 */
52	IBCS2_SIGSYS,		/* 12 */
53	IBCS2_SIGPIPE,		/* 13 */
54	IBCS2_SIGALRM,		/* 14 */
55	IBCS2_SIGTERM,		/* 15 */
56	0,			/* 16 - SIGURG */
57	IBCS2_SIGSTOP,		/* 17 */
58	IBCS2_SIGTSTP,		/* 18 */
59	IBCS2_SIGCONT,		/* 19 */
60	IBCS2_SIGCLD,		/* 20 */
61	IBCS2_SIGTTIN,		/* 21 */
62	IBCS2_SIGTTOU,		/* 22 */
63	IBCS2_SIGPOLL,		/* 23 */
64	IBCS2_SIGXCPU,		/* 24 */
65	IBCS2_SIGXFSZ,		/* 25 */
66	IBCS2_SIGVTALRM,	/* 26 */
67	IBCS2_SIGPROF,		/* 27 */
68	IBCS2_SIGWINCH,		/* 28 */
69	0,			/* 29 - SIGINFO */
70	IBCS2_SIGUSR1,		/* 30 */
71	IBCS2_SIGUSR2,		/* 31 */
72	IBCS2_SIGPWR,		/* 32 */
73};
74
75const int ibcs2_to_native_signo[IBCS2_NSIG] = {
76	0,			/* 0 */
77	SIGHUP,			/* 1 */
78	SIGINT,			/* 2 */
79	SIGQUIT,		/* 3 */
80	SIGILL,			/* 4 */
81	SIGTRAP,		/* 5 */
82	SIGABRT,		/* 6 */
83	SIGEMT,			/* 7 */
84	SIGFPE,			/* 8 */
85	SIGKILL,		/* 9 */
86	SIGBUS,			/* 10 */
87	SIGSEGV,		/* 11 */
88	SIGSYS,			/* 12 */
89	SIGPIPE,		/* 13 */
90	SIGALRM,		/* 14 */
91	SIGTERM,		/* 15 */
92	SIGUSR1,		/* 16 */
93	SIGUSR2,		/* 17 */
94	SIGCHLD,		/* 18 */
95	SIGPWR,			/* 19 */
96	SIGWINCH,		/* 20 */
97	0,			/* 21 - SIGPHONE */
98	SIGIO,			/* 22 */
99	SIGSTOP,		/* 23 */
100	SIGTSTP,		/* 24 */
101	SIGCONT,		/* 25 */
102	SIGTTIN,		/* 26 */
103	SIGTTOU,		/* 27 */
104	SIGVTALRM,		/* 28 */
105	SIGPROF,		/* 29 */
106	SIGXCPU,		/* 30 */
107	SIGXFSZ,		/* 31 */
108};
109