$NetBSD: patch-aa,v 1.4 1998/11/29 23:39:30 sommerfe Exp $ --- signal.c.orig Thu May 2 16:03:39 1996 +++ signal.c Sun Nov 29 18:27:37 1998 @@ -98,11 +98,18 @@ if (s >= 0 && s < NSIG) { handler[s] = h; - sa.sa_handler = generichandler; + sa.sa_handler = (void (*)())generichandler; +#if defined(__LIBC12_SOURCE__) sa.sa_mask = sigmask(SIGIO) | sigmask(SIGALRM); +#else + sigemptyset(&sa.sa_mask); + sigaddset(&sa.sa_mask, SIGIO); + sigaddset(&sa.sa_mask, SIGALRM); +#endif sa.sa_flags = SA_ONSTACK; sigaction(s, &sa, NULL); + sigemptyset(&set); sigaddset(&set, s); sigprocmask(SIG_UNBLOCK, &set, 0); }