diff options
-rw-r--r-- | core/certmanager.lua | 4 | ||||
-rw-r--r-- | plugins/mod_http.lua | 8 | ||||
-rw-r--r-- | plugins/mod_s2s/mod_s2s.lua | 16 | ||||
-rw-r--r-- | util/xmppstream.lua | 3 |
4 files changed, 15 insertions, 16 deletions
diff --git a/core/certmanager.lua b/core/certmanager.lua index 8f1e1520..ced17e58 100644 --- a/core/certmanager.lua +++ b/core/certmanager.lua @@ -111,7 +111,9 @@ function create_context(host, mode, user_ssl_config) for option in pairs(set_options) do local merged = {}; merge_set(core_defaults[option], merged); - merge_set(global_ssl_config[option], merged); + if global_ssl_config then + merge_set(global_ssl_config[option], merged); + end merge_set(user_ssl_config[option], merged); local final_array = {}; for opt, enable in pairs(merged) do diff --git a/plugins/mod_http.lua b/plugins/mod_http.lua index d987ef74..49529ea2 100644 --- a/plugins/mod_http.lua +++ b/plugins/mod_http.lua @@ -142,7 +142,13 @@ module:provides("net", { listener = server.listener; default_port = 5281; encryption = "ssl"; - ssl_config = { verify = "none" }; + ssl_config = { + verify = { + peer = false, + client_once = false, + "none", + } + }; multiplex = { pattern = "^[A-Z]"; }; diff --git a/plugins/mod_s2s/mod_s2s.lua b/plugins/mod_s2s/mod_s2s.lua index 5531ca3e..73d95970 100644 --- a/plugins/mod_s2s/mod_s2s.lua +++ b/plugins/mod_s2s/mod_s2s.lua @@ -510,22 +510,10 @@ local function session_close(session, reason, remote_reason) end end -function session_open_stream(session, from, to) - local attr = { - ["xmlns:stream"] = 'http://etherx.jabber.org/streams', - xmlns = 'jabber:server', - version = session.version and (session.version > 0 and "1.0" or nil), - ["xml:lang"] = 'en', - id = session.streamid, - from = from, to = to, - } +function session_stream_attrs(session, from, to, attr) if not from or (hosts[from] and hosts[from].modules.dialback) then attr["xmlns:db"] = 'jabber:server:dialback'; end - - session.sends2s("<?xml version='1.0'?>"); - session.sends2s(st.stanza("stream:stream", attr):top_tag()); - return true; end -- Session initialization logic shared by incoming and outgoing @@ -540,7 +528,7 @@ local function initialize_session(session) session.stream:reset(); end - session.open_stream = session_open_stream; + session.stream_attrs = session_stream_attrs; local filter = session.filter; function session.data(data) diff --git a/util/xmppstream.lua b/util/xmppstream.lua index 1e65919b..6982aae3 100644 --- a/util/xmppstream.lua +++ b/util/xmppstream.lua @@ -252,6 +252,9 @@ function new(session, stream_callbacks, stanza_size_limit) id = session.streamid or "", from = from or session.host, to = to, }; + if session.stream_attrs then + session:stream_attrs(from, to, attr) + end send("<?xml version='1.0'?>"); send(st.stanza("stream:stream", attr):top_tag()); return true; |