Mercurial > prosody-modules
view mod_s2s_reload_newcomponent/mod_s2s_reload_newcomponent.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 | fe5bb7b13a59 |
children |
line wrap: on
line source
local modulemanager = require "core.modulemanager"; local config = require "core.configmanager"; module.host = "*"; local function reload_components() local defined_hosts = config.getconfig(); for host in pairs(defined_hosts) do if (not hosts[host] and host ~= "*") then module:log ("debug", "loading new component %s", host); modulemanager.load(host, config.get(host, "core", "component_module")); end end; return; end module:hook("config-reloaded", reload_components);