Software /
code /
prosody
Changeset
6070:c0654505357e
Merge 0.10->trunk
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 10 Apr 2014 16:52:03 +0200 |
parents | 6068:175590cc7b07 (current diff) 6069:446148cad35e (diff) |
children | 6072:ce5428f6e3c3 |
files | |
diffstat | 1 files changed, 20 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/plugins/mod_s2s/mod_s2s.lua Thu Apr 10 13:16:54 2014 +0200 +++ b/plugins/mod_s2s/mod_s2s.lua Thu Apr 10 16:52:03 2014 +0200 @@ -510,6 +510,24 @@ 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, + } + 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 local function initialize_session(session) local stream = new_xmpp_stream(session, stream_callbacks); @@ -522,6 +540,8 @@ session.stream:reset(); end + session.open_stream = session_open_stream; + local filter = session.filter; function session.data(data) data = filter("bytes/in", data);