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