From 2b5925035059f8dba0ac3bb452aa4e7ec72317ac Mon Sep 17 00:00:00 2001 From: Junior Martinez Date: Wed, 17 Apr 2024 19:46:58 +0000 Subject: [PATCH] Pull request #1770: MATTER-3469: Cherry-pick : CSA:Temp fix for #32875 (network commissioning cluster check for SSID on Thread feature) (#32884) Merge in WMN_TOOLS/matter from cherry-pick/remove_no_ssid_check to RC_2.3.0-1.3 Squashed commit of the following: commit 29c1eb165d6e322bb106ef200950c57485118b52 Author: chrisdecenzo <61757564+chrisdecenzo@users.noreply.github.com> Date: Tue Apr 9 08:27:01 2024 -0700 Temp fix for #32875 (network commissioning cluster check for SSID on Thread feature) (#32884) * Temp fix for 32875 * Clarify comments --- .../network-commissioning.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/app/clusters/network-commissioning/network-commissioning.cpp b/src/app/clusters/network-commissioning/network-commissioning.cpp index 8212ea9f8008dc..3ad47b6cee7540 100644 --- a/src/app/clusters/network-commissioning/network-commissioning.cpp +++ b/src/app/clusters/network-commissioning/network-commissioning.cpp @@ -491,12 +491,17 @@ void Instance::HandleScanNetworks(HandlerContext & ctx, const Commands::ScanNetw } else if (mFeatureFlags.Has(Feature::kThreadNetworkInterface)) { + // NOTE: the following lines were commented out due to issue #32875. In short, a popular + // commissioner is passing a null SSID argument and this logic breaks interoperability as a result. + // The spec has some inconsistency on this which also needs to be fixed. The commissioner maker is + // fixing its code and will return to un-comment this code, with that work tracked by Issue #32887. + // // SSID present on Thread violates the `[WI]` conformance. - if (req.ssid.HasValue()) - { - ctx.mCommandHandler.AddStatus(ctx.mRequestPath, Protocols::InteractionModel::Status::InvalidCommand); - return; - } + // if (req.ssid.HasValue()) + // { + // ctx.mCommandHandler.AddStatus(ctx.mRequestPath, Protocols::InteractionModel::Status::InvalidCommand); + // return; + // } mCurrentOperationBreadcrumb = req.breadcrumb; mAsyncCommandHandle = CommandHandler::Handle(&ctx.mCommandHandler);