1*13e54a3cSjca /* $OpenBSD: signal.h,v 1.15 2019/01/12 00:16:03 jca Exp $ */ 23f5ad7fcSguenther /* 33f5ad7fcSguenther * Copyright (c) 2015 Philip Guenther <guenther@openbsd.org> 43f5ad7fcSguenther * 53f5ad7fcSguenther * Permission to use, copy, modify, and distribute this software for any 63f5ad7fcSguenther * purpose with or without fee is hereby granted, provided that the above 73f5ad7fcSguenther * copyright notice and this permission notice appear in all copies. 83f5ad7fcSguenther * 93f5ad7fcSguenther * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 103f5ad7fcSguenther * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 113f5ad7fcSguenther * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 123f5ad7fcSguenther * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 133f5ad7fcSguenther * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 143f5ad7fcSguenther * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 153f5ad7fcSguenther * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 163f5ad7fcSguenther */ 173f5ad7fcSguenther 183f5ad7fcSguenther #ifndef _LIBC_SIGNAL_H 193f5ad7fcSguenther #define _LIBC_SIGNAL_H 203f5ad7fcSguenther 2102cde890Sguenther /* Rename __errno() before it's used in the inline functions in <signal.h> */ 2202cde890Sguenther #include <errno.h> 2302cde890Sguenther 2402cde890Sguenther /* sigh: predeclare and rename the functions which we'll declare inline */ 2502cde890Sguenther #include <sys/signal.h> 2602cde890Sguenther 2702cde890Sguenther __only_inline int sigaddset(sigset_t *__set, int __signo); 2802cde890Sguenther __only_inline int sigdelset(sigset_t *__set, int __signo); 2902cde890Sguenther __only_inline int sigemptyset(sigset_t *__set); 3002cde890Sguenther __only_inline int sigfillset(sigset_t *__set); 3102cde890Sguenther __only_inline int sigismember(const sigset_t *__set, int __signo); 3202cde890Sguenther PROTO_NORMAL(sigaddset); 3302cde890Sguenther PROTO_NORMAL(sigdelset); 3402cde890Sguenther PROTO_NORMAL(sigemptyset); 3502cde890Sguenther PROTO_NORMAL(sigfillset); 3602cde890Sguenther PROTO_NORMAL(sigismember); 3702cde890Sguenther 383f5ad7fcSguenther #include_next <signal.h> 393f5ad7fcSguenther 403fe234aeSguenther __BEGIN_HIDDEN_DECLS 413fe234aeSguenther extern sigset_t __sigintr; 423fe234aeSguenther __END_HIDDEN_DECLS 433fe234aeSguenther 4414437dc7Sguenther #if 0 453f5ad7fcSguenther extern PROTO_NORMAL(sys_siglist); 463f5ad7fcSguenther extern PROTO_NORMAL(sys_signame); 4714437dc7Sguenther #endif 483f5ad7fcSguenther 49fe38b55cSguenther /* prototyped for and used by the inline functions */ 50fe38b55cSguenther PROTO_NORMAL(__errno); 51fe38b55cSguenther 52e6f44a6eSguenther PROTO_DEPRECATED(bsd_signal); 5315a0f535Sguenther PROTO_NORMAL(kill); /* wrap to ban SIGTHR? */ 54e6f44a6eSguenther PROTO_DEPRECATED(killpg); 55e6f44a6eSguenther PROTO_DEPRECATED(psignal); 565aed4d28Sguenther PROTO_DEPRECATED(pthread_sigmask); 57e6f44a6eSguenther PROTO_NORMAL(raise); 585aed4d28Sguenther PROTO_WRAP(sigaction); 5915a0f535Sguenther PROTO_NORMAL(sigaltstack); 604bb51dcdSguenther PROTO_DEPRECATED(sigblock); 61e6f44a6eSguenther PROTO_DEPRECATED(siginterrupt); 62b664e637Sguenther PROTO_STD_DEPRECATED(signal); 63e6f44a6eSguenther PROTO_DEPRECATED(sigpause); 645aed4d28Sguenther PROTO_NORMAL(sigpending); 655aed4d28Sguenther PROTO_WRAP(sigprocmask); 664bb51dcdSguenther PROTO_DEPRECATED(sigsetmask); 67fe38b55cSguenther PROTO_CANCEL(sigsuspend); 68e6f44a6eSguenther PROTO_DEPRECATED(sigvec); 69*13e54a3cSjca PROTO_DEPRECATED(sigwait); 7060d49506Sguenther PROTO_NORMAL(thrkill); 7115a0f535Sguenther 723f5ad7fcSguenther #endif /* !_LIBC_SIGNAL_H */ 73