Merge in SNORT/snort3 from ~JCANOGOM/snort3:codec_config_do_stop_snort to master
Squashed commit of the following:
commit
f30ded789e6b289fa665f2d9f87ea6918db85af8
Author: Jose Cano <jcanogom@cisco.com>
Date: Tue Jun 24 18:01:19 2025 -0400
main: Do not start Analyzer if codec manager doesn't match any codec
{
assert(state == State::STARTED);
init_unprivileged();
+
+ uint8_t codec_dlt = CodecManager::get_grinder();
+ if (codec_dlt == 0)
+ {
+ ErrorMessage("No codec for DAQ base protocol, stopping packet processing\n");
+ exit_requested = true;
+ set_state(State::FAILED);
+ return;
+ }
+
if ( paused )
set_state(State::PAUSED);
else
void SideChannelManager::thread_term() { }
void CodecManager::thread_init() { }
void CodecManager::thread_term() { }
+uint8_t CodecManager::get_grinder() { return 0; }
void EventManager::open_outputs() { }
void EventManager::close_outputs() { }
void EventManager::reload_outputs() { }
}
if (!grinder)
- ParseError("Unable to find a Codec with data link type %d", daq_dlt);
+ ErrorMessage("No codec found for data link type %d\n", daq_dlt);
}
void CodecManager::thread_term()
d.dump(wrap.api->base.name, wrap.api->base.version);
}
+uint8_t CodecManager::get_grinder()
+{
+ return grinder;
+}
+
static void thread_term();
// print all of the codec plugins
static void dump_plugins();
+ // get the current grinder
+ static uint8_t get_grinder();
private:
struct CodecApiWrapper;