diff options
| author | Matthew Dillon <dillon@FreeBSD.org> | 2000-11-18 21:01:04 +0000 |
|---|---|---|
| committer | Matthew Dillon <dillon@FreeBSD.org> | 2000-11-18 21:01:04 +0000 |
| commit | 279d7226048c39b48b788e5ea5607c0dbc042acd (patch) | |
| tree | 8d32488eeb453793eb19bb380ffcc26e97ca77fd /sys/nfsclient/nfs_nfsiod.c | |
| parent | d641426e5acce54fd775c3be86ddb9c2e78e8540 (diff) | |
Notes
Diffstat (limited to 'sys/nfsclient/nfs_nfsiod.c')
| -rw-r--r-- | sys/nfsclient/nfs_nfsiod.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/nfsclient/nfs_nfsiod.c b/sys/nfsclient/nfs_nfsiod.c index 1e0162fc8bab..83cc56bdcb98 100644 --- a/sys/nfsclient/nfs_nfsiod.c +++ b/sys/nfsclient/nfs_nfsiod.c @@ -194,7 +194,7 @@ nfssvc(p, uap) error = copyin(uap->argp, (caddr_t)&nfsdarg, sizeof(nfsdarg)); if (error) return (error); - error = getsock(p->p_fd, nfsdarg.sock, &fp); + error = holdsock(p->p_fd, nfsdarg.sock, &fp); if (error) return (error); /* @@ -205,10 +205,13 @@ nfssvc(p, uap) else { error = getsockaddr(&nam, nfsdarg.name, nfsdarg.namelen); - if (error) + if (error) { + fdrop(fp, p); return (error); + } } error = nfssvc_addsock(fp, nam, p); + fdrop(fp, p); } else { error = copyin(uap->argp, (caddr_t)nsd, sizeof (*nsd)); if (error) |
