From 9592bfd0dda7c575de07bce2c7a81b8432d845a4 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Wed, 28 Jul 2021 23:45:20 +0000 Subject: Huge incompatible changes. - Obsolete skalibs/environ.h and skalibs/getpeereid.h removed. - rc4 and md5 removed. - All *_t types renamed to avoid treading on POSIX namespace. - subgetopt() renamed to lgetopt(). - signal functions reworked; skasigaction removed; sig_stack removed - Various functions removed: skaoffsetof(), selfpipe_untrap() - New posixplz function: munmap_void. Signed-off-by: Laurent Bercot --- src/libstddjb/sig_catch.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/libstddjb/sig_catch.c') diff --git a/src/libstddjb/sig_catch.c b/src/libstddjb/sig_catch.c index d0a72df..5195d4b 100644 --- a/src/libstddjb/sig_catch.c +++ b/src/libstddjb/sig_catch.c @@ -2,10 +2,14 @@ /* MT-unsafe */ +#include + +#include #include -int sig_catch (int sig, skasighandler_t_ref f) +int sig_catch (int sig, sig_func_ref f) { - struct skasigaction ssa = { f, SKASA_MASKALL | SKASA_NOCLDSTOP } ; - return sig_catcha(sig, &ssa) ; + struct sigaction action = { .sa_handler = f, .sa_flags = SA_RESTART | SA_NOCLDSTOP } ; + sigfillset(&action.sa_mask) ; + return sigaction(sig, &action, 0) >= 0 ; } -- cgit v1.3.1