From c13e1948380c6a8459a5d463a8fc9ba1fd988906 Mon Sep 17 00:00:00 2001 From: GilbertWong Date: Wed, 10 Jul 2019 11:13:17 +0800 Subject: [PATCH] Fix the check_subacl bug when enable_acl is set to false --- src/emqx_protocol.erl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/emqx_protocol.erl b/src/emqx_protocol.erl index 7d1ecc04e..b88c82df6 100644 --- a/src/emqx_protocol.erl +++ b/src/emqx_protocol.erl @@ -891,11 +891,11 @@ check_sub_acl(TopicFilters, #pstate{credentials = #{is_superuser := IsSuper}}) check_sub_acl(TopicFilters, #pstate{zone = Zone, credentials = Credentials}) -> EnableAcl = emqx_zone:get_env(Zone, enable_acl, false), lists:foldr( - fun({Topic, SubOpts}, {Ok, Acc}) when EnableAcl -> - AllowTerm = {Ok, [{Topic, SubOpts}|Acc]}, + fun({Topic, SubOpts}, {ok, Acc}) when EnableAcl -> + AllowTerm = {ok, [{Topic, SubOpts}|Acc]}, DenyTerm = {error, [{Topic, SubOpts#{rc := ?RC_NOT_AUTHORIZED}}|Acc]}, do_acl_check(subscribe, Credentials, Topic, AllowTerm, DenyTerm); - (TopicFilter, Acc) -> + (TopicFilter, {ok, Acc}) -> {ok, [TopicFilter | Acc]} end, {ok, []}, TopicFilters).