Date: Sun, 11 Jun 2000 12:03:02 -0700 (PDT) From: Matthew Dillon <dillon@apollo.backplane.com> To: Jonathan Hanna <pangolin@home.com> Cc: freebsd-current@FreeBSD.ORG Subject: Re: RE: Strange rpc.statd and mount_nfs Message-ID: <200006111903.MAA28732@apollo.backplane.com> References: <200006111610.JAA06425@cr1003333-a.crdva1.bc.home.com>
next in thread | previous in thread | raw e-mail | index | archive | help
:>:- auth_destroy(clp->cl_auth);
:>:- clnt_destroy(clp);
:>: retrycnt = 0;
:>: }
:>:+ auth_destroy(clp->cl_auth);
:>:+ clnt_destroy(clp);
:>:+ so = RPC_ANYSOCK;
:>
:> Good catch! This patch looks good to me, I am going to go ahead
:> and commit it.
:>
:> Resetting 'so' is good code form, but I went through the rpc code
:> and it wasn't an operational bug ... the rpc code can overwrite so
:> in the case of a failure but only with '-1', which is RPC_ANYSOCK
:> anyway. Still, it's good not to make assumptions.
:>
:> -Matt
:
:Without the "so = RPC_ANYSOCK" and no other changes, the "weak credential"
:failure turned into a "bad file descriptor" failure, so I think the non -1
:socket fd is being reused. Perhaps the initialization of "so" should be moved
:into the retry loop.
:
:Jonathan Hanna <pangolin@home.com>
Hmm. Yes, there does appear to be an issue there. The
'goto tryagain' on line 777 is leaving the clp and al_auth allocated
as well, so there is a memory leak there too.
I'll do a whole cleanup on the code and post a more involved patch.
-Matt
Matthew Dillon
<dillon@backplane.com>
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200006111903.MAA28732>
