]> git.ipfire.org Git - thirdparty/snort3.git/commitdiff
Merge pull request #1391 in SNORT/snort3 from navl_stats_config to master
authorMike Stepanek (mstepane) <mstepane@cisco.com>
Mon, 22 Oct 2018 15:48:13 +0000 (11:48 -0400)
committerMike Stepanek (mstepane) <mstepane@cisco.com>
Mon, 22 Oct 2018 15:48:13 +0000 (11:48 -0400)
Squashed commit of the following:

commit 55d0efe0b33613605cdb1d54e124a2972f01ae7f
Author: Silviu Minut <sminut@cisco.com>
Date:   Thu Oct 11 16:50:57 2018 -0400

    appid: make third party appid stats configurable

src/network_inspectors/appid/appid_config.h
src/network_inspectors/appid/appid_module.cc
src/network_inspectors/appid/tp_appid_module_api.h
src/network_inspectors/appid/tp_lib_handler.cc

index c959f92a5f2002a7ac01072d1929d54994ed6bdd..4865dadb63d8c42df4863f27e7dc548ed713de5e 100644 (file)
@@ -78,6 +78,8 @@ public:
     const char* app_detector_dir = nullptr;
     std::string tp_appid_path = "";
     std::string tp_appid_config = "";
+    bool tp_appid_stats_enable = false;
+    bool tp_appid_config_dump = false;
     uint32_t instance_id = 0;
     uint32_t memcap = 0;
     bool debug = false;
@@ -148,4 +150,3 @@ private:
 };
 
 #endif
-
index cae51f7dfb204b2d95ba1d01c5b30a7291e3b2e0..4f6d079b9d6d4bb617b7b16c7bf8e265984f214b 100644 (file)
@@ -82,6 +82,10 @@ static const Parameter s_params[] =
       "path to third party appid dynamic library" },
     { "tp_appid_config", Parameter::PT_STRING, nullptr, nullptr,
       "path to third party appid configuration file" },
+    { "tp_appid_stats_enable", Parameter::PT_BOOL, nullptr, nullptr,
+      "enable collection of stats and print stats on exit in third party module" },
+    { "tp_appid_config_dump", Parameter::PT_BOOL, nullptr, nullptr,
+      "print third party configuration on startup" },
     { "log_all_sessions", Parameter::PT_BOOL, nullptr, "false",
       "enable logging of all appid sessions" },
     { nullptr, Parameter::PT_MAX, nullptr, nullptr, nullptr }
@@ -242,6 +246,10 @@ bool AppIdModule::set(const char* fqn, Value& v, SnortConfig* c)
         config->tp_appid_path = std::string(v.get_string());
     else if ( v.is("tp_appid_config") )
         config->tp_appid_config = std::string(v.get_string());
+    else if ( v.is("tp_appid_stats_enable") )
+        config->tp_appid_stats_enable = v.get_bool();
+    else if ( v.is("tp_appid_config_dump") )
+        config->tp_appid_config_dump = v.get_bool();
     else if ( v.is("instance_id") )
         config->instance_id = v.get_long();
     else if ( v.is("debug") )
index 1b6ae75a458f5775716cd025abd832965be5e58d..8b7eb41fbe623d9249b1c467b5a1fafe9b75102c 100644 (file)
@@ -39,6 +39,8 @@ public:
     std::string tp_appid_config;
     std::vector<std::string> xff_fields;
     std::vector<std::string> old_xff_fields;
+    bool tp_appid_stats_enable = false;
+    bool tp_appid_config_dump = false;
 
     ThirdPartyConfig()
     {
@@ -94,4 +96,3 @@ private:
 typedef ThirdPartyAppIDModule* (* CreateThirdPartyAppIDModule_t)();
 
 #endif
-
index 3b4a2c6fbaf877272cfb1687abe5adf0e08174f8..879d4765e3c2777d9e174a3a57573ced0a0e8f2b 100644 (file)
@@ -117,7 +117,9 @@ void TPLibHandler::pinit(const AppIdModuleConfig* config)
     if (self->tp_so_handle or config->tp_appid_path.empty())
         return;
 
-    self->tp_config.tp_appid_config=config->tp_appid_config;
+    self->tp_config.tp_appid_config = config->tp_appid_config;
+    self->tp_config.tp_appid_stats_enable = config->tp_appid_stats_enable;
+    self->tp_config.tp_appid_config_dump = config->tp_appid_config_dump;
 
     self->LoadCallback(config->tp_appid_path.c_str(),1);