From 83f9ce13de13659d1a13db37b4ee992da172ed4b Mon Sep 17 00:00:00 2001 From: WanqQixiang Date: Thu, 6 Mar 2025 15:50:22 +0800 Subject: [PATCH] example: fix build of light switch when using dynamic commission data provider --- .../dynamic_commissionable_data_provider.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/examples/light_switch/main/custom_provider/dynamic_commissionable_data_provider.cpp b/examples/light_switch/main/custom_provider/dynamic_commissionable_data_provider.cpp index 220803e16..851b3d97c 100644 --- a/examples/light_switch/main/custom_provider/dynamic_commissionable_data_provider.cpp +++ b/examples/light_switch/main/custom_provider/dynamic_commissionable_data_provider.cpp @@ -16,6 +16,7 @@ #include #include #include +#include #include #include @@ -64,12 +65,12 @@ static bool is_valid_base64_str(const char *str) CHIP_ERROR dynamic_commissionable_data_provider::GetSpake2pSalt(MutableByteSpan &saltBuf) { const char *saltB64 = CONFIG_DYNAMIC_PASSCODE_PROVIDER_SALT_BASE64; - ReturnErrorCodeIf(!is_valid_base64_str(saltB64), CHIP_ERROR_INVALID_ARGUMENT); + VerifyOrReturnError(is_valid_base64_str(saltB64), CHIP_ERROR_INVALID_ARGUMENT); size_t saltB64Len = strlen(saltB64); uint8_t salt[chip::Crypto::kSpake2p_Max_PBKDF_Salt_Length]; size_t saltLen = chip::Base64Decode32(saltB64, saltB64Len, salt); - ReturnErrorCodeIf(saltLen < chip::Crypto::kSpake2p_Min_PBKDF_Salt_Length, CHIP_ERROR_INVALID_ARGUMENT); - ReturnErrorCodeIf(saltLen > saltBuf.size(), CHIP_ERROR_BUFFER_TOO_SMALL); + VerifyOrReturnError(saltLen >= chip::Crypto::kSpake2p_Min_PBKDF_Salt_Length, CHIP_ERROR_INVALID_ARGUMENT); + VerifyOrReturnError(saltLen <= saltBuf.size(), CHIP_ERROR_BUFFER_TOO_SMALL); memcpy(saltBuf.data(), salt, saltLen); saltBuf.reduce_size(saltLen);