From 686d735712bb359649216be194d21e6c77a97b25 Mon Sep 17 00:00:00 2001 From: christos Date: Tue, 2 Nov 2021 20:12:25 +0000 Subject: [PATCH] Expose sigaltstack, stack_t and friends to Posix Issue 5 (200809L) References: https://man7.org/linux/man-pages/man2/sigaltstack.2.html https://pubs.opengroup.org/onlinepubs/9699919799/functions/sigaltstack.html --- include/signal.h | 9 ++++++--- sys/sys/signal.h | 16 +++++++++++----- sys/sys/sigtypes.h | 9 ++++++--- 3 files changed, 23 insertions(+), 11 deletions(-) diff --git a/include/signal.h b/include/signal.h index 50521f8f7f3e..cd1bad202f43 100644 --- a/include/signal.h +++ b/include/signal.h @@ -1,4 +1,4 @@ -/* $NetBSD: signal.h,v 1.58 2021/11/01 05:53:45 thorpej Exp $ */ +/* $NetBSD: signal.h,v 1.59 2021/11/02 20:12:25 christos Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -164,7 +164,8 @@ sigfillset(sigset_t *set) * X/Open CAE Specification Issue 4 Version 2 */ #if (defined(_XOPEN_SOURCE) && defined(_XOPEN_SOURCE_EXTENDED)) || \ - (_XOPEN_SOURCE - 0) >= 500 || defined(_NETBSD_SOURCE) + (_XOPEN_SOURCE - 0) >= 500 || (_POSIX_C_SOURCE - 0) >= 200809L || \ + defined(_NETBSD_SOURCE) int killpg(pid_t, int); int siginterrupt(int, int); int sigstack(const struct sigstack *, struct sigstack *); @@ -177,7 +178,9 @@ int sigignore(int); int sigpause(int); int sigrelse(int); void (*sigset (int, void (*)(int)))(int); -#endif /* _XOPEN_SOURCE_EXTENDED || _XOPEN_SOURCE >= 500 || _NETBSD_SOURCE */ +#endif /* _XOPEN_SOURCE_EXTENDED || _XOPEN_SOURCE >= 500 + * || _POSIX_C_SOURCE >= 200809L || _NETBSD_SOURCE + */ /* diff --git a/sys/sys/signal.h b/sys/sys/signal.h index e08febd34ea6..bf4c4204338c 100644 --- a/sys/sys/signal.h +++ b/sys/sys/signal.h @@ -1,4 +1,4 @@ -/* $NetBSD: signal.h,v 1.74 2021/10/27 05:18:51 thorpej Exp $ */ +/* $NetBSD: signal.h,v 1.75 2021/11/02 20:12:26 christos Exp $ */ /* * Copyright (c) 1982, 1986, 1989, 1991, 1993 @@ -251,7 +251,8 @@ typedef void (*sig_t)(int); /* type of signal function */ #endif #if (defined(_XOPEN_SOURCE) && defined(_XOPEN_SOURCE_EXTENDED)) || \ - (_XOPEN_SOURCE - 0) >= 500 || defined(_NETBSD_SOURCE) + (_XOPEN_SOURCE - 0) >= 500 || (_POSIX_C_SOURCE - 0) >= 200809L || \ + defined(_NETBSD_SOURCE) /* * Flags used with stack_t/struct sigaltstack. */ @@ -262,10 +263,13 @@ typedef void (*sig_t)(int); /* type of signal function */ #endif #define MINSIGSTKSZ 8192 /* minimum allowable stack */ #define SIGSTKSZ (MINSIGSTKSZ + 32768) /* recommended stack size */ -#endif /* _XOPEN_SOURCE_EXTENDED || _XOPEN_SOURCE >= 500 || _NETBSD_SOURCE */ +#endif /* _XOPEN_SOURCE_EXTENDED || _XOPEN_SOURCE >= 500 + * || _POSIX_C_SOURCE >= 200809L || _NETBSD_SOURCE + */ #if (defined(_XOPEN_SOURCE) && defined(_XOPEN_SOURCE_EXTENDED)) || \ - (_XOPEN_SOURCE - 0) >= 500 || defined(_NETBSD_SOURCE) + (_XOPEN_SOURCE - 0) >= 500 || (_POSIX_C_SOURCE - 0) >= 200809L || \ + defined(_NETBSD_SOURCE) /* * Structure used in sigstack call. */ @@ -273,7 +277,9 @@ struct sigstack { void *ss_sp; /* signal stack pointer */ int ss_onstack; /* current status */ }; -#endif /* _XOPEN_SOURCE_EXTENDED || _XOPEN_SOURCE >= 500 || _NETBSD_SOURCE */ +#endif /* _XOPEN_SOURCE_EXTENDED || _XOPEN_SOURCE >= 500 + * || _POSIX_C_SOURCE >= 200809L || _NETBSD_SOURCE + */ #if defined(_NETBSD_SOURCE) && !defined(_KERNEL) /* diff --git a/sys/sys/sigtypes.h b/sys/sys/sigtypes.h index 83a913014b48..8db26e779b0d 100644 --- a/sys/sys/sigtypes.h +++ b/sys/sys/sigtypes.h @@ -1,4 +1,4 @@ -/* $NetBSD: sigtypes.h,v 1.11 2017/01/12 18:29:14 christos Exp $ */ +/* $NetBSD: sigtypes.h,v 1.12 2021/11/02 20:12:26 christos Exp $ */ /* * Copyright (c) 1982, 1986, 1989, 1991, 1993 @@ -104,7 +104,8 @@ typedef struct { } while (/* CONSTCOND */ 0) #if (defined(_XOPEN_SOURCE) && defined(_XOPEN_SOURCE_EXTENDED)) || \ - (_XOPEN_SOURCE - 0) >= 500 || defined(_NETBSD_SOURCE) + (_XOPEN_SOURCE - 0) >= 500 || (_POSIX_C_SOURCE - 0) >= 200809L || \ + defined(_NETBSD_SOURCE) typedef struct #if defined(_NETBSD_SOURCE) sigaltstack @@ -115,7 +116,9 @@ typedef struct int ss_flags; /* SS_DISABLE and/or SS_ONSTACK */ } stack_t; -#endif /* _XOPEN_SOURCE_EXTENDED || XOPEN_SOURCE >= 500 || _NETBSD_SOURCE */ +#endif /* _XOPEN_SOURCE_EXTENDED || _XOPEN_SOURCE >= 500 + * || _POSIX_C_SOURCE >= 200809L || _NETBSD_SOURCE + */ #endif /* _POSIX_C_SOURCE || _XOPEN_SOURCE || ... */