diff --git a/sys/compat/darwin/darwin_signal.c b/sys/compat/darwin/darwin_signal.c index 0c2b8370aade..9931f338bc00 100644 --- a/sys/compat/darwin/darwin_signal.c +++ b/sys/compat/darwin/darwin_signal.c @@ -1,4 +1,4 @@ -/* $NetBSD: darwin_signal.c,v 1.3 2002/11/27 16:44:01 atatat Exp $ */ +/* $NetBSD: darwin_signal.c,v 1.4 2002/11/29 13:17:22 manu Exp $ */ /*- * Copyright (c) 2002 The NetBSD Foundation, Inc. @@ -37,7 +37,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: darwin_signal.c,v 1.3 2002/11/27 16:44:01 atatat Exp $"); +__KERNEL_RCSID(0, "$NetBSD: darwin_signal.c,v 1.4 2002/11/29 13:17:22 manu Exp $"); #include #include @@ -83,9 +83,10 @@ darwin_sys_sigaction(p, v, retval) sa.sa_handler = dsa.darwin_sa_handler.__sa_handler; native_sigset13_to_sigset(&dsa.darwin_sa_mask, &sa.sa_mask); - if (dsa.darwin_sa_mask & DARWIN_SA_USERTRAMP) - DPRINTF(("darwin_sys_sigaction: ignoring SA_USERTRAMP\n")); - sa.sa_flags = dsa.darwin_sa_mask & ~DARWIN_SA_USERTRAMP; + if (dsa.darwin_sa_flags & ~DARWIN_SA_ALLBITS) + DPRINTF(("darwin_sys_sigaction: ignoring bits (flags = %x)\n", + dsa.darwin_sa_flags)); + sa.sa_flags = dsa.darwin_sa_flags & DARWIN_SA_ALLBITS; if ((error = copyout(&sa, nsa, sizeof(sa))) != 0) return error; diff --git a/sys/compat/darwin/darwin_signal.h b/sys/compat/darwin/darwin_signal.h index c5d007d32472..fdc97183d284 100644 --- a/sys/compat/darwin/darwin_signal.h +++ b/sys/compat/darwin/darwin_signal.h @@ -1,4 +1,4 @@ -/* $NetBSD: darwin_signal.h,v 1.3 2002/11/27 16:44:01 atatat Exp $ */ +/* $NetBSD: darwin_signal.h,v 1.4 2002/11/29 13:17:23 manu Exp $ */ /*- * Copyright (c) 2002 The NetBSD Foundation, Inc. @@ -40,6 +40,7 @@ #define _DARWIN_DARWIN_H_ #define DARWIN_SA_USERTRAMP 0x0100 +#define DARWIN_SA_ALLBITS 0x017f union darwin_sigval { int sigval_int;