detect/dns: update buffer initialization logic

pull/8482/head
Victor Julien 4 years ago
parent 70125a29f6
commit e31ead9bc2

@ -73,8 +73,8 @@ struct DnsQueryGetDataArgs {
}; };
static InspectionBuffer *DnsQueryGetData(DetectEngineThreadCtx *det_ctx, static InspectionBuffer *DnsQueryGetData(DetectEngineThreadCtx *det_ctx,
const DetectEngineTransforms *transforms, const DetectEngineTransforms *transforms, Flow *f, struct DnsQueryGetDataArgs *cbdata,
Flow *f, struct DnsQueryGetDataArgs *cbdata, int list_id, bool first) int list_id)
{ {
SCEnter(); SCEnter();
@ -82,7 +82,7 @@ static InspectionBuffer *DnsQueryGetData(DetectEngineThreadCtx *det_ctx,
InspectionBufferMultipleForListGet(det_ctx, list_id, cbdata->local_id); InspectionBufferMultipleForListGet(det_ctx, list_id, cbdata->local_id);
if (buffer == NULL) if (buffer == NULL)
return NULL; return NULL;
if (!first && buffer->inspect != NULL) if (buffer->initialized)
return buffer; return buffer;
const uint8_t *data; const uint8_t *data;
@ -108,8 +108,8 @@ static uint8_t DetectEngineInspectDnsQuery(DetectEngineCtx *de_ctx, DetectEngine
while(1) { while(1) {
struct DnsQueryGetDataArgs cbdata = { local_id, txv, }; struct DnsQueryGetDataArgs cbdata = { local_id, txv, };
InspectionBuffer *buffer = DnsQueryGetData(det_ctx, InspectionBuffer *buffer =
transforms, f, &cbdata, engine->sm_list, false); DnsQueryGetData(det_ctx, transforms, f, &cbdata, engine->sm_list);
if (buffer == NULL || buffer->inspect == NULL) if (buffer == NULL || buffer->inspect == NULL)
break; break;
@ -159,8 +159,7 @@ static void PrefilterTxDnsQuery(DetectEngineThreadCtx *det_ctx, const void *pect
// loop until we get a NULL // loop until we get a NULL
struct DnsQueryGetDataArgs cbdata = { local_id, txv }; struct DnsQueryGetDataArgs cbdata = { local_id, txv };
InspectionBuffer *buffer = DnsQueryGetData(det_ctx, ctx->transforms, InspectionBuffer *buffer = DnsQueryGetData(det_ctx, ctx->transforms, f, &cbdata, list_id);
f, &cbdata, list_id, true);
if (buffer == NULL) if (buffer == NULL)
break; break;

Loading…
Cancel
Save