]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
logging: convert json alert output to non-thread module
authorJason Ish <ish@unx.ca>
Fri, 27 May 2016 07:33:10 +0000 (01:33 -0600)
committerVictor Julien <victor@inliniac.net>
Mon, 19 Sep 2016 11:47:52 +0000 (13:47 +0200)
src/output-json-alert.c
src/output-json-drop.c
src/output-json-ssh.c
src/output.c
src/output.h
src/tm-modules.c
src/tm-threads-common.h

index 56567ce2066c5401c54f75df9c2e6f89225a0b85..79c8ea0e291af60bcc5b36dc2eb16465d6e7ac7d 100644 (file)
@@ -741,30 +741,19 @@ error:
 
 void TmModuleJsonAlertLogRegister (void)
 {
-    tmm_modules[TMM_JSONALERTLOG].name = MODULE_NAME;
-    tmm_modules[TMM_JSONALERTLOG].ThreadInit = JsonAlertLogThreadInit;
-    tmm_modules[TMM_JSONALERTLOG].ThreadDeinit = JsonAlertLogThreadDeinit;
-    tmm_modules[TMM_JSONALERTLOG].cap_flags = 0;
-    tmm_modules[TMM_JSONALERTLOG].flags = TM_FLAG_LOGAPI_TM;
-
     OutputRegisterPacketModule(MODULE_NAME, "alert-json-log",
-        JsonAlertLogInitCtx, JsonAlertLogger, JsonAlertLogCondition, NULL, NULL, NULL);
+        JsonAlertLogInitCtx, JsonAlertLogger, JsonAlertLogCondition,
+        JsonAlertLogThreadInit, JsonAlertLogThreadDeinit, NULL);
     OutputRegisterPacketSubModule("eve-log", MODULE_NAME, "eve-log.alert",
-            JsonAlertLogInitCtxSub, JsonAlertLogger, JsonAlertLogCondition);
+        JsonAlertLogInitCtxSub, JsonAlertLogger, JsonAlertLogCondition,
+        JsonAlertLogThreadInit, JsonAlertLogThreadDeinit, NULL);
 }
 
 #else
 
-static TmEcode OutputJsonThreadInit(ThreadVars *t, void *initdata, void **data)
-{
-    SCLogInfo("Can't init JSON output - JSON support was disabled during build.");
-    return TM_ECODE_FAILED;
-}
-
 void TmModuleJsonAlertLogRegister (void)
 {
-    tmm_modules[TMM_JSONALERTLOG].name = MODULE_NAME;
-    tmm_modules[TMM_JSONALERTLOG].ThreadInit = OutputJsonThreadInit;
+    SCLogInfo("Can't register JSON output - JSON support was disabled during build.");
 }
 
 #endif
index fee5845f72b05b6e08c46919b48e463af87153bb..8a9a0610c6a8659a8925db122bf2e534ecaec041 100644 (file)
@@ -438,7 +438,7 @@ void TmModuleJsonDropLogRegister (void)
     OutputRegisterPacketModule(MODULE_NAME, "drop-json-log",
         JsonDropLogInitCtx, JsonDropLogger, JsonDropLogCondition, NULL, NULL, NULL);
     OutputRegisterPacketSubModule("eve-log", MODULE_NAME, "eve-log.drop",
-            JsonDropLogInitCtxSub, JsonDropLogger, JsonDropLogCondition);
+        JsonDropLogInitCtxSub, JsonDropLogger, JsonDropLogCondition, NULL, NULL, NULL);
 }
 
 #else
index ff626666c237f6a9a730cda646fdd32a0925cb9c..d99c6e88807bfee53fb92b532d6d2382c59cc220 100644 (file)
@@ -328,8 +328,8 @@ void TmModuleJsonSshLogRegister (void)
         JsonSshLogger, JsonSshCondition, NULL, NULL, NULL);
 
     /* also register as child of eve-log */
