From 37db43093c741767e89f7b1f7befa7b8ab173bac Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Wed, 13 Mar 2019 13:25:57 -0700 Subject: tcp: drop anything but fins in TIME_WAIT Change-Id: I8414c2ed8bda59504330aad5f1a80dfe08dd85de Signed-off-by: Florin Coras --- src/vnet/tcp/tcp_input.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src') diff --git a/src/vnet/tcp/tcp_input.c b/src/vnet/tcp/tcp_input.c index 0d75ba254ac..5235c20a565 100644 --- a/src/vnet/tcp/tcp_input.c +++ b/src/vnet/tcp/tcp_input.c @@ -2892,6 +2892,9 @@ tcp46_rcv_process_inline (vlib_main_t * vm, vlib_node_runtime_t * node, if (tcp_rcv_ack (wrk, tc0, b0, tcp0, &error0)) goto drop; + if (!is_fin0) + goto drop; + tcp_program_ack (wrk, tc0); tcp_timer_update (tc0, TCP_TIMER_WAITCLOSE, TCP_TIMEWAIT_TIME); goto drop; @@ -2967,6 +2970,7 @@ tcp46_rcv_process_inline (vlib_main_t * vm, vlib_node_runtime_t * node, scoreboard_clear (&tc0->sack_sb); tcp_fastrecovery_off (tc0); tcp_recovery_off (tc0); + tcp_connection_timers_reset (tc0); tc0->snd_nxt = tc0->snd_una_max = tc0->snd_una; } tcp_send_fin (tc0); -- cgit 1.2.3-korg