summaryrefslogtreecommitdiff
path: root/sys/kern
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>1997-01-27 22:48:43 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>1997-01-27 22:48:43 +0000
commitfd6845b3865eba2ad5058edac543ef9f8f78f4cd (patch)
treea15f16c19bc0208c3d48750757cc0612706331e7 /sys/kern
parentfd600a4e9c7470f397abf3164bef81cc24d75ce9 (diff)
add another parameter to trapsignal() and sendsig() -- fault addr to be
delivered with in the siginfo information
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/kern_sig.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c
index 1c9f7b23c2c..e8f19c40b25 100644
--- a/sys/kern/kern_sig.c
+++ b/sys/kern/kern_sig.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kern_sig.c,v 1.14 1997/01/27 01:15:32 deraadt Exp $ */
+/* $OpenBSD: kern_sig.c,v 1.15 1997/01/27 22:48:36 deraadt Exp $ */
/* $NetBSD: kern_sig.c,v 1.54 1996/04/22 01:38:32 christos Exp $ */
/*
@@ -519,10 +519,11 @@ pgsignal(pgrp, signum, checkctty)
* Otherwise, post it normally.
*/
void
-trapsignal(p, signum, code)
+trapsignal(p, signum, code, addr)
struct proc *p;
register int signum;
u_long code;
+ caddr_t addr;
{
register struct sigacts *ps = p->p_sigacts;
int mask;
@@ -537,7 +538,7 @@ trapsignal(p, signum, code)
p->p_sigmask, code);
#endif
(*p->p_emul->e_sendsig)(ps->ps_sigact[signum], signum,
- p->p_sigmask, code);
+ p->p_sigmask, code, addr);
p->p_sigmask |= ps->ps_catchmask[signum];
if ((ps->ps_sigreset & mask) != 0) {
p->p_sigcatch &= ~mask;
@@ -1002,7 +1003,7 @@ postsig(signum)
code = ps->ps_code;
ps->ps_code = 0;
}
- (*p->p_emul->e_sendsig)(action, signum, returnmask, code);
+ (*p->p_emul->e_sendsig)(action, signum, returnmask, code, 0);
}
}