Mercurial > prosody-modules
annotate mod_ignore_host_chatstates/mod_ignore_host_chatstates.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 | aed47ebd26d3 |
children |
rev | line source |
---|---|
3419
aed47ebd26d3
mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 module:hook("message/host", function (event) |
aed47ebd26d3
mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 local stanza = event.stanza; |
aed47ebd26d3
mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 if #stanza.tags == 1 and stanza.tags[1].attr.xmlns == "http://jabber.org/protocol/chatstates" then |
aed47ebd26d3
mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 return true; |
aed47ebd26d3
mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 end |
aed47ebd26d3
mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 end, -10); |