Mercurial > prosody-modules
changeset 1179:27b4e01ddbc4
mod_s2s_blacklist: A new _simple_ s2s blacklist module
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 03 Sep 2013 10:45:54 +0100 (2013-09-03) |
parents | 412f62d05a23 |
children | 513aa2e0c045 |
files | mod_s2s_blacklist/mod_s2s_blacklist.lua |
diffstat | 1 files changed, 19 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mod_s2s_blacklist/mod_s2s_blacklist.lua Tue Sep 03 10:45:54 2013 +0100 @@ -0,0 +1,19 @@ +local st = require "util.stanza"; + +local blacklist = module:get_option_inherited_set("s2s_blacklist", {}); + +module:hook("route/remote", function (event) + if blacklist: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 blacklist:contains(event.origin.from_host) then + event.origin:close({ + condition = "policy-violation"; + text = "Communication with this domain is restricted"; + }); + end +end, 1000);