]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - net/ipv4/datagram.c
net: return operator cleanup
[mirror_ubuntu-artful-kernel.git] / net / ipv4 / datagram.c
index f0550941df7b9e1ac63468384eba7ede1bf6d537..174be6caa5c8245b105b3d4c504ed0c977a00f2c 100644 (file)
@@ -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);