summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHolger Weiss <holger@zedat.fu-berlin.de>2016-04-25 01:13:41 +0200
committerHolger Weiss <holger@zedat.fu-berlin.de>2016-04-25 01:13:41 +0200
commit45321fa2e26123f39d9230efaf225d8523dad7cd (patch)
tree5e565561cfea04bf9ec1420d33a2b3c38f77fb4c /src
parentFix error text for message bounces (diff)
Process messages of unknown type consistently
If an incoming message sent to an unavailable resource has an unknown type, handle it like messages of type "normal" (as mandated by RFC 6121, section 5.2.2). The same is already done for messages of unknown type sent to the bare JID of an offline user.
Diffstat (limited to 'src')
-rw-r--r--src/ejabberd_sm.erl8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/ejabberd_sm.erl b/src/ejabberd_sm.erl
index 9a93e6d9..1fb26a6a 100644
--- a/src/ejabberd_sm.erl
+++ b/src/ejabberd_sm.erl
@@ -518,16 +518,16 @@ do_route(From, To, #xmlel{} = Packet) ->
<<"message">> ->
case fxml:get_attr_s(<<"type">>, Attrs) of
<<"chat">> -> route_message(From, To, Packet, chat);
- <<"normal">> -> route_message(From, To, Packet, normal);
- <<"">> -> route_message(From, To, Packet, normal);
<<"headline">> -> ok;
<<"error">> -> ok;
- _ ->
+ <<"groupchat">> ->
ErrTxt = <<"User session not found">>,
Err = jlib:make_error_reply(
Packet,
?ERRT_SERVICE_UNAVAILABLE(Lang, ErrTxt)),
- ejabberd_router:route(To, From, Err)
+ ejabberd_router:route(To, From, Err);
+ _ ->
+ route_message(From, To, Packet, normal)
end;
<<"iq">> ->
case fxml:get_attr_s(<<"type">>, Attrs) of