summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_sig.c
diff options
context:
space:
mode:
authornectar <nectar@FreeBSD.org>2003-08-10 23:05:37 +0000
committernectar <nectar@FreeBSD.org>2003-08-10 23:05:37 +0000
commit78ff87db8b921ed26b987d884f8c68357c85569e (patch)
tree944fa529f5bc562540fadb907426e5bfaf8e4874 /sys/kern/kern_sig.c
parentf5b9f87e772a6fcee8bcad474c3fd99d063c15d4 (diff)
downloadFreeBSD-src-78ff87db8b921ed26b987d884f8c68357c85569e.zip
FreeBSD-src-78ff87db8b921ed26b987d884f8c68357c85569e.tar.gz
panic() if we try to handle an out-of-range signal number in
psignal()/tdsignal(). The test was historically in psignal(). It was changed into a KASSERT, and then later moved to tdsignal() when the latter was introduced. Reviewed by: iedowse, jhb
Diffstat (limited to 'sys/kern/kern_sig.c')
-rw-r--r--sys/kern/kern_sig.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c
index 611f002..e24be92 100644
--- a/sys/kern/kern_sig.c
+++ b/sys/kern/kern_sig.c
@@ -1629,6 +1629,9 @@ psignal(struct proc *p, int sig)
struct thread *td;
int prop;
+ if (!_SIG_VALID(sig))
+ panic("psignal(): invalid signal");
+
PROC_LOCK_ASSERT(p, MA_OWNED);
prop = sigprop(sig);
@@ -1673,8 +1676,8 @@ do_tdsignal(struct thread *td, int sig, sigtarget_t target)
register int prop;
struct sigacts *ps;
- KASSERT(_SIG_VALID(sig),
- ("tdsignal(): invalid signal %d\n", sig));
+ if (!_SIG_VALID(sig))
+ panic("do_tdsignal(): invalid signal");
p = td->td_proc;
ps = p->p_sigacts;
OpenPOWER on IntegriCloud