Pull request #4240: stream_tcp: Refactor tcp overlap, segment list and reassembly classes to improve class structure and relationships
Merge in SNORT/snort3 from ~DAVMCPHE/snort3:reassembly_rewrite_u2.0 to master
Squashed commit of the following:
commit
6e4456f7895584520a5e6bb2d3eae0458b33d516
Author: davis mcpherson <davmcphe@cisco.com>
Date: Thu Feb 22 11:44:08 2024 -0500
stream_tcp: initial refactor to move alert functions to their own class
stream_tcp: refactor to move tcp overlap processing out of reassembly class
stream_tcp: merge TcpStreamSession into TcpSession
stream_tcp: refactor segment nodes to implement reassembly cursor and
eliminate tracking variables such as c_seq/c_len, etc. add helper functions
to track state
stream_tcp: improve variable and function names for overlap processing
stream_tcp: refactor TcpReassembler into a virtual base class and subclasses for each mode: ignore, IPS and IDS
stream: refactor paf logic into a c++ class
stream_tcp: integrate and streamline setting of flush policy and splitter
improve tracking of rcv_nxt state
stream_tcp: delete lws_init, it was redundant with tcp_init; delete FIXITs that are no longer relevant
stream_tcp: updates from PR review comments