xref: /reactos/sdk/include/crt/signal.h (revision 6f6b8317)
1 /**
2  * This file has no copyright assigned and is placed in the Public Domain.
3  * This file is part of the w64 mingw-runtime package.
4  * No warranty is given; refer to the file DISCLAIMER within this package.
5  */
6 #ifndef _INC_SIGNAL
7 #define _INC_SIGNAL
8 
9 #include <corecrt.h>
10 
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14 
15 #ifndef _SIG_ATOMIC_T_DEFINED
16 #define _SIG_ATOMIC_T_DEFINED
17   typedef int sig_atomic_t;
18 #endif
19 
20 #define NSIG 23
21 
22 #define	SIGHUP	1	/* hangup */
23 #define SIGINT 2
24 #define	SIGQUIT	3	/* quit */
25 #define SIGILL 4
26 #define	SIGTRAP	5	/* trace trap (not reset when caught) */
27 #define	SIGIOT	6	/* IOT instruction */
28 #define	SIGABRT 6	/* used by abort, replace SIGIOT in the future */
29 #define	SIGEMT	7	/* EMT instruction */
30 #define SIGFPE 8
31 #define	SIGKILL	9	/* kill (cannot be caught or ignored) */
32 #define	SIGBUS	10	/* bus error */
33 #define SIGSEGV 11
34 #define	SIGSYS	12	/* bad argument to system call */
35 #define	SIGPIPE	13	/* write on a pipe with no one to read it */
36 #ifdef __USE_MINGW_ALARM
37 #define	SIGALRM	14	/* alarm clock */
38 #endif
39 #define SIGTERM 15
40 #define SIGBREAK 21
41 #define SIGABRT2 22
42 
43 #define SIGABRT_COMPAT 6
44 
45   typedef	void (*__p_sig_fn_t)(int);
46 
47 #define SIG_DFL (__p_sig_fn_t)0
48 #define SIG_IGN (__p_sig_fn_t)1
49 #define SIG_GET (__p_sig_fn_t)2
50 #define SIG_SGE (__p_sig_fn_t)3
51 #define SIG_ACK (__p_sig_fn_t)4
52 #define SIG_ERR (__p_sig_fn_t)-1
53 
54   extern void **__cdecl __pxcptinfoptrs(void);
55 #define _pxcptinfoptrs (*__pxcptinfoptrs())
56 
57   __p_sig_fn_t __cdecl signal(int _SigNum,__p_sig_fn_t _Func);
58   int __cdecl raise(int _SigNum);
59 
60 #ifdef __cplusplus
61 }
62 #endif
63 #endif
64