zeek/testing/btest/core/tcp
Arne Welzel f3f593c523 IPBasedAnalyzer/TCPSessionAdapter: Fix TCP reassembly decision for known port analyzers
This seems to be an age-old bug. Reported by mchen on discourse [1].

The TCPSessionAdapter decides in AddExtraAnalyzers() whether to enable
reassembly or not. When dpd_reassemble_first_packets is F, this boils down to
! GetChildren().empty(). The intention being that if any analyzers have been
added to the connection based on known ports, reassembly is to be enabled.

However, GetChildren() does not take into account new_children and so
! GetChildren().empty() is always false here and reassembly solely
based on dpd_reassemble_first_packets=F (or the tcp_content... options).
Ouch.

Call AppendNewChildren() before AddExtraAnalyzers() as a fix. Without this,
the new test does not produce an http.log and service "http" isn't in conn.log.

[1] https://community.zeek.org/t/how-to-activate-an-application-layer-analyzer-when-signature-dpd-reassemble-first-packets-is-off/6763
2022-10-25 16:07:40 +02:00
..
fin-retransmit.zeek GH-239: Rename bro to zeek, bro-config to zeek-config, and bro-path-dev to zeek-path-dev. 2019-05-01 21:43:45 +00:00
large-file-reassembly.zeek GH-239: Rename bro to zeek, bro-config to zeek-config, and bro-path-dev to zeek-path-dev. 2019-05-01 21:43:45 +00:00
miss-end-data.zeek Remove @load base/frameworks/dpd from tests 2022-08-31 17:00:55 +02:00
missing-syn.zeek Remove @load base/frameworks/dpd from tests 2022-08-31 17:00:55 +02:00
options.zeek Merge ssh://github.com/fatemabw/zeek 2022-08-17 09:09:58 +02:00
quantum-insert.zeek GH-239: Rename bro to zeek, bro-config to zeek-config, and bro-path-dev to zeek-path-dev. 2019-05-01 21:43:45 +00:00
reassembly-known-ports.zeek IPBasedAnalyzer/TCPSessionAdapter: Fix TCP reassembly decision for known port analyzers 2022-10-25 16:07:40 +02:00
rst-after-syn.zeek GH-239: Rename bro to zeek, bro-config to zeek-config, and bro-path-dev to zeek-path-dev. 2019-05-01 21:43:45 +00:00
rxmit-history.zeek GH-239: Rename bro to zeek, bro-config to zeek-config, and bro-path-dev to zeek-path-dev. 2019-05-01 21:43:45 +00:00
tcp-dups.zeek General btest cleanup 2020-08-11 11:26:22 -07:00
truncated-header.zeek More bro-to-zeek renaming in the unit tests 2019-05-16 02:27:54 -05:00