From owner-svn-src-head@FreeBSD.ORG Mon Sep 28 19:11:33 2009 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 57CC71065676; Mon, 28 Sep 2009 19:11:33 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 2A1958FC0A; Mon, 28 Sep 2009 19:11:33 +0000 (UTC) Received: from bigwig.baldwin.cx (66.111.2.69.static.nyinternet.net [66.111.2.69]) by cyrus.watson.org (Postfix) with ESMTPSA id AA8D246B06; Mon, 28 Sep 2009 15:11:32 -0400 (EDT) Received: from jhbbsd.hudson-trading.com (unknown [209.249.190.8]) by bigwig.baldwin.cx (Postfix) with ESMTPA id E5F9A8A024; Mon, 28 Sep 2009 15:11:31 -0400 (EDT) From: John Baldwin To: Jamie Gritton Date: Mon, 28 Sep 2009 15:11:24 -0400 User-Agent: KMail/1.9.7 References: <200909281855.n8SItTDF062998@svn.freebsd.org> In-Reply-To: <200909281855.n8SItTDF062998@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200909281511.25338.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.0.1 (bigwig.baldwin.cx); Mon, 28 Sep 2009 15:11:31 -0400 (EDT) X-Virus-Scanned: clamav-milter 0.95.1 at bigwig.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-2.5 required=4.2 tests=AWL,BAYES_00,RDNS_NONE autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on bigwig.baldwin.cx Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r197584 - head/sys/rpc/rpcsec_gss X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Sep 2009 19:11:33 -0000 On Monday 28 September 2009 2:55:29 pm Jamie Gritton wrote: > Author: jamie > Date: Mon Sep 28 18:55:29 2009 > New Revision: 197584 > URL: http://svn.freebsd.org/changeset/base/197584 > > Log: > Set the prison in NFS anon and GSS SVC creds (as I indended to in r197581). > > Reviewed by: marcel > > Modified: > head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c > > Modified: head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c > ============================================================================== > --- head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c Mon Sep 28 18:54:26 2009 (r197583) > +++ head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c Mon Sep 28 18:55:29 2009 (r197584) > @@ -449,6 +449,8 @@ rpc_gss_svc_getcred(struct svc_req *req, > cr->cr_uid = cr->cr_ruid = cr->cr_svuid = uc->uid; > cr->cr_rgid = cr->cr_svgid = uc->gid; > crsetgroups(cr, uc->gidlen, uc->gidlist); > + cr->cr_prison = &prison0; > + prison_hold(cr->cr_prison); > *crp = crhold(cr); > > return (TRUE); FYI, it would be nice if prison_hold() returned a pointer to the prison as you can then do what crhold() does above: cr->cr_prison = prison_hold(&prison0); I prefer combining the refcount and assignment into one step with the goal of avoiding outright assignments that don't go via foo_hold() or fooref() for refcounted objects. -- John Baldwin