From 86d8939ad4371f80d1b034a84224faf5d173cdb3 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Tue, 20 Apr 2021 14:36:41 +0100 Subject: [Fix] Replies: Fix 'Reply-To' handling in task:get_reply_sender --- src/lua/lua_task.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/lua/lua_task.c b/src/lua/lua_task.c index cb9ca4994..01c450422 100644 --- a/src/lua/lua_task.c +++ b/src/lua/lua_task.c @@ -4103,10 +4103,23 @@ lua_task_get_reply_sender (lua_State *L) if (task) { - rh = rspamd_message_get_header_array(task, "Reply-To", FALSE); + rh = rspamd_message_get_header_array (task, "Reply-To", FALSE); if (rh) { - lua_pushstring (L, rh->decoded); + GPtrArray *addrs; + + addrs = rspamd_email_address_from_mime (task->task_pool, rh->decoded, + strlen (rh->decoded), NULL, -1); + + if (addrs == NULL) { + lua_pushnil (L); + } + else { + struct rspamd_email_address *addr; + + addr = (struct rspamd_email_address *)g_ptr_array_index (addrs, 0); + lua_pushlstring (L, addr->addr, addr->addr_len); + } } else if (MESSAGE_FIELD_CHECK (task, from_mime) && MESSAGE_FIELD (task, from_mime)->len == 1) { -- cgit v1.2.3