From 24f53744d843e3c6bb852110e81a12d93ed28208 Mon Sep 17 00:00:00 2001 From: libo429 Date: Mon, 8 Sep 2025 11:38:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E8=B4=A6=E5=8F=B7=E6=9C=89=E5=87=AD?= =?UTF-8?q?=E6=8D=AE=E6=97=A0ACL=EF=BC=8C=E7=9B=B4=E6=8E=A5=E8=A7=A6?= =?UTF-8?q?=E5=8F=91=E7=BB=84=E7=BD=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: libo429 --- .../authentication_v2/auth_stages/auth_confirm.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/services/implementation/src/authentication_v2/auth_stages/auth_confirm.cpp b/services/implementation/src/authentication_v2/auth_stages/auth_confirm.cpp index 5b0c4014c..88bf18015 100644 --- a/services/implementation/src/authentication_v2/auth_stages/auth_confirm.cpp +++ b/services/implementation/src/authentication_v2/auth_stages/auth_confirm.cpp @@ -689,6 +689,19 @@ int32_t AuthSrcConfirmState::Action(std::shared_ptr context) context->accesser.aclTypeList = aclNegoResult.Dump(); NegotiateProxyAcl(context); NegotiateUltrasonic(context); + uint32_t credType = 0; + uint32_t aclType = 0; + if (IsUint32(credTypeNegoResult, "identicalCredType")) { + credType = credTypeNegoResult["identicalCredType"].Get(); + } + if (IsUint32(aclNegoResult, "identicalAcl")) { + aclType = aclNegoResult["identicalAcl"].Get(); + } + if (credType == DM_IDENTICAL_ACCOUNT && aclType != DM_IDENTICAL_ACCOUNT) { + context->softbusConnector->JoinLnn(context->accessee.addr, true); + context->authStateMachine->TransitionTo(std::make_shared()); + return DM_OK; + } context->authMessageProcessor->CreateAndSendMsg(MSG_TYPE_REQ_USER_CONFIRM, context); // generate cert sync ffrt::submit([=]() { GenerateCertificate(context);}); -- Gitee