Message ID | 1307660575-6994-2-git-send-email-greearb@candelatech.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c index 72abb73..37299c0 100644 --- a/net/sunrpc/xprtsock.c +++ b/net/sunrpc/xprtsock.c @@ -2509,9 +2509,9 @@ static struct rpc_xprt *xs_setup_xprt(struct xprt_create *args, new = container_of(xprt, struct sock_xprt, xprt); memcpy(&xprt->addr, args->dstaddr, args->addrlen); xprt->addrlen = args->addrlen; - if (args->srcaddr) + if (args->srcaddr && (args->srcaddr->sa_family != AF_UNSPEC)) { memcpy(&new->srcaddr, args->srcaddr, args->addrlen); - else { + } else { int err; err = xs_init_anyaddr(args->dstaddr->sa_family, (struct sockaddr *)&new->srcaddr);