aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2008-08-27 16:57:31 -0400
committerJ. Bruce Fields <bfields@citi.umich.edu>2008-09-29 18:13:38 -0400
commit2860a0227b700feb8d6e5c4f07a62a1b40d96022 (patch)
treea0a83210999107a33f5b55ac211299a2f3e034f9
parent1b333c54a15a746ff6b04a684b0845a66daacef2 (diff)
lockd: Specify address family for source address
Make sure an address family is specified for source addresses passed to nlm_lookup_host(). nlm_lookup_host() will need this when it becomes capable of dealing with AF_INET6 addresses. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
-rw-r--r--fs/lockd/host.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/fs/lockd/host.c b/fs/lockd/host.c
index e5dcfa57e099..22423abea281 100644
--- a/fs/lockd/host.c
+++ b/fs/lockd/host.c
@@ -220,10 +220,12 @@ struct nlm_host *nlmclnt_lookup_host(const struct sockaddr_in *sin,
220 const char *hostname, 220 const char *hostname,
221 unsigned int hostname_len) 221 unsigned int hostname_len)
222{ 222{
223 struct sockaddr_in ssin = {0}; 223 const struct sockaddr_in source = {
224 .sin_family = AF_UNSPEC,
225 };
224 226
225 return nlm_lookup_host(0, sin, proto, version, 227 return nlm_lookup_host(0, sin, proto, version,
226 hostname, hostname_len, &ssin); 228 hostname, hostname_len, &source);
227} 229}
228 230
229/* 231/*
@@ -233,12 +235,14 @@ struct nlm_host *
233nlmsvc_lookup_host(struct svc_rqst *rqstp, 235nlmsvc_lookup_host(struct svc_rqst *rqstp,
234 const char *hostname, unsigned int hostname_len) 236 const char *hostname, unsigned int hostname_len)
235{ 237{
236 struct sockaddr_in ssin = {0}; 238 const struct sockaddr_in source = {
239 .sin_family = AF_INET,
240 .sin_addr = rqstp->rq_daddr.addr,
241 };
237 242
238 ssin.sin_addr = rqstp->rq_daddr.addr;
239 return nlm_lookup_host(1, svc_addr_in(rqstp), 243 return nlm_lookup_host(1, svc_addr_in(rqstp),
240 rqstp->rq_prot, rqstp->rq_vers, 244 rqstp->rq_prot, rqstp->rq_vers,
241 hostname, hostname_len, &ssin); 245 hostname, hostname_len, &source);
242} 246}
243 247
244/* 248/*