multi-detect: allow start up with 0 tenants

pull/1608/head
Victor Julien 11 years ago
parent 6d92e8d220
commit 7c581c0ffc

@ -1996,6 +1996,7 @@ static DetectEngineThreadCtx *DetectEngineThreadCtxInitForMT(ThreadVars *tv)
uint32_t map_cnt = 0; uint32_t map_cnt = 0;
int max_tenant_id = 0; int max_tenant_id = 0;
DetectEngineCtx *list = master->list; DetectEngineCtx *list = master->list;
DetectEngineThreadCtx **tenant_det_ctxs = NULL;
while (list) { while (list) {
if (list->tenant_id > max_tenant_id) if (list->tenant_id > max_tenant_id)
@ -2005,10 +2006,8 @@ static DetectEngineThreadCtx *DetectEngineThreadCtxInitForMT(ThreadVars *tv)
} }
if (max_tenant_id == 0) { if (max_tenant_id == 0) {
SCLogInfo("no tenants left"); SCLogInfo("no tenants left, or none registered yet");
return NULL; } else {
}
max_tenant_id++; max_tenant_id++;
DetectEngineTenantMapping *map = master->tenant_mapping_list; DetectEngineTenantMapping *map = master->tenant_mapping_list;
@ -2037,7 +2036,7 @@ static DetectEngineThreadCtx *DetectEngineThreadCtxInitForMT(ThreadVars *tv)
} }
DetectEngineThreadCtx **tenant_det_ctxs = SCCalloc(max_tenant_id, sizeof(DetectEngineThreadCtx *)); tenant_det_ctxs = SCCalloc(max_tenant_id, sizeof(DetectEngineThreadCtx *));
BUG_ON(tenant_det_ctxs == NULL); BUG_ON(tenant_det_ctxs == NULL);
list = master->list; list = master->list;
@ -2049,6 +2048,7 @@ static DetectEngineThreadCtx *DetectEngineThreadCtxInitForMT(ThreadVars *tv)
} }
list = list->next; list = list->next;
} }
}
DetectEngineThreadCtx *det_ctx = SCCalloc(1, sizeof(DetectEngineThreadCtx)); DetectEngineThreadCtx *det_ctx = SCCalloc(1, sizeof(DetectEngineThreadCtx));
if (det_ctx == NULL) { if (det_ctx == NULL) {

Loading…
Cancel
Save