X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=net%2Fipv4%2Fdatagram.c;h=174be6caa5c8245b105b3d4c504ed0c977a00f2c;hb=a02cec2155fbea457eca8881870fd2de1a4c4c76;hp=f0550941df7b9e1ac63468384eba7ede1bf6d537;hpb=fe21ea18c742ab0eb8f6f8ebc543374839a02a87;p=mirror_ubuntu-artful-kernel.git diff --git a/net/ipv4/datagram.c b/net/ipv4/datagram.c index f0550941df7b..174be6caa5c8 100644 --- a/net/ipv4/datagram.c +++ b/net/ipv4/datagram.c @@ -62,14 +62,17 @@ int ip4_datagram_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len) } if (!inet->inet_saddr) inet->inet_saddr = rt->rt_src; /* Update source address */ - if (!inet->inet_rcv_saddr) + if (!inet->inet_rcv_saddr) { inet->inet_rcv_saddr = rt->rt_src; + if (sk->sk_prot->rehash) + sk->sk_prot->rehash(sk); + } inet->inet_daddr = rt->rt_dst; inet->inet_dport = usin->sin_port; sk->sk_state = TCP_ESTABLISHED; inet->inet_id = jiffies; sk_dst_set(sk, &rt->dst); - return(0); + return 0; } EXPORT_SYMBOL(ip4_datagram_connect);