-    OutputRegisterPacketSubModule("eve-log", "JsonSshLog", "eve-log.ssh", OutputSshLogInitSub,
-            JsonSshLogger, JsonSshCondition);
+    OutputRegisterPacketSubModule("eve-log", "JsonSshLog", "eve-log.ssh",
+        OutputSshLogInitSub, JsonSshLogger, JsonSshCondition, NULL, NULL, NULL);
 }
 
 #else
index 4ffa6b081319d9e77cf086aebd0b487a4badfba7..f981fbdeb3cd75a91437e8fe0bbc23fb7d451a88 100644 (file)
@@ -127,7 +127,9 @@ error:
 void
 OutputRegisterPacketSubModule(const char *parent_name, const char *name,
     const char *conf_name, OutputCtx *(*InitFunc)(ConfNode *, OutputCtx *parent_ctx),
-    PacketLogger PacketLogFunc, PacketLogCondition PacketConditionFunc)
+    PacketLogger PacketLogFunc, PacketLogCondition PacketConditionFunc,
+    ThreadInitFunc ThreadInit, ThreadDeinitFunc ThreadDeinit,
+    ThreadExitPrintStatsFunc ThreadExitPrintStats)
 {
     if (unlikely(PacketLogFunc == NULL || PacketConditionFunc == NULL)) {
         goto error;
@@ -144,6 +146,9 @@ OutputRegisterPacketSubModule(const char *parent_name, const char *name,
     module->InitSubFunc = InitFunc;
     module->PacketLogFunc = PacketLogFunc;
     module->PacketConditionFunc = PacketConditionFunc;
+    module->ThreadInit = ThreadInit;
+    module->ThreadDeinit = ThreadDeinit;
+    module->ThreadExitPrintStats = ThreadExitPrintStats;
     TAILQ_INSERT_TAIL(&output_modules, module, entries);
 
     SCLogDebug("Packet logger \"%s\" registered.", name);
index cfa01ae9a0b598257270e50c34e02848915aedde..d7311c13de4f172918e1814985bc2688834b2a34 100644 (file)
@@ -77,7 +77,9 @@ void OutputRegisterPacketModule(const char *name, const char *conf_name,
     ThreadInitFunc, ThreadDeinitFunc, ThreadExitPrintStatsFunc);
 void OutputRegisterPacketSubModule(const char *parent_name, const char *name,
     const char *conf_name, OutputCtx *(*InitFunc)(ConfNode *, OutputCtx *),
-    PacketLogger LogFunc, PacketLogCondition ConditionFunc);
+    PacketLogger LogFunc, PacketLogCondition ConditionFunc,
+    ThreadInitFunc ThreadInit, ThreadDeinitFunc ThreadDeinit,
+    ThreadExitPrintStatsFunc ThreadExitPrintStats);
 
 void OutputRegisterTxModule(const char *name, const char *conf_name,
     OutputCtx *(*InitFunc)(ConfNode *), AppProto alproto,
index 834a46a2c2e7be97a4e95721b273245d7dcbd8db..5099a74b820153cb3419c14c1e1440c19594ba11 100644 (file)
@@ -242,7 +242,6 @@ const char * TmModuleTmmIdToString(TmmId id)
         CASE_CODE (TMM_FILELOGGER);
         CASE_CODE (TMM_FILEDATALOGGER);
         CASE_CODE (TMM_STREAMINGLOGGER);
-        CASE_CODE (TMM_JSONALERTLOG);
         CASE_CODE (TMM_JSONDROPLOG);
         CASE_CODE (TMM_JSONFILELOG);
         CASE_CODE (TMM_JSONFLOWLOG);
index 370c5a1cffa9e2297e86ed1ec3f2a907475e12da..7e76782692e17855e572226093e09535d77746d3 100644 (file)
@@ -75,7 +75,6 @@ typedef enum {
     TMM_FILELOGGER,
     TMM_FILEDATALOGGER,
     TMM_STREAMINGLOGGER,
-    TMM_JSONALERTLOG,
     TMM_JSONDROPLOG,
     TMM_JSONSMTPLOG,
     TMM_JSONSSHLOG,