From: Vsevolod Stakhov Date: Fri, 22 Nov 2019 14:00:26 +0000 (+0000) Subject: [Minor] Slightly rework lua specific X-Git-Tag: 2.3~313 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fe8991aac2ac1db108489fbcd42a8bdf7bd804c3;p=thirdparty%2Frspamd.git [Minor] Slightly rework lua specific --- diff --git a/src/libmime/message.c b/src/libmime/message.c index 7c7609cf80..7d2d81a7fd 100644 --- a/src/libmime/message.c +++ b/src/libmime/message.c @@ -1069,10 +1069,11 @@ rspamd_message_dtor (struct rspamd_message *msg) } } - if (p->part_type == RSPAMD_MIME_PART_CUSTOM_LUA && p->specific.lua_ref != -1) { + if (p->part_type == RSPAMD_MIME_PART_CUSTOM_LUA && + p->specific.lua_specific.cbref != -1) { luaL_unref (msg->task->cfg->lua_state, LUA_REGISTRYINDEX, - p->specific.lua_ref); + p->specific.lua_specific.cbref); } } diff --git a/src/libmime/message.h b/src/libmime/message.h index 7f6ea86ddb..c11b273ebc 100644 --- a/src/libmime/message.h +++ b/src/libmime/message.h @@ -65,6 +65,19 @@ struct rspamd_mime_multipart { rspamd_ftok_t boundary; }; +enum rspamd_lua_specific_type { + RSPAMD_LUA_PART_TEXT, + RSPAMD_LUA_PART_STRING, + RSPAMD_LUA_PART_TABLE, + RSPAMD_LUA_PART_FUNCTION, + RSPAMD_LUA_PART_UNKNOWN, +}; + +struct rspamd_lua_specific_part { + gint cbref; + enum rspamd_lua_specific_type type; +}; + struct rspamd_mime_part { struct rspamd_content_type *ct; struct rspamd_content_type *detected_ct; @@ -91,7 +104,7 @@ struct rspamd_mime_part { struct rspamd_mime_text_part *txt; struct rspamd_image *img; struct rspamd_archive *arch; - gint lua_ref; + struct rspamd_lua_specific_part lua_specific; } specific; guchar digest[rspamd_cryptobox_HASHBYTES];