]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
json-drop-log: clean up memory at shutdown
authorVictor Julien <victor@inliniac.net>
Wed, 24 Feb 2016 15:19:13 +0000 (16:19 +0100)
committerVictor Julien <victor@inliniac.net>
Wed, 24 Feb 2016 15:19:13 +0000 (16:19 +0100)
src/output-json-drop.c

index f82c9c00db3d1895d08077da3f0570890b3c8e64..f93c22f4db2d728c1cbf731ff852b27c53501a29 100644 (file)
@@ -218,12 +218,21 @@ static TmEcode JsonDropLogThreadDeinit(ThreadVars *t, void *data)
     return TM_ECODE_OK;
 }
 
+static void JsonDropOutputCtxFree(JsonDropOutputCtx *drop_ctx)
+{
+    if (drop_ctx != NULL) {
+        if (drop_ctx->file_ctx != NULL)
+            LogFileFreeCtx(drop_ctx->file_ctx);
+        SCFree(drop_ctx);
+    }
+}
+
 static void JsonDropLogDeInitCtx(OutputCtx *output_ctx)
 {
     OutputDropLoggerDisable();
 
-    LogFileCtx *logfile_ctx = (LogFileCtx *)output_ctx->data;
-    LogFileFreeCtx(logfile_ctx);
+    JsonDropOutputCtx *drop_ctx = output_ctx->data;
+    JsonDropOutputCtxFree(drop_ctx);
     SCFree(output_ctx);
 }
 
@@ -231,19 +240,12 @@ static void JsonDropLogDeInitCtxSub(OutputCtx *output_ctx)
 {
     OutputDropLoggerDisable();
 
+    JsonDropOutputCtx *drop_ctx = output_ctx->data;
+    SCFree(drop_ctx);
     SCLogDebug("cleaning up sub output_ctx %p", output_ctx);
     SCFree(output_ctx);
 }
 
-static void JsonDropOutputCtxFree(JsonDropOutputCtx *drop_ctx)
-{
-    if (drop_ctx != NULL) {
-        if (drop_ctx->file_ctx != NULL)
-            LogFileFreeCtx(drop_ctx->file_ctx);
-        SCFree(drop_ctx);
-    }
-}
-
 #define DEFAULT_LOG_FILENAME "drop.json"
 static OutputCtx *JsonDropLogInitCtx(ConfNode *conf)
 {