summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/fs/nfs/nfs_auth.c
diff options
context:
space:
mode:
authorKaren Rochford <Karen.Rochford@Sun.COM>2010-06-04 08:57:54 -0500
committerKaren Rochford <Karen.Rochford@Sun.COM>2010-06-04 08:57:54 -0500
commit0a4b08109ed53cd50c90d18c62198d62eec19da0 (patch)
treee5d124a74f917267463d92f8388c13fa62229ad5 /usr/src/uts/common/fs/nfs/nfs_auth.c
parent6bc688af4fb132e30e3dcc0243a24d232b5a3eba (diff)
downloadillumos-joyent-0a4b08109ed53cd50c90d18c62198d62eec19da0.tar.gz
6937869 seeing some memory leaks from xdrrdma_create()
6920403 NFS/RDMA NFSv3 client directio READs fail for read size between 869 - 1023 bytes 6935135 NFS/RDMA ipv6 mount incorrectly if client's hostname in access_list
Diffstat (limited to 'usr/src/uts/common/fs/nfs/nfs_auth.c')
-rw-r--r--usr/src/uts/common/fs/nfs/nfs_auth.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/usr/src/uts/common/fs/nfs/nfs_auth.c b/usr/src/uts/common/fs/nfs/nfs_auth.c
index a1dada5ba0..d803531e09 100644
--- a/usr/src/uts/common/fs/nfs/nfs_auth.c
+++ b/usr/src/uts/common/fs/nfs/nfs_auth.c
@@ -766,6 +766,7 @@ nfsauth_refresh_thread(void)
int
nfsauth_cache_get(struct exportinfo *exi, struct svc_req *req, int flavor)
{
+ struct netbuf *taddrmask;
struct netbuf addr;
struct netbuf *claddr;
struct auth_cache **head;
@@ -790,7 +791,10 @@ nfsauth_cache_get(struct exportinfo *exi, struct svc_req *req, int flavor)
addr = *claddr;
addr.buf = kmem_alloc(addr.len, KM_SLEEP);
bcopy(claddr->buf, addr.buf, claddr->len);
- addrmask(&addr, svc_getaddrmask(req->rq_xprt));
+ SVC_GETADDRMASK(req->rq_xprt, SVC_TATTR_ADDRMASK, (void **)&taddrmask);
+ ASSERT(taddrmask != NULL);
+ if (taddrmask)
+ addrmask(&addr, taddrmask);
rw_enter(&exi->exi_cache_lock, RW_READER);
head = &exi->exi_cache[hash(&addr)];