[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20180712.143436.1218817388437854515.davem@davemloft.net>
Date: Thu, 12 Jul 2018 14:34:36 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: sbaranoff@...il.com
Cc: netdev@...r.kernel.org, avagin@...tuozzo.com, xemul@...tuozzo.com,
edumazet@...gle.com, kuznet@....inr.ac.ru, yoshfuji@...ux-ipv6.org
Subject: Re: [PATCH] tcp: fix sequence numbers for repaired sockets
re-using TIME-WAIT sockets
From: Stefan Baranoff <sbaranoff@...il.com>
Date: Tue, 10 Jul 2018 17:25:20 -0400
> This patch fixes a bug where the sequence numbers of a socket created using
> TCP repair functionality are lower than set after connect is called.
> This occurs when the repair socket overlaps with a TIME-WAIT socket and
> triggers the re-use code. The amount lower is equal to the number of times
> that a particular IP/port set is re-used and then put back into TIME-WAIT.
> Re-using the first time the sequence number is 1 lower, closing that socket
> and then re-opening (with repair) a new socket with the same addresses/ports
> puts the sequence number 2 lower than set via setsockopt. The third time is
> 3 lower, etc. I have not tested what the limit of this acrewal is, if any.
>
> The fix is, if a socket is in repair mode, to respect the already set
> sequence number and timestamp when it would have already re-used the
> TIME-WAIT socket.
>
> Signed-off-by: Stefan Baranoff <sbaranoff@...il.com>
Applied.
Powered by blists - more mailing lists