Mercurial > prosody-modules
view mod_offline_hints/mod_offline_hints.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 | e86315c9b5c4 |
children |
line wrap: on
line source
-- mod_offline_hints -- -- Copyright (C) 2019 Marcos de Vera Piquero <marcos.devera@quobis.com> -- -- This file is MIT/X11 licensed. -- -- A module to discard hinted messages with no-store at mod_offline -- module:depends"offline"; local function handle_offline (event) local stanza = event.stanza; if (stanza:get_child("no-store", "urn:xmpp:hints") or stanza:get_child("no-permanent-store", "urn:xmpp:hints")) then module:log("debug", "Not storing offline stanza: %s (urn:xmpp:hints)", stanza); return false; end return nil; end module:hook("message/offline/handle", handle_offline); module:log("debug", "Module loaded");