From 178d1006e1788ad8c04932d3b9e0e8b44d3f331a Mon Sep 17 00:00:00 2001 From: zhouzb Date: Thu, 19 Aug 2021 09:23:38 +0800 Subject: [PATCH] chore(match): reduce the risk of crash --- apps/emqx/src/emqx_channel.erl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/emqx/src/emqx_channel.erl b/apps/emqx/src/emqx_channel.erl index 93d5e2c37..5988e03e5 100644 --- a/apps/emqx/src/emqx_channel.erl +++ b/apps/emqx/src/emqx_channel.erl @@ -1302,13 +1302,13 @@ authenticate(?AUTH_PACKET(_, #{'Authentication-Method' := AuthMethod} = Properti do_authenticate(#{auth_method := AuthMethod} = Credential, #channel{clientinfo = ClientInfo} = Channel) -> Properties = #{'Authentication-Method' => AuthMethod}, case emqx_access_control:authenticate(Credential) of - {ok, #{superuser := Superuser}} -> + {ok, Result} -> {ok, Properties, - Channel#channel{clientinfo = ClientInfo#{is_superuser => Superuser}, + Channel#channel{clientinfo = ClientInfo#{is_superuser => maps:get(superuser, Result, false)}, auth_cache = #{}}}; - {ok, #{superuser := Superuser}, AuthData} -> + {ok, Result, AuthData} -> {ok, Properties#{'Authentication-Data' => AuthData}, - Channel#channel{clientinfo = ClientInfo#{is_superuser => Superuser}, + Channel#channel{clientinfo = ClientInfo#{is_superuser => maps:get(superuser, Result, false)}, auth_cache = #{}}}; {continue, AuthCache} -> {continue, Properties, Channel#channel{auth_cache = AuthCache}};