diff options
author | Matthew Wild <mwild1@gmail.com> | 2012-05-24 03:08:42 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2012-05-24 03:08:42 +0100 |
commit | 3160a4357aa8af9ec9d652d3a57bf79a0c2c6631 (patch) | |
tree | cc31fb5c6a6b4518f87f3b1524af3ec7471dd23b /plugins/mod_s2s | |
parent | b9971d5e6c14823531a5129303bd80541f00791a (diff) | |
download | prosody-3160a4357aa8af9ec9d652d3a57bf79a0c2c6631.tar.gz prosody-3160a4357aa8af9ec9d652d3a57bf79a0c2c6631.zip |
mod_s2s, s2sout.lib: Send stream header in onconnect()
Diffstat (limited to 'plugins/mod_s2s')
-rw-r--r-- | plugins/mod_s2s/mod_s2s.lua | 7 | ||||
-rw-r--r-- | plugins/mod_s2s/s2sout.lib.lua | 2 |
2 files changed, 5 insertions, 4 deletions
diff --git a/plugins/mod_s2s/mod_s2s.lua b/plugins/mod_s2s/mod_s2s.lua index 8e01a589..f6c20606 100644 --- a/plugins/mod_s2s/mod_s2s.lua +++ b/plugins/mod_s2s/mod_s2s.lua @@ -427,8 +427,9 @@ local function initialize_session(session) end function listener.onconnect(conn) - if not sessions[conn] then -- May be an existing outgoing session - local session = s2s_new_incoming(conn); + local session = sessions[conn]; + if not session then -- New incoming connection + session = s2s_new_incoming(conn); sessions[conn] = session; session.log("debug", "Incoming s2s connection"); @@ -448,6 +449,8 @@ function listener.onconnect(conn) end initialize_session(session); + else -- Outgoing session connected + session:open_stream(session.from_host, session.to_host); end end diff --git a/plugins/mod_s2s/s2sout.lib.lua b/plugins/mod_s2s/s2sout.lib.lua index 2ddc9299..94445ea2 100644 --- a/plugins/mod_s2s/s2sout.lib.lua +++ b/plugins/mod_s2s/s2sout.lib.lua @@ -314,8 +314,6 @@ function s2sout.make_connect(host_session, connect_host, connect_port) -- otherwise it will assume it is a new incoming connection s2s_listener.register_outgoing(conn, host_session); - host_session:open_stream(from_host, to_host); - log("debug", "Connection attempt in progress..."); return true; end |