summaryrefslogtreecommitdiffstats
path: root/src/vnet
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2018-12-16 21:33:00 -0800
committerDamjan Marion <dmarion@me.com>2018-12-18 09:41:48 +0000
commite78ac9debbe364f1bd6c59eb368d1f6bd38dfa32 (patch)
tree0a9fed4dcbd4cde8950c73442e7a2eaf26aee849 /src/vnet
parentec0cc2cf05dd5fe285e72b366d837eed841e34a8 (diff)
tcp: cleanup connections if handshake fails
Change-Id: If109d6772cbd58f4f2a56ae7ec593639d1fa1b96 Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src/vnet')
-rw-r--r--src/vnet/tcp/tcp_input.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/vnet/tcp/tcp_input.c b/src/vnet/tcp/tcp_input.c
index f0ae8b11434..91876feaf42 100644
--- a/src/vnet/tcp/tcp_input.c
+++ b/src/vnet/tcp/tcp_input.c
@@ -2720,8 +2720,7 @@ tcp46_rcv_process_inline (vlib_main_t * vm, vlib_node_runtime_t * node,
*/
if (!tcp_rcv_ack_is_acceptable (tc0, b0))
{
- TCP_DBG ("connection not accepted");
- tcp_send_reset_w_pkt (tc0, b0, is_ip4);
+ tcp_connection_reset (tc0);
error0 = TCP_ERROR_ACK_INVALID;
goto drop;
}
@@ -2729,8 +2728,8 @@ tcp46_rcv_process_inline (vlib_main_t * vm, vlib_node_runtime_t * node,
/* Make sure the ack is exactly right */
if (tc0->rcv_nxt != vnet_buffer (b0)->tcp.seq_number || is_fin0)
{
+ tcp_connection_reset (tc0);
error0 = TCP_ERROR_SEGMENT_INVALID;
- tcp_send_reset_w_pkt (tc0, b0, is_ip4);
goto drop;
}