From owner-p4-projects@FreeBSD.ORG Thu Nov 6 05:56:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D37A916A4D0; Thu, 6 Nov 2003 05:56:03 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A81DB16A4CE for ; Thu, 6 Nov 2003 05:56:03 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3E9E243FE9 for ; Thu, 6 Nov 2003 05:55:21 -0800 (PST) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA6DtKXJ030996 for ; Thu, 6 Nov 2003 05:55:20 -0800 (PST) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA6DtKLT030993 for perforce@freebsd.org; Thu, 6 Nov 2003 05:55:20 -0800 (PST) (envelope-from areisse@nailabs.com) Date: Thu, 6 Nov 2003 05:55:20 -0800 (PST) Message-Id: <200311061355.hA6DtKLT030993@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 41583 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 13:56:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=41583 Change 41583 by areisse@areisse_ibook on 2003/11/06 05:54:48 change setgroups to use crdup Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_prot.c#7 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_prot.c#7 (text+ko) ==== @@ -495,7 +495,10 @@ ngrp = uap->gidsetsize; if (ngrp < 1 || ngrp > NGROUPS) return (EINVAL); - new = crget(); + pcred_writelock(p); + old = pc->pc_ucred; + new = crdup (old); + pcred_unlock(p); error = copyin((caddr_t)uap->gidset, (caddr_t)new->cr_groups, ngrp * sizeof(gid_t)); if (error) { @@ -504,11 +507,6 @@ } new->cr_ngroups = ngrp; pcred_writelock(p); - old = pc->pc_ucred; - new->cr_uid = old->cr_uid; -#ifdef MAC - mac_create_cred (old, new); -#endif pc->pc_ucred = new; pcred_unlock(p); set_security_token(p);