diff options
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
-rw-r--r-- | net/ipv4/tcp_ipv4.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c index 3dfbc21e555a..44aef1c1f373 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c | |||
@@ -1364,6 +1364,10 @@ struct sock *tcp_v4_syn_recv_sock(struct sock *sk, struct sk_buff *skb, | |||
1364 | tcp_mtup_init(newsk); | 1364 | tcp_mtup_init(newsk); |
1365 | tcp_sync_mss(newsk, dst_mtu(dst)); | 1365 | tcp_sync_mss(newsk, dst_mtu(dst)); |
1366 | newtp->advmss = dst_metric(dst, RTAX_ADVMSS); | 1366 | newtp->advmss = dst_metric(dst, RTAX_ADVMSS); |
1367 | if (tcp_sk(sk)->rx_opt.user_mss && | ||
1368 | tcp_sk(sk)->rx_opt.user_mss < newtp->advmss) | ||
1369 | newtp->advmss = tcp_sk(sk)->rx_opt.user_mss; | ||
1370 | |||
1367 | tcp_initialize_rcv_mss(newsk); | 1371 | tcp_initialize_rcv_mss(newsk); |
1368 | 1372 | ||
1369 | #ifdef CONFIG_TCP_MD5SIG | 1373 | #ifdef CONFIG_TCP_MD5SIG |