]> git.ipfire.org Git - thirdparty/snort3.git/commit
Pull request #3257: stream_tcp: call flush_queued_segments() from flush_on_ack_policy()
authorMasud Hasan (mashasan) <mashasan@cisco.com>
Tue, 8 Mar 2022 23:05:45 +0000 (23:05 +0000)
committerMasud Hasan (mashasan) <mashasan@cisco.com>
Tue, 8 Mar 2022 23:05:45 +0000 (23:05 +0000)
commit9eb45494182f051b0905576099d4af3bc534f9c4
tree2e5f44420d63630b3e550e64b7ca90ebf1c66277
parent496aa0d346044b08e38d27f49f81cb01219c2f8a
Pull request #3257: stream_tcp: call flush_queued_segments() from flush_on_ack_policy()

Merge in SNORT/snort3 from ~SMINUT/snort3:flush_queued_segments to master

Squashed commit of the following:

commit 77304a6d8f435d8491fa6113108dfb331651f386
Author: Silviu Minut <sminut@cisco.com>
Date:   Mon Feb 28 21:15:18 2022 -0500

    stream_tcp: add fin_i_seq and fin_no_gap() and try to use those together with the existing next_no_gap() to determine whether we are on a gap in the seglist or not, when scanning

commit 15eb71a6197aef4e190cd59083bc6cd4012403b3
Author: Silviu Minut <sminut@cisco.com>
Date:   Fri Feb 25 16:27:26 2022 -0500

    stream_tcp: distinguish between the various non-flush cases when returning from scan_on_data_policy(), so we can call final flush only when the seglist has no gaps; if the seglist has gaps, call final_flush only when the gaps have filled or on session teardown

commit e753368af6f64c501dd67f426c4dd40c005fce46
Author: Silviu Minut <sminut@cisco.com>
Date:   Thu Feb 24 19:26:29 2022 -0500

    stream_tcp: introduce TcpStreamTracker::set_fin_seq_status_seen() and call it before using the fin_seq_status flag in perform_fin_recv_flush()

commit 840f71182a9125660b1742fe190abc2d32303873
Author: Silviu Minut <sminut@cisco.com>
Date:   Wed Feb 2 22:00:39 2022 -0500

    stream_tcp: * call flush_queued_segments() from flush_on_ack_policy() when the splitter did not flush but we are on a FIN
                * fix how fin_seq_status is being set in update_tracker_ack_sent()
         * make the pre-ack mode work the same way as post-ack by modifying flush_on_data_policy() accordingly
src/stream/tcp/tcp_reassembler.cc
src/stream/tcp/tcp_reassembler.h
src/stream/tcp/tcp_state_close_wait.cc
src/stream/tcp/tcp_state_established.cc
src/stream/tcp/tcp_state_fin_wait1.cc
src/stream/tcp/tcp_state_fin_wait2.cc
src/stream/tcp/tcp_state_syn_recv.cc
src/stream/tcp/tcp_state_syn_sent.cc
src/stream/tcp/tcp_state_time_wait.cc
src/stream/tcp/tcp_stream_tracker.cc
src/stream/tcp/tcp_stream_tracker.h