detect: free lookup structures

pull/1980/head
Victor Julien 10 years ago
parent 4ba1ac55f0
commit 2ab20d0b9b

@ -3507,6 +3507,7 @@ static DetectPort *RulesGroupByPorts(DetectEngineCtx *de_ctx, int ipproto, uint3
SigGroupHeadSetProtoAndDirection(iter->sh, ipproto, direction);
SigGroupHeadHashAdd(de_ctx, iter->sh);
SigGroupHeadStore(de_ctx, iter->sh);
iter->flags |= PORT_SIGGROUPHEAD_COPY;
de_ctx->gh_unique++;
own++;
} else {
@ -3931,6 +3932,21 @@ int SigAddressCleanupStage1(DetectEngineCtx *de_ctx)
SigGroupHeadFree(de_ctx->decoder_event_sgh);
de_ctx->decoder_event_sgh = NULL;
int f;
for (f = 0; f < FLOW_STATES; f++) {
int p;
for (p = 0; p < 256; p++) {
de_ctx->flow_gh[f].sgh[p] = NULL;
}
/* free lookup lists */
DetectPortCleanupList(de_ctx->flow_gh[f].tcp);
de_ctx->flow_gh[f].tcp = NULL;
DetectPortCleanupList(de_ctx->flow_gh[f].udp);
de_ctx->flow_gh[f].udp = NULL;
}
IPOnlyDeinit(de_ctx, &de_ctx->io_ctx);
if (!(de_ctx->flags & DE_QUIET)) {

Loading…
Cancel
Save