Mercurial > prosody-modules
view mod_s2s_whitelist/mod_s2s_whitelist.lua @ 2596:ffb6646b4253
Implement XEP-0198 revision 1.5.2 and limit number of hibernated sessions per user
Revision 1.5.2 allows sending h-values on resumes that fail due to hibernation timeout
and to send out a smacks ack directly before the stream close tag.
I also made the used timers stoppable even for prosody 0.10 and below, this makes
the smacks-ack-delayed event more useful.
author | tmolitor <thilo@eightysoft.de> |
---|---|
date | Sun, 05 Mar 2017 20:23:53 +0100 |
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);