1 /* $OpenBSD: signal.h,v 1.15 2019/01/12 00:16:03 jca Exp $ */ 2 /* 3 * Copyright (c) 2015 Philip Guenther <guenther@openbsd.org> 4 * 5 * Permission to use, copy, modify, and distribute this software for any 6 * purpose with or without fee is hereby granted, provided that the above 7 * copyright notice and this permission notice appear in all copies. 8 * 9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 */ 17 18 #ifndef _LIBC_SIGNAL_H 19 #define _LIBC_SIGNAL_H 20 21 /* Rename __errno() before it's used in the inline functions in <signal.h> */ 22 #include <errno.h> 23 24 /* sigh: predeclare and rename the functions which we'll declare inline */ 25 #include <sys/signal.h> 26 27 __only_inline int sigaddset(sigset_t *__set, int __signo); 28 __only_inline int sigdelset(sigset_t *__set, int __signo); 29 __only_inline int sigemptyset(sigset_t *__set); 30 __only_inline int sigfillset(sigset_t *__set); 31 __only_inline int sigismember(const sigset_t *__set, int __signo); 32 PROTO_NORMAL(sigaddset); 33 PROTO_NORMAL(sigdelset); 34 PROTO_NORMAL(sigemptyset); 35 PROTO_NORMAL(sigfillset); 36 PROTO_NORMAL(sigismember); 37 38 #include_next <signal.h> 39 40 __BEGIN_HIDDEN_DECLS 41 extern sigset_t __sigintr; 42 __END_HIDDEN_DECLS 43 44 #if 0 45 extern PROTO_NORMAL(sys_siglist); 46 extern PROTO_NORMAL(sys_signame); 47 #endif 48 49 /* prototyped for and used by the inline functions */ 50 PROTO_NORMAL(__errno); 51 52 PROTO_DEPRECATED(bsd_signal); 53 PROTO_NORMAL(kill); /* wrap to ban SIGTHR? */ 54 PROTO_DEPRECATED(killpg); 55 PROTO_DEPRECATED(psignal); 56 PROTO_DEPRECATED(pthread_sigmask); 57 PROTO_NORMAL(raise); 58 PROTO_WRAP(sigaction); 59 PROTO_NORMAL(sigaltstack); 60 PROTO_DEPRECATED(sigblock); 61 PROTO_DEPRECATED(siginterrupt); 62 PROTO_STD_DEPRECATED(signal); 63 PROTO_DEPRECATED(sigpause); 64 PROTO_NORMAL(sigpending); 65 PROTO_WRAP(sigprocmask); 66 PROTO_DEPRECATED(sigsetmask); 67 PROTO_CANCEL(sigsuspend); 68 PROTO_DEPRECATED(sigvec); 69 PROTO_DEPRECATED(sigwait); 70 PROTO_NORMAL(thrkill); 71 72 #endif /* !_LIBC_SIGNAL_H */ 73