diff options
author | Matthew Wild <mwild1@gmail.com> | 2008-10-22 17:36:21 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2008-10-22 17:36:21 +0100 |
commit | ee7b432ab1d450a42fae24b37c79b7fbda7f4e6b (patch) | |
tree | f5c0a969dcc3825bb99c3e1c38597056be201152 /plugins | |
parent | d510d54b2809b31bcbbc1bcbbe461fc7b5f91a41 (diff) | |
download | prosody-ee7b432ab1d450a42fae24b37c79b7fbda7f4e6b.tar.gz prosody-ee7b432ab1d450a42fae24b37c79b7fbda7f4e6b.zip |
Abstract connections with "connection listeners"
- Added connlistener for xmppclient
- SASL/TLS now use a new session:reset_stream() method
- main.lua on its way to being a bit neater
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/mod_saslauth.lua | 3 | ||||
-rw-r--r-- | plugins/mod_tls.lua | 19 |
2 files changed, 11 insertions, 11 deletions
diff --git a/plugins/mod_saslauth.lua b/plugins/mod_saslauth.lua index 8ef1e09d..1376b87b 100644 --- a/plugins/mod_saslauth.lua +++ b/plugins/mod_saslauth.lua @@ -36,8 +36,7 @@ add_handler("c2s_unauthed", "auth", xmlns_sasl, return; end session.sasl_handler = nil; - session.connhandler = new_connhandler("xmpp-client", session); - session.notopen = true; + session:reset_stream(); end, function (reason) -- onFail 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); |