1 /*
2  * CDDL HEADER START
3  *
4  * This file and its contents are supplied under the terms of the
5  * Common Development and Distribution License ("CDDL"), version 1.0.
6  * You may use this file only in accordance with the terms of version
7  * 1.0 of the CDDL.
8  *
9  * A full copy of the text of the CDDL should have accompanied this
10  * source.  A copy of the CDDL is also available via the Internet at
11  * http://www.opensource.org/licenses/cddl1.txt
12  * See the License for the specific language governing permissions
13  * and limitations under the License.
14  *
15  * When distributing Covered Code, include this CDDL HEADER in each
16  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
17  * If applicable, add the following below this CDDL HEADER, with the
18  * fields enclosed by brackets "[]" replaced with your own identifying
19  * information: Portions Copyright [yyyy] [name of copyright owner]
20  *
21  * CDDL HEADER END
22  */
23 /*
24  * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
25  * Use is subject to license terms.
26  */
27 /*
28  * @(#)bsd.h 1.6 06/12/12
29  */
30 
31 #pragma	ident	"@(#)bsd.h	1.6	06/12/12"
32 
33 /*
34  * Copyright 2017-2021 J. Schilling
35  *
36  * @(#)bsd.h	1.8 21/08/15 2017-2021 J. Schilling
37  */
38 
39 /*
40  * bsd/bsd.h: Interface definitions to BSD compatibility functions for SVR4.
41  */
42 
43 #ifndef _BSD_BSD_H
44 #define _BSD_BSD_H
45 
46 /*
47  * Some Linux versions come with an incompatible prototype for bsd_signal()
48  */
49 #define	bsd_signal	no_bsd_signal
50 #if defined(SCHILY_BUILD) || defined(SCHILY_INCLUDES)
51 #include <schily/signal.h>
52 #else
53 #include <signal.h>
54 #endif
55 #undef	bsd_signal
56 
57 #if !defined(SIG_PF)
58 
59 #ifdef __cplusplus
60 extern "C" typedef void SIG_FUNC_TYP(int);
61 #else
62 typedef void SIG_FUNC_TYP(int);
63 #endif
64 
65 typedef SIG_FUNC_TYP *SIG_TYP;
66 #define SIG_PF SIG_TYP
67 #endif
68 
69 #ifdef __cplusplus
70 extern "C" SIG_PF bsd_signal(int a, SIG_PF b);
71 #else
72 extern void (*bsd_signal(int, void (*) (int))) (int);
73 #endif
74 extern void bsd_signals(void);
75 
76 #endif
77 
78