]> git.ipfire.org Git - thirdparty/snort3.git/commitdiff
Pull request #3448: Ips bug port
authorPranav Bhalerao (prbhaler) <prbhaler@cisco.com>
Tue, 7 Jun 2022 09:30:18 +0000 (09:30 +0000)
committerPranav Bhalerao (prbhaler) <prbhaler@cisco.com>
Tue, 7 Jun 2022 09:30:18 +0000 (09:30 +0000)
Merge in SNORT/snort3 from ~KDEWANGA/snort3:ips_bug_port to master

Squashed commit of the following:

commit f55b2bc2a1e3384cd53f4fed5c2c797ec31fc73f
Author: kdewanga <kdewanga@cisco.com>
Date:   Sun May 22 10:38:38 2022 +0000

    logger: added reload function to create new files when snort reloads

src/framework/logger.h
src/main/analyzer.cc
src/main/test/distill_verdict_stubs.h
src/managers/CMakeLists.txt
src/managers/event_manager.cc
src/managers/event_manager.h

index 3ce253c840b1ccfa8a75979a52507bd472548cce..df0174f4db27b0eb20a34c1bdae337e708316db0 100644 (file)
@@ -55,6 +55,7 @@ public:
     virtual void open() { }
     virtual void close() { }
     virtual void reset() { }
+    virtual void reload() { }
 
     virtual void alert(Packet*, const char*, const Event&) { }
     virtual void log(Packet*, const char*, Event*) { }
index a04b44d108d5785fcdcb320789b8ddb6b0d1db3b..2424c6d4229cc67ca8eb5459887c23cebda3fb84 100644 (file)
@@ -630,6 +630,7 @@ void Analyzer::reinit(const SnortConfig* sc)
     InspectorManager::thread_reinit(sc);
     ActionManager::thread_reinit(sc);
     TraceApi::thread_reinit(sc->trace_config);
+    EventManager::reload_outputs();
 }
 
 void Analyzer::stop_removed(const SnortConfig* sc)
index c4d81c14d50082caa2a92f86b2ea0dcadc15f012..9870ff8ba1d415afa3616d7c905dcd7e2e73ea49 100644 (file)
@@ -98,6 +98,7 @@ void CodecManager::thread_init(const snort::SnortConfig*) { }
 void CodecManager::thread_term() { }
 void EventManager::open_outputs() { }
 void EventManager::close_outputs() { }
+void EventManager::reload_outputs() { }
 void IpsManager::setup_options(const snort::SnortConfig*) { }
 void IpsManager::clear_options(const snort::SnortConfig*) { }
 void ActionManager::thread_init(const snort::SnortConfig*) { }
index 1752574565220358512d9f2287cd1be555ed17af..f4db4a8729149de269de47d2e504852d0618c9f4 100644 (file)
@@ -10,6 +10,7 @@ set (CPP_INCLUDES
 
 set( MANAGERS_INCLUDES
     codec_manager.h
+    event_manager.h
     inspector_manager.h
 )
 
@@ -23,7 +24,6 @@ add_library( managers OBJECT
     action_manager.cc
     codec_manager.cc
     event_manager.cc
-    event_manager.h
     inspector_manager.cc
     ips_manager.cc
     ips_manager.h
index 511eefcc7069b5adfb7a51d5875a2138d5e18952..20525d70e01d7cd178423f88948a3e45103341ad 100644 (file)
@@ -230,6 +230,13 @@ void EventManager::close_outputs()
         p->close();
 }
 
+void EventManager::reload_outputs()
+{
+    for ( auto p : s_loggers.outputs )
+        p->reload();
+    LogMessage("logger file reinitialized\n");
+}
+
 void EventManager::call_alerters(
     OutputSet* idx, Packet* pkt, const char* message, const Event& event)
 {
index 3203e1ffb60f33cfea13797b2722bf3d3ba2eaab..553a221400718e68461d46f778029e94a81cfd9c 100644 (file)
@@ -60,6 +60,7 @@ public:
 
     static void open_outputs();
     static void close_outputs();
+    static void reload_outputs();
 
     static void call_alerters(OutputSet*, snort::Packet*, const char* message, const Event&);
     static void call_loggers(OutputSet*, snort::Packet*, const char* message, Event*);