From: Florin Coras Date: Sat, 6 Nov 2021 03:21:42 +0000 (-0700) Subject: tcp: in place tcp header for buffer resets X-Git-Tag: v22.06-rc0~294 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=bc1640a5044e8b7a06c3cc6d41543198b81e610c;p=vpp.git tcp: in place tcp header for buffer resets Type: improvement Signed-off-by: Florin Coras Change-Id: I2a5de36175bca1181ffd4a1865d41f0a1f6bc035 --- diff --git a/src/vnet/tcp/tcp_output.c b/src/vnet/tcp/tcp_output.c index cfdd1da9188..db42029e7b3 100644 --- a/src/vnet/tcp/tcp_output.c +++ b/src/vnet/tcp/tcp_output.c @@ -613,11 +613,11 @@ tcp_buffer_make_reset (vlib_main_t *vm, vlib_buffer_t *b, u8 is_ip4) /* Zero all flags but free list index and trace flag */ b->flags &= VLIB_BUFFER_NEXT_PRESENT - 1; - b->current_data = 0; + /* Make sure new tcp header comes after current ip */ + b->current_data = ((u8 *) th - b->data) + sizeof (tcp_header_t); b->current_length = 0; b->total_length_not_including_first_buffer = 0; vnet_buffer (b)->tcp.flags = 0; - vlib_buffer_make_headroom (b, TRANSPORT_MAX_HDRS_LEN); /* * Add TCP and IP headers