diff options
author | Alexey Shchepin <alexey@process-one.net> | 2017-03-21 15:42:24 +0300 |
---|---|---|
committer | Alexey Shchepin <alexey@process-one.net> | 2017-03-21 15:42:38 +0300 |
commit | 9fb188afbceb5cb54f61d007ffdf5fca411bc1a5 (patch) | |
tree | 0c187e124caf50131cf0ca517efa9643d5ba60bd | |
parent | Use item creation date in rsm order (#1516) (diff) |
Don't block contacts with subscription=to in mod_block_strangers (#1609)
-rw-r--r-- | src/mod_block_strangers.erl | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/mod_block_strangers.erl b/src/mod_block_strangers.erl index dfc9f9b74..8072fa874 100644 --- a/src/mod_block_strangers.erl +++ b/src/mod_block_strangers.erl @@ -57,13 +57,19 @@ filter_packet({#message{} = Msg, State} = Acc) -> From = xmpp:get_from(Msg), LFrom = jid:tolower(From), LBFrom = jid:remove_resource(LFrom), - #{pres_a := PresA} = State, + #{pres_a := PresA, + pres_t := PresT, + pres_f := PresF} = State, case (Msg#message.body == [] andalso Msg#message.subject == []) orelse ejabberd_router:is_my_route(From#jid.lserver) orelse (?SETS):is_element(LFrom, PresA) - orelse (?SETS):is_element(LBFrom, PresA) - orelse sets_bare_member(LBFrom, PresA) of + orelse (?SETS):is_element(LBFrom, PresA) + orelse sets_bare_member(LBFrom, PresA) + orelse (?SETS):is_element(LFrom, PresT) + orelse (?SETS):is_element(LBFrom, PresT) + orelse (?SETS):is_element(LFrom, PresF) + orelse (?SETS):is_element(LBFrom, PresF) of true -> Acc; false -> |