From: Sreeja Athirkandathil Narayanan (sathirka) Date: Mon, 29 Aug 2022 16:51:57 +0000 (+0000) Subject: Pull request #3568: appid: send intermediate messages for appid reload commands to... X-Git-Tag: 3.1.41.0~6 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=201b7b5f99f59a9e7899ac20c7a21c57792f6c55;p=thirdparty%2Fsnort3.git Pull request #3568: appid: send intermediate messages for appid reload commands to the socket Merge in SNORT/snort3 from ~SATHIRKA/snort3:appid_reload_time to master Squashed commit of the following: commit 9b2753eccce757696fba1d90ea1c9b2c639ec781 Author: Sreeja Athirkandathil Narayanan Date: Mon Aug 15 13:16:42 2022 -0400 appid: send intermediate messages for appid reload commands to the socket --- diff --git a/src/control/control.h b/src/control/control.h index 993986ac9..e7dc093eb 100644 --- a/src/control/control.h +++ b/src/control/control.h @@ -47,6 +47,7 @@ public: void block(); void unblock(); void remove(); + bool show_prompt(); bool is_blocked() const { return blocked; } bool is_closed() const { return (fd == -1); } @@ -68,7 +69,6 @@ public: SO_PUBLIC static ControlConn* query_from_lua(const lua_State*); private: - bool show_prompt(); void touch(); private: diff --git a/src/main/analyzer_command.cc b/src/main/analyzer_command.cc index 9f0f90bfa..42054cee5 100644 --- a/src/main/analyzer_command.cc +++ b/src/main/analyzer_command.cc @@ -245,8 +245,8 @@ bool ACScratchUpdate::execute(Analyzer&, void**) ACScratchUpdate::~ACScratchUpdate() { - LogMessage("== scratch update complete\n"); - ReloadTracker::end(ctrlcon); + log_message("== scratch update complete\n"); + ReloadTracker::end(ctrlcon, true); } SFDAQInstance* AnalyzerCommand::get_daq_instance(Analyzer& analyzer) diff --git a/src/main/reload_tracker.cc b/src/main/reload_tracker.cc index 73dd1bbff..8fe077dac 100644 --- a/src/main/reload_tracker.cc +++ b/src/main/reload_tracker.cc @@ -50,7 +50,7 @@ bool ReloadTracker::start(ControlConn* ctrlcon) return true; } -void ReloadTracker::end(ControlConn* ctrlcon) +void ReloadTracker::end(ControlConn* ctrlcon, bool prompt) { #ifdef NDEBUG UNUSED(ctrlcon); @@ -59,6 +59,8 @@ void ReloadTracker::end(ControlConn* ctrlcon) #endif LogMessage("Reload ended. [%s]\n", current_command.c_str()); current_command.clear(); + if (prompt) + ctrl->show_prompt(); ctrl = nullptr; reload_in_progress = false; } diff --git a/src/main/reload_tracker.h b/src/main/reload_tracker.h index edc0b37c3..c88a6bfa5 100644 --- a/src/main/reload_tracker.h +++ b/src/main/reload_tracker.h @@ -34,7 +34,7 @@ class SO_PUBLIC ReloadTracker public: ReloadTracker() = delete; static bool start(ControlConn* ctrlcon); - static void end(ControlConn* ctrlcon); + static void end(ControlConn* ctrlcon, bool prompt=false); static void failed(ControlConn* ctrlcon, const char* reason); static void update(ControlConn* ctrlcon, const char* status); diff --git a/src/network_inspectors/appid/appid_module.cc b/src/network_inspectors/appid/appid_module.cc index 46b59b3e2..e3681c0bd 100644 --- a/src/network_inspectors/appid/appid_module.cc +++ b/src/network_inspectors/appid/appid_module.cc @@ -179,8 +179,9 @@ ACThirdPartyAppIdContextSwap::~ACThirdPartyAppIdContextSwap() const AppIdContext& ctxt = inspector.get_ctxt(); std::string file_path = ctxt.get_tp_appid_ctxt()->get_user_config(); ctxt.get_odp_ctxt().get_app_info_mgr().dump_appid_configurations(file_path); + log_message("== reload third-party complete\n"); LogMessage("== third-party configuration swap complete\n"); - ReloadTracker::end(ctrlcon); + ReloadTracker::end(ctrlcon, true); } class ACThirdPartyAppIdContextUnload : public AnalyzerCommand @@ -219,7 +220,7 @@ ACThirdPartyAppIdContextUnload::~ACThirdPartyAppIdContextUnload() AppIdContext& ctxt = inspector.get_ctxt(); ctxt.create_tp_appid_ctxt(); main_broadcast_command(new ACThirdPartyAppIdContextSwap(inspector, ctrlcon)); - log_message("== reload third-party complete\n"); + log_message("== unload old third-party complete\n"); ReloadTracker::update(ctrlcon, "unload old third-party complete, start swapping to new configuration."); }