jb_set_string(jb, "xff", xff_buffer);
}
- OutputJsonBuilderBuffer(jb, aft->ctx->file_ctx, &aft->ctx->buffer);
+ OutputJsonBuilderBuffer(jb, aft->ctx);
jb_free(jb);
}
CreateEveHeader(p, LOG_DIR_PACKET, "packet", NULL, json_output_ctx->eve_ctx);
if (unlikely(packetjs != NULL)) {
EvePacket(p, packetjs, 0);
- OutputJsonBuilderBuffer(packetjs, aft->ctx->file_ctx, &aft->ctx->buffer);
+ OutputJsonBuilderBuffer(packetjs, aft->ctx);
jb_free(packetjs);
}
}
AlertJsonHeader(json_output_ctx, p, pa, jb, json_output_ctx->flags, NULL);
- OutputJsonBuilderBuffer(jb, aft->ctx->file_ctx, &aft->ctx->buffer);
+ OutputJsonBuilderBuffer(jb, aft->ctx);
jb_free(jb);
}
EvePacket(p, js, GET_PKT_LEN(p) < 32 ? GET_PKT_LEN(p) : 32);
}
- OutputJsonBuilderBuffer(js, aft->ctx->file_ctx, &aft->ctx->buffer);
+ OutputJsonBuilderBuffer(js, aft->ctx);
jb_free(js);
}
/* anomaly */
jb_close(js);
- OutputJsonBuilderBuffer(js, aft->ctx->file_ctx, &aft->ctx->buffer);
+ OutputJsonBuilderBuffer(js, aft->ctx);
jb_free(js);
/* Current implementation assumes a single owner for this value */
jb_close(jb);
MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(jb, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(jb, thread);
jb_free(jb);
return TM_ECODE_OK;
rs_dhcp_logger_log(ctx->rs_logger, tx, js);
- OutputJsonBuilderBuffer(js, thread->thread->file_ctx, &thread->thread->buffer);
+ OutputJsonBuilderBuffer(js, thread->thread);
jb_free(js);
return TM_ECODE_OK;
LogDNP3LogThread *thread = (LogDNP3LogThread *)thread_data;
DNP3Transaction *tx = vtx;
- MemBuffer *buffer = (MemBuffer *)thread->ctx->buffer;
-
- MemBufferReset(buffer);
if (tx->has_request && tx->request_done) {
JsonBuilder *js =
CreateEveHeader(p, LOG_DIR_FLOW, "dnp3", NULL, thread->dnp3log_ctx->eve_ctx);
jb_open_object(js, "dnp3");
JsonDNP3LogRequest(js, tx);
jb_close(js);
- OutputJsonBuilderBuffer(js, thread->ctx->file_ctx, &buffer);
+ OutputJsonBuilderBuffer(js, thread->ctx);
jb_free(js);
}
LogDNP3LogThread *thread = (LogDNP3LogThread *)thread_data;
DNP3Transaction *tx = vtx;
- MemBuffer *buffer = (MemBuffer *)thread->ctx->buffer;
-
- MemBufferReset(buffer);
if (tx->has_response && tx->response_done) {
JsonBuilder *js =
CreateEveHeader(p, LOG_DIR_FLOW, "dnp3", NULL, thread->dnp3log_ctx->eve_ctx);
jb_open_object(js, "dnp3");
JsonDNP3LogResponse(js, tx);
jb_close(js);
- OutputJsonBuilderBuffer(js, thread->ctx->file_ctx, &buffer);
+ OutputJsonBuilderBuffer(js, thread->ctx);
jb_free(js);
}
}
jb_close(jb);
- OutputJsonBuilderBuffer(jb, td->ctx->file_ctx, &td->ctx->buffer);
+ OutputJsonBuilderBuffer(jb, td->ctx);
jb_free(jb);
}
jb_open_object(jb, "dns");
rs_dns_log_json_answer(txptr, td->dnslog_ctx->flags, jb);
jb_close(jb);
- OutputJsonBuilderBuffer(jb, td->ctx->file_ctx, &td->ctx->buffer);
+ OutputJsonBuilderBuffer(jb, td->ctx);
jb_free(jb);
}
} else {
jb_set_object(jb, "dns", answer);
jb_free(answer);
- OutputJsonBuilderBuffer(jb, td->ctx->file_ctx, &td->ctx->buffer);
+ OutputJsonBuilderBuffer(jb, td->ctx);
jb_free(jb);
}
/* Log authorities. */
jb_set_object(jb, "dns", answer);
jb_free(answer);
- OutputJsonBuilderBuffer(jb, td->ctx->file_ctx, &td->ctx->buffer);
+ OutputJsonBuilderBuffer(jb, td->ctx);
jb_free(jb);
}
}
}
}
- OutputJsonBuilderBuffer(js, aft->ctx->file_ctx, &aft->ctx->buffer);
+ OutputJsonBuilderBuffer(js, aft->ctx);
jb_free(js);
return TM_ECODE_OK;
return;
}
- OutputJsonBuilderBuffer(js, aft->ctx->file_ctx, &aft->ctx->buffer);
+ OutputJsonBuilderBuffer(js, aft->ctx);
jb_free(js);
}
EveFlowLogJSON(thread, jb, f);
- OutputJsonBuilderBuffer(jb, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(jb, thread);
jb_free(jb);
SCReturnInt(TM_ECODE_OK);
goto fail;
}
- MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(jb, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(jb, thread);
jb_free(jb);
}
}
}
- OutputJsonBuilderBuffer(js, jhl->ctx->file_ctx, &jhl->ctx->buffer);
+ OutputJsonBuilderBuffer(js, jhl->ctx);
jb_free(js);
SCReturnInt(TM_ECODE_OK);
goto end;
}
jb_close(js);
- OutputJsonBuilderBuffer(js, aft->ctx->file_ctx, &aft->ctx->buffer);
+ OutputJsonBuilderBuffer(js, aft->ctx);
end:
jb_free(js);
return 0;
goto error;
}
- OutputJsonBuilderBuffer(jb, thread->ctx->file_ctx, &thread->ctx->buffer);
+ OutputJsonBuilderBuffer(jb, thread->ctx);
jb_free(jb);
return TM_ECODE_OK;
}
jb_close(jb);
- MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(jb, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(jb, thread);
jb_free(jb);
return TM_ECODE_OK;
if (!aft->ctx->cfg.include_metadata) {
EveAddMetadata(p, p->flow, js);
}
- OutputJsonBuilderBuffer(js, aft->file_ctx, &aft->buffer);
+ OutputJsonBuilderBuffer(js, aft);
jb_free(js);
return TM_ECODE_OK;
if (!rs_mqtt_logger_log(state, tx, thread->mqttlog_ctx->flags, js))
goto error;
- OutputJsonBuilderBuffer(js, thread->ctx->file_ctx, &thread->ctx->buffer);
+ OutputJsonBuilderBuffer(js, thread->ctx);
jb_free(js);
return TM_ECODE_OK;
SCEnter();
OutputJsonThreadCtx *jhl = thread_data;
- /* reset */
- MemBufferReset(jhl->buffer);
JsonBuilder *jb = CreateEveHeaderFromNetFlow(f, 0);
if (unlikely(jb == NULL))
return TM_ECODE_OK;
NetFlowLogEveToServer(jb, f);
EveAddCommonOptions(&jhl->ctx->cfg, NULL, f, jb);
- OutputJsonBuilderBuffer(jb, jhl->file_ctx, &jhl->buffer);
+ OutputJsonBuilderBuffer(jb, jhl);
jb_free(jb);
/* only log a response record if we actually have seen response packets */
if (f->tosrcpktcnt) {
- /* reset */
- MemBufferReset(jhl->buffer);
jb = CreateEveHeaderFromNetFlow(f, 1);
if (unlikely(jb == NULL))
return TM_ECODE_OK;
NetFlowLogEveToClient(jb, f);
EveAddCommonOptions(&jhl->ctx->cfg, NULL, f, jb);
- OutputJsonBuilderBuffer(jb, jhl->file_ctx, &jhl->buffer);
+ OutputJsonBuilderBuffer(jb, jhl);
jb_free(jb);
}
SCReturnInt(TM_ECODE_OK);
jb_close(jb);
MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(jb, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(jb, thread);
jb_free(jb);
return TM_ECODE_OK;
}
jb_free(js);
return TM_ECODE_FAILED;
}
- MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(js, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(js, thread);
jb_free(js);
return TM_ECODE_OK;
goto error;
}
- MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(js, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(js, thread);
jb_free(js);
return TM_ECODE_OK;
goto error;
}
- MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(js, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(js, thread);
jb_free(js);
return TM_ECODE_OK;
}
jb_close(jb);
- EveAddCommonOptions(&thread->ctx->cfg, p, f, jb);
- MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(jb, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(jb, thread);
jb_free(jb);
return TM_ECODE_OK;
jb_close(jb);
if (EveEmailLogJson(jhl, jb, p, f, state, tx, tx_id) == TM_ECODE_OK) {
- OutputJsonBuilderBuffer(jb, jhl->ctx->file_ctx, &jhl->ctx->buffer);
+ OutputJsonBuilderBuffer(jb, jhl->ctx);
}
jb_free(jb);
}
jb_close(jb);
- MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(jb, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(jb, thread);
jb_free(jb);
return TM_ECODE_OK;
if (unlikely(js == NULL))
return 0;
- /* reset */
- MemBufferReset(thread->buffer);
-
jb_open_object(js, "ssh");
if (!rs_ssh_log_json(txptr, js)) {
goto end;
}
jb_close(js);
- OutputJsonBuilderBuffer(js, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(js, thread);
end:
jb_free(js);
}
jb_close(js);
- OutputJsonBuilderBuffer(js, thread->ctx->file_ctx, &thread->ctx->buffer);
+ OutputJsonBuilderBuffer(js, thread->ctx);
jb_free(js);
return TM_ECODE_OK;
/* Close template. */
jb_close(js);
- OutputJsonBuilderBuffer(js, thread->ctx->file_ctx, &thread->ctx->buffer);
+ OutputJsonBuilderBuffer(js, thread->ctx);
jb_free(js);
return TM_ECODE_OK;
}
jb_close(jb);
- MemBufferReset(thread->buffer);
- OutputJsonBuilderBuffer(jb, thread->file_ctx, &thread->buffer);
+ OutputJsonBuilderBuffer(jb, thread);
jb_free(jb);
return TM_ECODE_OK;
/* Close the tls object. */
jb_close(js);
- OutputJsonBuilderBuffer(js, aft->ctx->file_ctx, &aft->ctx->buffer);
+ OutputJsonBuilderBuffer(js, aft->ctx);
jb_free(js);
return 0;
return 0;
}
-int OutputJsonBuilderBuffer(JsonBuilder *js, LogFileCtx *file_ctx, MemBuffer **buffer)
+int OutputJsonBuilderBuffer(JsonBuilder *js, OutputJsonThreadCtx *ctx)
{
+ LogFileCtx *file_ctx = ctx->file_ctx;
+ MemBuffer **buffer = &ctx->buffer;
if (file_ctx->sensor_name) {
jb_set_string(js, "host", file_ctx->sensor_name);
}
JsonBuilder *CreateEveHeaderWithTxId(const Packet *p, enum OutputJsonLogDirection dir,
const char *event_type, JsonAddrInfo *addr, uint64_t tx_id, OutputJsonCtx *eve_ctx);
int OutputJSONBuffer(json_t *js, LogFileCtx *file_ctx, MemBuffer **buffer);
-int OutputJsonBuilderBuffer(JsonBuilder *js, LogFileCtx *file_ctx, MemBuffer **buffer);
+int OutputJsonBuilderBuffer(JsonBuilder *js, OutputJsonThreadCtx *ctx);
OutputInitResult OutputJsonInitCtx(ConfNode *);
OutputInitResult OutputJsonLogInitSub(ConfNode *conf, OutputCtx *parent_ctx);