commit abea3ac: [Fix] src/lua/lua_mimepart.c: fix null dereference

Jan Smutny js at excello.cz
Tue Aug 31 15:49:04 UTC 2021


Author: Jan Smutny
Date: 2021-08-31 14:25:23 +0200
URL: https://github.com/rspamd/rspamd/commit/abea3ac21f764658a966dad475fc99e4b79530d7 (refs/pull/3873/head)

[Fix] src/lua/lua_mimepart.c: fix null dereference

---
 src/lua/lua_mimepart.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/lua/lua_mimepart.c b/src/lua/lua_mimepart.c
index 66b588e3a..21a46d496 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;
 }


More information about the Commits mailing list