From: Pavel Emelyanov Date: Thu, 19 Apr 2012 03:41:32 +0000 (+0000) Subject: tcp: Report mss_clamp with TCP_MAXSEG option in repair mode X-Git-Tag: v3.5-rc1~109^2~329 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=5e6a3ce6573f0c519d1ff57df60e3877bb2d3151;p=~emulex%2Finfiniband.git tcp: Report mss_clamp with TCP_MAXSEG option in repair mode The mss_clamp is the only connection-time negotiated option which cannot be obtained from the user space. Make the TCP_MAXSEG sockopt report one in the repair mode. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller --- diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index 47e2f4972f7..b4e690ddb08 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -2659,6 +2659,8 @@ static int do_tcp_getsockopt(struct sock *sk, int level, val = tp->mss_cache; if (!val && ((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN))) val = tp->rx_opt.user_mss; + if (tp->repair) + val = tp->rx_opt.mss_clamp; break; case TCP_NODELAY: val = !!(tp->nonagle&TCP_NAGLE_OFF);