1#ifndef _SIGNAL_H
2# include <signal/signal.h>
3
4# ifndef _ISOMAC
5libc_hidden_proto (sigemptyset)
6libc_hidden_proto (sigfillset)
7libc_hidden_proto (sigaddset)
8libc_hidden_proto (sigdelset)
9libc_hidden_proto (sigismember)
10extern int __sigpause (int sig_or_mask, int is_sig);
11libc_hidden_proto (__sigpause)
12libc_hidden_proto (raise)
13libc_hidden_proto (__libc_current_sigrtmin)
14libc_hidden_proto (__libc_current_sigrtmax)
15libc_hidden_proto (_sys_siglist)
16
17/* Now define the internal interfaces. */
18extern __sighandler_t __bsd_signal (int __sig, __sighandler_t __handler);
19extern int __kill (__pid_t __pid, int __sig);
20extern int __sigaction (int __sig, const struct sigaction *__restrict __act,
21 struct sigaction *__restrict __oact);
22libc_hidden_proto (__sigaction)
23extern int __sigblock (int __mask);
24extern int __sigsetmask (int __mask);
25extern int __sigprocmask (int __how,
26 const sigset_t *__set, sigset_t *__oset);
27extern int __sigsuspend (const sigset_t *__set);
28libc_hidden_proto (__sigsuspend)
29#ifndef NO_CANCELLATION
30extern int __sigsuspend_nocancel (const sigset_t *__set) attribute_hidden;
31#endif
32extern int __sigwait (const sigset_t *__set, int *__sig);
33libc_hidden_proto (__sigwait)
34extern int __sigwaitinfo (const sigset_t *__set, siginfo_t *__info);
35libc_hidden_proto (__sigwaitinfo)
36extern int __sigtimedwait (const sigset_t *__set, siginfo_t *__info,
37 const struct timespec *__timeout);
38libc_hidden_proto (__sigtimedwait)
39extern int __sigqueue (__pid_t __pid, int __sig,
40 const union sigval __val);
41#ifdef __USE_MISC
42extern int __sigreturn (struct sigcontext *__scp);
43#endif
44extern int __sigaltstack (const stack_t *__ss,
45 stack_t *__oss);
46extern int __libc_sigaction (int sig, const struct sigaction *act,
47 struct sigaction *oact);
48libc_hidden_proto (__libc_sigaction)
49
50extern int __default_sigpause (int mask);
51extern int __xpg_sigpause (int sig);
52
53/* Allocate real-time signal with highest/lowest available priority. */
54extern int __libc_allocate_rtsig (int __high);
55
56# if IS_IN (rtld)
57extern __typeof (__sigaction) __sigaction attribute_hidden;
58extern __typeof (__libc_sigaction) __libc_sigaction attribute_hidden;
59# endif
60
61# endif /* _ISOMAC */
62#endif /* signal.h */
63