From 9fb188afbceb5cb54f61d007ffdf5fca411bc1a5 Mon Sep 17 00:00:00 2001 From: Alexey Shchepin Date: Tue, 21 Mar 2017 15:42:24 +0300 Subject: [PATCH] Don't block contacts with subscription=to in mod_block_strangers (#1609) --- src/mod_block_strangers.erl | 12 +++++++++--- 1 file 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 ->