diff options
author | Florin Coras <fcoras@cisco.com> | 2019-03-13 13:25:57 -0700 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2019-03-14 20:23:49 +0000 |
commit | 37db43093c741767e89f7b1f7befa7b8ab173bac (patch) | |
tree | 0019bb7e8fef2dbe023a03619ee4dd662bde27be | |
parent | bb2c7b580ecf56f06ccc871c4a1b0530458e47a8 (diff) |
tcp: drop anything but fins in TIME_WAIT
Change-Id: I8414c2ed8bda59504330aad5f1a80dfe08dd85de
Signed-off-by: Florin Coras <fcoras@cisco.com>
-rw-r--r-- | src/vnet/tcp/tcp_input.c | 4 |
1 files changed, 4 insertions, 0 deletions
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); |