|
|
@ -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) {
|
|
|
|