diff options
author | Stanislav Kinsbursky <skinsbursky@parallels.com> | 2012-01-13 05:02:40 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2012-01-31 19:28:13 -0500 |
commit | b030fb0bb113316cc6f56779388b8572ab0699da (patch) | |
tree | 5e6e05faddc8d6637f1c2280c2da5e8d2b2f4a9c /net | |
parent | f2ac4dc911fdbc9b98a6a48b40efc45aa9161775 (diff) |
SUNRPC: use proper network namespace in rpcbind RPCBPROC_GETADDR procedure
Pass request socket network namespace to rpc_uaddr2sockaddr() instead of
hardcoded "init_net", when decoding address in RPCBPROC_GETADDR procedure.
Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/sunrpc/rpcb_clnt.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sunrpc/rpcb_clnt.c b/net/sunrpc/rpcb_clnt.c index 7c6fac004447..4ce3a8e02953 100644 --- a/net/sunrpc/rpcb_clnt.c +++ b/net/sunrpc/rpcb_clnt.c | |||
@@ -934,7 +934,8 @@ static int rpcb_dec_getaddr(struct rpc_rqst *req, struct xdr_stream *xdr, | |||
934 | dprintk("RPC: %5u RPCB_%s reply: %s\n", task->tk_pid, | 934 | dprintk("RPC: %5u RPCB_%s reply: %s\n", task->tk_pid, |
935 | task->tk_msg.rpc_proc->p_name, (char *)p); | 935 | task->tk_msg.rpc_proc->p_name, (char *)p); |
936 | 936 | ||
937 | if (rpc_uaddr2sockaddr(&init_net, (char *)p, len, sap, sizeof(address)) == 0) | 937 | if (rpc_uaddr2sockaddr(req->rq_xprt->xprt_net, (char *)p, len, |
938 | sap, sizeof(address)) == 0) | ||
938 | goto out_fail; | 939 | goto out_fail; |
939 | rpcb->r_port = rpc_get_port(sap); | 940 | rpcb->r_port = rpc_get_port(sap); |
940 | 941 | ||