projects
/
musl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix potential race condition in detached threads
[musl]
/
include
/
signal.h
diff --git
a/include/signal.h
b/include/signal.h
index
6e22bdf
..
d4856a8
100644
(file)
--- a/
include/signal.h
+++ b/
include/signal.h
@@
-6,7
+6,12
@@
extern "C" {
#endif
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
#endif
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
+ || defined(_BSD_SOURCE)
+
+#ifdef _GNU_SOURCE
+#define __siginfo siginfo
+#endif
#define __NEED_size_t
#define __NEED_pid_t
#define __NEED_size_t
#define __NEED_pid_t
@@
-21,15
+26,12
@@
extern "C" {
#include <bits/alltypes.h>
#include <bits/alltypes.h>
+#define SIG_HOLD ((void (*)(int)) 2)
+
#define SIG_BLOCK 0
#define SIG_UNBLOCK 1
#define SIG_SETMASK 2
#define SIG_BLOCK 0
#define SIG_UNBLOCK 1
#define SIG_SETMASK 2
-#define SIG_ERR ((void (*)(int))-1)
-#define SIG_DFL ((void (*)(int)) 0)
-#define SIG_IGN ((void (*)(int)) 1)
-#define SIG_HOLD ((void (*)(int)) 2)
-
#define SI_ASYNCNL (-60)
#define SI_TKILL (-6)
#define SI_SIGIO (-5)
#define SI_ASYNCNL (-60)
#define SI_TKILL (-6)
#define SI_SIGIO (-5)
@@
-44,7
+46,7
@@
extern "C" {
#define FPE_INTOVF 2
#define FPE_FLTDIV 3
#define FPE_FLTOVF 4
#define FPE_INTOVF 2
#define FPE_FLTDIV 3
#define FPE_FLTOVF 4
-#define FPE_FLTUN
T
5
+#define FPE_FLTUN
D
5
#define FPE_FLTRES 6
#define FPE_FLTINV 7
#define FPE_FLTSUB 8
#define FPE_FLTRES 6
#define FPE_FLTINV 7
#define FPE_FLTSUB 8
@@
-79,7
+81,7
@@
struct sigaction {
} __sa_handler;
sigset_t sa_mask;
int sa_flags;
} __sa_handler;
sigset_t sa_mask;
int sa_flags;
- void (*
__sa_restorer)(void);
+ void (*
sa_restorer)(void);
};
#define sa_handler __sa_handler.sa_handler
#define sa_sigaction __sa_handler.sa_sigaction
};
#define sa_handler __sa_handler.sa_handler
#define sa_sigaction __sa_handler.sa_sigaction
@@
-95,12
+97,7
@@
union sigval {
void *sival_ptr;
};
void *sival_ptr;
};
-#ifdef _GNU_SOURCE
-struct siginfo
-#else
-struct __siginfo
-#endif
-{
+struct __siginfo {
int si_signo, si_errno, si_code;
union {
char __pad[128 - 3*sizeof(int)];
int si_signo, si_errno, si_code;
union {
char __pad[128 - 3*sizeof(int)];
@@
-138,6
+135,8
@@
struct __siginfo
#define si_fd __si_fields.__sigpoll.si_fd
#define si_timer1 __si_fields.__timer.si_timer1
#define si_timer2 __si_fields.__timer.si_timer2
#define si_fd __si_fields.__sigpoll.si_fd
#define si_timer1 __si_fields.__timer.si_timer1
#define si_timer2 __si_fields.__timer.si_timer2
+#define si_ptr __si_fields.__rt.si_sigval.sival_ptr
+#define si_int __si_fields.__rt.si_sigval.sival_int
struct sigevent {
union sigval sigev_value;
struct sigevent {
union sigval sigev_value;
@@
-206,6
+205,10
@@
void (*sigset(int, void (*)(int)))(int);
#define SIGSTKSZ 8192
#endif
#define SIGSTKSZ 8192
#endif
+#ifdef _BSD_SOURCE
+typedef void (*sig_t)(int);
+#endif
+
#ifdef _GNU_SOURCE
typedef void (*sighandler_t)(int);
void (*bsd_signal(int, void (*)(int)))(int);
#ifdef _GNU_SOURCE
typedef void (*sighandler_t)(int);
void (*bsd_signal(int, void (*)(int)))(int);
@@
-216,6
+219,10
@@
int sigisemptyset(const sigset_t *);
#include <bits/signal.h>
#include <bits/signal.h>
+#define SIG_ERR ((void (*)(int))-1)
+#define SIG_DFL ((void (*)(int)) 0)
+#define SIG_IGN ((void (*)(int)) 1)
+
typedef int sig_atomic_t;
void (*signal(int, void (*)(int)))(int);
typedef int sig_atomic_t;
void (*signal(int, void (*)(int)))(int);