xref: /titanic_52/usr/src/cmd/ast/libshell/sparcv9/FEATURE/sigfeatures (revision 906afcb89d0412cc073b95c2d701a804a8cdb62c)
1*906afcb8SAndy Fiddaman/* : : generated from contrib/ast/src/cmd/ksh93/features/sigfeatures by iffe version 2012-07-17 : : */
2*906afcb8SAndy Fiddaman#ifndef _def_sigfeatures_ksh93
3*906afcb8SAndy Fiddaman#define _def_sigfeatures_ksh93	1
4*906afcb8SAndy Fiddaman#define _sys_types	1	/* #include <sys/types.h> ok */
5*906afcb8SAndy Fiddaman#define _lib_sigrelse	1	/* sigrelse() in default lib(s) */
6*906afcb8SAndy Fiddaman#define _lib_sigprocmask	1	/* sigprocmask() in default lib(s) */
7*906afcb8SAndy Fiddaman#define _hdr_time	1	/* #include <time.h> ok */
8*906afcb8SAndy Fiddaman#define _sys_time	1	/* #include <sys/time.h> ok */
9*906afcb8SAndy Fiddaman#define _sys_times	1	/* #include <sys/times.h> ok */
10*906afcb8SAndy Fiddaman#define _hdr_stddef	1	/* #include <stddef.h> ok */
11*906afcb8SAndy Fiddaman#define _hdr_stdlib	1	/* #include <stdlib.h> ok */
12*906afcb8SAndy Fiddaman#define _hdr_signal	1	/* #include <signal.h> ok */
13*906afcb8SAndy Fiddaman#define _typ_sigset_t	1	/* sigset_t is a type */
14*906afcb8SAndy Fiddaman#ifndef _mem_sigvec_sv_mask
15*906afcb8SAndy Fiddaman#   undef _lib_sigvec
16*906afcb8SAndy Fiddaman#endif
17*906afcb8SAndy Fiddaman#ifdef _lib_sigprocmask
18*906afcb8SAndy Fiddaman#    define sh_sigaction(s,action) do { sigset_t ss;\
19*906afcb8SAndy Fiddaman			sigemptyset(&ss); \
20*906afcb8SAndy Fiddaman			if(s) sigaddset(&ss,(s)); \
21*906afcb8SAndy Fiddaman			sigprocmask(action,&ss,0); \
22*906afcb8SAndy Fiddaman			}while(0)
23*906afcb8SAndy Fiddaman#    define sigrelease(s)	sh_sigaction(s,SIG_UNBLOCK)
24*906afcb8SAndy Fiddaman#    define sigblock(s)	 	sh_sigaction(s,SIG_BLOCK)
25*906afcb8SAndy Fiddaman#    define sig_begin()		sh_sigaction(0,SIG_SETMASK)
26*906afcb8SAndy Fiddaman#else
27*906afcb8SAndy Fiddaman#   ifndef _lib_sigblock
28*906afcb8SAndy Fiddaman#	define sigblock(s)
29*906afcb8SAndy Fiddaman#   endif
30*906afcb8SAndy Fiddaman#   ifdef _lib_sigsetmask
31*906afcb8SAndy Fiddaman#       define sigrelease(s)  sigsetmask(0)
32*906afcb8SAndy Fiddaman#       define sig_begin()    sigsetmask(0)
33*906afcb8SAndy Fiddaman#   else
34*906afcb8SAndy Fiddaman#	ifdef _lib_sigrelse
35*906afcb8SAndy Fiddaman#	    define sigrelease	sigrelse
36*906afcb8SAndy Fiddaman#	    define sig_begin()
37*906afcb8SAndy Fiddaman#	else
38*906afcb8SAndy Fiddaman#	    define sig_begin()		(0)
39*906afcb8SAndy Fiddaman#	    define sigrelease(s)	(0)
40*906afcb8SAndy Fiddaman#	endif /* _lib_sigrelse */
41*906afcb8SAndy Fiddaman#    endif /* _lib_sigsetmask */
42*906afcb8SAndy Fiddaman#endif /* _lib_sigprocmask */
43*906afcb8SAndy Fiddaman
44*906afcb8SAndy Fiddaman#undef	_SIGRTMIN
45*906afcb8SAndy Fiddaman#define _SIGRTMIN	42
46*906afcb8SAndy Fiddaman#undef	_SIGRTMAX
47*906afcb8SAndy Fiddaman#define _SIGRTMAX	73
48*906afcb8SAndy Fiddaman#endif
49