mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
--- a/mod_s2s_never_encrypt_blacklist/mod_s2s_never_encrypt_blacklist.lua Fri Sep 02 22:51:28 2011 +0000
+++ b/mod_s2s_never_encrypt_blacklist/mod_s2s_never_encrypt_blacklist.lua Fri Sep 02 23:35:25 2011 +0000
@@ -2,8 +2,14 @@
local bad_servers = module:get_option_set("tls_s2s_blacklist");
-local function disable_tls_for_baddies(event)
+local function disable_tls_for_baddies_in(event)
if bad_servers:contains(event.origin.to_host) then event.origin.conn.starttls = nil; end
end
-module:hook("stanza/http://etherx.jabber.org/streams:features", disable_tls_for_baddies, 510)
+local function disable_tls_for_baddies_out(event)
+ if bad_servers:contains(event.origin.from_host) then event.origin.conn.starttls = nil; end
+end
+
+module:hook("s2s-stream-features", disable_tls_for_baddies_out, 10)
+module:hook("stanza/http://etherx.jabber.org/streams:features", disable_tls_for_baddies_in, 510)
+