@matter/protocol 0.17.4 → 0.17.5-alpha.0-20260704-9ea70abfa
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/action/client/ClientInteraction.d.ts.map +1 -1
- package/dist/cjs/action/client/ClientInteraction.js +21 -5
- package/dist/cjs/action/client/ClientInteraction.js.map +1 -1
- package/dist/cjs/action/client/InputChunk.d.ts +2 -2
- package/dist/cjs/action/server/AttributeReadResponse.d.ts.map +1 -1
- package/dist/cjs/action/server/AttributeReadResponse.js +20 -2
- package/dist/cjs/action/server/AttributeReadResponse.js.map +1 -1
- package/dist/cjs/advertisement/mdns/MdnsAdvertisement.d.ts.map +1 -1
- package/dist/cjs/advertisement/mdns/MdnsAdvertisement.js +1 -1
- package/dist/cjs/advertisement/mdns/MdnsAdvertisement.js.map +1 -1
- package/dist/cjs/bdx/schema/BdxAcceptMessagesSchema.d.ts +2 -2
- package/dist/cjs/bdx/schema/BdxAcceptMessagesSchema.d.ts.map +1 -1
- package/dist/cjs/bdx/schema/BdxBlockMessagesSchema.d.ts +6 -6
- package/dist/cjs/bdx/schema/BdxBlockMessagesSchema.d.ts.map +1 -1
- package/dist/cjs/bdx/schema/BdxInitMessagesSchema.d.ts +3 -3
- package/dist/cjs/bdx/schema/BdxInitMessagesSchema.d.ts.map +1 -1
- package/dist/cjs/ble/BleConsts.d.ts +1 -1
- package/dist/cjs/ble/BleConsts.d.ts.map +1 -1
- package/dist/cjs/certificate/kinds/Icac.d.ts +1 -1
- package/dist/cjs/certificate/kinds/Icac.js +1 -1
- package/dist/cjs/certificate/kinds/Noc.d.ts +1 -1
- package/dist/cjs/certificate/kinds/Noc.js +1 -1
- package/dist/cjs/certificate/kinds/OperationalBase.d.ts +1 -1
- package/dist/cjs/certificate/kinds/OperationalBase.js +1 -1
- package/dist/cjs/certificate/kinds/Rcac.d.ts +1 -1
- package/dist/cjs/certificate/kinds/Rcac.js +1 -1
- package/dist/cjs/certificate/kinds/Vvsc.d.ts +1 -1
- package/dist/cjs/certificate/kinds/Vvsc.js +1 -1
- package/dist/cjs/certificate/kinds/common.d.ts +1 -1
- package/dist/cjs/certificate/kinds/definitions/asn.d.ts +1 -1
- package/dist/cjs/certificate/kinds/definitions/operational.d.ts +1 -1
- package/dist/cjs/codec/MessageCodec.d.ts +20 -0
- package/dist/cjs/codec/MessageCodec.d.ts.map +1 -1
- package/dist/cjs/codec/MessageCodec.js +68 -14
- package/dist/cjs/codec/MessageCodec.js.map +1 -1
- package/dist/cjs/codec/MessagePrivacy.d.ts +2 -1
- package/dist/cjs/codec/MessagePrivacy.d.ts.map +1 -1
- package/dist/cjs/codec/MessagePrivacy.js.map +1 -1
- package/dist/cjs/common/OperationalCredentialsTypes.d.ts +2 -2
- package/dist/cjs/groups/FabricGroups.d.ts +5 -0
- package/dist/cjs/groups/FabricGroups.d.ts.map +1 -1
- package/dist/cjs/groups/FabricGroups.js +8 -0
- package/dist/cjs/groups/FabricGroups.js.map +1 -1
- package/dist/cjs/groups/Groups.d.ts +8 -0
- package/dist/cjs/groups/Groups.d.ts.map +1 -1
- package/dist/cjs/groups/Groups.js +16 -1
- package/dist/cjs/groups/Groups.js.map +1 -1
- package/dist/cjs/groups/index.d.ts +1 -0
- package/dist/cjs/groups/index.d.ts.map +1 -1
- package/dist/cjs/groups/index.js +1 -0
- package/dist/cjs/groups/index.js.map +1 -1
- package/dist/cjs/interaction/AttributeDataEncoder.d.ts +1 -0
- package/dist/cjs/interaction/AttributeDataEncoder.d.ts.map +1 -1
- package/dist/cjs/interaction/FabricAccessControl.d.ts +3 -2
- package/dist/cjs/interaction/FabricAccessControl.d.ts.map +1 -1
- package/dist/cjs/interaction/FabricAccessControl.js +7 -0
- package/dist/cjs/interaction/FabricAccessControl.js.map +1 -1
- package/dist/cjs/interaction/InteractionMessenger.d.ts +3 -0
- package/dist/cjs/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/cjs/ota/OtaImageHeader.d.ts +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.js +10 -10
- package/dist/cjs/peer/Peer.d.ts +4 -0
- package/dist/cjs/peer/Peer.d.ts.map +1 -1
- package/dist/cjs/peer/PeerExchangeProvider.d.ts +2 -0
- package/dist/cjs/peer/PeerExchangeProvider.d.ts.map +1 -1
- package/dist/cjs/peer/PeerExchangeProvider.js +6 -0
- package/dist/cjs/peer/PeerExchangeProvider.js.map +1 -1
- package/dist/cjs/protocol/ExchangeManager.d.ts +1 -1
- package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
- package/dist/cjs/protocol/ExchangeManager.js +8 -2
- package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
- package/dist/cjs/protocol/ExchangeProvider.d.ts +6 -0
- package/dist/cjs/protocol/ExchangeProvider.d.ts.map +1 -1
- package/dist/cjs/protocol/ExchangeProvider.js +10 -0
- package/dist/cjs/protocol/ExchangeProvider.js.map +1 -1
- package/dist/cjs/protocol/MRP.d.ts +2 -2
- package/dist/cjs/protocol/MessageChannel.d.ts +1 -1
- package/dist/cjs/protocol/MessageChannel.js +1 -1
- package/dist/cjs/protocol/MessageExchange.d.ts +10 -0
- package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
- package/dist/cjs/protocol/MessageExchange.js +24 -2
- package/dist/cjs/protocol/MessageExchange.js.map +1 -1
- package/dist/cjs/session/GroupSession.d.ts +12 -1
- package/dist/cjs/session/GroupSession.d.ts.map +1 -1
- package/dist/cjs/session/GroupSession.js +23 -3
- package/dist/cjs/session/GroupSession.js.map +1 -1
- package/dist/cjs/session/SessionManager.d.ts +29 -2
- package/dist/cjs/session/SessionManager.d.ts.map +1 -1
- package/dist/cjs/session/SessionManager.js +36 -10
- package/dist/cjs/session/SessionManager.js.map +1 -1
- package/dist/cjs/session/case/CaseMessages.d.ts +7 -7
- package/dist/cjs/session/pase/PaseMessages.d.ts +6 -6
- package/dist/esm/action/client/ClientInteraction.d.ts.map +1 -1
- package/dist/esm/action/client/ClientInteraction.js +21 -5
- package/dist/esm/action/client/ClientInteraction.js.map +1 -1
- package/dist/esm/action/client/InputChunk.d.ts +2 -2
- package/dist/esm/action/server/AttributeReadResponse.d.ts.map +1 -1
- package/dist/esm/action/server/AttributeReadResponse.js +20 -2
- package/dist/esm/action/server/AttributeReadResponse.js.map +1 -1
- package/dist/esm/advertisement/mdns/MdnsAdvertisement.d.ts.map +1 -1
- package/dist/esm/advertisement/mdns/MdnsAdvertisement.js +1 -1
- package/dist/esm/advertisement/mdns/MdnsAdvertisement.js.map +1 -1
- package/dist/esm/bdx/schema/BdxAcceptMessagesSchema.d.ts +2 -2
- package/dist/esm/bdx/schema/BdxAcceptMessagesSchema.d.ts.map +1 -1
- package/dist/esm/bdx/schema/BdxBlockMessagesSchema.d.ts +6 -6
- package/dist/esm/bdx/schema/BdxBlockMessagesSchema.d.ts.map +1 -1
- package/dist/esm/bdx/schema/BdxInitMessagesSchema.d.ts +3 -3
- package/dist/esm/bdx/schema/BdxInitMessagesSchema.d.ts.map +1 -1
- package/dist/esm/ble/BleConsts.d.ts +1 -1
- package/dist/esm/ble/BleConsts.d.ts.map +1 -1
- package/dist/esm/certificate/kinds/Icac.d.ts +1 -1
- package/dist/esm/certificate/kinds/Icac.js +1 -1
- package/dist/esm/certificate/kinds/Noc.d.ts +1 -1
- package/dist/esm/certificate/kinds/Noc.js +1 -1
- package/dist/esm/certificate/kinds/OperationalBase.d.ts +1 -1
- package/dist/esm/certificate/kinds/OperationalBase.js +1 -1
- package/dist/esm/certificate/kinds/Rcac.d.ts +1 -1
- package/dist/esm/certificate/kinds/Rcac.js +1 -1
- package/dist/esm/certificate/kinds/Vvsc.d.ts +1 -1
- package/dist/esm/certificate/kinds/Vvsc.js +1 -1
- package/dist/esm/certificate/kinds/common.d.ts +1 -1
- package/dist/esm/certificate/kinds/definitions/asn.d.ts +1 -1
- package/dist/esm/certificate/kinds/definitions/operational.d.ts +1 -1
- package/dist/esm/codec/MessageCodec.d.ts +20 -0
- package/dist/esm/codec/MessageCodec.d.ts.map +1 -1
- package/dist/esm/codec/MessageCodec.js +68 -14
- package/dist/esm/codec/MessageCodec.js.map +1 -1
- package/dist/esm/codec/MessagePrivacy.d.ts +2 -1
- package/dist/esm/codec/MessagePrivacy.d.ts.map +1 -1
- package/dist/esm/codec/MessagePrivacy.js.map +1 -1
- package/dist/esm/common/OperationalCredentialsTypes.d.ts +2 -2
- package/dist/esm/groups/FabricGroups.d.ts +5 -0
- package/dist/esm/groups/FabricGroups.d.ts.map +1 -1
- package/dist/esm/groups/FabricGroups.js +8 -0
- package/dist/esm/groups/FabricGroups.js.map +1 -1
- package/dist/esm/groups/Groups.d.ts +8 -0
- package/dist/esm/groups/Groups.d.ts.map +1 -1
- package/dist/esm/groups/Groups.js +16 -1
- package/dist/esm/groups/Groups.js.map +1 -1
- package/dist/esm/groups/index.d.ts +1 -0
- package/dist/esm/groups/index.d.ts.map +1 -1
- package/dist/esm/groups/index.js +1 -0
- package/dist/esm/groups/index.js.map +1 -1
- package/dist/esm/interaction/AttributeDataEncoder.d.ts +1 -0
- package/dist/esm/interaction/AttributeDataEncoder.d.ts.map +1 -1
- package/dist/esm/interaction/FabricAccessControl.d.ts +3 -2
- package/dist/esm/interaction/FabricAccessControl.d.ts.map +1 -1
- package/dist/esm/interaction/FabricAccessControl.js +8 -0
- package/dist/esm/interaction/FabricAccessControl.js.map +1 -1
- package/dist/esm/interaction/InteractionMessenger.d.ts +3 -0
- package/dist/esm/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/esm/ota/OtaImageHeader.d.ts +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.js +10 -10
- package/dist/esm/peer/Peer.d.ts +4 -0
- package/dist/esm/peer/Peer.d.ts.map +1 -1
- package/dist/esm/peer/PeerExchangeProvider.d.ts +2 -0
- package/dist/esm/peer/PeerExchangeProvider.d.ts.map +1 -1
- package/dist/esm/peer/PeerExchangeProvider.js +6 -0
- package/dist/esm/peer/PeerExchangeProvider.js.map +1 -1
- package/dist/esm/protocol/ExchangeManager.d.ts +1 -1
- package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
- package/dist/esm/protocol/ExchangeManager.js +9 -3
- package/dist/esm/protocol/ExchangeManager.js.map +1 -1
- package/dist/esm/protocol/ExchangeProvider.d.ts +6 -0
- package/dist/esm/protocol/ExchangeProvider.d.ts.map +1 -1
- package/dist/esm/protocol/ExchangeProvider.js +10 -0
- package/dist/esm/protocol/ExchangeProvider.js.map +1 -1
- package/dist/esm/protocol/MRP.d.ts +2 -2
- package/dist/esm/protocol/MessageChannel.d.ts +1 -1
- package/dist/esm/protocol/MessageChannel.js +1 -1
- package/dist/esm/protocol/MessageExchange.d.ts +10 -0
- package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
- package/dist/esm/protocol/MessageExchange.js +24 -2
- package/dist/esm/protocol/MessageExchange.js.map +1 -1
- package/dist/esm/session/GroupSession.d.ts +12 -1
- package/dist/esm/session/GroupSession.d.ts.map +1 -1
- package/dist/esm/session/GroupSession.js +23 -3
- package/dist/esm/session/GroupSession.js.map +1 -1
- package/dist/esm/session/SessionManager.d.ts +29 -2
- package/dist/esm/session/SessionManager.d.ts.map +1 -1
- package/dist/esm/session/SessionManager.js +38 -11
- package/dist/esm/session/SessionManager.js.map +1 -1
- package/dist/esm/session/case/CaseMessages.d.ts +7 -7
- package/dist/esm/session/pase/PaseMessages.d.ts +6 -6
- package/package.json +5 -5
- package/src/action/client/ClientInteraction.ts +27 -5
- package/src/action/client/InputChunk.ts +2 -2
- package/src/action/server/AttributeReadResponse.ts +30 -2
- package/src/advertisement/mdns/MdnsAdvertisement.ts +2 -1
- package/src/bdx/schema/BdxAcceptMessagesSchema.ts +2 -2
- package/src/bdx/schema/BdxBlockMessagesSchema.ts +6 -6
- package/src/bdx/schema/BdxInitMessagesSchema.ts +3 -3
- package/src/ble/BleConsts.ts +1 -1
- package/src/certificate/kinds/Icac.ts +1 -1
- package/src/certificate/kinds/Noc.ts +1 -1
- package/src/certificate/kinds/OperationalBase.ts +1 -1
- package/src/certificate/kinds/Rcac.ts +1 -1
- package/src/certificate/kinds/Vvsc.ts +1 -1
- package/src/certificate/kinds/common.ts +1 -1
- package/src/certificate/kinds/definitions/asn.ts +1 -1
- package/src/certificate/kinds/definitions/operational.ts +1 -1
- package/src/codec/MessageCodec.ts +88 -14
- package/src/codec/MessagePrivacy.ts +6 -2
- package/src/common/OperationalCredentialsTypes.ts +2 -2
- package/src/groups/FabricGroups.ts +11 -1
- package/src/groups/Groups.ts +24 -2
- package/src/groups/KeySets.ts +1 -1
- package/src/groups/index.ts +1 -0
- package/src/interaction/FabricAccessControl.ts +16 -3
- package/src/ota/OtaImageHeader.ts +1 -1
- package/src/peer/ControllerCommissioningFlow.ts +11 -11
- package/src/peer/PeerExchangeProvider.ts +8 -0
- package/src/protocol/ExchangeManager.ts +14 -3
- package/src/protocol/ExchangeProvider.ts +11 -0
- package/src/protocol/MRP.ts +2 -2
- package/src/protocol/MessageChannel.ts +1 -1
- package/src/protocol/MessageExchange.ts +28 -4
- package/src/session/GroupSession.ts +26 -2
- package/src/session/SessionManager.ts +65 -13
- package/src/session/case/CaseMessages.ts +7 -7
- package/src/session/pase/PaseMessages.ts +6 -6
|
@@ -18,7 +18,9 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
var GroupSession_exports = {};
|
|
20
20
|
__export(GroupSession_exports, {
|
|
21
|
-
GroupSession: () => GroupSession
|
|
21
|
+
GroupSession: () => GroupSession,
|
|
22
|
+
GroupSessionDecodeError: () => GroupSessionDecodeError,
|
|
23
|
+
GroupSessionNoKeyError: () => GroupSessionNoKeyError
|
|
22
24
|
});
|
|
23
25
|
module.exports = __toCommonJS(GroupSession_exports);
|
|
24
26
|
var import_MessageCodec = require("#codec/MessageCodec.js");
|
|
@@ -35,6 +37,16 @@ var import_Session = require("./Session.js");
|
|
|
35
37
|
* Copyright 2022-2023 Project CHIP Authors
|
|
36
38
|
* SPDX-License-Identifier: Apache-2.0
|
|
37
39
|
*/
|
|
40
|
+
class GroupSessionNoKeyError extends import_general.MatterFlowError {
|
|
41
|
+
constructor(message = "No key candidate found for group session decryption") {
|
|
42
|
+
super(message);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
class GroupSessionDecodeError extends import_general.MatterFlowError {
|
|
46
|
+
constructor(message = "Failed to decode group message with any key candidate") {
|
|
47
|
+
super(message);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
38
50
|
const logger = import_general.Logger.get("SecureGroupSession");
|
|
39
51
|
class GroupSession extends import_SecureSession.SecureSession {
|
|
40
52
|
#id;
|
|
@@ -42,6 +54,7 @@ class GroupSession extends import_SecureSession.SecureSession {
|
|
|
42
54
|
#peerNodeId;
|
|
43
55
|
#operationalGroupKey;
|
|
44
56
|
#operationalPrivacyKey;
|
|
57
|
+
#multicastAddress;
|
|
45
58
|
supportsMRP = false;
|
|
46
59
|
closingAfterExchangeFinished = false;
|
|
47
60
|
// Group sessions do not close after exchange finished, they are long-lived
|
|
@@ -55,6 +68,7 @@ class GroupSession extends import_SecureSession.SecureSession {
|
|
|
55
68
|
id,
|
|
56
69
|
peerNodeId,
|
|
57
70
|
keySetId,
|
|
71
|
+
multicastAddress,
|
|
58
72
|
messageCounter
|
|
59
73
|
} = config;
|
|
60
74
|
super({
|
|
@@ -69,10 +83,15 @@ class GroupSession extends import_SecureSession.SecureSession {
|
|
|
69
83
|
this.keySetId = keySetId;
|
|
70
84
|
this.#operationalGroupKey = operationalGroupKey;
|
|
71
85
|
this.#operationalPrivacyKey = operationalPrivacyKey;
|
|
86
|
+
this.#multicastAddress = multicastAddress;
|
|
72
87
|
manager?.registerGroupSession(this);
|
|
73
88
|
fabric.addSession(this);
|
|
74
89
|
logger.debug(this.via, `Created secure GROUP session for fabric index ${fabric.fabricIndex}`);
|
|
75
90
|
}
|
|
91
|
+
/** IPv6 multicast destination address this group session sends to. */
|
|
92
|
+
get multicastAddress() {
|
|
93
|
+
return this.#multicastAddress;
|
|
94
|
+
}
|
|
76
95
|
/**
|
|
77
96
|
* Create an outbound group session.
|
|
78
97
|
*/
|
|
@@ -97,6 +116,7 @@ class GroupSession extends import_SecureSession.SecureSession {
|
|
|
97
116
|
peerNodeId: groupNodeId,
|
|
98
117
|
operationalGroupKey,
|
|
99
118
|
operationalPrivacyKey: import_general.Bytes.of(await import_MessagePrivacy.MessagePrivacy.deriveKey(fabric.crypto, operationalGroupKey)),
|
|
119
|
+
multicastAddress,
|
|
100
120
|
messageCounter
|
|
101
121
|
});
|
|
102
122
|
}
|
|
@@ -213,7 +233,7 @@ class GroupSession extends import_SecureSession.SecureSession {
|
|
|
213
233
|
}
|
|
214
234
|
}
|
|
215
235
|
if (keys.length === 0) {
|
|
216
|
-
throw new
|
|
236
|
+
throw new GroupSessionNoKeyError();
|
|
217
237
|
}
|
|
218
238
|
const messageFlags = import_general.Bytes.of(aad)[0];
|
|
219
239
|
const mic = import_general.Bytes.of(applicationPayload).slice(-import_general.CRYPTO_AEAD_MIC_LENGTH_BYTES);
|
|
@@ -275,7 +295,7 @@ class GroupSession extends import_SecureSession.SecureSession {
|
|
|
275
295
|
}
|
|
276
296
|
}
|
|
277
297
|
if (!found || !message || !key || keySetId === void 0 || !fabric || sourceNodeId === void 0) {
|
|
278
|
-
throw new
|
|
298
|
+
throw new GroupSessionDecodeError();
|
|
279
299
|
}
|
|
280
300
|
if (message.payloadHeader.hasSecuredExtension) {
|
|
281
301
|
logger.info(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/session/GroupSession.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,0BAA0F;AAC1F,4BAA+B;AAC/B,kBAAqB;AAGrB,gCAAoD;AACpD,yBAA4B;AAE5B,qBAcO;AACP,mBAA6C;AAC7C,2BAA8B;AAC9B,qBAAwB;AA/BxB;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,0BAA0F;AAC1F,4BAA+B;AAC/B,kBAAqB;AAGrB,gCAAoD;AACpD,yBAA4B;AAE5B,qBAcO;AACP,mBAA6C;AAC7C,2BAA8B;AAC9B,qBAAwB;AA/BxB;AAAA;AAAA;AAAA;AAAA;AAmCO,MAAM,+BAA+B,+BAAgB;AAAA,EACxD,YAAY,UAAU,uDAAuD;AACzE,UAAM,OAAO;AAAA,EACjB;AACJ;AAGO,MAAM,gCAAgC,+BAAgB;AAAA,EACzD,YAAY,UAAU,yDAAyD;AAC3E,UAAM,OAAO;AAAA,EACjB;AACJ;AAEA,MAAM,SAAS,sBAAO,IAAI,oBAAoB;AAGvC,MAAM,qBAAqB,mCAAc;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd,+BAA+B;AAAA;AAAA,EAE/B;AAAA,EAET,YAAY,QAA6B;AACrC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,IAAI;AACJ,UAAM;AAAA,MACF,GAAG;AAAA,MACH,oBAAoB;AAAA;AAAA,MACpB;AAAA,IACJ,CAAC;AACD,SAAK,MAAM;AACX,SAAK,UAAU;AACf,SAAK,cAAc;AACnB,SAAK,WAAW;AAChB,SAAK,uBAAuB;AAC5B,SAAK,yBAAyB;AAC9B,SAAK,oBAAoB;AAEzB,aAAS,qBAAqB,IAAI;AAClC,WAAO,WAAW,IAAI;AAEtB,WAAO,MAAM,KAAK,KAAK,iDAAiD,OAAO,WAAW,EAAE;AAAA,EAChG;AAAA;AAAA,EAGA,IAAI,mBAA2B;AAC3B,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,aAAa,OAAO,SASjB;AACC,UAAM,EAAE,SAAS,YAAY,IAAI,QAAQ,UAAU,aAAa,qBAAqB,eAAe,IAAI;AAExG,UAAM,UAAU,qBAAQ,WAAW,WAAW;AAC9C,UAAM,mBAAmB,OAAO,OAAO,oBAAoB,OAAO;AAElE,UAAM,uBAAuB,WAAW,aAAa,2BAAY,KAAK,gBAAgB;AACtF,QAAI,yBAAyB,QAAW;AAEpC,YAAM,IAAI,8DAAoC,gCAAgC;AAAA,IAClF;AAEA,UAAM,UAAU,MAAM,qBAAqB,YAAY;AAAA,MACnD,IAAI;AAAA,MACJ,MAAM;AAAA,IACV,CAAC;AAED,WAAO,IAAI,aAAa;AAAA,MACpB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,YAAY;AAAA,MACZ;AAAA,MACA,uBAAuB,qBAAM,GAAG,MAAM,qCAAe,UAAU,OAAO,QAAQ,mBAAmB,CAAC;AAAA,MAClG;AAAA,MACA;AAAA,IACJ,CAAC;AAAA,EACL;AAAA,EAEA,IAAa,OAAO;AAChB,WAAO,gCAAY;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAeA,IAAI,SAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,KAAK;AACL,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,gBAAwB;AACxB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,MAAM;AACN,WAAO,0BAAW,IAAI,GAAG,iBAAK,OAAO,SAAS,mBAAI,KAAK,KAAK,EAAE,CAAC,EAAE;AAAA,EACrE;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA,EAEA,IAAI,aAAa;AACb,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,mBAA2B;AAC3B,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,cAAc;AACd,eAAO,gCAAY;AAAA,MACf,aAAa,KAAK,SAAS,eAAe,yBAAY;AAAA,MACtD,QAAQ,KAAK;AAAA,IACjB,CAAC;AAAA,EACL;AAAA,EAEA,WAAW,SAA4B;AACnC,QAAI,YAAY,UAAa,QAAQ,aAAa,gBAAgB,QAAW;AACzE,YAAM,IAAI,mCAAoB,kDAAkD;AAAA,IACpF;AACA,WAAO,KAAK,OAAO,OAAO,oBAAgB,sBAAQ,QAAQ,aAAa,WAAW,GAAG,KAAK,QAAQ;AAAA,EACtG;AAAA,EAES,eAAe,kBAA2B;AAAA,EAEnD;AAAA,EAES,qBAAqB,gBAAwB,cAAsB,gBAAuB;AAC/F,QAAI,iBAAiB,UAAa,mBAAmB,QAAW;AAC5D,YAAM,IAAI,6BAAc,mEAAmE;AAAA,IAC/F;AACA,UAAM,iBAAiB,KAAK,QAAQ,OAAO,UAAU,kBAAkB,cAAc,cAAc;AACnG,mBAAe,qBAAqB,cAAc;AAAA,EACtD;AAAA,EAEA,OAAO,SAA0B;AAC7B,YAAQ,aAAa,YAAY,KAAK;AACtC,UAAM,EAAE,QAAQ,mBAAmB,IAAI,iCAAa,cAAc,OAAO;AACzE,QAAI,OAAO,gBAAgB,QAAW;AAElC,YAAM,IAAI,mCAAoB,+CAA+C;AAAA,IACjF;AAEA,UAAM,cAAc,iCAAa,mBAAmB,QAAQ,YAAY;AACxE,UAAM,gBAAgB,YAAY,CAAC;AACnC,UAAM,QAAQ,uBAAQ,cAAc,eAAe,OAAO,WAAW,KAAK,QAAQ,MAAM;AACxF,UAAM,aAAa,KAAK,QAAQ,OAAO;AAAA,MACnC,KAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACJ;AAEA,QAAI,CAAC,QAAQ,aAAa,wBAAwB;AAC9C,aAAO,EAAE,QAAQ,oBAAoB,WAAW;AAAA,IACpD;AAEA,QAAI,KAAK,2BAA2B,QAAW;AAC3C,YAAM,IAAI,6BAAc,mDAAmD;AAAA,IAC/E;AACA,UAAM,MAAM,qBAAM,GAAG,UAAU,EAAE,MAAM,CAAC,2CAA4B;AACpE,UAAM,eAAe,qCAAe,WAAW,OAAO,WAAW,GAAG;AACpE,UAAM,SAAS,qBAAM,GAAG,WAAW,EAAE,MAAM,CAAC;AAC5C,UAAM,aAAa,qCAAe;AAAA,MAC9B,KAAK,QAAQ;AAAA,MACb,KAAK;AAAA,MACL;AAAA,MACA;AAAA,IACJ;AACA,UAAM,mBAAmB,qBAAM,OAAO,qBAAM,GAAG,WAAW,EAAE,MAAM,GAAG,CAAC,GAAG,UAAU;AACnF,WAAO,EAAE,QAAQ,oBAAoB,YAAY,aAAa,iBAAiB;AAAA,EACnF;AAAA,EAEA,SAAyB;AACrB,UAAM,IAAI,6BAAc,mDAAmD;AAAA,EAC/E;AAAA,EAEA,OAAO,OACH,SACA,EAAE,QAAQ,oBAAoB,kBAAkB,cAAc,GAC9D,KASF;AACE,QAAI,OAAO,sBAAsB;AAC7B,aAAO;AAAA,QACH,kDAAkD,mBAAmB,qBAAM,MAAM,gBAAgB,IAAI,MAAS;AAAA,MAClH;AAAA,IACJ;AAEA,UAAM,YAAY,OAAO;AACzB,UAAM,OAAO,IAAI,MAA4E;AAC7F,eAAWA,WAAU,SAAS;AAC1B,YAAM,WAAWA,QAAO,OAAO,SAAS,IAAI,SAAS;AACrD,UAAI,UAAU,QAAQ;AAClB,mBAAW,WAAW,UAAU;AAC5B,eAAK,KAAK,EAAE,GAAG,SAAS,QAAAA,QAAO,CAAC;AAAA,QACpC;AAAA,MACJ;AAAA,IACJ;AACA,QAAI,KAAK,WAAW,GAAG;AACnB,YAAM,IAAI,uBAAuB;AAAA,IACrC;AAEA,UAAM,eAAe,qBAAM,GAAG,GAAG,EAAE,CAAC;AACpC,UAAM,MAAM,qBAAM,GAAG,kBAAkB,EAAE,MAAM,CAAC,2CAA4B;AAE5E,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI,QAAQ;AACZ,eAAW,aAAa,MAAM;AAC1B,UAAI;AACA,YAAI,eAAe;AACnB,YAAI,aAAa;AACjB,YAAI,OAAO,wBAAwB;AAC/B,cAAI,kBAAkB,UAAa,UAAU,eAAe,QAAW;AACnE,mBAAO,MAAM,8CAA8C,UAAU,QAAQ,YAAY;AACzF;AAAA,UACJ;AACA,gBAAM,eAAe,qCAAe,WAAW,WAAW,GAAG;AAC7D,gBAAM,eAAe,qCAAe;AAAA,YAChC,UAAU,OAAO;AAAA,YACjB,UAAU;AAAA,YACV;AAAA,YACA;AAAA,UACJ;AACA,yBAAe;AAAA,YACX,GAAG;AAAA,YACH,GAAG,iCAAa,6BAA6B,cAAc,YAAY;AAAA,UAC3E;AACA,uBAAa,qBAAM,OAAO,qBAAM,GAAG,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,YAAY;AAAA,QACrE;AAEA,YAAI,aAAa,iBAAiB,QAAW;AACzC,gBAAM,IAAI,mCAAoB,qDAAqD;AAAA,QACvF;AACA,cAAM,QAAQ,uBAAQ;AAAA,UAClB,aAAa;AAAA,UACb,aAAa;AAAA,UACb,aAAa;AAAA,QACjB;AACA,kBAAU,iCAAa,cAAc;AAAA,UACjC,QAAQ;AAAA,UACR,oBAAoB,UAAU,OAAO,OAAO;AAAA,YACxC,UAAU;AAAA,YACV;AAAA,YACA;AAAA,YACA;AAAA,UACJ;AAAA,QACJ,CAAC;AACD,cAAM,UAAU;AAChB,qBAAa,UAAU;AACvB,mBAAW,UAAU;AACrB,iBAAS,UAAU;AACnB,uBAAe,aAAa;AAC5B,gBAAQ;AACR;AAAA,MACJ,SAAS,OAAO;AAGZ,0CAAmB,OAAO,KAAK;AAAA,MACnC;AAAA,IACJ;AACA,QAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,aAAa,UAAa,CAAC,UAAU,iBAAiB,QAAW;AAC/F,YAAM,IAAI,wBAAwB;AAAA,IACtC;AAEA,QAAI,QAAQ,cAAc,qBAAqB;AAC3C,aAAO;AAAA,QACH,kDAAkD,QAAQ,oBAAoB,qBAAM,MAAM,QAAQ,iBAAiB,IAAI,MAAS;AAAA,MACpI;AAAA,IACJ;AAEA,WAAO,EAAE,SAAS,KAAK,YAAY,WAAW,cAAc,UAAU,OAAO;AAAA,EACjF;AAAA,EAEA,MAAe,QAAQ;AACnB,SAAK,SAAS,mBAAmB,IAAI;AACrC,UAAM,MAAM,MAAM;AAAA,EACtB;AACJ;AAAA,CAEO,CAAUC,kBAAV;AAYI,WAAS,OAAO,SAAmB,WAAqD;AAC3F,QAAI,CAAC,GAAG,OAAO,GAAG;AACd,YAAM,IAAI,+BAAgB,aAAa,qCAAqC;AAAA,IAChF;AAAA,EACJ;AAJO,EAAAA,cAAS;AAMT,WAAS,GAAG,SAA4C;AAC3D,WAAO,SAAS,SAAS,gCAAY;AAAA,EACzC;AAFO,EAAAA,cAAS;AAAA,GAlBH;",
|
|
5
5
|
"names": ["fabric", "GroupSession"]
|
|
6
6
|
}
|
|
@@ -9,7 +9,8 @@ import type { Subscription } from "#interaction/Subscription.js";
|
|
|
9
9
|
import { PeerAddress } from "#peer/PeerAddress.js";
|
|
10
10
|
import { GroupSession } from "#session/GroupSession.js";
|
|
11
11
|
import { BasicSet, Bytes, Channel, ClosedError, Construction, Crypto, Duration, Environment, Environmental, Observable, StorageContext, Timestamp, Transport } from "@matter/general";
|
|
12
|
-
import { CaseAuthenticatedTag, FabricId, FabricIndex, NodeId } from "@matter/types";
|
|
12
|
+
import { CaseAuthenticatedTag, ClusterId, EndpointNumber, FabricId, FabricIndex, GroupId, NodeId } from "@matter/types";
|
|
13
|
+
import { Groupcast } from "@matter/types/clusters/groupcast";
|
|
13
14
|
import type { ExposedFabricInformation, Fabric } from "../fabric/Fabric.js";
|
|
14
15
|
import { PersistedMessageCounter } from "../protocol/MessageCounter.js";
|
|
15
16
|
import { NodeSession } from "./NodeSession.js";
|
|
@@ -41,6 +42,22 @@ export interface ActiveSessionInformation {
|
|
|
41
42
|
lastActiveTimestamp?: number;
|
|
42
43
|
numberOfActiveSubscriptions: number;
|
|
43
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* Metadata about a received group message, emitted via {@link SessionManager.onGroupMessage} for Groupcast testing.
|
|
47
|
+
* Uses {@link Groupcast.GroupcastTestResult} directly so consumers can forward the value without mapping.
|
|
48
|
+
*/
|
|
49
|
+
export interface GroupMessageEventInfo {
|
|
50
|
+
result: Groupcast.GroupcastTestResult;
|
|
51
|
+
fabric?: Fabric;
|
|
52
|
+
groupId?: GroupId;
|
|
53
|
+
sourceIp?: string;
|
|
54
|
+
destIp?: string;
|
|
55
|
+
endpointId?: EndpointNumber;
|
|
56
|
+
clusterId?: ClusterId;
|
|
57
|
+
elementId?: number;
|
|
58
|
+
/** Whether the ACL granted access for the dispatched command (only set for Success). */
|
|
59
|
+
accessAllowed?: boolean;
|
|
60
|
+
}
|
|
44
61
|
/**
|
|
45
62
|
* Interfaces {@link SessionManager} with other components.
|
|
46
63
|
*/
|
|
@@ -79,7 +96,10 @@ export declare class SessionManager {
|
|
|
79
96
|
get construction(): Construction<SessionManager>;
|
|
80
97
|
get context(): SessionManagerContext;
|
|
81
98
|
get crypto(): Crypto;
|
|
82
|
-
/**
|
|
99
|
+
/**
|
|
100
|
+
* The single node-global Group Encrypted Data Message Counter shared by all group sessions.
|
|
101
|
+
* @see {@link MatterSpecification.v16.Core} § 4.6.1.3
|
|
102
|
+
*/
|
|
83
103
|
get groupDataMessageCounter(): PersistedMessageCounter;
|
|
84
104
|
/**
|
|
85
105
|
* Active secure sessions.
|
|
@@ -109,6 +129,11 @@ export declare class SessionManager {
|
|
|
109
129
|
* Emits when resubmission is necessary due to timeout or network error.
|
|
110
130
|
*/
|
|
111
131
|
get retry(): Observable<[session: Session, number: number], void>;
|
|
132
|
+
/**
|
|
133
|
+
* Emits for each received group message (success or failure). Observers remain inactive until at least one
|
|
134
|
+
* listener attaches, so fabrics not under test incur no emission overhead.
|
|
135
|
+
*/
|
|
136
|
+
get onGroupMessage(): Observable<[info: GroupMessageEventInfo], void>;
|
|
112
137
|
/**
|
|
113
138
|
* Convenience function for accessing a fabric by address.
|
|
114
139
|
*/
|
|
@@ -174,6 +199,8 @@ export declare class SessionManager {
|
|
|
174
199
|
message: import("#codec/MessageCodec.js").DecodedMessage;
|
|
175
200
|
key: AllowSharedBufferSource;
|
|
176
201
|
};
|
|
202
|
+
/** Report a group message event (used by ExchangeManager for replay and InteractionServer for dispatch). */
|
|
203
|
+
emitGroupMessage(info: GroupMessageEventInfo): void;
|
|
177
204
|
registerGroupSession(session: GroupSession): void;
|
|
178
205
|
removeGroupSession(session: GroupSession): void;
|
|
179
206
|
findResumptionRecordById(resumptionId: Bytes): ResumptionRecord | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../../src/session/SessionManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AAInE,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../../src/session/SessionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,7 @@ var import_errors = require("#protocol/errors.js");
|
|
|
30
30
|
var import_GroupSession = require("#session/GroupSession.js");
|
|
31
31
|
var import_general = require("@matter/general");
|
|
32
32
|
var import_types = require("@matter/types");
|
|
33
|
+
var import_groupcast = require("@matter/types/clusters/groupcast");
|
|
33
34
|
var import_MessageCounter = require("../protocol/MessageCounter.js");
|
|
34
35
|
var import_NodeSession = require("./NodeSession.js");
|
|
35
36
|
var import_SecureSession = require("./SecureSession.js");
|
|
@@ -78,6 +79,7 @@ class SessionManager {
|
|
|
78
79
|
#idUpperBound = ID_SPACE_UPPER_BOUND;
|
|
79
80
|
#subscriptionsChanged = (0, import_general.Observable)();
|
|
80
81
|
#retry = (0, import_general.Observable)();
|
|
82
|
+
#onGroupMessage = (0, import_general.Observable)();
|
|
81
83
|
constructor(context) {
|
|
82
84
|
this.#context = context;
|
|
83
85
|
const {
|
|
@@ -123,7 +125,10 @@ class SessionManager {
|
|
|
123
125
|
get crypto() {
|
|
124
126
|
return this.#context.fabrics.crypto;
|
|
125
127
|
}
|
|
126
|
-
/**
|
|
128
|
+
/**
|
|
129
|
+
* The single node-global Group Encrypted Data Message Counter shared by all group sessions.
|
|
130
|
+
* @see {@link MatterSpecification.v16.Core} § 4.6.1.3
|
|
131
|
+
*/
|
|
127
132
|
get groupDataMessageCounter() {
|
|
128
133
|
this.#construction.assert();
|
|
129
134
|
return this.#groupDataMessageCounter;
|
|
@@ -181,6 +186,13 @@ class SessionManager {
|
|
|
181
186
|
get retry() {
|
|
182
187
|
return this.#retry;
|
|
183
188
|
}
|
|
189
|
+
/**
|
|
190
|
+
* Emits for each received group message (success or failure). Observers remain inactive until at least one
|
|
191
|
+
* listener attaches, so fabrics not under test incur no emission overhead.
|
|
192
|
+
*/
|
|
193
|
+
get onGroupMessage() {
|
|
194
|
+
return this.#onGroupMessage;
|
|
195
|
+
}
|
|
184
196
|
/**
|
|
185
197
|
* Convenience function for accessing a fabric by address.
|
|
186
198
|
*/
|
|
@@ -412,16 +424,24 @@ class SessionManager {
|
|
|
412
424
|
*/
|
|
413
425
|
groupSessionFromPacket(packet, aad) {
|
|
414
426
|
this.#construction.assert();
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
packet,
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
427
|
+
let decoded;
|
|
428
|
+
try {
|
|
429
|
+
decoded = import_GroupSession.GroupSession.decode(this.#context.fabrics, packet, aad);
|
|
430
|
+
} catch (error) {
|
|
431
|
+
if ((0, import_general.causedBy)(error, import_GroupSession.GroupSessionNoKeyError)) {
|
|
432
|
+
this.#onGroupMessage.emit({ result: import_groupcast.Groupcast.GroupcastTestResult.NoAvailableKey });
|
|
433
|
+
} else if ((0, import_general.causedBy)(error, import_GroupSession.GroupSessionDecodeError)) {
|
|
434
|
+
this.#onGroupMessage.emit({ result: import_groupcast.Groupcast.GroupcastTestResult.FailedAuth });
|
|
435
|
+
}
|
|
436
|
+
throw error;
|
|
437
|
+
}
|
|
438
|
+
const { message, key, privacyKey, sessionId, sourceNodeId, keySetId, fabric } = decoded;
|
|
439
|
+
const rawGroupId = message.packetHeader.destGroupId;
|
|
440
|
+
if (rawGroupId === void 0) {
|
|
422
441
|
throw new import_general.UnexpectedDataError("Group ID is required for GroupSession fromPacket.");
|
|
423
442
|
}
|
|
424
|
-
|
|
443
|
+
const groupId = (0, import_types.GroupId)(rawGroupId);
|
|
444
|
+
import_types.GroupId.assertGroupId(groupId);
|
|
425
445
|
let session = this.#groupSessions.get(sourceNodeId)?.get("id", sessionId);
|
|
426
446
|
if (session === void 0) {
|
|
427
447
|
session = new import_GroupSession.GroupSession({
|
|
@@ -432,11 +452,16 @@ class SessionManager {
|
|
|
432
452
|
operationalGroupKey: key,
|
|
433
453
|
operationalPrivacyKey: privacyKey,
|
|
434
454
|
peerNodeId: sourceNodeId,
|
|
455
|
+
multicastAddress: fabric.groups.multicastAddressFor(groupId),
|
|
435
456
|
messageCounter: this.#groupDataMessageCounter
|
|
436
457
|
});
|
|
437
458
|
}
|
|
438
459
|
return { session, message, key };
|
|
439
460
|
}
|
|
461
|
+
/** Report a group message event (used by ExchangeManager for replay and InteractionServer for dispatch). */
|
|
462
|
+
emitGroupMessage(info) {
|
|
463
|
+
this.#onGroupMessage.emit(info);
|
|
464
|
+
}
|
|
440
465
|
registerGroupSession(session) {
|
|
441
466
|
const sourceNodeId = session.peerNodeId;
|
|
442
467
|
const peerSessions = this.#groupSessions.get(sourceNodeId) ?? new import_general.BasicSet();
|
|
@@ -578,7 +603,8 @@ class SessionManager {
|
|
|
578
603
|
/**
|
|
579
604
|
* Build the node-global group data message counter. On the first run after upgrading from the legacy per-key
|
|
580
605
|
* model, seed it above every value any per-key counter could already have used so it never rolls back below a
|
|
581
|
-
* value already sent with a surviving key
|
|
606
|
+
* value already sent with a surviving key; then clear the legacy entries.
|
|
607
|
+
* @see {@link MatterSpecification.v16.Core} § 4.6.1.3
|
|
582
608
|
*/
|
|
583
609
|
async #createGroupDataMessageCounter() {
|
|
584
610
|
const storage = this.#context.storage;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/session/SessionManager.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["record"]
|
|
6
6
|
}
|
|
@@ -8,7 +8,7 @@ export declare const KDFSR2_INFO: AllowSharedBufferSource;
|
|
|
8
8
|
export declare const KDFSR3_INFO: AllowSharedBufferSource;
|
|
9
9
|
export declare const TBE_DATA2_NONCE: AllowSharedBufferSource;
|
|
10
10
|
export declare const TBE_DATA3_NONCE: AllowSharedBufferSource;
|
|
11
|
-
/** @see {@link MatterSpecification.
|
|
11
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.2.3 */
|
|
12
12
|
export declare const TlvCaseSigma1: import("@matter/types").ObjectSchema<{
|
|
13
13
|
initiatorRandom: import("@matter/types").FieldType<any>;
|
|
14
14
|
initiatorSessionId: import("@matter/types").FieldType<number>;
|
|
@@ -32,7 +32,7 @@ export declare const TlvCaseSigma1: import("@matter/types").ObjectSchema<{
|
|
|
32
32
|
initiatorResumeMic: import("@matter/types").OptionalFieldType<any>;
|
|
33
33
|
}>;
|
|
34
34
|
export type CaseSigma1 = WithDurationSessionParameters<TypeFromSchema<typeof TlvCaseSigma1>, "initiatorSessionParams">;
|
|
35
|
-
/** @see {@link MatterSpecification.
|
|
35
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.2.3 */
|
|
36
36
|
export declare const TlvCaseSigma2: import("@matter/types").ObjectSchema<{
|
|
37
37
|
responderRandom: import("@matter/types").FieldType<any>;
|
|
38
38
|
responderSessionId: import("@matter/types").FieldType<number>;
|
|
@@ -54,7 +54,7 @@ export declare const TlvCaseSigma2: import("@matter/types").ObjectSchema<{
|
|
|
54
54
|
}>>;
|
|
55
55
|
}>;
|
|
56
56
|
export type CaseSigma2 = WithDurationSessionParameters<TypeFromSchema<typeof TlvCaseSigma2>, "responderSessionParams">;
|
|
57
|
-
/** @see {@link MatterSpecification.
|
|
57
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.2.3 */
|
|
58
58
|
export declare const TlvCaseSigma2Resume: import("@matter/types").ObjectSchema<{
|
|
59
59
|
resumptionId: import("@matter/types").FieldType<any>;
|
|
60
60
|
resumeMic: import("@matter/types").FieldType<any>;
|
|
@@ -75,12 +75,12 @@ export declare const TlvCaseSigma2Resume: import("@matter/types").ObjectSchema<{
|
|
|
75
75
|
}>>;
|
|
76
76
|
}>;
|
|
77
77
|
export type CaseSigma2Resume = WithDurationSessionParameters<TypeFromSchema<typeof TlvCaseSigma2Resume>, "responderSessionParams">;
|
|
78
|
-
/** @see {@link MatterSpecification.
|
|
78
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.2.3 */
|
|
79
79
|
export declare const TlvCaseSigma3: import("@matter/types").ObjectSchema<{
|
|
80
80
|
encrypted: import("@matter/types").FieldType<AllowSharedBufferSource>;
|
|
81
81
|
}>;
|
|
82
82
|
export type CaseSigma3 = TypeFromSchema<typeof TlvCaseSigma3>;
|
|
83
|
-
/** @see {@link MatterSpecification.
|
|
83
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.2.3 */
|
|
84
84
|
export declare const TlvSignedData: import("@matter/types").ObjectSchema<{
|
|
85
85
|
responderNoc: import("@matter/types").FieldType<AllowSharedBufferSource>;
|
|
86
86
|
responderIcac: import("@matter/types").OptionalFieldType<AllowSharedBufferSource>;
|
|
@@ -88,7 +88,7 @@ export declare const TlvSignedData: import("@matter/types").ObjectSchema<{
|
|
|
88
88
|
initiatorPublicKey: import("@matter/types").FieldType<any>;
|
|
89
89
|
}>;
|
|
90
90
|
export type SignedData = TypeFromSchema<typeof TlvSignedData>;
|
|
91
|
-
/** @see {@link MatterSpecification.
|
|
91
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.2.3 */
|
|
92
92
|
export declare const TlvEncryptedDataSigma2: import("@matter/types").ObjectSchema<{
|
|
93
93
|
responderNoc: import("@matter/types").FieldType<AllowSharedBufferSource>;
|
|
94
94
|
responderIcac: import("@matter/types").OptionalFieldType<AllowSharedBufferSource>;
|
|
@@ -96,7 +96,7 @@ export declare const TlvEncryptedDataSigma2: import("@matter/types").ObjectSchem
|
|
|
96
96
|
resumptionId: import("@matter/types").FieldType<any>;
|
|
97
97
|
}>;
|
|
98
98
|
export type EncryptedDataSigma2 = TypeFromSchema<typeof TlvEncryptedDataSigma2>;
|
|
99
|
-
/** @see {@link MatterSpecification.
|
|
99
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.2.3 */
|
|
100
100
|
export declare const TlvEncryptedDataSigma3: import("@matter/types").ObjectSchema<{
|
|
101
101
|
responderNoc: import("@matter/types").FieldType<AllowSharedBufferSource>;
|
|
102
102
|
responderIcac: import("@matter/types").OptionalFieldType<AllowSharedBufferSource>;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { SessionIntervals } from "#session/SessionIntervals.js";
|
|
7
7
|
import { TypeFromSchema } from "@matter/types";
|
|
8
|
-
/** @see {@link MatterSpecification.
|
|
8
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.13.1 */
|
|
9
9
|
export declare const TlvSessionParameters: import("@matter/types").ObjectSchema<{
|
|
10
10
|
/** Maximum sleep interval of node when in idle mode. */
|
|
11
11
|
idleInterval: import("@matter/types").OptionalFieldType<number>;
|
|
@@ -33,7 +33,7 @@ export type SessionParametersWithDurations = Omit<TypeFromSchema<typeof TlvSessi
|
|
|
33
33
|
export type WithDurationSessionParameters<T, K extends keyof T> = Omit<T, K> & {
|
|
34
34
|
[P in K]?: SessionParametersWithDurations;
|
|
35
35
|
};
|
|
36
|
-
/** @see {@link MatterSpecification.
|
|
36
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.1.2 */
|
|
37
37
|
export declare const TlvPbkdfParamRequest: import("@matter/types").ObjectSchema<{
|
|
38
38
|
initiatorRandom: import("@matter/types").FieldType<any>;
|
|
39
39
|
initiatorSessionId: import("@matter/types").FieldType<number>;
|
|
@@ -64,7 +64,7 @@ export declare const TlvPbkdfParamRequest: import("@matter/types").ObjectSchema<
|
|
|
64
64
|
}>>;
|
|
65
65
|
}>;
|
|
66
66
|
export type PbkdfParamRequest = WithDurationSessionParameters<TypeFromSchema<typeof TlvPbkdfParamRequest>, "initiatorSessionParams">;
|
|
67
|
-
/** @see {@link MatterSpecification.
|
|
67
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.1.2 */
|
|
68
68
|
export declare const TlvPbkdfParamResponse: import("@matter/types").ObjectSchema<{
|
|
69
69
|
initiatorRandom: import("@matter/types").FieldType<any>;
|
|
70
70
|
responderRandom: import("@matter/types").FieldType<any>;
|
|
@@ -98,18 +98,18 @@ export declare const TlvPbkdfParamResponse: import("@matter/types").ObjectSchema
|
|
|
98
98
|
}>>;
|
|
99
99
|
}>;
|
|
100
100
|
export type PbkdfParamResponse = WithDurationSessionParameters<TypeFromSchema<typeof TlvPbkdfParamResponse>, "responderSessionParams">;
|
|
101
|
-
/** @see {@link MatterSpecification.
|
|
101
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.1.2 */
|
|
102
102
|
export declare const TlvPasePake1: import("@matter/types").ObjectSchema<{
|
|
103
103
|
x: import("@matter/types").FieldType<any>;
|
|
104
104
|
}>;
|
|
105
105
|
export type PasePake1 = TypeFromSchema<typeof TlvPasePake1>;
|
|
106
|
-
/** @see {@link MatterSpecification.
|
|
106
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.1.2 */
|
|
107
107
|
export declare const TlvPasePake2: import("@matter/types").ObjectSchema<{
|
|
108
108
|
y: import("@matter/types").FieldType<any>;
|
|
109
109
|
verifier: import("@matter/types").FieldType<any>;
|
|
110
110
|
}>;
|
|
111
111
|
export type PasePake2 = TypeFromSchema<typeof TlvPasePake2>;
|
|
112
|
-
/** @see {@link MatterSpecification.
|
|
112
|
+
/** @see {@link MatterSpecification.v16.Core} § 4.14.1.2 */
|
|
113
113
|
export declare const TlvPasePake3: import("@matter/types").ObjectSchema<{
|
|
114
114
|
verifier: import("@matter/types").FieldType<any>;
|
|
115
115
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientInteraction.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientInteraction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAU,MAAM,2BAA2B,CAAC;AAMjE,OAAO,EAAE,mBAAmB,EAAgB,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,0BAA0B,EAAe,MAAM,sCAAsC,CAAC;AAE/F,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ClientInteraction.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientInteraction.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,6 +58,7 @@ import { InteractionClientMessenger, MessageType } from "#interaction/Interactio
|
|
|
58
58
|
import { Subscription } from "#interaction/Subscription.js";
|
|
59
59
|
import { PeerAddress } from "#peer/PeerAddress.js";
|
|
60
60
|
import { ExchangeProvider } from "#protocol/ExchangeProvider.js";
|
|
61
|
+
import { GroupSession } from "#session/GroupSession.js";
|
|
61
62
|
import {
|
|
62
63
|
Abort,
|
|
63
64
|
AbortedError,
|
|
@@ -87,6 +88,12 @@ import { ClientSubscriptions } from "./subscription/ClientSubscriptions.js";
|
|
|
87
88
|
import { PeerSubscription } from "./subscription/PeerSubscription.js";
|
|
88
89
|
import { SustainedSubscription } from "./subscription/SustainedSubscription.js";
|
|
89
90
|
const logger = Logger.get("ClientInteraction");
|
|
91
|
+
function peerAddressDiagnostic(session) {
|
|
92
|
+
if (session !== void 0 && GroupSession.is(session)) {
|
|
93
|
+
return Diagnostic.dict({ dest: session.multicastAddress });
|
|
94
|
+
}
|
|
95
|
+
return "";
|
|
96
|
+
}
|
|
90
97
|
const MAX_COMMAND_REF = 65535;
|
|
91
98
|
const SUBSCRIPTION_PROCESSING_TIME = Seconds(10);
|
|
92
99
|
function inferLargeMessage(request) {
|
|
@@ -196,9 +203,9 @@ class ClientInteraction {
|
|
|
196
203
|
var _stack = [];
|
|
197
204
|
try {
|
|
198
205
|
const readPathsCount = (request.attributeRequests?.length ?? 0) + (request.eventRequests?.length ?? 0);
|
|
199
|
-
if (readPathsCount >
|
|
206
|
+
if (readPathsCount > this.#exchangeProvider.readPathsSupported) {
|
|
200
207
|
logger.info(
|
|
201
|
-
|
|
208
|
+
`Read interactions with more than ${this.#exchangeProvider.readPathsSupported} paths might be not allowed by the device. Consider splitting them into several read requests.`
|
|
202
209
|
);
|
|
203
210
|
}
|
|
204
211
|
const context = __using(_stack, await this.#begin("reading", request, session, extraAbort), true);
|
|
@@ -298,7 +305,13 @@ class ClientInteraction {
|
|
|
298
305
|
if (request.timedRequest) {
|
|
299
306
|
await messenger.sendTimedRequest(request.timeout ?? DEFAULT_TIMED_REQUEST_TIMEOUT, { abort });
|
|
300
307
|
}
|
|
301
|
-
logger.info(
|
|
308
|
+
logger.info(
|
|
309
|
+
"Write",
|
|
310
|
+
Mark.OUTBOUND,
|
|
311
|
+
messenger.exchange.via,
|
|
312
|
+
peerAddressDiagnostic(messenger.exchange.session),
|
|
313
|
+
request
|
|
314
|
+
);
|
|
302
315
|
const response = await messenger.sendWriteCommand(request, session);
|
|
303
316
|
if (request.suppressResponse) {
|
|
304
317
|
return void 0;
|
|
@@ -364,6 +377,7 @@ class ClientInteraction {
|
|
|
364
377
|
"Invoke",
|
|
365
378
|
Mark.OUTBOUND,
|
|
366
379
|
messenger.exchange.via,
|
|
380
|
+
peerAddressDiagnostic(messenger.exchange.session),
|
|
367
381
|
Diagnostic.asFlags({ suppressResponse: request.suppressResponse, timed: request.timedRequest }),
|
|
368
382
|
request
|
|
369
383
|
);
|
|
@@ -749,8 +763,10 @@ class ClientInteraction {
|
|
|
749
763
|
if (subscriptionPathsCount === 0) {
|
|
750
764
|
throw new ImplementationError("When subscribing to attributes and events, at least one must be specified.");
|
|
751
765
|
}
|
|
752
|
-
if (subscriptionPathsCount >
|
|
753
|
-
logger.info(
|
|
766
|
+
if (subscriptionPathsCount > this.#exchangeProvider.subscribePathsSupported) {
|
|
767
|
+
logger.info(
|
|
768
|
+
`Subscribe interactions with more than ${this.#exchangeProvider.subscribePathsSupported} paths might be not allowed by the device.`
|
|
769
|
+
);
|
|
754
770
|
}
|
|
755
771
|
const peer = this.#exchangeProvider.peerAddress;
|
|
756
772
|
if (peer === void 0) {
|