@@ -90,6 +90,7 @@ bool emberAfAdministratorCommissioningClusterOpenCommissioningWindowCallback(
90
90
auto & discriminator = commandData.discriminator ;
91
91
auto & iterations = commandData.iterations ;
92
92
auto & salt = commandData.salt ;
93
+ CHIP_ERROR err = CHIP_NO_ERROR;
93
94
94
95
Optional<StatusCode> status = Optional<StatusCode>::Missing ();
95
96
Status globalStatus = Status::Success;
@@ -110,14 +111,12 @@ bool emberAfAdministratorCommissioningClusterOpenCommissioningWindowCallback(
110
111
VerifyOrExit (iterations <= kSpake2p_Max_PBKDF_Iterations , status.Emplace (StatusCode::kPAKEParameterError ));
111
112
VerifyOrExit (salt.size () >= kSpake2p_Min_PBKDF_Salt_Length , status.Emplace (StatusCode::kPAKEParameterError ));
112
113
VerifyOrExit (salt.size () <= kSpake2p_Max_PBKDF_Salt_Length , status.Emplace (StatusCode::kPAKEParameterError ));
113
- VerifyOrExit (commissioningTimeout <= commissionMgr.MaxCommissioningTimeout (), globalStatus = Status::InvalidCommand);
114
- VerifyOrExit (commissioningTimeout >= commissionMgr.MinCommissioningTimeout (), globalStatus = Status::InvalidCommand);
115
114
VerifyOrExit (discriminator <= kMaxDiscriminatorValue , globalStatus = Status::InvalidCommand);
116
-
117
115
VerifyOrExit (verifier.Deserialize (pakeVerifier) == CHIP_NO_ERROR, status.Emplace (StatusCode::kPAKEParameterError ));
118
- VerifyOrExit (commissionMgr.OpenEnhancedCommissioningWindow (commissioningTimeout, discriminator, verifier, iterations, salt,
119
- fabricIndex, fabricInfo->GetVendorId ()) == CHIP_NO_ERROR,
120
- status.Emplace (StatusCode::kPAKEParameterError ));
116
+ err = commissionMgr.OpenEnhancedCommissioningWindow (commissioningTimeout, discriminator, verifier, iterations, salt,
117
+ fabricIndex, fabricInfo->GetVendorId ());
118
+ VerifyOrExit (err != CHIP_ERROR_INVALID_ARGUMENT, globalStatus = Status::InvalidCommand);
119
+ VerifyOrExit (err == CHIP_NO_ERROR, status.Emplace (StatusCode::kPAKEParameterError ));
121
120
ChipLogProgress (Zcl, " Commissioning window is now open" );
122
121
123
122
exit :
@@ -153,16 +152,16 @@ bool emberAfAdministratorCommissioningClusterOpenBasicCommissioningWindowCallbac
153
152
const FabricInfo * fabricInfo = Server::GetInstance ().GetFabricTable ().FindFabricWithIndex (fabricIndex);
154
153
auto & failSafeContext = Server::GetInstance ().GetFailSafeContext ();
155
154
auto & commissionMgr = Server::GetInstance ().GetCommissioningWindowManager ();
155
+ CHIP_ERROR err = CHIP_NO_ERROR;
156
156
157
157
VerifyOrExit (fabricInfo != nullptr , status.Emplace (StatusCode::kPAKEParameterError ));
158
158
159
159
VerifyOrExit (!commissionMgr.IsCommissioningWindowOpen (), status.Emplace (StatusCode::kBusy ));
160
160
VerifyOrExit (failSafeContext.IsFailSafeFullyDisarmed (), status.Emplace (StatusCode::kBusy ));
161
- VerifyOrExit (commissioningTimeout <= commissionMgr.MaxCommissioningTimeout (), globalStatus = Status::InvalidCommand);
162
- VerifyOrExit (commissioningTimeout >= commissionMgr.MinCommissioningTimeout (), globalStatus = Status::InvalidCommand);
163
- VerifyOrExit (commissionMgr.OpenBasicCommissioningWindowForAdministratorCommissioningCluster (
164
- commissioningTimeout, fabricIndex, fabricInfo->GetVendorId ()) == CHIP_NO_ERROR,
165
- status.Emplace (StatusCode::kPAKEParameterError ));
161
+ err = commissionMgr.OpenBasicCommissioningWindowForAdministratorCommissioningCluster (commissioningTimeout, fabricIndex,
162
+ fabricInfo->GetVendorId ());
163
+ VerifyOrExit (err != CHIP_ERROR_INVALID_ARGUMENT, globalStatus = Status::InvalidCommand);
164
+ VerifyOrExit (err == CHIP_NO_ERROR, status.Emplace (StatusCode::kPAKEParameterError ));
166
165
ChipLogProgress (Zcl, " Commissioning window is now open" );
167
166
168
167
exit :
0 commit comments