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