diff --git a/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter b/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter
index 6ff3c099333d05..71da6771c0e97a 100644
--- a/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter
+++ b/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter
@@ -3708,6 +3708,7 @@ server cluster TestCluster = 4294048773 {
attribute nullable int8s nullableRangeRestrictedInt8s = 16423;
attribute nullable int16u nullableRangeRestrictedInt16u = 16424;
attribute nullable int16s nullableRangeRestrictedInt16s = 16425;
+ attribute int8u writeOnlyInt8u = 16426;
readonly attribute bitmap32 featureMap = 65532;
readonly attribute int16u clusterRevision = 65533;
@@ -4772,6 +4773,7 @@ endpoint 1 {
ram attribute nullableRangeRestrictedInt8s default = -20;
ram attribute nullableRangeRestrictedInt16u default = 200;
ram attribute nullableRangeRestrictedInt16s default = -100;
+ callback attribute writeOnlyInt8u;
ram attribute featureMap;
ram attribute clusterRevision default = 1;
}
diff --git a/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap b/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap
index 08edd158a5ee99..daca44d7b782ee 100644
--- a/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap
+++ b/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap
@@ -20700,6 +20700,22 @@
"maxInterval": 65534,
"reportableChange": 0
},
+ {
+ "name": "write_only_int8u",
+ "code": 16426,
+ "mfgCode": null,
+ "side": "server",
+ "type": "int8u",
+ "included": 1,
+ "storageOption": "External",
+ "singleton": 0,
+ "bounded": 0,
+ "defaultValue": "0",
+ "reportable": 1,
+ "minInterval": 1,
+ "maxInterval": 65534,
+ "reportableChange": 0
+ },
{
"name": "AttributeList",
"code": 65531,
@@ -24724,5 +24740,6 @@
"endpointVersion": 1,
"deviceIdentifier": 61442
}
- ]
+ ],
+ "log": []
}
\ No newline at end of file
diff --git a/src/app/clusters/test-cluster-server/test-cluster-server.cpp b/src/app/clusters/test-cluster-server/test-cluster-server.cpp
index 0da23b39b189e1..8647c7be0b12e4 100644
--- a/src/app/clusters/test-cluster-server/test-cluster-server.cpp
+++ b/src/app/clusters/test-cluster-server/test-cluster-server.cpp
@@ -170,6 +170,9 @@ CHIP_ERROR TestAttrAccess::Read(const ConcreteReadAttributePath & aPath, Attribu
case ClusterErrorBoolean::Id: {
return StatusIB(Protocols::InteractionModel::Status::Failure, 17).ToChipError();
}
+ case WriteOnlyInt8u::Id: {
+ return StatusIB(Protocols::InteractionModel::Status::UnsupportedRead).ToChipError();
+ }
default: {
break;
}
diff --git a/src/app/util/ember-compatibility-functions.cpp b/src/app/util/ember-compatibility-functions.cpp
index 3ac3b3258c41bc..f1bbd7e9c553eb 100644
--- a/src/app/util/ember-compatibility-functions.cpp
+++ b/src/app/util/ember-compatibility-functions.cpp
@@ -475,6 +475,14 @@ CHIP_ERROR ReadViaAccessInterface(FabricIndex aAccessingFabricIndex, bool aIsFab
AttributeValueEncoder valueEncoder(aAttributeReports, aAccessingFabricIndex, aPath, version, aIsFabricFiltered, state);
CHIP_ERROR err = aAccessInterface->Read(aPath, valueEncoder);
+ if (err == CHIP_IM_GLOBAL_STATUS(UnsupportedRead) && aPath.mExpanded) {
+ //
+ // Set this to true to ensure our caller will return immediately without proceeding further.
+ //
+ *aTriedEncode = true;
+ return CHIP_NO_ERROR;
+ }
+
if (err != CHIP_NO_ERROR)
{
// If the err is not CHIP_NO_ERROR, means the encoding was aborted, then the valueEncoder may save its state.
diff --git a/src/app/zap-templates/zcl/data-model/chip/test-cluster.xml b/src/app/zap-templates/zcl/data-model/chip/test-cluster.xml
index ba5db80d1708ef..da8acf50bbd389 100644
--- a/src/app/zap-templates/zcl/data-model/chip/test-cluster.xml
+++ b/src/app/zap-templates/zcl/data-model/chip/test-cluster.xml
@@ -232,6 +232,8 @@ limitations under the License.
nullable_range_restricted_int16u
nullable_range_restricted_int16s
+ write_only_int8u
+
unsupported
diff --git a/src/controller/python/chip/clusters/Objects.py b/src/controller/python/chip/clusters/Objects.py
index 49ea204a2ecb34..69e82312c9aa1a 100644
--- a/src/controller/python/chip/clusters/Objects.py
+++ b/src/controller/python/chip/clusters/Objects.py
@@ -26685,6 +26685,7 @@ def descriptor(cls) -> ClusterObjectDescriptor:
ClusterObjectFieldDescriptor(Label="nullableRangeRestrictedInt8s", Tag=0x00004027, Type=typing.Union[Nullable, int]),
ClusterObjectFieldDescriptor(Label="nullableRangeRestrictedInt16u", Tag=0x00004028, Type=typing.Union[Nullable, uint]),
ClusterObjectFieldDescriptor(Label="nullableRangeRestrictedInt16s", Tag=0x00004029, Type=typing.Union[Nullable, int]),
+ ClusterObjectFieldDescriptor(Label="writeOnlyInt8u", Tag=0x0000402A, Type=typing.Optional[uint]),
ClusterObjectFieldDescriptor(Label="generatedCommandList", Tag=0x0000FFF8, Type=typing.List[uint]),
ClusterObjectFieldDescriptor(Label="acceptedCommandList", Tag=0x0000FFF9, Type=typing.List[uint]),
ClusterObjectFieldDescriptor(Label="attributeList", Tag=0x0000FFFB, Type=typing.List[uint]),
@@ -26773,6 +26774,7 @@ def descriptor(cls) -> ClusterObjectDescriptor:
nullableRangeRestrictedInt8s: 'typing.Union[Nullable, int]' = None
nullableRangeRestrictedInt16u: 'typing.Union[Nullable, uint]' = None
nullableRangeRestrictedInt16s: 'typing.Union[Nullable, int]' = None
+ writeOnlyInt8u: 'typing.Optional[uint]' = None
generatedCommandList: 'typing.List[uint]' = None
acceptedCommandList: 'typing.List[uint]' = None
attributeList: 'typing.List[uint]' = None
@@ -28854,6 +28856,22 @@ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
value: 'typing.Union[Nullable, int]' = NullValue
+ @dataclass
+ class WriteOnlyInt8u(ClusterAttributeDescriptor):
+ @ChipUtility.classproperty
+ def cluster_id(cls) -> int:
+ return 0xFFF1FC05
+
+ @ChipUtility.classproperty
+ def attribute_id(cls) -> int:
+ return 0x0000402A
+
+ @ChipUtility.classproperty
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[uint])
+
+ value: 'typing.Optional[uint]' = None
+
@dataclass
class GeneratedCommandList(ClusterAttributeDescriptor):
@ChipUtility.classproperty
diff --git a/src/controller/python/test/test_scripts/cluster_objects.py b/src/controller/python/test/test_scripts/cluster_objects.py
index 5a9db3dd6ba28c..896d0c79103421 100644
--- a/src/controller/python/test/test_scripts/cluster_objects.py
+++ b/src/controller/python/test/test_scripts/cluster_objects.py
@@ -122,6 +122,14 @@ async def TestCommandWithResponse(cls, devCtrl):
if res.returnValue != 5:
raise ValueError()
+ @classmethod
+ @base.test_case
+ async def TestReadWriteOnlyAttribute(cls, devCtrl):
+ logger.info("Test wildcard read of attributes containing write-only attribute")
+ res = await devCtrl.ReadAttribute(nodeid=NODE_ID, attributes=[(Clusters.TestCluster)])
+ if Clusters.TestCluster.Attributes.WriteOnlyInt8u in res[1][Clusters.TestCluster]:
+ raise AssertionError("Received un-expected WriteOnlyInt8u attribute in TestCluster")
+
@classmethod
@base.test_case
async def TestWriteRequest(cls, devCtrl):
@@ -560,6 +568,7 @@ def eventPathPossibilities():
async def RunTest(cls, devCtrl):
try:
cls.TestAPI()
+ await cls.TestReadWriteOnlyAttribute(devCtrl)
await cls.TestCommandRoundTrip(devCtrl)
await cls.TestCommandRoundTripWithBadEndpoint(devCtrl)
await cls.TestCommandWithResponse(devCtrl)
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm b/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm
index a64e8844bf90ff..d49aab980c3ebe 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm
@@ -17449,6 +17449,17 @@ id MTRDecodeAttributeValue(const ConcreteAttributePath & aPath, TLV::TLVReader &
}
return value;
}
+ case Attributes::WriteOnlyInt8u::Id: {
+ using TypeInfo = Attributes::WriteOnlyInt8u::TypeInfo;
+ TypeInfo::DecodableType cppValue;
+ *aError = DataModel::Decode(aReader, cppValue);
+ if (*aError != CHIP_NO_ERROR) {
+ return nil;
+ }
+ NSNumber * _Nonnull value;
+ value = [NSNumber numberWithUnsignedChar:cppValue];
+ return value;
+ }
case Attributes::GeneratedCommandList::Id: {
using TypeInfo = Attributes::GeneratedCommandList::TypeInfo;
TypeInfo::DecodableType cppValue;
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.h b/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.h
index 68d99cab53237f..2e6fc6dd0a061e 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.h
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.h
@@ -19017,6 +19017,24 @@ labels.
completion:(void (^)(NSNumber * _Nullable value,
NSError * _Nullable error))completion;
+- (void)readAttributeWriteOnlyInt8uWithCompletion:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))completion;
+- (void)writeAttributeWriteOnlyInt8uWithValue:(NSNumber * _Nonnull)value completion:(MTRStatusCompletion)completion;
+- (void)writeAttributeWriteOnlyInt8uWithValue:(NSNumber * _Nonnull)value
+ params:(MTRWriteParams * _Nullable)params
+ completion:(MTRStatusCompletion)completion;
+/**
+ * This API does not support setting autoResubscribe to NO in the
+ * MTRSubscribeParams.
+ */
+- (void)subscribeAttributeWriteOnlyInt8uWithParams:(MTRSubscribeParams *)params
+ subscriptionEstablished:(MTRSubscriptionEstablishedHandler _Nullable)subscriptionEstablished
+ reportHandler:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))reportHandler;
++ (void)readAttributeWriteOnlyInt8uWithClusterStateCache:(MTRClusterStateCacheContainer *)clusterStateCacheContainer
+ endpoint:(NSNumber *)endpoint
+ queue:(dispatch_queue_t)queue
+ completion:
+ (void (^)(NSNumber * _Nullable value, NSError * _Nullable error))completion;
+
- (void)readAttributeGeneratedCommandListWithCompletion:(void (^)(NSArray * _Nullable value, NSError * _Nullable error))completion;
/**
* This API does not support setting autoResubscribe to NO in the
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.mm b/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.mm
index b03296b6272417..ca61f4e073a805 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.mm
@@ -85853,6 +85853,106 @@ new MTRNullableInt16sAttributeCallbackBridge(queue, completion, ^(Cancelable * s
});
}
+- (void)readAttributeWriteOnlyInt8uWithCompletion:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))completion
+{
+ new MTRInt8uAttributeCallbackBridge(self.callbackQueue, self.device, completion,
+ ^(ExchangeManager & exchangeManager, const SessionHandle & session, Cancelable * success, Cancelable * failure) {
+ using TypeInfo = TestCluster::Attributes::WriteOnlyInt8u::TypeInfo;
+ auto successFn = Callback::FromCancelable(success);
+ auto failureFn = Callback::FromCancelable(failure);
+ chip::Controller::TestClusterCluster cppCluster(exchangeManager, session, self->_endpoint);
+ return cppCluster.ReadAttribute(successFn->mContext, successFn->mCall, failureFn->mCall);
+ });
+}
+
+- (void)writeAttributeWriteOnlyInt8uWithValue:(NSNumber * _Nonnull)value completion:(MTRStatusCompletion)completion
+{
+ [self writeAttributeWriteOnlyInt8uWithValue:(NSNumber * _Nonnull) value params:nil completion:completion];
+}
+- (void)writeAttributeWriteOnlyInt8uWithValue:(NSNumber * _Nonnull)value
+ params:(MTRWriteParams * _Nullable)params
+ completion:(MTRStatusCompletion)completion
+{
+ // Make a copy of params before we go async.
+ params = [params copy];
+ value = [value copy];
+
+ new MTRDefaultSuccessCallbackBridge(
+ self.callbackQueue, self.device,
+ ^(id _Nullable ignored, NSError * _Nullable error) {
+ completion(error);
+ },
+ ^(ExchangeManager & exchangeManager, const SessionHandle & session, Cancelable * success, Cancelable * failure) {
+ chip::Optional timedWriteTimeout;
+ if (params != nil) {
+ if (params.timedWriteTimeout != nil) {
+ timedWriteTimeout.SetValue(params.timedWriteTimeout.unsignedShortValue);
+ }
+ }
+
+ ListFreer listFreer;
+ using TypeInfo = TestCluster::Attributes::WriteOnlyInt8u::TypeInfo;
+ TypeInfo::Type cppValue;
+ cppValue = value.unsignedCharValue;
+ auto successFn = Callback::FromCancelable(success);
+ auto failureFn = Callback::FromCancelable(failure);
+
+ chip::Controller::TestClusterCluster cppCluster(exchangeManager, session, self->_endpoint);
+ return cppCluster.WriteAttribute(
+ cppValue, successFn->mContext, successFn->mCall, failureFn->mCall, timedWriteTimeout);
+ });
+}
+
+- (void)subscribeAttributeWriteOnlyInt8uWithParams:(MTRSubscribeParams * _Nonnull)params
+ subscriptionEstablished:(MTRSubscriptionEstablishedHandler _Nullable)subscriptionEstablished
+ reportHandler:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))reportHandler
+{
+ // Make a copy of params before we go async.
+ params = [params copy];
+ new MTRInt8uAttributeCallbackSubscriptionBridge(
+ self.callbackQueue, self.device, reportHandler,
+ ^(ExchangeManager & exchangeManager, const SessionHandle & session, Cancelable * success, Cancelable * failure) {
+ if (!params.autoResubscribe) {
+ // We don't support disabling auto-resubscribe.
+ return CHIP_ERROR_INVALID_ARGUMENT;
+ }
+ using TypeInfo = TestCluster::Attributes::WriteOnlyInt8u::TypeInfo;
+ auto successFn = Callback::FromCancelable(success);
+ auto failureFn = Callback::FromCancelable(failure);
+
+ chip::Controller::TestClusterCluster cppCluster(exchangeManager, session, self->_endpoint);
+ return cppCluster.SubscribeAttribute(successFn->mContext, successFn->mCall, failureFn->mCall,
+ [params.minInterval unsignedShortValue], [params.maxInterval unsignedShortValue],
+ MTRInt8uAttributeCallbackSubscriptionBridge::OnSubscriptionEstablished, nil, params.fabricFiltered,
+ params.keepPreviousSubscriptions);
+ },
+ subscriptionEstablished);
+}
+
++ (void)readAttributeWriteOnlyInt8uWithClusterStateCache:(MTRClusterStateCacheContainer *)clusterStateCacheContainer
+ endpoint:(NSNumber *)endpoint
+ queue:(dispatch_queue_t)queue
+ completion:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))completion
+{
+ new MTRInt8uAttributeCallbackBridge(queue, completion, ^(Cancelable * success, Cancelable * failure) {
+ if (clusterStateCacheContainer.cppClusterStateCache) {
+ chip::app::ConcreteAttributePath path;
+ using TypeInfo = TestCluster::Attributes::WriteOnlyInt8u::TypeInfo;
+ path.mEndpointId = static_cast([endpoint unsignedShortValue]);
+ path.mClusterId = TypeInfo::GetClusterId();
+ path.mAttributeId = TypeInfo::GetAttributeId();
+ TypeInfo::DecodableType value;
+ CHIP_ERROR err = clusterStateCacheContainer.cppClusterStateCache->Get(path, value);
+ auto successFn = Callback::FromCancelable(success);
+ if (err == CHIP_NO_ERROR) {
+ successFn->mCall(successFn->mContext, value);
+ }
+ return err;
+ }
+ return CHIP_ERROR_NOT_FOUND;
+ });
+}
+
- (void)readAttributeGeneratedCommandListWithCompletion:(void (^)(NSArray * _Nullable value, NSError * _Nullable error))completion
{
new MTRTestClusterGeneratedCommandListListAttributeCallbackBridge(self.callbackQueue, self.device, completion,
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.mm b/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.mm
index c2547565970663..27d100fefe3c36 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.mm
@@ -12823,178 +12823,183 @@
void * context, const chip::app::Clusters::TestCluster::Commands::TestStructArrayArgumentResponse::DecodableType & data)
{
auto * response = [MTRTestClusterClusterTestStructArrayArgumentResponseParams new];
- { { // Scope for our temporary variables
- auto * array_0 = [NSMutableArray new];
- auto iter_0 = data.arg1.begin();
- while (iter_0.Next()) {
- auto & entry_0 = iter_0.GetValue();
- MTRTestClusterClusterNestedStructList * newElement_0;
- newElement_0 = [MTRTestClusterClusterNestedStructList new];
- newElement_0.a = [NSNumber numberWithUnsignedChar:entry_0.a];
- newElement_0.b = [NSNumber numberWithBool:entry_0.b];
- newElement_0.c = [MTRTestClusterClusterSimpleStruct new];
- newElement_0.c.a = [NSNumber numberWithUnsignedChar:entry_0.c.a];
- newElement_0.c.b = [NSNumber numberWithBool:entry_0.c.b];
- newElement_0.c.c = [NSNumber numberWithUnsignedChar:chip::to_underlying(entry_0.c.c)];
- newElement_0.c.d = [NSData dataWithBytes:entry_0.c.d.data() length:entry_0.c.d.size()];
- newElement_0.c.e = [[NSString alloc] initWithBytes:entry_0.c.e.data()
- length:entry_0.c.e.size()
- encoding:NSUTF8StringEncoding];
- newElement_0.c.f = [NSNumber numberWithUnsignedChar:entry_0.c.f.Raw()];
- newElement_0.c.g = [NSNumber numberWithFloat:entry_0.c.g];
- newElement_0.c.h = [NSNumber numberWithDouble:entry_0.c.h];
+ {
{ // Scope for our temporary variables
- auto * array_2 = [NSMutableArray new];
- auto iter_2 = entry_0.d.begin();
- while (iter_2.Next()) {
- auto & entry_2 = iter_2.GetValue();
- MTRTestClusterClusterSimpleStruct * newElement_2;
- newElement_2 = [MTRTestClusterClusterSimpleStruct new];
- newElement_2.a = [NSNumber numberWithUnsignedChar:entry_2.a];
- newElement_2.b = [NSNumber numberWithBool:entry_2.b];
- newElement_2.c = [NSNumber numberWithUnsignedChar:chip::to_underlying(entry_2.c)];
- newElement_2.d = [NSData dataWithBytes:entry_2.d.data() length:entry_2.d.size()];
- newElement_2.e = [[NSString alloc] initWithBytes:entry_2.e.data()
- length:entry_2.e.size()
- encoding:NSUTF8StringEncoding];
- newElement_2.f = [NSNumber numberWithUnsignedChar:entry_2.f.Raw()];
- newElement_2.g = [NSNumber numberWithFloat:entry_2.g];
- newElement_2.h = [NSNumber numberWithDouble:entry_2.h];
- [array_2 addObject:newElement_2];
+ auto * array_0 = [NSMutableArray new];
+ auto iter_0 = data.arg1.begin();
+ while (iter_0.Next()) {
+ auto & entry_0 = iter_0.GetValue();
+ MTRTestClusterClusterNestedStructList * newElement_0;
+ newElement_0 = [MTRTestClusterClusterNestedStructList new];
+ newElement_0.a = [NSNumber numberWithUnsignedChar:entry_0.a];
+ newElement_0.b = [NSNumber numberWithBool:entry_0.b];
+ newElement_0.c = [MTRTestClusterClusterSimpleStruct new];
+ newElement_0.c.a = [NSNumber numberWithUnsignedChar:entry_0.c.a];
+ newElement_0.c.b = [NSNumber numberWithBool:entry_0.c.b];
+ newElement_0.c.c = [NSNumber numberWithUnsignedChar:chip::to_underlying(entry_0.c.c)];
+ newElement_0.c.d = [NSData dataWithBytes:entry_0.c.d.data() length:entry_0.c.d.size()];
+ newElement_0.c.e = [[NSString alloc] initWithBytes:entry_0.c.e.data()
+ length:entry_0.c.e.size()
+ encoding:NSUTF8StringEncoding];
+ newElement_0.c.f = [NSNumber numberWithUnsignedChar:entry_0.c.f.Raw()];
+ newElement_0.c.g = [NSNumber numberWithFloat:entry_0.c.g];
+ newElement_0.c.h = [NSNumber numberWithDouble:entry_0.c.h];
+ { // Scope for our temporary variables
+ auto * array_2 = [NSMutableArray new];
+ auto iter_2 = entry_0.d.begin();
+ while (iter_2.Next()) {
+ auto & entry_2 = iter_2.GetValue();
+ MTRTestClusterClusterSimpleStruct * newElement_2;
+ newElement_2 = [MTRTestClusterClusterSimpleStruct new];
+ newElement_2.a = [NSNumber numberWithUnsignedChar:entry_2.a];
+ newElement_2.b = [NSNumber numberWithBool:entry_2.b];
+ newElement_2.c = [NSNumber numberWithUnsignedChar:chip::to_underlying(entry_2.c)];
+ newElement_2.d = [NSData dataWithBytes:entry_2.d.data() length:entry_2.d.size()];
+ newElement_2.e = [[NSString alloc] initWithBytes:entry_2.e.data()
+ length:entry_2.e.size()
+ encoding:NSUTF8StringEncoding];
+ newElement_2.f = [NSNumber numberWithUnsignedChar:entry_2.f.Raw()];
+ newElement_2.g = [NSNumber numberWithFloat:entry_2.g];
+ newElement_2.h = [NSNumber numberWithDouble:entry_2.h];
+ [array_2 addObject:newElement_2];
+ }
+ CHIP_ERROR err = iter_2.GetStatus();
+ if (err != CHIP_NO_ERROR) {
+ OnFailureFn(context, err);
+ return;
+ }
+ newElement_0.d = array_2;
+ }
+ { // Scope for our temporary variables
+ auto * array_2 = [NSMutableArray new];
+ auto iter_2 = entry_0.e.begin();
+ while (iter_2.Next()) {
+ auto & entry_2 = iter_2.GetValue();
+ NSNumber * newElement_2;
+ newElement_2 = [NSNumber numberWithUnsignedInt:entry_2];
+ [array_2 addObject:newElement_2];
+ }
+ CHIP_ERROR err = iter_2.GetStatus();
+ if (err != CHIP_NO_ERROR) {
+ OnFailureFn(context, err);
+ return;
+ }
+ newElement_0.e = array_2;
+ }
+ { // Scope for our temporary variables
+ auto * array_2 = [NSMutableArray new];
+ auto iter_2 = entry_0.f.begin();
+ while (iter_2.Next()) {
+ auto & entry_2 = iter_2.GetValue();
+ NSData * newElement_2;
+ newElement_2 = [NSData dataWithBytes:entry_2.data() length:entry_2.size()];
+ [array_2 addObject:newElement_2];
+ }
+ CHIP_ERROR err = iter_2.GetStatus();
+ if (err != CHIP_NO_ERROR) {
+ OnFailureFn(context, err);
+ return;
+ }
+ newElement_0.f = array_2;
+ }
+ { // Scope for our temporary variables
+ auto * array_2 = [NSMutableArray new];
+ auto iter_2 = entry_0.g.begin();
+ while (iter_2.Next()) {
+ auto & entry_2 = iter_2.GetValue();
+ NSNumber * newElement_2;
+ newElement_2 = [NSNumber numberWithUnsignedChar:entry_2];
+ [array_2 addObject:newElement_2];
+ }
+ CHIP_ERROR err = iter_2.GetStatus();
+ if (err != CHIP_NO_ERROR) {
+ OnFailureFn(context, err);
+ return;
+ }
+ newElement_0.g = array_2;
+ }
+ [array_0 addObject:newElement_0];
}
- CHIP_ERROR err = iter_2.GetStatus();
+ CHIP_ERROR err = iter_0.GetStatus();
if (err != CHIP_NO_ERROR) {
OnFailureFn(context, err);
return;
}
- newElement_0.d = array_2;
+ response.arg1 = array_0;
}
+ }
+ {
{ // Scope for our temporary variables
- auto * array_2 = [NSMutableArray new];
- auto iter_2 = entry_0.e.begin();
- while (iter_2.Next()) {
- auto & entry_2 = iter_2.GetValue();
- NSNumber * newElement_2;
- newElement_2 = [NSNumber numberWithUnsignedInt:entry_2];
- [array_2 addObject:newElement_2];
+ auto * array_0 = [NSMutableArray new];
+ auto iter_0 = data.arg2.begin();
+ while (iter_0.Next()) {
+ auto & entry_0 = iter_0.GetValue();
+ MTRTestClusterClusterSimpleStruct * newElement_0;
+ newElement_0 = [MTRTestClusterClusterSimpleStruct new];
+ newElement_0.a = [NSNumber numberWithUnsignedChar:entry_0.a];
+ newElement_0.b = [NSNumber numberWithBool:entry_0.b];
+ newElement_0.c = [NSNumber numberWithUnsignedChar:chip::to_underlying(entry_0.c)];
+ newElement_0.d = [NSData dataWithBytes:entry_0.d.data() length:entry_0.d.size()];
+ newElement_0.e = [[NSString alloc] initWithBytes:entry_0.e.data()
+ length:entry_0.e.size()
+ encoding:NSUTF8StringEncoding];
+ newElement_0.f = [NSNumber numberWithUnsignedChar:entry_0.f.Raw()];
+ newElement_0.g = [NSNumber numberWithFloat:entry_0.g];
+ newElement_0.h = [NSNumber numberWithDouble:entry_0.h];
+ [array_0 addObject:newElement_0];
}
- CHIP_ERROR err = iter_2.GetStatus();
+ CHIP_ERROR err = iter_0.GetStatus();
if (err != CHIP_NO_ERROR) {
OnFailureFn(context, err);
return;
}
- newElement_0.e = array_2;
+ response.arg2 = array_0;
}
+ }
+ {
{ // Scope for our temporary variables
- auto * array_2 = [NSMutableArray new];
- auto iter_2 = entry_0.f.begin();
- while (iter_2.Next()) {
- auto & entry_2 = iter_2.GetValue();
- NSData * newElement_2;
- newElement_2 = [NSData dataWithBytes:entry_2.data() length:entry_2.size()];
- [array_2 addObject:newElement_2];
+ auto * array_0 = [NSMutableArray new];
+ auto iter_0 = data.arg3.begin();
+ while (iter_0.Next()) {
+ auto & entry_0 = iter_0.GetValue();
+ NSNumber * newElement_0;
+ newElement_0 = [NSNumber numberWithUnsignedChar:chip::to_underlying(entry_0)];
+ [array_0 addObject:newElement_0];
}
- CHIP_ERROR err = iter_2.GetStatus();
+ CHIP_ERROR err = iter_0.GetStatus();
if (err != CHIP_NO_ERROR) {
OnFailureFn(context, err);
return;
}
- newElement_0.f = array_2;
+ response.arg3 = array_0;
}
+ }
+ {
{ // Scope for our temporary variables
- auto * array_2 = [NSMutableArray new];
- auto iter_2 = entry_0.g.begin();
- while (iter_2.Next()) {
- auto & entry_2 = iter_2.GetValue();
- NSNumber * newElement_2;
- newElement_2 = [NSNumber numberWithUnsignedChar:entry_2];
- [array_2 addObject:newElement_2];
+ auto * array_0 = [NSMutableArray new];
+ auto iter_0 = data.arg4.begin();
+ while (iter_0.Next()) {
+ auto & entry_0 = iter_0.GetValue();
+ NSNumber * newElement_0;
+ newElement_0 = [NSNumber numberWithBool:entry_0];
+ [array_0 addObject:newElement_0];
}
- CHIP_ERROR err = iter_2.GetStatus();
+ CHIP_ERROR err = iter_0.GetStatus();
if (err != CHIP_NO_ERROR) {
OnFailureFn(context, err);
return;
}
- newElement_0.g = array_2;
+ response.arg4 = array_0;
}
- [array_0 addObject:newElement_0];
}
- CHIP_ERROR err = iter_0.GetStatus();
- if (err != CHIP_NO_ERROR) {
- OnFailureFn(context, err);
- return;
+ {
+ response.arg5 = [NSNumber numberWithUnsignedChar:chip::to_underlying(data.arg5)];
}
- response.arg1 = array_0;
-}
-}
-{ { // Scope for our temporary variables
- auto * array_0 = [NSMutableArray new];
-auto iter_0 = data.arg2.begin();
-while (iter_0.Next()) {
- auto & entry_0 = iter_0.GetValue();
- MTRTestClusterClusterSimpleStruct * newElement_0;
- newElement_0 = [MTRTestClusterClusterSimpleStruct new];
- newElement_0.a = [NSNumber numberWithUnsignedChar:entry_0.a];
- newElement_0.b = [NSNumber numberWithBool:entry_0.b];
- newElement_0.c = [NSNumber numberWithUnsignedChar:chip::to_underlying(entry_0.c)];
- newElement_0.d = [NSData dataWithBytes:entry_0.d.data() length:entry_0.d.size()];
- newElement_0.e = [[NSString alloc] initWithBytes:entry_0.e.data() length:entry_0.e.size() encoding:NSUTF8StringEncoding];
- newElement_0.f = [NSNumber numberWithUnsignedChar:entry_0.f.Raw()];
- newElement_0.g = [NSNumber numberWithFloat:entry_0.g];
- newElement_0.h = [NSNumber numberWithDouble:entry_0.h];
- [array_0 addObject:newElement_0];
-}
-CHIP_ERROR err = iter_0.GetStatus();
-if (err != CHIP_NO_ERROR) {
- OnFailureFn(context, err);
- return;
-}
-response.arg2 = array_0;
-}
-}
-{ { // Scope for our temporary variables
- auto * array_0 = [NSMutableArray new];
-auto iter_0 = data.arg3.begin();
-while (iter_0.Next()) {
- auto & entry_0 = iter_0.GetValue();
- NSNumber * newElement_0;
- newElement_0 = [NSNumber numberWithUnsignedChar:chip::to_underlying(entry_0)];
- [array_0 addObject:newElement_0];
-}
-CHIP_ERROR err = iter_0.GetStatus();
-if (err != CHIP_NO_ERROR) {
- OnFailureFn(context, err);
- return;
-}
-response.arg3 = array_0;
-}
-}
-{ { // Scope for our temporary variables
- auto * array_0 = [NSMutableArray new];
-auto iter_0 = data.arg4.begin();
-while (iter_0.Next()) {
- auto & entry_0 = iter_0.GetValue();
- NSNumber * newElement_0;
- newElement_0 = [NSNumber numberWithBool:entry_0];
- [array_0 addObject:newElement_0];
-}
-CHIP_ERROR err = iter_0.GetStatus();
-if (err != CHIP_NO_ERROR) {
- OnFailureFn(context, err);
- return;
-}
-response.arg4 = array_0;
-}
-}
-{
- response.arg5 = [NSNumber numberWithUnsignedChar:chip::to_underlying(data.arg5)];
-}
-{
- response.arg6 = [NSNumber numberWithBool:data.arg6];
-}
-DispatchSuccess(context, response);
-}
-;
+ {
+ response.arg6 = [NSNumber numberWithBool:data.arg6];
+ }
+ DispatchSuccess(context, response);
+};
void MTRTestClusterClusterTestListInt8UReverseResponseCallbackBridge::OnSuccessFn(
void * context, const chip::app::Clusters::TestCluster::Commands::TestListInt8UReverseResponse::DecodableType & data)
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h b/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h
index 4318c4fa50e459..2df9246dc8a98b 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h
@@ -1445,6 +1445,7 @@ typedef NS_ENUM(uint32_t, MTRAttributeIDType) {
MTRAttributeIDTypeClusterTestClusterAttributeNullableRangeRestrictedInt8sID = 0x00004027,
MTRAttributeIDTypeClusterTestClusterAttributeNullableRangeRestrictedInt16uID = 0x00004028,
MTRAttributeIDTypeClusterTestClusterAttributeNullableRangeRestrictedInt16sID = 0x00004029,
+ MTRAttributeIDTypeClusterTestClusterAttributeWriteOnlyInt8uID = 0x0000402A,
MTRAttributeIDTypeClusterTestClusterAttributeGeneratedCommandListID = MTRAttributeIDTypeGlobalAttributeGeneratedCommandListID,
MTRAttributeIDTypeClusterTestClusterAttributeAcceptedCommandListID = MTRAttributeIDTypeGlobalAttributeAcceptedCommandListID,
MTRAttributeIDTypeClusterTestClusterAttributeAttributeListID = MTRAttributeIDTypeGlobalAttributeAttributeListID,
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRClusters.h b/src/darwin/Framework/CHIP/zap-generated/MTRClusters.h
index 32ca6ee39e5e48..2182161a4f13ac 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRClusters.h
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRClusters.h
@@ -5301,6 +5301,13 @@ labels.
expectedValueInterval:(NSNumber *)expectedValueIntervalMs
params:(MTRWriteParams * _Nullable)params;
+- (NSDictionary *)readAttributeWriteOnlyInt8uWithParams:(MTRReadParams * _Nullable)params;
+- (void)writeAttributeWriteOnlyInt8uWithValue:(NSDictionary *)dataValueDictionary
+ expectedValueInterval:(NSNumber *)expectedValueIntervalMs;
+- (void)writeAttributeWriteOnlyInt8uWithValue:(NSDictionary *)dataValueDictionary
+ expectedValueInterval:(NSNumber *)expectedValueIntervalMs
+ params:(MTRWriteParams * _Nullable)params;
+
- (NSDictionary *)readAttributeGeneratedCommandListWithParams:(MTRReadParams * _Nullable)params;
- (NSDictionary *)readAttributeAcceptedCommandListWithParams:(MTRReadParams * _Nullable)params;
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRClusters.mm b/src/darwin/Framework/CHIP/zap-generated/MTRClusters.mm
index 66ec9e6d9fe890..98f95c8899f820 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRClusters.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRClusters.mm
@@ -22304,6 +22304,33 @@ - (void)writeAttributeNullableRangeRestrictedInt16sWithValue:(NSDictionary *)readAttributeWriteOnlyInt8uWithParams:(MTRReadParams * _Nullable)params
+{
+ return [self.device readAttributeWithEndpointID:@(_endpoint)
+ clusterID:@(MTRClusterIDTypeTestClusterID)
+ attributeID:@(MTRAttributeIDTypeClusterTestClusterAttributeWriteOnlyInt8uID)
+ params:params];
+}
+
+- (void)writeAttributeWriteOnlyInt8uWithValue:(NSDictionary *)dataValueDictionary
+ expectedValueInterval:(NSNumber *)expectedValueIntervalMs
+{
+ [self writeAttributeWriteOnlyInt8uWithValue:dataValueDictionary expectedValueInterval:expectedValueIntervalMs params:nil];
+}
+- (void)writeAttributeWriteOnlyInt8uWithValue:(NSDictionary *)dataValueDictionary
+ expectedValueInterval:(NSNumber *)expectedValueIntervalMs
+ params:(MTRWriteParams * _Nullable)params
+{
+ NSNumber * timedWriteTimeout = params.timedWriteTimeout;
+
+ [self.device writeAttributeWithEndpointID:@(_endpoint)
+ clusterID:@(MTRClusterIDTypeTestClusterID)
+ attributeID:@(MTRAttributeIDTypeClusterTestClusterAttributeWriteOnlyInt8uID)
+ value:dataValueDictionary
+ expectedValueInterval:expectedValueIntervalMs
+ timedWriteTimeout:timedWriteTimeout];
+}
+
- (NSDictionary *)readAttributeGeneratedCommandListWithParams:(MTRReadParams * _Nullable)params
{
return [self.device readAttributeWithEndpointID:@(_endpoint)
diff --git a/zzz_generated/all-clusters-app/zap-generated/endpoint_config.h b/zzz_generated/all-clusters-app/zap-generated/endpoint_config.h
index d2167954be34cd..31bf827df73545 100644
--- a/zzz_generated/all-clusters-app/zap-generated/endpoint_config.h
+++ b/zzz_generated/all-clusters-app/zap-generated/endpoint_config.h
@@ -369,7 +369,7 @@
#define ZAP_ATTRIBUTE_MASK(mask) ATTRIBUTE_MASK_##mask
// This is an array of EmberAfAttributeMetadata structures.
-#define GENERATED_ATTRIBUTE_COUNT 717
+#define GENERATED_ATTRIBUTE_COUNT 718
#define GENERATED_ATTRIBUTES \
{ \
\
@@ -1429,7 +1429,9 @@
ZAP_MIN_MAX_DEFAULTS_INDEX(44) }, /* nullable_range_restricted_int16u */ \
{ 0x00004029, ZAP_TYPE(INT16S), 2, \
ZAP_ATTRIBUTE_MASK(MIN_MAX) | ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
- ZAP_MIN_MAX_DEFAULTS_INDEX(45) }, /* nullable_range_restricted_int16s */ \
+ ZAP_MIN_MAX_DEFAULTS_INDEX(45) }, /* nullable_range_restricted_int16s */ \
+ { 0x0000402A, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
+ ZAP_EMPTY_DEFAULT() }, /* write_only_int8u */ \
{ 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
{ 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
\
@@ -2691,7 +2693,7 @@
/* Endpoint: 1, Cluster: Test Cluster (server) */ \
.clusterId = 0xFFF1FC05, \
.attributes = ZAP_ATTRIBUTE_INDEX(596), \
- .attributeCount = 82, \
+ .attributeCount = 83, \
.clusterSize = 2289, \
.mask = ZAP_CLUSTER_MASK(SERVER), \
.functions = NULL, \
@@ -2701,7 +2703,7 @@
{ \
/* Endpoint: 2, Cluster: Groups (server) */ \
.clusterId = 0x00000004, \
- .attributes = ZAP_ATTRIBUTE_INDEX(678), \
+ .attributes = ZAP_ATTRIBUTE_INDEX(679), \
.attributeCount = 3, \
.clusterSize = 7, \
.mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \
@@ -2712,7 +2714,7 @@
{ \
/* Endpoint: 2, Cluster: On/Off (server) */ \
.clusterId = 0x00000006, \
- .attributes = ZAP_ATTRIBUTE_INDEX(681), \
+ .attributes = ZAP_ATTRIBUTE_INDEX(682), \
.attributeCount = 7, \
.clusterSize = 13, \
.mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \
@@ -2723,7 +2725,7 @@
{ \
/* Endpoint: 2, Cluster: Descriptor (server) */ \
.clusterId = 0x0000001D, \
- .attributes = ZAP_ATTRIBUTE_INDEX(688), \
+ .attributes = ZAP_ATTRIBUTE_INDEX(689), \
.attributeCount = 6, \
.clusterSize = 4, \
.mask = ZAP_CLUSTER_MASK(SERVER), \
@@ -2734,7 +2736,7 @@
{ \
/* Endpoint: 2, Cluster: Power Source (server) */ \
.clusterId = 0x0000002F, \
- .attributes = ZAP_ATTRIBUTE_INDEX(694), \
+ .attributes = ZAP_ATTRIBUTE_INDEX(695), \
.attributeCount = 8, \
.clusterSize = 72, \
.mask = ZAP_CLUSTER_MASK(SERVER), \
@@ -2745,7 +2747,7 @@
{ \
/* Endpoint: 2, Cluster: Occupancy Sensing (server) */ \
.clusterId = 0x00000406, \
- .attributes = ZAP_ATTRIBUTE_INDEX(702), \
+ .attributes = ZAP_ATTRIBUTE_INDEX(703), \
.attributeCount = 5, \
.clusterSize = 9, \
.mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \
@@ -2756,7 +2758,7 @@
{ \
/* Endpoint: 65534, Cluster: Network Commissioning (server) */ \
.clusterId = 0x00000031, \
- .attributes = ZAP_ATTRIBUTE_INDEX(707), \
+ .attributes = ZAP_ATTRIBUTE_INDEX(708), \
.attributeCount = 10, \
.clusterSize = 0, \
.mask = ZAP_CLUSTER_MASK(SERVER), \
diff --git a/zzz_generated/app-common/app-common/zap-generated/attribute-id.h b/zzz_generated/app-common/app-common/zap-generated/attribute-id.h
index ab7abb68c6bc5c..8872d8decf56dd 100644
--- a/zzz_generated/app-common/app-common/zap-generated/attribute-id.h
+++ b/zzz_generated/app-common/app-common/zap-generated/attribute-id.h
@@ -1219,6 +1219,7 @@
#define ZCL_NULLABLE_RANGE_RESTRICTED_INT8S_ATTRIBUTE_ID (0x4027)
#define ZCL_NULLABLE_RANGE_RESTRICTED_INT16_U_ATTRIBUTE_ID (0x4028)
#define ZCL_NULLABLE_RANGE_RESTRICTED_INT16_S_ATTRIBUTE_ID (0x4029)
+#define ZCL_WRITE_ONLY_INT8_U_ATTRIBUTE_ID (0x402A)
// Attribute ids for cluster: Fault Injection
diff --git a/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp b/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp
index 4cba25b122d69c..ec5fc6f0b6d990 100644
--- a/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp
+++ b/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp
@@ -30692,6 +30692,37 @@ EmberAfStatus Set(chip::EndpointId endpoint, const chip::app::DataModel::Nullabl
} // namespace NullableRangeRestrictedInt16s
+namespace WriteOnlyInt8u {
+
+EmberAfStatus Get(chip::EndpointId endpoint, uint8_t * value)
+{
+ using Traits = NumericAttributeTraits;
+ Traits::StorageType temp;
+ uint8_t * readable = Traits::ToAttributeStoreRepresentation(temp);
+ EmberAfStatus status = emberAfReadServerAttribute(endpoint, Clusters::TestCluster::Id, Id, readable, sizeof(temp));
+ VerifyOrReturnError(EMBER_ZCL_STATUS_SUCCESS == status, status);
+ if (!Traits::CanRepresentValue(/* isNullable = */ false, temp))
+ {
+ return EMBER_ZCL_STATUS_CONSTRAINT_ERROR;
+ }
+ *value = Traits::StorageToWorking(temp);
+ return status;
+}
+EmberAfStatus Set(chip::EndpointId endpoint, uint8_t value)
+{
+ using Traits = NumericAttributeTraits;
+ if (!Traits::CanRepresentValue(/* isNullable = */ false, value))
+ {
+ return EMBER_ZCL_STATUS_CONSTRAINT_ERROR;
+ }
+ Traits::StorageType storageValue;
+ Traits::WorkingToStorage(value, storageValue);
+ uint8_t * writable = Traits::ToAttributeStoreRepresentation(storageValue);
+ return emberAfWriteServerAttribute(endpoint, Clusters::TestCluster::Id, Id, writable, ZCL_INT8U_ATTRIBUTE_TYPE);
+}
+
+} // namespace WriteOnlyInt8u
+
namespace FeatureMap {
EmberAfStatus Get(chip::EndpointId endpoint, uint32_t * value)
diff --git a/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.h b/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.h
index f4d9c7fea31405..c7543c2a5c9ff7 100644
--- a/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.h
+++ b/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.h
@@ -5097,6 +5097,11 @@ EmberAfStatus SetNull(chip::EndpointId endpoint);
EmberAfStatus Set(chip::EndpointId endpoint, const chip::app::DataModel::Nullable & value);
} // namespace NullableRangeRestrictedInt16s
+namespace WriteOnlyInt8u {
+EmberAfStatus Get(chip::EndpointId endpoint, uint8_t * value); // int8u
+EmberAfStatus Set(chip::EndpointId endpoint, uint8_t value);
+} // namespace WriteOnlyInt8u
+
namespace FeatureMap {
EmberAfStatus Get(chip::EndpointId endpoint, uint32_t * value); // bitmap32
EmberAfStatus Set(chip::EndpointId endpoint, uint32_t value);
diff --git a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp
index c3e83283443daf..c265db1a4443fe 100644
--- a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp
+++ b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp
@@ -20762,6 +20762,9 @@ CHIP_ERROR TypeInfo::DecodableType::Decode(TLV::TLVReader & reader, const Concre
case Attributes::NullableRangeRestrictedInt16s::TypeInfo::GetAttributeId():
ReturnErrorOnFailure(DataModel::Decode(reader, nullableRangeRestrictedInt16s));
break;
+ case Attributes::WriteOnlyInt8u::TypeInfo::GetAttributeId():
+ ReturnErrorOnFailure(DataModel::Decode(reader, writeOnlyInt8u));
+ break;
case Attributes::GeneratedCommandList::TypeInfo::GetAttributeId():
ReturnErrorOnFailure(DataModel::Decode(reader, generatedCommandList));
break;
diff --git a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h
index 538709b05c8c09..38aa0198ee1a22 100644
--- a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h
+++ b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h
@@ -27868,6 +27868,18 @@ struct TypeInfo
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace NullableRangeRestrictedInt16s
+namespace WriteOnlyInt8u {
+struct TypeInfo
+{
+ using Type = uint8_t;
+ using DecodableType = uint8_t;
+ using DecodableArgType = uint8_t;
+
+ static constexpr ClusterId GetClusterId() { return Clusters::TestCluster::Id; }
+ static constexpr AttributeId GetAttributeId() { return Attributes::WriteOnlyInt8u::Id; }
+ static constexpr bool MustUseTimedWrite() { return false; }
+};
+} // namespace WriteOnlyInt8u
namespace GeneratedCommandList {
struct TypeInfo : public Clusters::Globals::Attributes::GeneratedCommandList::TypeInfo
{
@@ -27992,6 +28004,7 @@ struct TypeInfo
Attributes::NullableRangeRestrictedInt8s::TypeInfo::DecodableType nullableRangeRestrictedInt8s;
Attributes::NullableRangeRestrictedInt16u::TypeInfo::DecodableType nullableRangeRestrictedInt16u;
Attributes::NullableRangeRestrictedInt16s::TypeInfo::DecodableType nullableRangeRestrictedInt16s;
+ Attributes::WriteOnlyInt8u::TypeInfo::DecodableType writeOnlyInt8u = static_cast(0);
Attributes::GeneratedCommandList::TypeInfo::DecodableType generatedCommandList;
Attributes::AcceptedCommandList::TypeInfo::DecodableType acceptedCommandList;
Attributes::AttributeList::TypeInfo::DecodableType attributeList;
diff --git a/zzz_generated/app-common/app-common/zap-generated/ids/Attributes.h b/zzz_generated/app-common/app-common/zap-generated/ids/Attributes.h
index 4ad8017f1f1101..d61a60453231ba 100644
--- a/zzz_generated/app-common/app-common/zap-generated/ids/Attributes.h
+++ b/zzz_generated/app-common/app-common/zap-generated/ids/Attributes.h
@@ -4932,6 +4932,10 @@ namespace NullableRangeRestrictedInt16s {
static constexpr AttributeId Id = 0x00004029;
} // namespace NullableRangeRestrictedInt16s
+namespace WriteOnlyInt8u {
+static constexpr AttributeId Id = 0x0000402A;
+} // namespace WriteOnlyInt8u
+
namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList
diff --git a/zzz_generated/chip-tool/zap-generated/cluster/Commands.h b/zzz_generated/chip-tool/zap-generated/cluster/Commands.h
index 9994795a0ed905..40b1760e02ba07 100644
--- a/zzz_generated/chip-tool/zap-generated/cluster/Commands.h
+++ b/zzz_generated/chip-tool/zap-generated/cluster/Commands.h
@@ -7405,6 +7405,7 @@ class ElectricalMeasurementGetMeasurementProfileCommand : public ClusterCommand
| * NullableRangeRestrictedInt8s | 0x4027 |
| * NullableRangeRestrictedInt16u | 0x4028 |
| * NullableRangeRestrictedInt16s | 0x4029 |
+| * WriteOnlyInt8u | 0x402A |
| * GeneratedCommandList | 0xFFF8 |
| * AcceptedCommandList | 0xFFF9 |
| * AttributeList | 0xFFFB |
@@ -13034,6 +13035,7 @@ void registerClusterTestCluster(Commands & commands, CredentialIssuerCommands *
credsIssuerConfig), //
make_unique(Id, "nullable-range-restricted-int16s", Attributes::NullableRangeRestrictedInt16s::Id,
credsIssuerConfig), //
+ make_unique(Id, "write-only-int8u", Attributes::WriteOnlyInt8u::Id, credsIssuerConfig), //
make_unique(Id, "generated-command-list", Attributes::GeneratedCommandList::Id, credsIssuerConfig), //
make_unique(Id, "accepted-command-list", Attributes::AcceptedCommandList::Id, credsIssuerConfig), //
make_unique(Id, "attribute-list", Attributes::AttributeList::Id, credsIssuerConfig), //
@@ -13189,7 +13191,9 @@ void registerClusterTestCluster(Commands & commands, CredentialIssuerCommands *
credsIssuerConfig), //
make_unique>>(
Id, "nullable-range-restricted-int16s", INT16_MIN, INT16_MAX, Attributes::NullableRangeRestrictedInt16s::Id,
- credsIssuerConfig), //
+ credsIssuerConfig), //
+ make_unique>(Id, "write-only-int8u", 0, UINT8_MAX, Attributes::WriteOnlyInt8u::Id,
+ credsIssuerConfig), //
make_unique(Id, credsIssuerConfig), //
make_unique(Id, "boolean", Attributes::Boolean::Id, credsIssuerConfig), //
make_unique(Id, "bitmap8", Attributes::Bitmap8::Id, credsIssuerConfig), //
@@ -13278,6 +13282,7 @@ void registerClusterTestCluster(Commands & commands, CredentialIssuerCommands *
credsIssuerConfig), //
make_unique(Id, "nullable-range-restricted-int16s", Attributes::NullableRangeRestrictedInt16s::Id,
credsIssuerConfig), //
+ make_unique(Id, "write-only-int8u", Attributes::WriteOnlyInt8u::Id, credsIssuerConfig), //
make_unique(Id, "generated-command-list", Attributes::GeneratedCommandList::Id, credsIssuerConfig), //
make_unique(Id, "accepted-command-list", Attributes::AcceptedCommandList::Id, credsIssuerConfig), //
make_unique(Id, "attribute-list", Attributes::AttributeList::Id, credsIssuerConfig), //
diff --git a/zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp b/zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp
index d4ac2c0dac24d2..05a186b290df5b 100644
--- a/zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp
+++ b/zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp
@@ -9974,6 +9974,11 @@ CHIP_ERROR DataModelLogger::LogAttribute(const chip::app::ConcreteDataAttributeP
ReturnErrorOnFailure(chip::app::DataModel::Decode(*data, value));
return DataModelLogger::LogValue("nullable_range_restricted_int16s", 1, value);
}
+ case TestCluster::Attributes::WriteOnlyInt8u::Id: {
+ uint8_t value;
+ ReturnErrorOnFailure(chip::app::DataModel::Decode(*data, value));
+ return DataModelLogger::LogValue("write_only_int8u", 1, value);
+ }
case TestCluster::Attributes::GeneratedCommandList::Id: {
chip::app::DataModel::DecodableList value;
ReturnErrorOnFailure(chip::app::DataModel::Decode(*data, value));
diff --git a/zzz_generated/chip-tool/zap-generated/test/Commands.h b/zzz_generated/chip-tool/zap-generated/test/Commands.h
index 570fd45aea3fab..d8a266206f9a10 100644
--- a/zzz_generated/chip-tool/zap-generated/test/Commands.h
+++ b/zzz_generated/chip-tool/zap-generated/test/Commands.h
@@ -83778,16 +83778,16 @@ class Test_TC_CADMIN_1_11Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -83829,16 +83829,16 @@ class Test_TC_CADMIN_1_11Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -83870,16 +83870,16 @@ class Test_TC_CADMIN_1_11Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -83896,16 +83896,16 @@ class Test_TC_CADMIN_1_11Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -84340,16 +84340,16 @@ class Test_TC_CADMIN_1_15Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -84381,16 +84381,16 @@ class Test_TC_CADMIN_1_15Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -84465,16 +84465,16 @@ class Test_TC_CADMIN_1_15Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -85371,16 +85371,16 @@ class Test_TC_CADMIN_1_22Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 900U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -85408,16 +85408,16 @@ class Test_TC_CADMIN_1_22Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 901U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -85645,16 +85645,16 @@ class Test_TC_CADMIN_1_3Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -85753,16 +85753,16 @@ class Test_TC_CADMIN_1_3Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityBeta, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -85790,16 +85790,16 @@ class Test_TC_CADMIN_1_3Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityBeta, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -86333,16 +86333,16 @@ class Test_TC_CADMIN_1_5Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -86383,16 +86383,16 @@ class Test_TC_CADMIN_1_5Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -86453,15 +86453,15 @@ class Test_TC_CADMIN_1_5Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mIncorrectPakeVerifier.HasValue()
- ? mIncorrectPakeVerifier.Value()
- : chip::ByteSpan(chip::Uint8::from_const_char(
- "\x06\xc7\x56\xdf\xfc\xd7\x22\x65\x34\x52\xa1\x2d\xcd\x94\x5d\x8c\x54\xda\x2b\x0f\x3c\xbd\x1b"
- "\x4d\xc3\xf1\xad\xb2\x23\xae\xb2\x6b\x04\x7c\xd2\x4c\x96\x86\x6f\x97\x9b\x1d\x83\xec\x50\xe2"
- "\xb4\xae\x30\xcd\xf2\xfd\xb3\x2b\xd8\xa2\x11\xb8\x37\xdc\x94\xed\xcd\x56\xf4\xd1\x43\x77\x19"
- "\x10\x76\xbf\xc5\x9d\x99\xb7\xdd\x30\x53\xef\xd6\xf0\x2c\x44\x34\xf2\xbd\xd2\x7a"),
- 89);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mIncorrectPakeVerifier.Value()
+ : chip::ByteSpan(chip::Uint8::from_const_char(
+ "\x06\xc7\x56\xdf\xfc\xd7\x22\x65\x34\x52\xa1\x2d\xcd\x94\x5d\x8c\x54\xda\x2b\x0f\x3c\xbd\x1b"
+ "\x4d\xc3\xf1\xad\xb2\x23\xae\xb2\x6b\x04\x7c\xd2\x4c\x96\x86\x6f\x97\x9b\x1d\x83\xec\x50\xe2"
+ "\xb4\xae\x30\xcd\xf2\xfd\xb3\x2b\xd8\xa2\x11\xb8\x37\xdc\x94\xed\xcd\x56\xf4\xd1\x43\x77\x19"
+ "\x10\x76\xbf\xc5\x9d\x99\xb7\xdd\x30\x53\xef\xd6\xf0\x2c\x44\x34\xf2\xbd\xd2\x7a"),
+ 89);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -86476,16 +86476,16 @@ class Test_TC_CADMIN_1_5Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -86500,16 +86500,16 @@ class Test_TC_CADMIN_1_5Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -87065,16 +87065,16 @@ class Test_TC_CADMIN_1_9Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 900U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\x06\xc7\x56\xdf\xfc\xd7\x22\x65\x34\x52\xa1\x2d\xcd\x94\x5d\x8c\x54\xda\x2b\x0f\x3c\xbd\x1b\x4d\xc3\xf1"
- "\xad\xb2\x23\xae\xb2\x6b\x04\x7c\xd2\x4c\x96\x86\x6f\x97\x9b\x1d\x83\xec\x50\xe2\xb4\xae\x30\xcd\xf2\xfd"
- "\xb3\x2b\xd8\xa2\x11\xb8\x37\xdc\x94\xed\xcd\x56\xf4\xd1\x43\x77\x19\x10\x76\xbf\xc5\x9d\x99\xb7\xdd\x30"
- "\x53\xef\xd6\xf0\x2c\x44\x34\xf2\xbd\xd2\x7a\xa4\xf9\xce\xa7\x0d\x73\x8e\x4c"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\x06\xc7\x56\xdf\xfc\xd7\x22\x65\x34\x52\xa1\x2d\xcd\x94\x5d\x8c\x54\xda\x2b\x0f\x3c\xbd\x1b\x4d\xc3\xf1"
+ "\xad\xb2\x23\xae\xb2\x6b\x04\x7c\xd2\x4c\x96\x86\x6f\x97\x9b\x1d\x83\xec\x50\xe2\xb4\xae\x30\xcd\xf2\xfd"
+ "\xb3\x2b\xd8\xa2\x11\xb8\x37\xdc\x94\xed\xcd\x56\xf4\xd1\x43\x77\x19\x10\x76\xbf\xc5\x9d\x99\xb7\xdd\x30"
+ "\x53\xef\xd6\xf0\x2c\x44\x34\xf2\xbd\xd2\x7a\xa4\xf9\xce\xa7\x0d\x73\x8e\x4c"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -88101,16 +88101,16 @@ class Test_TC_CADMIN_1_13Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -88138,16 +88138,16 @@ class Test_TC_CADMIN_1_13Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -88178,16 +88178,16 @@ class Test_TC_CADMIN_1_13Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityGamma, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -88215,16 +88215,16 @@ class Test_TC_CADMIN_1_13Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -88239,16 +88239,16 @@ class Test_TC_CADMIN_1_13Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityBeta, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -88569,16 +88569,16 @@ class Test_TC_CADMIN_1_24Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 180U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
@@ -88606,16 +88606,16 @@ class Test_TC_CADMIN_1_24Suite : public TestCommand
chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value;
value.commissioningTimeout = 179U;
value.PAKEVerifier = mPakeVerifier.HasValue()
- ? mPakeVerifier.Value()
- : chip::ByteSpan(
- chip::Uint8::from_const_char(
- "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
- "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
- "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
- "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
- 97);
- value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
- value.iterations = 1000UL;
+ ? mPakeVerifier.Value()
+ : chip::ByteSpan(
+ chip::Uint8::from_const_char(
+ "\xb9\x61\x70\xaa\xe8\x03\x34\x68\x84\x72\x4f\xe9\xa3\xb2\x87\xc3\x03\x30\xc2\xa6\x60\x37\x5d\x17\xbb\x20"
+ "\x5a\x8c\xf1\xae\xcb\x35\x04\x57\xf8\xab\x79\xee\x25\x3a\xb6\xa8\xe4\x6b\xb0\x9e\x54\x3a\xe4\x22\x73\x6d"
+ "\xe5\x01\xe3\xdb\x37\xd4\x41\xfe\x34\x49\x20\xd0\x95\x48\xe4\xc1\x82\x40\x63\x0c\x4f\xf4\x91\x3c\x53\x51"
+ "\x38\x39\xb7\xc0\x7f\xcc\x06\x27\xa1\xb8\x57\x3a\x14\x9f\xcd\x1f\xa4\x66\xcf"),
+ 97);
+ value.discriminator = mDiscriminator.HasValue() ? mDiscriminator.Value() : 3840U;
+ value.iterations = 1000UL;
value.salt = chip::ByteSpan(chip::Uint8::from_const_char("SPAKE2P Key Saltgarbage: not in length on purpose"), 16);
return SendCommand(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id,
AdministratorCommissioning::Commands::OpenCommissioningWindow::Id, value,
diff --git a/zzz_generated/darwin-framework-tool/zap-generated/cluster/Commands.h b/zzz_generated/darwin-framework-tool/zap-generated/cluster/Commands.h
index cc9a85648ea956..b9dd1e684a1676 100644
--- a/zzz_generated/darwin-framework-tool/zap-generated/cluster/Commands.h
+++ b/zzz_generated/darwin-framework-tool/zap-generated/cluster/Commands.h
@@ -82544,6 +82544,7 @@ class SubscribeAttributeElectricalMeasurementClusterRevision : public SubscribeA
| * NullableRangeRestrictedInt8s | 0x4027 |
| * NullableRangeRestrictedInt16u | 0x4028 |
| * NullableRangeRestrictedInt16s | 0x4029 |
+| * WriteOnlyInt8u | 0x402A |
| * GeneratedCommandList | 0xFFF8 |
| * AcceptedCommandList | 0xFFF9 |
| * AttributeList | 0xFFFB |
@@ -93110,6 +93111,113 @@ class SubscribeAttributeTestClusterNullableRangeRestrictedInt16s : public Subscr
}
};
+/*
+ * Attribute WriteOnlyInt8u
+ */
+class ReadTestClusterWriteOnlyInt8u : public ReadAttribute {
+public:
+ ReadTestClusterWriteOnlyInt8u()
+ : ReadAttribute("write-only-int8u")
+ {
+ }
+
+ ~ReadTestClusterWriteOnlyInt8u() {}
+
+ CHIP_ERROR SendCommand(MTRBaseDevice * device, chip::EndpointId endpointId) override
+ {
+ ChipLogProgress(chipTool, "Sending cluster (0xFFF1FC05) ReadAttribute (0x0000402A) on endpoint %u", endpointId);
+
+ dispatch_queue_t callbackQueue = dispatch_queue_create("com.chip.command", DISPATCH_QUEUE_SERIAL);
+ __auto_type * cluster = [[MTRBaseClusterTestCluster alloc] initWithDevice:device
+ endpoint:@(endpointId)
+ queue:callbackQueue];
+ [cluster readAttributeWriteOnlyInt8uWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable error) {
+ NSLog(@"TestCluster.WriteOnlyInt8u response %@", [value description]);
+ if (error != nil) {
+ LogNSError("TestCluster WriteOnlyInt8u read Error", error);
+ }
+ SetCommandExitStatus(error);
+ }];
+ return CHIP_NO_ERROR;
+ }
+};
+
+class WriteTestClusterWriteOnlyInt8u : public WriteAttribute {
+public:
+ WriteTestClusterWriteOnlyInt8u()
+ : WriteAttribute("write-only-int8u")
+ {
+ AddArgument("attr-name", "write-only-int8u");
+ AddArgument("attr-value", 0, UINT8_MAX, &mValue);
+ WriteAttribute::AddArguments();
+ }
+
+ ~WriteTestClusterWriteOnlyInt8u() {}
+
+ CHIP_ERROR SendCommand(MTRBaseDevice * device, chip::EndpointId endpointId) override
+ {
+ ChipLogProgress(chipTool, "Sending cluster (0xFFF1FC05) WriteAttribute (0x0000402A) on endpoint %u", endpointId);
+ dispatch_queue_t callbackQueue = dispatch_queue_create("com.chip.command", DISPATCH_QUEUE_SERIAL);
+ __auto_type * cluster = [[MTRBaseClusterTestCluster alloc] initWithDevice:device
+ endpoint:@(endpointId)
+ queue:callbackQueue];
+ __auto_type * params = [[MTRWriteParams alloc] init];
+ params.timedWriteTimeout
+ = mTimedInteractionTimeoutMs.HasValue() ? [NSNumber numberWithUnsignedShort:mTimedInteractionTimeoutMs.Value()] : nil;
+ params.dataVersion = mDataVersion.HasValue() ? [NSNumber numberWithUnsignedInt:mDataVersion.Value()] : nil;
+ NSNumber * _Nonnull value = [NSNumber numberWithUnsignedChar:mValue];
+
+ [cluster writeAttributeWriteOnlyInt8uWithValue:value
+ params:params
+ completion:^(NSError * _Nullable error) {
+ if (error != nil) {
+ LogNSError("TestCluster WriteOnlyInt8u write Error", error);
+ }
+ SetCommandExitStatus(error);
+ }];
+ return CHIP_NO_ERROR;
+ }
+
+private:
+ uint8_t mValue;
+};
+
+class SubscribeAttributeTestClusterWriteOnlyInt8u : public SubscribeAttribute {
+public:
+ SubscribeAttributeTestClusterWriteOnlyInt8u()
+ : SubscribeAttribute("write-only-int8u")
+ {
+ }
+
+ ~SubscribeAttributeTestClusterWriteOnlyInt8u() {}
+
+ CHIP_ERROR SendCommand(MTRBaseDevice * device, chip::EndpointId endpointId) override
+ {
+ ChipLogProgress(chipTool, "Sending cluster (0xFFF1FC05) ReportAttribute (0x0000402A) on endpoint %u", endpointId);
+ dispatch_queue_t callbackQueue = dispatch_queue_create("com.chip.command", DISPATCH_QUEUE_SERIAL);
+ __auto_type * cluster = [[MTRBaseClusterTestCluster alloc] initWithDevice:device
+ endpoint:@(endpointId)
+ queue:callbackQueue];
+ __auto_type * params = [[MTRSubscribeParams alloc] initWithMinInterval:@(mMinInterval) maxInterval:@(mMaxInterval)];
+ if (mKeepSubscriptions.HasValue()) {
+ params.keepPreviousSubscriptions = mKeepSubscriptions.Value();
+ }
+ if (mFabricFiltered.HasValue()) {
+ params.fabricFiltered = mFabricFiltered.Value();
+ }
+ [cluster subscribeAttributeWriteOnlyInt8uWithParams:params
+ subscriptionEstablished:^() {
+ mSubscriptionEstablished = YES;
+ }
+ reportHandler:^(NSNumber * _Nullable value, NSError * _Nullable error) {
+ NSLog(@"TestCluster.WriteOnlyInt8u response %@", [value description]);
+ SetCommandExitStatus(error);
+ }];
+
+ return CHIP_NO_ERROR;
+ }
+};
+
/*
* Attribute GeneratedCommandList
*/
@@ -96991,6 +97099,9 @@ void registerClusterTestCluster(Commands & commands)
make_unique(), //
make_unique(), //
make_unique(), //
+ make_unique(), //
+ make_unique(), //
+ make_unique(), //
make_unique(), //
make_unique(), //
make_unique(), //