From: Jan Smutny Date: Tue, 31 Aug 2021 12:25:23 +0000 (+0200) Subject: [Fix] src/lua/lua_mimepart.c: fix null dereference X-Git-Tag: 3.1~207^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F3873%2Fhead;p=thirdparty%2Frspamd.git [Fix] src/lua/lua_mimepart.c: fix null dereference --- diff --git a/src/lua/lua_mimepart.c b/src/lua/lua_mimepart.c index 66b588e3aa..21a46d496e 100644 --- a/src/lua/lua_mimepart.c +++ b/src/lua/lua_mimepart.c @@ -1240,7 +1240,16 @@ lua_textpart_get_fuzzy_hashes (lua_State * L) rspamd_stat_token_t *word; struct lua_shingle_filter_cbdata cbd; - if (part && pool) { + + if (part == NULL || pool == NULL) { + return luaL_error (L, "invalid arguments"); + } + + if (IS_TEXT_PART_EMPTY (part) || part->utf_words == NULL) { + lua_pushnil (L); + lua_pushnil (L); + } + else { /* TODO: add keys and algorithms support */ rspamd_cryptobox_hash (key, "rspamd", strlen ("rspamd"), NULL, 0); @@ -1294,9 +1303,6 @@ lua_textpart_get_fuzzy_hashes (lua_State * L) } } } - else { - return luaL_error (L, "invalid arguments"); - } return 2; }