|
|
|
|
@ -247,6 +247,7 @@ static void EveAddFlowVars(const Flow *f, SCJsonBuilder *js_root, SCJsonBuilder
|
|
|
|
|
SCJsonBuilder *js_traffic_id = NULL;
|
|
|
|
|
SCJsonBuilder *js_traffic_label = NULL;
|
|
|
|
|
SCJsonBuilder *js_flowints = NULL;
|
|
|
|
|
SCJsonBuilder *js_entropyvals = NULL;
|
|
|
|
|
SCJsonBuilder *js_flowbits = NULL;
|
|
|
|
|
GenericVar *gv = f->flowvar;
|
|
|
|
|
while (gv != NULL) {
|
|
|
|
|
@ -292,6 +293,17 @@ static void EveAddFlowVars(const Flow *f, SCJsonBuilder *js_root, SCJsonBuilder
|
|
|
|
|
SCJbStartObject(js_flowvars);
|
|
|
|
|
SCJbSetString(js_flowvars, (const char *)keybuf, (char *)printable_buf);
|
|
|
|
|
SCJbClose(js_flowvars);
|
|
|
|
|
} else if (fv->datatype == FLOWVAR_TYPE_FLOAT) {
|
|
|
|
|
const char *varname = VarNameStoreLookupById(fv->idx, VAR_TYPE_FLOW_FLOAT);
|
|
|
|
|
if (varname) {
|
|
|
|
|
if (js_entropyvals == NULL) {
|
|
|
|
|
js_entropyvals = SCJbNewObject();
|
|
|
|
|
if (js_entropyvals == NULL)
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
SCJbSetFloat(js_entropyvals, varname, fv->data.fv_float.value);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else if (fv->datatype == FLOWVAR_TYPE_INT) {
|
|
|
|
|
const char *varname = VarNameStoreLookupById(fv->idx,
|
|
|
|
|
VAR_TYPE_FLOW_INT);
|
|
|
|
|
@ -303,7 +315,6 @@ static void EveAddFlowVars(const Flow *f, SCJsonBuilder *js_root, SCJsonBuilder
|
|
|
|
|
}
|
|
|
|
|
SCJbSetUint(js_flowints, varname, fv->data.fv_int.value);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
} else if (gv->type == DETECT_FLOWBITS) {
|
|
|
|
|
FlowBit *fb = (FlowBit *)gv;
|
|
|
|
|
@ -348,6 +359,11 @@ static void EveAddFlowVars(const Flow *f, SCJsonBuilder *js_root, SCJsonBuilder
|
|
|
|
|
SCJbSetObject(js_root, "flowints", js_flowints);
|
|
|
|
|
SCJbFree(js_flowints);
|
|
|
|
|
}
|
|
|
|
|
if (js_entropyvals) {
|
|
|
|
|
SCJbClose(js_entropyvals);
|
|
|
|
|
SCJbSetObject(js_root, "entropy", js_entropyvals);
|
|
|
|
|
SCJbFree(js_entropyvals);
|
|
|
|
|
}
|
|
|
|
|
if (js_flowvars) {
|
|
|
|
|
SCJbClose(js_flowvars);
|
|
|
|
|
SCJbSetObject(js_root, "flowvars", js_flowvars);
|
|
|
|
|
|