mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-17 03:49:46 +08:00
5c78499ae2
Use proper internal macros for BSD sig_t and GNU sighandler_t. sigaltstack and friends are XSI even in SUSv4 but in glibc are nonetheless handled as POSIX.1-2008 (not 2001). The requirement for the ucontext_t typedef in signal.h was XSI prior to POSIX.1-2008. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
36 lines
819 B
C
36 lines
819 B
C
#ifndef _SIGNAL_H_
|
|
#define _SIGNAL_H_
|
|
|
|
#include "_ansi.h"
|
|
#include <sys/cdefs.h>
|
|
#include <sys/signal.h>
|
|
|
|
_BEGIN_STD_C
|
|
|
|
typedef int sig_atomic_t; /* Atomic entity type (ANSI) */
|
|
#if __BSD_VISIBLE
|
|
typedef _sig_func_ptr sig_t; /* BSD naming */
|
|
#endif
|
|
#if __GNU_VISIBLE
|
|
typedef _sig_func_ptr sighandler_t; /* glibc naming */
|
|
#endif
|
|
|
|
#define SIG_DFL ((_sig_func_ptr)0) /* Default action */
|
|
#define SIG_IGN ((_sig_func_ptr)1) /* Ignore action */
|
|
#define SIG_ERR ((_sig_func_ptr)-1) /* Error return */
|
|
|
|
struct _reent;
|
|
|
|
_sig_func_ptr _EXFUN(_signal_r, (struct _reent *, int, _sig_func_ptr));
|
|
int _EXFUN(_raise_r, (struct _reent *, int));
|
|
|
|
#ifndef _REENT_ONLY
|
|
_sig_func_ptr _EXFUN(signal, (int, _sig_func_ptr));
|
|
int _EXFUN(raise, (int));
|
|
void _EXFUN(psignal, (int, const char *));
|
|
#endif
|
|
|
|
_END_STD_C
|
|
|
|
#endif /* _SIGNAL_H_ */
|