From 706e272410b24e2b8ea5e7f5cd76ffb6a1e075f2 Mon Sep 17 00:00:00 2001 From: z8674558 Date: Fri, 19 Feb 2021 16:10:51 +0900 Subject: [PATCH 1/4] chore(emqx_auth_http): fix dialyzer warnings (match returned values) --- apps/emqx_auth_http/src/emqx_auth_http_app.erl | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/emqx_auth_http/src/emqx_auth_http_app.erl b/apps/emqx_auth_http/src/emqx_auth_http_app.erl index 9b6b265d4..2988dac78 100644 --- a/apps/emqx_auth_http/src/emqx_auth_http_app.erl +++ b/apps/emqx_auth_http/src/emqx_auth_http_app.erl @@ -106,7 +106,7 @@ load_hooks() -> ok = emqx_auth_http:register_metrics(), PoolOpts = proplists:get_value(pool_opts, AuthReq), PoolName = proplists:get_value(pool_name, AuthReq), - ehttpc_sup:start_pool(PoolName, PoolOpts), + {ok, _} = ehttpc_sup:start_pool(PoolName, PoolOpts), case application:get_env(?APP, super_req) of undefined -> emqx:hook('client.authenticate', {emqx_auth_http, check, [#{auth => maps:from_list(AuthReq), @@ -114,7 +114,7 @@ load_hooks() -> {ok, SuperReq} -> PoolOpts1 = proplists:get_value(pool_opts, SuperReq), PoolName1 = proplists:get_value(pool_name, SuperReq), - ehttpc_sup:start_pool(PoolName1, PoolOpts1), + {ok, _} = ehttpc_sup:start_pool(PoolName1, PoolOpts1), emqx:hook('client.authenticate', {emqx_auth_http, check, [#{auth => maps:from_list(AuthReq), super => maps:from_list(SuperReq)}]}) end @@ -125,7 +125,7 @@ load_hooks() -> ok = emqx_acl_http:register_metrics(), PoolOpts2 = proplists:get_value(pool_opts, ACLReq), PoolName2 = proplists:get_value(pool_name, ACLReq), - ehttpc_sup:start_pool(PoolName2, PoolOpts2), + {ok, _} = ehttpc_sup:start_pool(PoolName2, PoolOpts2), emqx:hook('client.check_acl', {emqx_acl_http, check_acl, [#{acl => maps:from_list(ACLReq)}]}) end, ok. @@ -133,9 +133,9 @@ load_hooks() -> unload_hooks() -> emqx:unhook('client.authenticate', {emqx_auth_http, check}), emqx:unhook('client.check_acl', {emqx_acl_http, check_acl}), - ehttpc_sup:stop_pool('emqx_auth_http/auth_req'), - ehttpc_sup:stop_pool('emqx_auth_http/super_req'), - ehttpc_sup:stop_pool('emqx_auth_http/acl_req'), + _ = ehttpc_sup:stop_pool('emqx_auth_http/auth_req'), + _ = ehttpc_sup:stop_pool('emqx_auth_http/super_req'), + _ = ehttpc_sup:stop_pool('emqx_auth_http/acl_req'), ok. parse_host(Host) -> From e341387837786188fa2919ebf6ae2106702818a3 Mon Sep 17 00:00:00 2001 From: z8674558 Date: Fri, 19 Feb 2021 16:13:44 +0900 Subject: [PATCH 2/4] chore(emqx_auth_mnesia): fix dialyzer warnings (do_update_user only receives Login and NewPassword)' --- apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl b/apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl index e7c9d982b..aeed5b85c 100644 --- a/apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl +++ b/apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl @@ -59,12 +59,12 @@ insert_user(User = #emqx_user{login = Login}) -> %% @doc Update User -spec(update_user(tuple(), binary()) -> ok | {error, any()}). update_user(Login, NewPassword) -> - User = #emqx_user{login = Login, password = encrypted_data(NewPassword)}, - ret(mnesia:transaction(fun do_update_user/1, [User])). + ret(mnesia:transaction(fun do_update_user/2, [Login, encrypted_data(NewPassword)])). -do_update_user(User = #emqx_user{login = Login}) -> +do_update_user(Login, NewPassword) -> case mnesia:read(?TABLE, Login) of - [{?TABLE, Login, _, CreateAt}] -> mnesia:write(User#emqx_user{created_at = CreateAt}); + [#emqx_user{} = User] -> + mnesia:write(User#emqx_user{password = NewPassword}); [] -> mnesia:abort(noexisted) end. From 91d00b2586033f976982e46478061c3f17d7eab1 Mon Sep 17 00:00:00 2001 From: z8674558 Date: Fri, 19 Feb 2021 16:15:34 +0900 Subject: [PATCH 3/4] chore(emqx_auth_mnesia): fix dialyzer warnings (return error tuple to minirest) --- apps/emqx_auth_mnesia/src/emqx_acl_mnesia_api.erl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/emqx_auth_mnesia/src/emqx_acl_mnesia_api.erl b/apps/emqx_auth_mnesia/src/emqx_acl_mnesia_api.erl index 38087135f..efc2d2fbb 100644 --- a/apps/emqx_auth_mnesia/src/emqx_acl_mnesia_api.erl +++ b/apps/emqx_auth_mnesia/src/emqx_acl_mnesia_api.erl @@ -129,7 +129,7 @@ add(_Bindings, Params) -> case Re of #{result := ok} -> return({ok, Re}); #{result := <<"ok">>} -> return({ok, Re}); - _ -> return({error, Re}) + _ -> return({error, {add, Re}}) end end. From 5a960fdabcd7c0ed870b6dabe35588efde8e555e Mon Sep 17 00:00:00 2001 From: z8674558 Date: Fri, 19 Feb 2021 16:16:24 +0900 Subject: [PATCH 4/4] chore(emqx_auth_mnesia): fix dialyzer warnings (match returned values) --- apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl b/apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl index aeed5b85c..adefa704b 100644 --- a/apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl +++ b/apps/emqx_auth_mnesia/src/emqx_auth_mnesia_cli.erl @@ -119,7 +119,7 @@ hash(Password, SaltBin, HashType) -> emqx_passwd:hash(HashType, <>). salt() -> - rand:seed(exsplus, erlang:timestamp()), + {_AlgHandler, _AlgState} = rand:seed(exsplus, erlang:timestamp()), Salt = rand:uniform(16#ffffffff), <>. %%--------------------------------------------------------------------