Software /
code /
prosody
Diff
plugins/mod_tls.lua @ 2594:ab52fdd9f5d0
mod_tls: Slight refactoring.
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Fri, 12 Feb 2010 01:47:10 +0500 |
parent | 2576:b70e73872c4d |
child | 2595:015934e20f03 |
line wrap: on
line diff
--- a/plugins/mod_tls.lua Fri Feb 12 00:55:06 2010 +0500 +++ b/plugins/mod_tls.lua Fri Feb 12 01:47:10 2010 +0500 @@ -16,35 +16,36 @@ local global_ssl_ctx = prosody.global_ssl_ctx; -module:add_handler("c2s_unauthed", "starttls", xmlns_starttls, - function (session, stanza) - if session.conn.starttls then - session.send(st.stanza("proceed", { xmlns = xmlns_starttls })); - session:reset_stream(); - local ssl_ctx = session.host and hosts[session.host].ssl_ctx_in or global_ssl_ctx; - session.conn:starttls(ssl_ctx); - session.log("info", "TLS negotiation started..."); - session.secure = false; - else - -- FIXME: What reply? - session.log("warn", "Attempt to start TLS, but TLS is not available on this connection"); - end - end); - -module:add_handler("s2sin_unauthed", "starttls", xmlns_starttls, - function (session, stanza) - if session.conn.starttls then - session.sends2s(st.stanza("proceed", { xmlns = xmlns_starttls })); - session:reset_stream(); - local ssl_ctx = session.to_host and hosts[session.to_host].ssl_ctx_in or global_ssl_ctx; - session.conn:starttls(ssl_ctx); - session.log("info", "TLS negotiation started for incoming s2s..."); - session.secure = false; - else - -- FIXME: What reply? - session.log("warn", "Attempt to start TLS, but TLS is not available on this s2s connection"); - end - end); +function c2s_starttls_handler(session, stanza) + if session.conn.starttls then + session.send(st.stanza("proceed", { xmlns = xmlns_starttls })); + session:reset_stream(); + local ssl_ctx = session.host and hosts[session.host].ssl_ctx_in or global_ssl_ctx; + session.conn:starttls(ssl_ctx); + session.log("info", "TLS negotiation started..."); + session.secure = false; + else + -- FIXME: What reply? + session.log("warn", "Attempt to start TLS, but TLS is not available on this connection"); + end +end + +function s2s_starttls_handler(session, stanza) + if session.conn.starttls then + session.sends2s(st.stanza("proceed", { xmlns = xmlns_starttls })); + session:reset_stream(); + local ssl_ctx = session.to_host and hosts[session.to_host].ssl_ctx_in or global_ssl_ctx; + session.conn:starttls(ssl_ctx); + session.log("info", "TLS negotiation started for incoming s2s..."); + session.secure = false; + else + -- FIXME: What reply? + session.log("warn", "Attempt to start TLS, but TLS is not available on this s2s connection"); + end +end + +module:add_handler("c2s_unauthed", "starttls", xmlns_starttls, c2s_starttls_handler); +module:add_handler("s2sin_unauthed", "starttls", xmlns_starttls, s2s_starttls_handler); local starttls_attr = { xmlns = xmlns_starttls };