aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexey Shchepin <alexey@process-one.net>2014-01-20 16:06:05 +0200
committerAlexey Shchepin <alexey@process-one.net>2014-01-20 16:06:05 +0200
commitd63be79df9d4fb6686726dbaccd002c5189ffdbc (patch)
tree0bfeee9fffc85467c7d433686ab3902139ae1e7d /src
parentAdd some ejabberd_xmlrpc documentation, and link to full details (diff)
Use 'to' field only in the first client stream initialization
Diffstat (limited to 'src')
-rw-r--r--src/ejabberd_c2s.erl7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl
index e5304044a..5a02f98bd 100644
--- a/src/ejabberd_c2s.erl
+++ b/src/ejabberd_c2s.erl
@@ -291,7 +291,12 @@ wait_for_stream({xmlstreamstart, _Name, Attrs}, StateData) ->
DefaultLang = ?MYLANG,
case xml:get_attr_s(<<"xmlns:stream">>, Attrs) of
?NS_STREAM ->
- Server = jlib:nameprep(xml:get_attr_s(<<"to">>, Attrs)),
+ Server =
+ case StateData#state.server of
+ undefined ->
+ jlib:nameprep(xml:get_attr_s(<<"to">>, Attrs));
+ S -> S
+ end,
case lists:member(Server, ?MYHOSTS) of
true ->
Lang = case xml:get_attr_s(<<"xml:lang">>, Attrs) of