From: Victor Julien Date: Fri, 7 Jul 2017 09:14:04 +0000 (+0200) Subject: lua/alert: expose transaction if available X-Git-Tag: suricata-4.0.0-rc2~17 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d459d0b352ed8b33ebf51d8a4abd00d33d4e7a03;p=thirdparty%2Fsuricata.git lua/alert: expose transaction if available Bug #1748. --- diff --git a/src/output-lua.c b/src/output-lua.c index 16f599aaf5..55e9110570 100644 --- a/src/output-lua.c +++ b/src/output-lua.c @@ -213,8 +213,13 @@ static int LuaPacketLoggerAlerts(ThreadVars *tv, void *thread_data, const Packet lua_getglobal(td->lua_ctx->luastate, "log"); + void *txptr = NULL; + if (p->flow && p->flow->alstate && (pa->flags & PACKET_ALERT_FLAG_TX)) + txptr = AppLayerParserGetTx(p->proto, p->flow->alproto, p->flow->alstate, pa->tx_id); + LuaStateSetThreadVars(td->lua_ctx->luastate, tv); LuaStateSetPacket(td->lua_ctx->luastate, (Packet *)p); + LuaStateSetTX(td->lua_ctx->luastate, txptr); LuaStateSetFlow(td->lua_ctx->luastate, p->flow); LuaStateSetPacketAlert(td->lua_ctx->luastate, (PacketAlert *)pa);