Mercurial > prosody-modules
view mod_s2s_never_encrypt_blacklist/mod_s2s_never_encrypt_blacklist.lua @ 4939:7d6ae8bb95dc
mod_delegation: use clean_xmlns to remove jabber:client namespace from node:
for the same reason as in mod_privilege, `jabber:client` namespace is removed with the
clean_xmlns method coming from there.
Furthermore, the forwarded <iq> stanza use the `jabber:client` xmlns while the stanza may
come from a component with e.g. `jabber:component:accept` xmlns, this can lead to
inconsistencies between the <iq> stanza and children (like <error> element).
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 28 May 2022 16:42:13 +0200 |
parents | 7dbde05b48a9 |
children |
line wrap: on
line source
-- Filter out servers which gets choppy and buggy when it comes to starttls. -- (C) 2011-2013, Marco Cirillo (LW.Org) local bad_servers = module:get_option_set("tls_s2s_blacklist", {}) local bad_servers_ip = module:get_option_set("tls_s2s_blacklist_ip", {}) local libev = module:get_option_boolean("use_libevent") local function disable_tls_for_baddies_in(event) local session = event.origin if bad_servers:contains(session.from_host) or bad_servers_ip:contains(session.conn:ip()) then module:log("debug", "disabling tls on incoming stream from %s...", tostring(session.from_host)); if libev then session.conn.starttls = false; else session.conn.starttls = nil; end end end local function disable_tls_for_baddies_out(event) local session = event.origin if bad_servers:contains(session.to_host) then module:log("debug", "disabling tls on outgoing stream from %s...", tostring(session.to_host)); if libev then session.conn.starttls = false; else session.conn.starttls = nil; end end end module:hook("s2s-stream-features", disable_tls_for_baddies_in, 600) module:hook("stanza/http://etherx.jabber.org/streams:features", disable_tls_for_baddies_out, 600)