Просмотр исходного кода

support cascading multiple acl modules

turtled 9 лет назад
Родитель
Сommit
5c866d91b4
2 измененных файлов с 3 добавлено и 6 удалено
  1. 0 3
      etc/acl.conf
  2. 3 3
      src/emqttd_acl_internal.erl

+ 0 - 3
etc/acl.conf

@@ -24,6 +24,3 @@
 
 {deny, all, subscribe, ["$SYS/#", {eq, "#"}]}.
 
-{allow, all}.
-
-

+ 3 - 3
src/emqttd_acl_internal.erl

@@ -30,7 +30,7 @@
 
 -define(ACL_RULE_TAB, mqtt_acl_rule).
 
--record(state, {config, nomatch = allow}).
+-record(state, {config}).
 
 %%--------------------------------------------------------------------
 %% API
@@ -86,11 +86,11 @@ filter(_PubSub, {_AllowDeny, _Who, _, _Topics}) ->
       State  :: #state{}).
 check_acl(_Who, #state{config = undefined}) ->
     allow;
-check_acl({Client, PubSub, Topic}, #state{nomatch = Default}) ->
+check_acl({Client, PubSub, Topic}, #state{}) ->
     case match(Client, Topic, lookup(PubSub)) of
         {matched, allow} -> allow;
         {matched, deny}  -> deny;
-        nomatch          -> Default
+        nomatch          -> ignore
     end.
 
 lookup(PubSub) ->