From 17ca476c2403391d7ac1f403e62440798aa92f5e Mon Sep 17 00:00:00 2001 From: luwenpeng Date: Thu, 25 Apr 2024 15:39:02 +0800 Subject: [PATCH] tcp session record last packet tcp payload length used to calculate seq of injected RST packets --- src/session/session_manager.cpp | 1 + src/session/session_priv.h | 1 + 2 files changed, 2 insertions(+) diff --git a/src/session/session_manager.cpp b/src/session/session_manager.cpp index efb0c86..7d51a26 100644 --- a/src/session/session_manager.cpp +++ b/src/session/session_manager.cpp @@ -293,6 +293,7 @@ static void tcp_update(struct session_manager *mgr, struct session *sess, enum s half->flags |= flags; half->seq = tcp_hdr_get_seq(hdr); half->ack = tcp_hdr_get_ack(hdr); + half->len = tcp_layer->pld_len; if (!mgr->opts.tcp_reassembly_enable) { diff --git a/src/session/session_priv.h b/src/session/session_priv.h index 5ec619d..558da08 100644 --- a/src/session/session_priv.h +++ b/src/session/session_priv.h @@ -28,6 +28,7 @@ struct tcp_half uint32_t seq; uint32_t ack; + uint16_t len; uint8_t flags; };