Mercurial > prosody-modules
view mod_block_subscribes/mod_block_subscribes.lua @ 3634:915e32d5a147
mod_smacks: fix bug for missbehaving clients sending multiple acks in a row
Missbehaving clients, sending multiple acks in a row (I'm looking at you Monal!)
triggered the ack-loop-prevention code added in 2017, leaving unacked stanzas
in the queue. This fixes the bug while still preventing ack-loops.
author | tmolitor <thilo@eightysoft.de> |
---|---|
date | Tue, 30 Jul 2019 02:07:13 +0200 |
parents | f88381a39c56 |
children |
line wrap: on
line source
local allowed_presence_types = { probe = true, unavailable = true }; function filter_presence(event) local stanza = event.stanza; local presence_type = stanza.attr.type; if presence_type == nil or allowed_presence_types[presence_type] then return; end return true; -- Drop end module:hook("pre-presence/bare", filter_presence, 200); -- Client sending module:hook("presence/bare", filter_presence, 200); -- Client receiving