view mod_csi_simple_compat/mod_csi_simple_compat.lua @ 5381:32a9817c7516

mod_firewall: Initialize compiled chunk just once for all handlers This should fix a case where some stateful dependencies (such as throttles) produce separate instances for every call to new_handler(), leading to surprising behaviour (e.g. rules executed via JUMP CHAIN vs ::deliver would have separate rate limits). This also adds better error handling in case the compiled code fails to run for some reason.
author Matthew Wild <mwild1@gmail.com>
date Fri, 28 Apr 2023 13:27:06 +0100
parents fcea7cf91702
children
line wrap: on
line source

local st = require "util.stanza";

local important_payloads = module:get_option_set("csi_important_payloads", { });

module:hook("csi-is-stanza-important", function (event)
	local stanza = event.stanza;
	if st.is_stanza(stanza) then
		for important in important_payloads do
			if stanza:find(important) then
				return true;
			end
		end
	end
end);