diff options
author | Holger Weiss <holger@zedat.fu-berlin.de> | 2017-04-05 20:41:10 +0200 |
---|---|---|
committer | Holger Weiss <holger@zedat.fu-berlin.de> | 2017-04-05 20:41:10 +0200 |
commit | 8bfb6fdd4efecb5f95950343cf957648851aa91a (patch) | |
tree | 902cb9a2e525b160125cc57709c641aa3c96cb00 /src/ejabberd_sm.erl | |
parent | ejabberd_sm: Fix typo in debug message (diff) |
ejabberd_sm: Fix routing of groupchat messages
As per RFC 6121, don't (re)route groupchat messages sent to a bare JID
or to an unavailable resource.
Diffstat (limited to 'src/ejabberd_sm.erl')
-rw-r--r-- | src/ejabberd_sm.erl | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/ejabberd_sm.erl b/src/ejabberd_sm.erl index 3515f636..659961d1 100644 --- a/src/ejabberd_sm.erl +++ b/src/ejabberd_sm.erl @@ -553,7 +553,7 @@ do_route(#presence{to = #jid{lresource = <<"">>} = To} = Packet) -> end, get_user_present_resources(LUser, LServer)); do_route(#message{to = #jid{lresource = <<"">>}, type = T} = Packet) -> ?DEBUG("processing message to bare JID:~n~s", [xmpp:pp(Packet)]), - if T == chat; T == headline; T == normal; T == groupchat -> + if T == chat; T == headline; T == normal -> route_message(Packet); true -> Lang = xmpp:get_lang(Packet), @@ -573,7 +573,7 @@ do_route(Packet) -> [] -> case Packet of #message{type = T} when T == chat; T == normal; - T == headline; T == groupchat -> + T == headline -> route_message(Packet); #presence{} -> ?DEBUG("dropping presence to unavailable resource:~n~s", |