2 #if defined __need_sig_atomic_t || defined __need_sigset_t
3 # include <signal/signal.h>
5 # include <signal/signal.h>
7 libc_hidden_proto (sigemptyset
)
8 libc_hidden_proto (sigfillset
)
9 libc_hidden_proto (sigaddset
)
10 libc_hidden_proto (sigdelset
)
11 libc_hidden_proto (sigismember
)
12 libc_hidden_proto (__sigpause
)
13 libc_hidden_proto (raise
)
14 libc_hidden_proto (__libc_current_sigrtmin
)
15 libc_hidden_proto (__libc_current_sigrtmax
)
17 /* Now define the internal interfaces. */
18 extern __sighandler_t
__bsd_signal (int __sig
, __sighandler_t __handler
);
19 extern int __kill (__pid_t __pid
, int __sig
);
20 extern int __sigaction (int __sig
, __const
struct sigaction
*__restrict __act
,
21 struct sigaction
*__restrict __oact
);
22 libc_hidden_proto (__sigaction
)
23 extern int __sigblock (int __mask
);
24 extern int __sigsetmask (int __mask
);
25 extern int __sigprocmask (int __how
,
26 __const sigset_t
*__set
, sigset_t
*__oset
);
27 extern int __sigsuspend (__const sigset_t
*__set
);
28 libc_hidden_proto (__sigsuspend
)
29 #ifndef NO_CANCELLATION
30 extern int __sigsuspend_nocancel (__const sigset_t
*__set
) attribute_hidden
;
32 extern int __sigwait (__const sigset_t
*__set
, int *__sig
);
33 libc_hidden_proto (__sigwait
)
34 extern int __sigwaitinfo (__const sigset_t
*__set
, siginfo_t
*__info
);
35 libc_hidden_proto (__sigwaitinfo
)
36 extern int __sigtimedwait (__const sigset_t
*__set
, siginfo_t
*__info
,
37 __const
struct timespec
*__timeout
);
38 libc_hidden_proto (__sigtimedwait
)
39 extern int __sigqueue (__pid_t __pid
, int __sig
,
40 __const
union sigval __val
);
41 extern int __sigvec (int __sig
, __const
struct sigvec
*__vec
,
42 struct sigvec
*__ovec
);
43 extern int __sigreturn (struct sigcontext
*__scp
);
44 extern int __sigaltstack (__const
struct sigaltstack
*__ss
,
45 struct sigaltstack
*__oss
);
46 extern int __libc_sigaction (int sig
, const struct sigaction
*act
,
47 struct sigaction
*oact
);
48 libc_hidden_proto (__libc_sigaction
)
50 extern int __sigpause (int sig_or_mask
, int is_sig
);
51 extern int __default_sigpause (int mask
);
52 extern int __xpg_sigpause (int sig
);
54 /* Simplified sigemptyset() implementation without the parameter checking. */
56 #define __sigemptyset(ss) (__builtin_memset (ss, '\0', sizeof (sigset_t)), 0)
59 /* Allocate real-time signal with highest/lowest available priority. */
60 extern int __libc_allocate_rtsig (int __high
);