diff options
author | Kim Alvefur <zash@zash.se> | 2021-01-29 23:17:08 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2021-01-29 23:17:08 +0100 |
commit | eb9e818e43d4b46f166006064746e5af62cb5b16 (patch) | |
tree | cc46cd81363301f354e42f0ee36c8a3637983b08 | |
parent | 9dfdf56ca2c593c63b282b5aad13320c89e0391d (diff) | |
download | prosody-eb9e818e43d4b46f166006064746e5af62cb5b16.tar.gz prosody-eb9e818e43d4b46f166006064746e5af62cb5b16.zip |
mod_tls: Attempt STARTTLS even if not advertised as per RFC 7590
-rw-r--r-- | doc/doap.xml | 1 | ||||
-rw-r--r-- | plugins/mod_tls.lua | 8 |
2 files changed, 7 insertions, 2 deletions
diff --git a/doc/doap.xml b/doc/doap.xml index 3581a3e6..b91f2dbe 100644 --- a/doc/doap.xml +++ b/doc/doap.xml @@ -54,6 +54,7 @@ <implements rdf:resource="https://www.rfc-editor.org/info/rfc6455"/> <implements rdf:resource="https://www.rfc-editor.org/info/rfc7301"/> <implements rdf:resource="https://www.rfc-editor.org/info/rfc7395"/> + <implements rdf:resource="https://www.rfc-editor.org/info/rfc7390"/> <implements rdf:resource="https://datatracker.ietf.org/doc/draft-cridland-xmpp-session/"> <!-- since=0.6.0 note=Added in hg:0bbbc9042361 --> </implements> diff --git a/plugins/mod_tls.lua b/plugins/mod_tls.lua index 151add6f..6b3045a3 100644 --- a/plugins/mod_tls.lua +++ b/plugins/mod_tls.lua @@ -150,8 +150,12 @@ end); -- For s2sout connections, start TLS if we can module:hook_tag("http://etherx.jabber.org/streams", "features", function (session, stanza) 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); + if can_do_tls(session) then + if stanza:get_child("starttls", xmlns_starttls) then + module:log("debug", "%s is offering TLS, taking up the offer...", session.to_host); + else + module:log("debug", "%s is *not* offering TLS, trying anyways!", session.to_host); + end session.sends2s(starttls_initiate); return true; end |