aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/tcp_ipv4.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
-rw-r--r--net/ipv4/tcp_ipv4.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
index a90b4540c11e..8c9e9aa17d66 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
@@ -232,6 +232,7 @@ int tcp_v4_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len)
232 /* OK, now commit destination to socket. */ 232 /* OK, now commit destination to socket. */
233 sk->sk_gso_type = SKB_GSO_TCPV4; 233 sk->sk_gso_type = SKB_GSO_TCPV4;
234 sk_setup_caps(sk, &rt->dst); 234 sk_setup_caps(sk, &rt->dst);
235 rt = NULL;
235 236
236 if (!tp->write_seq && likely(!tp->repair)) 237 if (!tp->write_seq && likely(!tp->repair))
237 tp->write_seq = secure_tcp_sequence_number(inet->inet_saddr, 238 tp->write_seq = secure_tcp_sequence_number(inet->inet_saddr,
@@ -242,9 +243,13 @@ int tcp_v4_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len)
242 243
243 inet->inet_id = tp->write_seq ^ jiffies; 244 inet->inet_id = tp->write_seq ^ jiffies;
244 245
246 if (tcp_fastopen_defer_connect(sk, &err))
247 return err;
248 if (err)
249 goto failure;
250
245 err = tcp_connect(sk); 251 err = tcp_connect(sk);
246 252
247 rt = NULL;
248 if (err) 253 if (err)
249 goto failure; 254 goto failure;
250 255