aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'plugins')
-rw-r--r--plugins/mod_compression.lua2
-rw-r--r--plugins/mod_s2s/mod_s2s.lua13
-rw-r--r--plugins/mod_saslauth.lua2
3 files changed, 9 insertions, 8 deletions
diff --git a/plugins/mod_compression.lua b/plugins/mod_compression.lua
index 44bc05fe..92856099 100644
--- a/plugins/mod_compression.lua
+++ b/plugins/mod_compression.lua
@@ -141,7 +141,7 @@ module:hook("stanza/http://jabber.org/protocol/compress:compressed", function(ev
-- setup decompression for session.data
setup_decompression(session, inflate_stream);
session:reset_stream();
- session:open_stream();
+ session:open_stream(session.from_host, session.to_host);
session.compressed = true;
return true;
end
diff --git a/plugins/mod_s2s/mod_s2s.lua b/plugins/mod_s2s/mod_s2s.lua
index a935239e..30ebb706 100644
--- a/plugins/mod_s2s/mod_s2s.lua
+++ b/plugins/mod_s2s/mod_s2s.lua
@@ -348,7 +348,7 @@ function stream_callbacks.streamopened(session, attr)
end
end
- session:open_stream()
+ session:open_stream(session.to_host, session.from_host)
if session.version >= 1.0 then
local features = st.stanza("stream:features");
@@ -448,7 +448,11 @@ local function session_close(session, reason, remote_reason)
local log = session.log or log;
if session.conn then
if session.notopen then
- session:open_stream()
+ if session.direction == "incoming" then
+ session:open_stream(session.to_host, session.from_host);
+ else
+ session:open_stream(session.from_host, session.to_host);
+ end
end
if reason then -- nil == no err, initiated by us, false == initiated by remote
if type(reason) == "string" then -- assume stream error
@@ -496,8 +500,6 @@ local function session_close(session, reason, remote_reason)
end
function session_open_stream(session, from, to)
- local from = from or session.from_host;
- local to = to or session.to_host;
local attr = {
["xmlns:stream"] = 'http://etherx.jabber.org/streams',
xmlns = 'jabber:server',
@@ -506,8 +508,7 @@ function session_open_stream(session, from, to)
id = session.streamid,
from = from, to = to,
}
- local local_host = session.direction == "outgoing" and from or to;
- if not local_host or (hosts[local_host] and hosts[local_host].modules.dialback) then
+ if not from or (hosts[from] and hosts[from].modules.dialback) then
attr["xmlns:db"] = 'jabber:server:dialback';
end
diff --git a/plugins/mod_saslauth.lua b/plugins/mod_saslauth.lua
index b75b1844..201cc477 100644
--- a/plugins/mod_saslauth.lua
+++ b/plugins/mod_saslauth.lua
@@ -87,7 +87,7 @@ module:hook_stanza(xmlns_sasl, "success", function (session, stanza)
module:log("debug", "SASL EXTERNAL with %s succeeded", session.to_host);
session.external_auth = "succeeded"
session:reset_stream();
- session:open_stream();
+ session:open_stream(session.from_host, session.to_host);
module:fire_event("s2s-authenticated", { session = session, host = session.to_host });
return true;