summaryrefslogtreecommitdiffstats
path: root/net/ipv4/tcp_ipv4.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-04-29 08:17:31 +0200
committerDavid S. Miller <davem@davemloft.net>2011-04-29 08:17:31 +0200
commit4071cfff84c5b084762fe288781cd7faab14cb4b (patch)
treec3088ff582b9509931eb6118463b5bf252530e18 /net/ipv4/tcp_ipv4.c
parentipv4: Fetch route saddr from flow key in ip4_datagram_connect(). (diff)
downloadlinux-4071cfff84c5b084762fe288781cd7faab14cb4b.tar.xz
linux-4071cfff84c5b084762fe288781cd7faab14cb4b.zip
ipv4: Fetch route saddr from flow key in tcp_v4_connect().
Now that output route lookups update the flow with source address selection, we can fetch it from fl4->saddr instead of rt->rt_src Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
-rw-r--r--net/ipv4/tcp_ipv4.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
index d60732fe5f21..3be00afc8900 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
@@ -193,7 +193,7 @@ int tcp_v4_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len)
daddr = rt->rt_dst;
if (!inet->inet_saddr)
- inet->inet_saddr = rt->rt_src;
+ inet->inet_saddr = fl4.saddr;
inet->inet_rcv_saddr = inet->inet_saddr;
if (tp->rx_opt.ts_recent_stamp && inet->inet_daddr != daddr) {