summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_prot.c
diff options
context:
space:
mode:
authordg <dg@FreeBSD.org>1995-11-04 10:50:55 +0000
committerdg <dg@FreeBSD.org>1995-11-04 10:50:55 +0000
commit7743b883df882227518d4fb681e3ba88cb8cecb9 (patch)
tree022446a2f349f5677cbcabaa50fe822b9e8b1062 /sys/kern/kern_prot.c
parent484ade7718e310f1744bd84a2e279513b21dc249 (diff)
downloadFreeBSD-src-7743b883df882227518d4fb681e3ba88cb8cecb9.zip
FreeBSD-src-7743b883df882227518d4fb681e3ba88cb8cecb9.tar.gz
Return EINVAL if the number of groups is less than 1 in setgroups().
Obtained from: 4.4BSD-Lite2
Diffstat (limited to 'sys/kern/kern_prot.c')
-rw-r--r--sys/kern/kern_prot.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/kern/kern_prot.c b/sys/kern/kern_prot.c
index abbc712..df70a19 100644
--- a/sys/kern/kern_prot.c
+++ b/sys/kern/kern_prot.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)kern_prot.c 8.6 (Berkeley) 1/21/94
- * $Id: kern_prot.c,v 1.12 1995/06/15 22:32:03 ache Exp $
+ * $Id: kern_prot.c,v 1.13 1995/10/08 00:06:07 swallace Exp $
*/
/*
@@ -407,7 +407,8 @@ setgroups(p, uap, retval)
if ((error = suser(pc->pc_ucred, &p->p_acflag)))
return (error);
- if ((ngrp = uap->gidsetsize) > NGROUPS)
+ ngrp = uap->gidsetsize;
+ if (ngrp < 1 || ngrp > NGROUPS)
return (EINVAL);
pc->pc_ucred = crcopy(pc->pc_ucred);
if ((error = copyin((caddr_t)uap->gidset,
OpenPOWER on IntegriCloud