From 45321fa2e26123f39d9230efaf225d8523dad7cd Mon Sep 17 00:00:00 2001 From: Holger Weiss Date: Mon, 25 Apr 2016 01:13:41 +0200 Subject: [PATCH] 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. --- src/ejabberd_sm.erl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ejabberd_sm.erl b/src/ejabberd_sm.erl index 9a93e6d97..1fb26a6a9 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