]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
lua/flowvarlib: fix unchecked null
authorJason Ish <jason.ish@oisf.net>
Tue, 29 Apr 2025 17:26:46 +0000 (11:26 -0600)
committerVictor Julien <victor@inliniac.net>
Tue, 29 Apr 2025 23:25:57 +0000 (01:25 +0200)
Use checkudata, instead of testudata which won't return in case of
NULL, but raise an error in the Lua script.

Fixes:

** CID 1646748:  Null pointer dereferences  (NULL_RETURNS)
/src/util-lua-flowvarlib.c: 89 in LuaFlowvarValue()

src/util-lua-flowvarlib.c

index 5d49b52ae4c02be495bb0cebe270871df63cdd9a..9d80d349bb8a92a25aa32aa67b5c89cfd93e02ac 100644 (file)
@@ -81,7 +81,7 @@ static int LuaFlowvarGet(lua_State *L)
 
 static int LuaFlowvarValue(lua_State *L)
 {
-    uint32_t *flowvar_id = luaL_testudata(L, 1, suricata_flowvar_mt);
+    uint32_t *flowvar_id = luaL_checkudata(L, 1, suricata_flowvar_mt);
     Flow *f = LuaStateGetFlow(L);
     if (f == NULL) {
         return LuaCallbackError(L, "flow is NULL");