Mercurial > prosody-modules
view mod_s2s_never_encrypt_blacklist/mod_s2s_never_encrypt_blacklist.lua @ 3955:017f60608fc8
mod_smacks: also count outgoing MAM messages
mod_smacks doesn't count outgoing MAM messages, which causes warnings in Prosody such as:
> The client says it handled 41 new stanzas, but we only sent 2
It seems mod_smacks is in the wrong here and that it's too strict in trying to determine what is a valid stanza to count.
In RFC6120:
> Definition of XML Stanza: An XML stanza is the basic unit of meaning
> in XMPP. A stanza is a first-level element (at depth=1 of the stream)
> whose element name is "message", "presence", or "iq" and whose
> qualifying namespace is 'jabber:client' or 'jabber:server'.
author | JC Brand <jc@opkode.com> |
---|---|
date | Thu, 26 Mar 2020 11:57:02 +0100 |
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)