]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
isdataat: fix mem leak in error path
authorVictor Julien <victor@inliniac.net>
Tue, 23 Oct 2018 12:34:08 +0000 (14:34 +0200)
committerVictor Julien <victor@inliniac.net>
Tue, 30 Oct 2018 09:21:34 +0000 (10:21 +0100)
src/detect-isdataat.c

index 201870e89fa78bb80fb173871992ed27582db110..654ac5ff36999c03ecc7e33daf55fd838d57d06a 100644 (file)
@@ -251,6 +251,7 @@ int DetectIsdataatSetup (DetectEngineCtx *de_ctx, Signature *s, const char *isda
         idad->flags |= ISDATAAT_OFFSET_BE;
         SCLogDebug("isdataat uses byte_extract with local id %u", idad->dataat);
         SCFree(offset);
+        offset = NULL;
     }
 
     /* 'ends with' scenario */
@@ -293,6 +294,8 @@ int DetectIsdataatSetup (DetectEngineCtx *de_ctx, Signature *s, const char *isda
     ret = 0;
 
 end:
+    if (offset)
+        SCFree(offset);
     if (ret != 0)
         DetectIsdataatFree(idad);
     return ret;