Fix theoretical leak of netconfig(3) resources in svcunix_create(..)

In the event that the getconfig(3) call in svcunix_create is partly successful,
some of the netconfig(3) resources allocated might be leaked if the call returns
NULL as endnetconfig(3) wasn't called explicitly in that case. Ensure that the
resources are fully cleaned up by going to the `done` label, which will call
endnetconfig(3) for us.

MFC after: 1 week
Reported by: Coverity
Submitted by: Miles Ohlrich <miles.ohlrich@isilon.com>
Sponsored by: EMC / Isilon Storage Division
This commit is contained in:
Enji Cooper 2016-01-11 21:56:53 +00:00
parent cbb261aec7
commit d140ec33c7
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=293704

View File

@ -483,7 +483,7 @@ svcunix_create(int sock, u_int sendsize, u_int recvsize, char *path)
break;
}
if (nconf == NULL)
return(xprt);
goto done;
if ((sock = __rpc_nconf2fd(nconf)) < 0)
goto done;