Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/processone/ejabberd.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexey Shchepin <alexey@process-one.net>2006-01-25 03:35:12 +0300
committerAlexey Shchepin <alexey@process-one.net>2006-01-25 03:35:12 +0300
commitefacb0ad66312eefeef6e46ba76fd2b8311655e2 (patch)
tree8d848c789d1294ca858589fd532f1f36ab331710 /src
parent976a61666294bcf793cc77fe96badb2a73305237 (diff)
* src/ejabberd_c2s.erl: Remove top-level xmlns from incoming
stanzas * src/ejabberd_s2s_in.erl: Likewise * src/ejabberd_service.erl: Likewise SVN Revision: 492
Diffstat (limited to 'src')
-rw-r--r--src/ejabberd_c2s.erl7
-rw-r--r--src/ejabberd_s2s_in.erl9
-rw-r--r--src/ejabberd_service.erl7
3 files changed, 14 insertions, 9 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl
index f1db47da6..44524547d 100644
--- a/src/ejabberd_c2s.erl
+++ b/src/ejabberd_c2s.erl
@@ -751,15 +751,16 @@ session_established({xmlstreamelement, El}, StateData) ->
_ ->
jlib:string_to_jid(To)
end,
+ NewEl1 = jlib:remove_attr("xmlns", El),
NewEl = case xml:get_attr_s("xml:lang", Attrs) of
"" ->
case StateData#state.lang of
- "" -> El;
+ "" -> NewEl1;
Lang ->
- xml:replace_tag_attr("xml:lang", Lang, El)
+ xml:replace_tag_attr("xml:lang", Lang, NewEl1)
end;
_ ->
- El
+ NewEl1
end,
NewState =
case ToJID of
diff --git a/src/ejabberd_s2s_in.erl b/src/ejabberd_s2s_in.erl
index ed4a7af0f..1de51fdfa 100644
--- a/src/ejabberd_s2s_in.erl
+++ b/src/ejabberd_s2s_in.erl
@@ -346,7 +346,8 @@ stream_established({xmlstreamelement, El}, StateData) ->
[]}),
{next_state, stream_established, StateData#state{timer = Timer}};
_ ->
- {xmlelement, Name, Attrs, _Els} = El,
+ NewEl = jlib:remove_attr("xmlns", El),
+ {xmlelement, Name, Attrs, _Els} = NewEl,
From_s = xml:get_attr_s("from", Attrs),
From = jlib:string_to_jid(From_s),
To_s = xml:get_attr_s("to", Attrs),
@@ -366,7 +367,8 @@ stream_established({xmlstreamelement, El}, StateData) ->
if ((Name == "iq") or
(Name == "message") or
(Name == "presence")) ->
- ejabberd_router:route(From, To, El);
+ ejabberd_router:route(
+ From, To, NewEl);
true ->
error
end;
@@ -380,7 +382,8 @@ stream_established({xmlstreamelement, El}, StateData) ->
if ((Name == "iq") or
(Name == "message") or
(Name == "presence")) ->
- ejabberd_router:route(From, To, El);
+ ejabberd_router:route(
+ From, To, NewEl);
true ->
error
end;
diff --git a/src/ejabberd_service.erl b/src/ejabberd_service.erl
index 2a207b129..0d3b02176 100644
--- a/src/ejabberd_service.erl
+++ b/src/ejabberd_service.erl
@@ -198,7 +198,8 @@ wait_for_handshake(closed, StateData) ->
stream_established({xmlstreamelement, El}, StateData) ->
- {xmlelement, Name, Attrs, _Els} = El,
+ NewEl = jlib:remove_attr("xmlns", El),
+ {xmlelement, Name, Attrs, _Els} = NewEl,
From = xml:get_attr_s("from", Attrs),
FromJID1 = jlib:string_to_jid(From),
FromJID = case FromJID1 of
@@ -218,9 +219,9 @@ stream_established({xmlstreamelement, El}, StateData) ->
(Name == "message") or
(Name == "presence")) and
(ToJID /= error) and (FromJID /= error) ->
- ejabberd_router:route(FromJID, ToJID, El);
+ ejabberd_router:route(FromJID, ToJID, NewEl);
true ->
- Err = jlib:make_error_reply(El, ?ERR_BAD_REQUEST),
+ Err = jlib:make_error_reply(NewEl, ?ERR_BAD_REQUEST),
send_element(StateData, Err),
error
end,