diff options
Diffstat (limited to 'plugins/mod_tls.lua')
-rw-r--r-- | plugins/mod_tls.lua | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/plugins/mod_tls.lua b/plugins/mod_tls.lua index 22df4b28..ab06b9a5 100644 --- a/plugins/mod_tls.lua +++ b/plugins/mod_tls.lua @@ -3,6 +3,8 @@ local st = require "util.stanza"; local send = require "core.sessionmanager".send_to_session; local sm_bind_resource = require "core.sessionmanager".bind_resource; +local sessions = sessions; + local usermanager_validate_credentials = require "core.usermanager".validate_credentials; local t_concat, t_insert = table.concat, table.insert; local tostring = tostring; @@ -16,16 +18,15 @@ local new_connhandler = require "net.connhandlers".new; add_handler("c2s_unauthed", "starttls", xmlns_starttls, function (session, stanza) if session.conn.starttls then - print("Wants to do TLS..."); send(session, st.stanza("proceed", { xmlns = xmlns_starttls })); - session.connhandler = new_connhandler("xmpp-client", session); - session.notopen = true; - if session.conn.starttls() then - print("Done"); - else - print("Failed"); - end - + -- FIXME: I'm commenting the below, not sure why it was necessary + -- sessions[session.conn] = nil; + session:reset_stream(); + session.conn.starttls(); + session.log("info", "TLS negotiation started..."); + else + -- FIXME: What reply? + session.log("warn", "Attempt to start TLS, but TLS is not available on this connection"); end end); |