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