mod_tls: Build <starttls/> as a stanza instead of with string concatenation
authorKim Alvefur <zash@zash.se>
Mon, 18 May 2015 19:43:24 +0000 (21:43 +0200)
committerKim Alvefur <zash@zash.se>
Mon, 18 May 2015 19:43:24 +0000 (21:43 +0200)
plugins/mod_tls.lua

index f9d2cee99af4c40ea574ca968df7c747e3d741c5..85fa172a86b04454db4fdb16ff1713b3754afc6c 100644 (file)
@@ -21,6 +21,7 @@ end
 
 local xmlns_starttls = 'urn:ietf:params:xml:ns:xmpp-tls';
 local starttls_attr = { xmlns = xmlns_starttls };
+local starttls_initiate= st.stanza("starttls", starttls_attr);
 local starttls_proceed = st.stanza("proceed", starttls_attr);
 local starttls_failure = st.stanza("failure", starttls_attr);
 local c2s_feature = st.stanza("starttls", starttls_attr);
@@ -116,7 +117,7 @@ module:hook_stanza("http://etherx.jabber.org/streams", "features", function (ses
        module:log("debug", "Received features element");
        if can_do_tls(session) and stanza:get_child("starttls", xmlns_starttls) then
                module:log("debug", "%s is offering TLS, taking up the offer...", session.to_host);
-               session.sends2s("<starttls xmlns='"..xmlns_starttls.."'/>");
+               session.sends2s(starttls_initiate);
                return true;
        end
 end, 500);