Commit WIP. Part 1 of ??
[reactos.git] / reactos / include / crt / signal.h
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 <_mingw.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 #define SIGALRM 14 /* alarm clock */
37 #define SIGTERM 15
38 #define SIGBREAK 21
39 #define SIGABRT2 22
40
41 #define SIGABRT_COMPAT 6
42
43 typedef void (*__p_sig_fn_t)(int);
44
45 #define SIG_DFL (__p_sig_fn_t)0
46 #define SIG_IGN (__p_sig_fn_t)1
47 #define SIG_GET (__p_sig_fn_t)2
48 #define SIG_SGE (__p_sig_fn_t)3
49 #define SIG_ACK (__p_sig_fn_t)4
50 #define SIG_ERR (__p_sig_fn_t)-1
51
52 extern void **__cdecl __pxcptinfoptrs(void);
53 #define _pxcptinfoptrs (*__pxcptinfoptrs())
54
55 __p_sig_fn_t __cdecl signal(int _SigNum,__p_sig_fn_t _Func);
56 int __cdecl raise(int _SigNum);
57
58 #ifdef __cplusplus
59 }
60 #endif
61 #endif