From: Benoît Ganne Date: Tue, 9 Apr 2024 10:03:53 +0000 (+0200) Subject: tcp: check for header truncation X-Git-Tag: v24.10-rc0~97 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F64%2F40664%2F3;p=vpp.git tcp: check for header truncation Type: fix Change-Id: I0a43a37971d03a700926d59e848f0b6e6dbeb19a Signed-off-by: Benoît Ganne --- diff --git a/src/vnet/tcp/tcp_format.c b/src/vnet/tcp/tcp_format.c index 751042ce1cd..4674f2cbaed 100644 --- a/src/vnet/tcp/tcp_format.c +++ b/src/vnet/tcp/tcp_format.c @@ -139,7 +139,9 @@ format_tcp_header (u8 * s, va_list * args) clib_net_to_host_u16 (tcp->window), clib_net_to_host_u16 (tcp->checksum)); - if (tcp_options_parse (tcp, &opts, tcp_is_syn (tcp)) < 0) + if (header_bytes > max_header_bytes) + s = format (s, "\n%Uoptions: truncated", format_white_space, indent); + else if (tcp_options_parse (tcp, &opts, tcp_is_syn (tcp)) < 0) s = format (s, "\n%Uoptions: parsing failed", format_white_space, indent); else s = format (s, "\n%U%U", format_white_space, indent, format_tcp_options,