From 700b0a37a1e587fcc68921555d417ee15bacfde6 Mon Sep 17 00:00:00 2001 From: Juliana Fajardini Date: Thu, 19 Jan 2023 11:18:16 -0300 Subject: [PATCH] exceptions: ignore policy if stream.midstream=true Set the engine to ignore the stream.midstream-policy if stream.midstream is enabled. If we had both stream.midstream AND stream.midstream_policy enabled, this could lead to midstream flows being dropped (or bypassed, or...) instead of being accepted by the engine, as it was probably meant when the user enabled midstream flows. Bug #5765 (cherry picked from commit 8e9905e0d833858a5053285c8ffe6ed4ed30fc12) --- src/stream-tcp.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/stream-tcp.c b/src/stream-tcp.c index 4f4024585a..6732c18a2c 100644 --- a/src/stream-tcp.c +++ b/src/stream-tcp.c @@ -474,9 +474,15 @@ void StreamTcpInitConfig(char quiet) stream_config.ssn_memcap_policy = ExceptionPolicyParse("stream.memcap-policy", true); stream_config.reassembly_memcap_policy = ExceptionPolicyParse("stream.reassembly.memcap-policy", true); - stream_config.midstream_policy = ExceptionPolicyParse("stream.midstream-policy", true); SCLogConfig("memcap-policy: %u/%u", stream_config.ssn_memcap_policy, stream_config.reassembly_memcap_policy); + stream_config.midstream_policy = ExceptionPolicyParse("stream.midstream-policy", true); + if (stream_config.midstream && stream_config.midstream_policy != EXCEPTION_POLICY_IGNORE) { + SCLogWarning(SC_WARN_COMPATIBILITY, + "stream.midstream_policy setting conflicting with stream.midstream enabled. " + "Ignoring stream.midstream_policy."); + stream_config.midstream_policy = EXCEPTION_POLICY_IGNORE; + } if (!quiet) { SCLogConfig("stream.\"inline\": %s", -- 2.47.2