7,14 → 7,17 |
#endif |
|
#include "_ansi.h" |
#include <sys/cdefs.h> |
#include <sys/features.h> |
#include <sys/types.h> |
#include <sys/_sigset.h> |
#include <sys/_timespec.h> |
|
/* #ifndef __STRICT_ANSI__*/ |
|
/* Cygwin defines it's own sigset_t in include/cygwin/signal.h */ |
#ifndef __CYGWIN__ |
typedef unsigned long sigset_t; |
#if !defined(_SIGSET_T_DECLARED) |
#define _SIGSET_T_DECLARED |
typedef __sigset_t sigset_t; |
#endif |
|
#if defined(__rtems__) |
71,9 → 74,12 |
|
/* 3.3.8 Synchronously Accept a Signal, P1003.1b-1993, p. 76 */ |
|
#define SA_NOCLDSTOP 1 /* Do not generate SIGCHLD when children stop */ |
#define SA_SIGINFO 2 /* Invoke the signal catching function with */ |
#define SA_NOCLDSTOP 0x1 /* Do not generate SIGCHLD when children stop */ |
#define SA_SIGINFO 0x2 /* Invoke the signal catching function with */ |
/* three arguments instead of one. */ |
#if __BSD_VISIBLE || __XSI_VISIBLE || __POSIX_VISIBLE >= 200112 |
#define SA_ONSTACK 0x4 /* Signal delivery will be on a separate stack. */ |
#endif |
|
/* struct sigaction notes from POSIX: |
* |
119,6 → 125,35 |
}; |
#endif /* defined(__rtems__) */ |
|
#if __BSD_VISIBLE || __XSI_VISIBLE || __POSIX_VISIBLE >= 200112 |
/* |
* Minimum and default signal stack constants. Allow for target overrides |
* from <sys/features.h>. |
*/ |
#ifndef MINSIGSTKSZ |
#define MINSIGSTKSZ 2048 |
#endif |
#ifndef SIGSTKSZ |
#define SIGSTKSZ 8192 |
#endif |
|
/* |
* Possible values for ss_flags in stack_t below. |
*/ |
#define SS_ONSTACK 0x1 |
#define SS_DISABLE 0x2 |
|
#endif |
|
/* |
* Structure used in sigaltstack call. |
*/ |
typedef struct sigaltstack { |
void *ss_sp; /* Stack base or pointer. */ |
int ss_flags; /* Flags. */ |
size_t ss_size; /* Stack size. */ |
} stack_t; |
|
#define SIG_SETMASK 0 /* set mask with sigprocmask() */ |
#define SIG_BLOCK 1 /* set of signals to block */ |
#define SIG_UNBLOCK 2 /* set of signals to, well, unblock */ |
138,7 → 173,6 |
int _EXFUN(pthread_sigmask, (int how, const sigset_t *set, sigset_t *oset)); |
#endif |
|
/* protos for functions found in winsup sources for CYGWIN */ |
#if defined(__CYGWIN__) || defined(__rtems__) |
#undef sigaddset |
#undef sigdelset |
148,8 → 182,12 |
|
#ifdef _COMPILING_NEWLIB |
int _EXFUN(_kill, (pid_t, int)); |
#endif |
#endif /* _COMPILING_NEWLIB */ |
#endif /* __CYGWIN__ || __rtems__ */ |
|
int _EXFUN(kill, (pid_t, int)); |
|
#if defined(__CYGWIN__) || defined(__rtems__) |
int _EXFUN(killpg, (pid_t, int)); |
int _EXFUN(sigaction, (int, const struct sigaction *, struct sigaction *)); |
int _EXFUN(sigaddset, (sigset_t *, const int)); |
161,6 → 199,12 |
int _EXFUN(sigsuspend, (const sigset_t *)); |
int _EXFUN(sigpause, (int)); |
|
#if defined(__CYGWIN__) || defined(__rtems__) |
#if __BSD_VISIBLE || __XSI_VISIBLE || __POSIX_VISIBLE >= 200112 |
int _EXFUN(sigaltstack, (const stack_t *__restrict, stack_t *__restrict)); |
#endif |
#endif |
|
#if defined(_POSIX_THREADS) |
#ifdef __CYGWIN__ |
# ifndef _CYGWIN_TYPES_H |
309,6 → 353,12 |
} |
#endif |
|
#if defined(__CYGWIN__) |
#if __POSIX_VISIBLE >= 200809 |
#include <sys/ucontext.h> |
#endif |
#endif |
|
#ifndef _SIGNAL_H_ |
/* Some applications take advantage of the fact that <sys/signal.h> |
* and <signal.h> are equivalent in glibc. Allow for that here. */ |