From 4a41d005cb3b6607fb76ae598ed53a340d81f7dd Mon Sep 17 00:00:00 2001 From: huangdan Date: Fri, 17 Feb 2017 17:12:27 +0800 Subject: [PATCH 1/3] Fix tests --- test/emqttd_SUITE.erl | 10 +++++----- test/emqttd_lib_SUITE.erl | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/test/emqttd_SUITE.erl b/test/emqttd_SUITE.erl index a7ab2fb5f..d7af619df 100644 --- a/test/emqttd_SUITE.erl +++ b/test/emqttd_SUITE.erl @@ -371,21 +371,21 @@ add_delete_hook(_) -> {error, already_hooked} = emqttd:hook(test_hook, fun ?MODULE:hook_fun2/1, []), Callbacks = [{callback, fun ?MODULE:hook_fun1/1, [], 0}, {callback, fun ?MODULE:hook_fun2/1, [], 0}], - Callbacks = emqttd_hook:lookup(test_hook), + Callbacks = emqttd_hooks:lookup(test_hook), emqttd:unhook(test_hook, fun ?MODULE:hook_fun1/1), emqttd:unhook(test_hook, fun ?MODULE:hook_fun2/1), ok = emqttd:unhook(test_hook, fun ?MODULE:hook_fun2/1), {error, not_found} = emqttd:unhook(test_hook1, fun ?MODULE:hook_fun2/1), - [] = emqttd_hook:lookup(test_hook), + [] = emqttd_hooks:lookup(test_hook), emqttd:hook(emqttd_hook, fun ?MODULE:hook_fun1/1, [], 9), emqttd:hook(emqttd_hook, fun ?MODULE:hook_fun2/1, [], 8), Callbacks2 = [{callback, fun ?MODULE:hook_fun2/1, [], 8}, {callback, fun ?MODULE:hook_fun1/1, [], 9}], - Callbacks2 = emqttd_hook:lookup(emqttd_hook), + Callbacks2 = emqttd_hooks:lookup(emqttd_hook), emqttd:unhook(emqttd_hook, fun ?MODULE:hook_fun1/1), emqttd:unhook(emqttd_hook, fun ?MODULE:hook_fun2/1), - [] = emqttd_hook:lookup(emqttd_hook). + [] = emqttd_hooks:lookup(emqttd_hook). run_hooks(_) -> emqttd:hook(foldl_hook, fun ?MODULE:hook_fun3/4, [init]), @@ -514,8 +514,8 @@ cluster_remove2(_) -> ok = emqttd_cluster:join(Z), Node = node(), [Z, Node] = emqttd_mnesia:running_nodes(), - ok = rpc:call(Z, emqttd_mnesia, ensure_stopped, []), ok = emqttd_cluster:remove(Z), + ok = rpc:call(Z, emqttd_mnesia, ensure_stopped, []), [Node] = emqttd_mnesia:running_nodes(), slave:stop(Z). diff --git a/test/emqttd_lib_SUITE.erl b/test/emqttd_lib_SUITE.erl index d4d44cb82..c16858785 100644 --- a/test/emqttd_lib_SUITE.erl +++ b/test/emqttd_lib_SUITE.erl @@ -71,7 +71,7 @@ guid_base62(_) -> %%-------------------------------------------------------------------- opts_merge(_) -> - Opts = emqttd_opts:merge(?SOCKOPTS, [raw, + Opts = emqttd_misc:merge_opts(?SOCKOPTS, [raw, binary, {backlog, 1024}, {nodelay, false}, From 79217fdade97ea3ecc0dda97830525e81b132679 Mon Sep 17 00:00:00 2001 From: Feng Lee Date: Sat, 18 Feb 2017 14:14:24 +0800 Subject: [PATCH 2/3] Remove the 'infinity' timeout --- src/emqttd_client.erl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/emqttd_client.erl b/src/emqttd_client.erl index 1e4b3db4a..10c6f6edc 100644 --- a/src/emqttd_client.erl +++ b/src/emqttd_client.erl @@ -65,7 +65,7 @@ start_link(Conn, Env) -> {ok, proc_lib:spawn_link(?MODULE, init, [[Conn, Env]])}. info(CPid) -> - gen_server:call(CPid, info, infinity). + gen_server:call(CPid, info). stats(CPid) -> gen_server:call(CPid, stats). From a7ed2c402b57868b83c2fc49a243bc5453b0fef6 Mon Sep 17 00:00:00 2001 From: turtled Date: Sat, 18 Feb 2017 15:03:41 +0800 Subject: [PATCH 3/3] fix #885 --- src/emqttd_acl_internal.erl | 3 ++- src/emqttd_cli.erl | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/emqttd_acl_internal.erl b/src/emqttd_acl_internal.erl index f1c8b801b..1cd32c0f4 100644 --- a/src/emqttd_acl_internal.erl +++ b/src/emqttd_acl_internal.erl @@ -21,6 +21,7 @@ -author("Feng Lee "). -include("emqttd.hrl"). +-include("emqttd_cli.hrl"). -export([all_rules/0]). @@ -114,7 +115,7 @@ reload_acl(#state{config = undefined}) -> reload_acl(State) -> case catch load_rules_from_file(State) of {'EXIT', Error} -> {error, Error}; - true -> ok + true -> ?PRINT("~s~n", ["reload acl_internal successfully"]), ok end. %% @doc ACL Module Description diff --git a/src/emqttd_cli.erl b/src/emqttd_cli.erl index 5a4de3fab..cb4438cc8 100644 --- a/src/emqttd_cli.erl +++ b/src/emqttd_cli.erl @@ -32,7 +32,7 @@ -export([status/1, broker/1, cluster/1, users/1, clients/1, sessions/1, routes/1, topics/1, subscriptions/1, plugins/1, bridges/1, - listeners/1, vm/1, mnesia/1, trace/1]). + listeners/1, vm/1, mnesia/1, trace/1, acl/1]). -define(PROC_INFOKEYS, [status, memory, @@ -151,6 +151,9 @@ cluster(_) -> users(Args) -> emq_auth_username:cli(Args). +acl(["reload"]) -> emqttd_access_control:reload_acl(); +acl(_) -> ?USAGE([{"acl reload", "reload etc/acl.conf"}]). + %%-------------------------------------------------------------------- %% @doc Query clients