Date: Mon, 28 Sep 2009 15:11:24 -0400 From: John Baldwin <jhb@freebsd.org> To: Jamie Gritton <jamie@freebsd.org> 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 Message-ID: <200909281511.25338.jhb@freebsd.org> In-Reply-To: <200909281855.n8SItTDF062998@svn.freebsd.org> References: <200909281855.n8SItTDF062998@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200909281511.25338.jhb>