diff options
author | Jonas Schäfer <jonas@wielicki.name> | 2022-10-03 12:55:11 +0200 |
---|---|---|
committer | Jonas Schäfer <jonas@wielicki.name> | 2022-10-03 12:55:11 +0200 |
commit | 865b6da69d39c716c9fb073d4ac79d662c901f74 (patch) | |
tree | 40cc501dfd0e2a33b328d05b5153b244715121d6 /plugins | |
parent | e7bfb40a324c806c350f4c87cd41e3b83033377e (diff) | |
download | prosody-865b6da69d39c716c9fb073d4ac79d662c901f74.tar.gz prosody-865b6da69d39c716c9fb073d4ac79d662c901f74.zip |
Backed out changeset 1bc2220cd6ec
The use of the error helpers creates an `<error/>` child element
containing the error condition. This is however not allowed as per
XEP-0198, which specifies that the error condition is to be a direct
child of the `<failed/>` stream management element.
This has triggered a fun reconnect loop in aioxmpp where it was
reported by a user [1].
[1]: https://github.com/horazont/aioxmpp/issues/382
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/mod_smacks.lua | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/mod_smacks.lua b/plugins/mod_smacks.lua index eaba198d..08ebcfec 100644 --- a/plugins/mod_smacks.lua +++ b/plugins/mod_smacks.lua @@ -57,6 +57,7 @@ local it = require"util.iterators"; local sessionmanager = require "core.sessionmanager"; +local xmlns_errors = "urn:ietf:params:xml:ns:xmpp-stanzas"; local xmlns_delay = "urn:xmpp:delay"; local xmlns_mam2 = "urn:xmpp:mam:2"; local xmlns_sm2 = "urn:xmpp:sm:2"; @@ -647,7 +648,7 @@ function handle_resume(session, stanza, xmlns_sm) local resumed, err = do_resume(session, stanza); if not resumed then session.send(st.stanza("failed", { xmlns = xmlns_sm, h = format_h(err.context.h) }) - :add_error(err)); + :tag(err.condition, { xmlns = xmlns_errors })); return true; end |