# HG changeset patch # User Matthew Wild # Date 1521291517 0 # Node ID e672d1050529e61947485615b9ffff7753d923bd # Parent 4fed2379f5be272caa926a53d71a7ff0bb058f12 mod_smacks: Ensure stanza count attributes are always strings (thanks Martin) diff -r 4fed2379f5be -r e672d1050529 mod_smacks/mod_smacks.lua --- a/mod_smacks/mod_smacks.lua Sat Mar 17 10:49:15 2018 +0100 +++ b/mod_smacks/mod_smacks.lua Sat Mar 17 12:58:37 2018 +0000 @@ -236,7 +236,7 @@ end -- send out last ack as per revision 1.5.2 of XEP-0198 if session.smacks and session.conn then - (session.sends2s or session.send)(st.stanza("a", { xmlns = session.smacks, h = tostring(session.handled_stanza_count) })); + (session.sends2s or session.send)(st.stanza("a", { xmlns = session.smacks, h = string.format("%d", session.handled_stanza_count) })); end return session_close(...); end @@ -322,7 +322,7 @@ end module:log("debug", "Received ack request, acking for %d", origin.handled_stanza_count); -- Reply with - (origin.sends2s or origin.send)(st.stanza("a", { xmlns = xmlns_sm, h = tostring(origin.handled_stanza_count) })); + (origin.sends2s or origin.send)(st.stanza("a", { xmlns = xmlns_sm, h = string.format("%d", origin.handled_stanza_count) })); return true; end module:hook_stanza(xmlns_sm2, "r", function (origin, stanza) return handle_r(origin, stanza, xmlns_sm2); end); @@ -470,7 +470,7 @@ if old_session and session.username == old_session.username and session.host == old_session.host and old_session.h then - session.send(st.stanza("failed", { xmlns = xmlns_sm, h = tostring(old_session.h) }) + session.send(st.stanza("failed", { xmlns = xmlns_sm, h = string.format("%d", old_session.h) }) :tag("item-not-found", { xmlns = xmlns_errors }) ); else @@ -505,7 +505,7 @@ c2s_sessions[session.conn] = original_session; original_session.send(st.stanza("resumed", { xmlns = xmlns_sm, - h = original_session.handled_stanza_count, previd = id })); + h = string.format("%d", original_session.handled_stanza_count), previd = id })); -- Fake an with the h of the from the client original_session:dispatch_stanza(st.stanza("a", { xmlns = xmlns_sm,