view mod_s2s_whitelist/mod_s2s_whitelist.lua @ 5491:7842502c1157

mod_http_debug: Log some extended info about requests If you point something external at this module, you don't get the response body back, hence it can be useful to see some details in the log as well.
author Kim Alvefur <zash@zash.se>
date Fri, 26 May 2023 15:37:15 +0200
parents c1a8ce147885
children
line wrap: on
line source

local st = require "util.stanza";

local whitelist = module:get_option_inherited_set("s2s_whitelist", {});

module:hook("route/remote", function (event)
	if not whitelist:contains(event.to_host) then
		module:send(st.error_reply(event.stanza, "cancel", "not-allowed", "Communication with this domain is restricted"));
		return true;
	end
end, 100);

module:hook("s2s-stream-features", function (event)
	if not whitelist:contains(event.origin.from_host) then
		event.origin:close({
			condition = "policy-violation";
			text = "Communication with this domain is restricted";
		});
	end
end, 1000);