Selaa lähdekoodia

[Minor] Fix signing with `skip_process` flag

tags/3.2
Vsevolod Stakhov 2 vuotta sitten
vanhempi
commit
ac183a2c2b
2 muutettua tiedostoa jossa 13 lisäystä ja 9 poistoa
  1. 0
    4
      lualib/lua_mime.lua
  2. 13
    5
      src/lua/lua_task.c

+ 0
- 4
lualib/lua_mime.lua Näytä tiedosto

@@ -515,10 +515,6 @@ end
-- Adds/removes headers both internal and in the milter reply
--]]
exports.modify_headers = function(task, hdr_alterations)
if task:has_flag('skip_process') then
-- Cannot set flags for skipped (and unprocessed) task
return
end
local add = hdr_alterations.add or {}
local remove = hdr_alterations.remove or {}


+ 13
- 5
src/lua/lua_task.c Näytä tiedosto

@@ -444,6 +444,7 @@ LUA_FUNCTION_DEF (task, get_headers);
* remove from the end
* Order in addition means addition from the top: 0 means the most top header, 1 one after, etc
* negative order means addtion to the end, e.g. -1 is appending header.
* @return {bool} true if header could be modified (always true unless we don't have an unparsed message)
*/
LUA_FUNCTION_DEF (task, modify_header);

@@ -6671,17 +6672,24 @@ lua_task_modify_header (lua_State *L)
const gchar *hname = luaL_checkstring (L, 2);

if (hname && task && lua_type (L, 3) == LUA_TTABLE) {
ucl_object_t *mods = ucl_object_lua_import (L, 3);
if (task->message) {
ucl_object_t *mods = ucl_object_lua_import(L, 3);

rspamd_message_set_modified_header(task,
MESSAGE_FIELD_CHECK (task, raw_headers), hname, mods);
ucl_object_unref(mods);

rspamd_message_set_modified_header (task,
MESSAGE_FIELD_CHECK (task, raw_headers), hname, mods);
ucl_object_unref (mods);
lua_pushboolean (L, true);
}
else {
lua_pushboolean (L, false);
}
}
else {
return luaL_error (L, "invalid arguments");
}

return 0;
return 1;
}

static gint

Loading…
Peruuta
Tallenna