diff options
author | Holger Weiss <holger@zedat.fu-berlin.de> | 2016-04-25 01:13:41 +0200 |
---|---|---|
committer | Holger Weiss <holger@zedat.fu-berlin.de> | 2016-04-25 01:13:41 +0200 |
commit | 45321fa2e26123f39d9230efaf225d8523dad7cd (patch) | |
tree | 5e565561cfea04bf9ec1420d33a2b3c38f77fb4c /src | |
parent | Fix 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.erl | 8 |
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 |