Module Name: src Committed By: snj Date: Wed Apr 1 21:03:04 UTC 2009
Modified Files: src/sys/kern [netbsd-5]: kern_exec.c Log Message: Pull up following revision(s) (requested by christos in ticket #573): sys/kern/kern_exec.c: revision 1.286 don't enforce maxproc resource limits for root. To generate a diff of this commit: cvs rdiff -u -r1.280.4.2 -r1.280.4.3 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/kern/kern_exec.c diff -u src/sys/kern/kern_exec.c:1.280.4.2 src/sys/kern/kern_exec.c:1.280.4.3 --- src/sys/kern/kern_exec.c:1.280.4.2 Wed Apr 1 00:25:22 2009 +++ src/sys/kern/kern_exec.c Wed Apr 1 21:03:04 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_exec.c,v 1.280.4.2 2009/04/01 00:25:22 snj Exp $ */ +/* $NetBSD: kern_exec.c,v 1.280.4.3 2009/04/01 21:03:04 snj Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -59,7 +59,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.280.4.2 2009/04/01 00:25:22 snj Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.280.4.3 2009/04/01 21:03:04 snj Exp $"); #include "opt_ktrace.h" #include "opt_syscall_debug.h" @@ -498,6 +498,7 @@ ksiginfoq_t kq; char *pathbuf; size_t pathbuflen; + uid_t uid; p = l->l_proc; @@ -517,9 +518,8 @@ * to call exec in order to do something useful. */ - if ((p->p_flag & PK_SUGID) && - chgproccnt(kauth_cred_getuid(l->l_cred), 0) > - p->p_rlimit[RLIMIT_NPROC].rlim_cur) + if ((p->p_flag & PK_SUGID) && (uid = kauth_cred_getuid(l->l_cred)) != 0 + && chgproccnt(uid, 0) > p->p_rlimit[RLIMIT_NPROC].rlim_cur) return EAGAIN; oldlwpflags = l->l_flag & (LW_SA | LW_SA_UPCALL);