From 11f7965350e78ebe12442f8b165bfc721f3c39e2 Mon Sep 17 00:00:00 2001 From: Benoît Ganne Date: Tue, 9 Apr 2024 12:03:53 +0200 Subject: tcp: check for header truncation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Type: fix Change-Id: I0a43a37971d03a700926d59e848f0b6e6dbeb19a Signed-off-by: Benoît Ganne --- src/vnet/tcp/tcp_format.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) 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, -- cgit 1.2.3-korg