aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2014-04-20 23:39:45 +0200
committerKim Alvefur <zash@zash.se>2014-04-20 23:39:45 +0200
commit78485768ee3faccea47511db836410f7fa34c03e (patch)
tree98ca74d989832843edfb586f3e4c72d65ebd6819
parentc70505a8c46db03728c800f45ff627d555a500a4 (diff)
parent84ab9b78050508f04edaecdf502d111247ab1c75 (diff)
downloadprosody-78485768ee3faccea47511db836410f7fa34c03e.tar.gz
prosody-78485768ee3faccea47511db836410f7fa34c03e.zip
Merge 0.10->trunk
-rw-r--r--core/certmanager.lua4
-rw-r--r--plugins/mod_http.lua8
-rw-r--r--plugins/mod_s2s/mod_s2s.lua16
-rw-r--r--util/xmppstream.lua3
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;