1 /*
2  * BEGIN illumos section
3  *   This is an unstable interface; changes may be made
4  *   without notice.
5  * END illumos section
6  */
7 /***********************************************************************
8 *                                                                      *
9 *               This software is part of the ast package               *
10 *          Copyright (c) 1985-2025 AT&T Intellectual Property          *
11 *                         All Rights Reserved                          *
12 *       This software is licensed by AT&T Intellectual Property        *
13 *           under the terms and conditions of the license in           *
14 *          http://www.eclipse.org/org/documents/epl-v10.html           *
15 *      (with an md5 checksum of b35adb5213ca9657e911e9befb180842)      *
16 *                                                                      *
17 *              Information and Software Systems Research               *
18 *                            AT&T Research                             *
19 *                           Florham Park NJ                            *
20 *                                                                      *
21 *                 Glenn Fowler <gsf@research.att.com>                  *
22 *                  David Korn <dgk@research.att.com>                   *
23 *                   Phong Vo <kpv@research.att.com>                    *
24 *                                                                      *
25 ***********************************************************************/
26 
27 /* : : generated by proto : : */
28 /* : : generated from contrib/ast/src/lib/libast/features/sig.sh by iffe version 2012-07-17 : : */
29 #ifndef _def_sig_ast
30 #if !defined(__PROTO__)
31 #  if defined(__STDC__) || defined(__cplusplus) || defined(_proto) || defined(c_plusplus)
32 #    if defined(__cplusplus)
33 #      define __LINKAGE__	"C"
34 #    else
35 #      define __LINKAGE__
36 #    endif
37 #    define __STDARG__
38 #    define __PROTO__(x)	x
39 #    define __OTORP__(x)
40 #    define __PARAM__(n,o)	n
41 #    if !defined(__STDC__) && !defined(__cplusplus)
42 #      if !defined(c_plusplus)
43 #      	define const
44 #      endif
45 #      define signed
46 #      define void		int
47 #      define volatile
48 #      define __V_		char
49 #    else
50 #      define __V_		void
51 #    endif
52 #  else
53 #    define __PROTO__(x)	()
54 #    define __OTORP__(x)	x
55 #    define __PARAM__(n,o)	o
56 #    define __LINKAGE__
57 #    define __V_		char
58 #    define const
59 #    define signed
60 #    define void		int
61 #    define volatile
62 #  endif
63 #  define __MANGLE__	__LINKAGE__
64 #  if defined(__cplusplus) || defined(c_plusplus)
65 #    define __VARARG__	...
66 #  else
67 #    define __VARARG__
68 #  endif
69 #  if defined(__STDARG__)
70 #    define __VA_START__(p,a)	va_start(p,a)
71 #  else
72 #    define __VA_START__(p,a)	va_start(p)
73 #  endif
74 #  if !defined(__INLINE__)
75 #    if defined(__cplusplus)
76 #      define __INLINE__	extern __MANGLE__ inline
77 #    else
78 #      if defined(_WIN32) && !defined(__GNUC__)
79 #      	define __INLINE__	__inline
80 #      endif
81 #    endif
82 #  endif
83 #endif
84 #if !defined(__LINKAGE__)
85 #define __LINKAGE__		/* 2004-08-11 transition */
86 #endif
87 
88 #define _def_sig_ast	1
89 #define _sys_types	1	/* #include <sys/types.h> ok */
90 
91 #define sig_info	_sig_info_
92 
93 #if defined(__STDPP__directive) && defined(__STDPP__hide)
94 __STDPP__directive pragma pp:hide kill killpg
95 #else
96 #define kill	______kill
97 #define killpg	______killpg
98 #endif
99 #include <signal.h>
100 #if defined(__STDPP__directive) && defined(__STDPP__hide)
101 __STDPP__directive pragma pp:nohide kill killpg
102 #else
103 #undef	kill
104 #undef	killpg
105 #endif
106 #ifndef sigmask
107 #define sigmask(s)	(1<<((s)-1))
108 #endif
109 typedef void (*Sig_handler_t) __PROTO__((int));
110 
111 
112 #define Handler_t		Sig_handler_t
113 
114 #define SIG_REG_PENDING		(-1)
115 #define SIG_REG_POP		0
116 #define SIG_REG_EXEC		00001
117 #define SIG_REG_PROC		00002
118 #define SIG_REG_TERM		00004
119 #define SIG_REG_ALL		00777
120 #define SIG_REG_SET		01000
121 
122 typedef struct
123 {
124 	char**		name;
125 	char**		text;
126 	int		sigmax;
127 } Sig_info_t;
128 
129 extern __MANGLE__ int		kill __PROTO__((pid_t, int));
130 extern __MANGLE__ int		killpg __PROTO__((pid_t, int));
131 
132 #if _BLD_ast && defined(__EXPORT__)
133 #undef __MANGLE__
134 #define __MANGLE__ __LINKAGE__ __EXPORT__
135 #endif
136 #if !_BLD_ast && defined(__IMPORT__)
137 #undef __MANGLE__
138 #define __MANGLE__ __LINKAGE__ __IMPORT__
139 #endif
140 
141 extern __MANGLE__ Sig_info_t	sig_info;
142 
143 #undef __MANGLE__
144 #define __MANGLE__ __LINKAGE__
145 
146 #if _lib_sigflag && _npt_sigflag
147 extern __MANGLE__ int		sigflag __PROTO__((int, int, int));
148 #endif
149 
150 #if _BLD_ast && defined(__EXPORT__)
151 #undef __MANGLE__
152 #define __MANGLE__ __LINKAGE__		__EXPORT__
153 #endif
154 
155 #if !_lib_sigflag
156 extern __MANGLE__ int		sigflag __PROTO__((int, int, int));
157 #endif
158 extern __MANGLE__ int		sigcritical __PROTO__((int));
159 extern __MANGLE__ int		sigunblock __PROTO__((int));
160 
161 #undef __MANGLE__
162 #define __MANGLE__ __LINKAGE__
163 #endif
164