@matter/protocol 0.12.6-alpha.0-20250304-03716637c → 0.13.0-alpha.0-20250304-d4a7592a4
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/common/Scanner.d.ts +25 -1
- package/dist/cjs/common/Scanner.d.ts.map +1 -1
- package/dist/cjs/common/Scanner.js +18 -1
- package/dist/cjs/common/Scanner.js.map +1 -1
- package/dist/cjs/mdns/MdnsBroadcaster.js +3 -3
- package/dist/cjs/mdns/MdnsConsts.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.js +1 -1
- package/dist/cjs/mdns/MdnsScanner.js.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.js +55 -55
- package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/cjs/session/Session.d.ts +33 -1
- package/dist/cjs/session/Session.d.ts.map +1 -1
- package/dist/cjs/session/Session.js +16 -3
- package/dist/cjs/session/Session.js.map +1 -1
- package/dist/cjs/session/SessionManager.d.ts.map +1 -1
- package/dist/cjs/session/SessionManager.js +14 -4
- package/dist/cjs/session/SessionManager.js.map +1 -1
- package/dist/cjs/session/case/CaseMessages.d.ts +15 -0
- package/dist/cjs/session/case/CaseMessages.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseMessenger.d.ts +15 -0
- package/dist/cjs/session/case/CaseMessenger.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseClient.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseClient.js +7 -1
- package/dist/cjs/session/pase/PaseClient.js.map +1 -1
- package/dist/cjs/session/pase/PaseMessages.d.ts +21 -0
- package/dist/cjs/session/pase/PaseMessages.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseMessages.js +6 -1
- package/dist/cjs/session/pase/PaseMessages.js.map +1 -1
- package/dist/cjs/session/pase/PaseMessenger.d.ts +10 -0
- package/dist/cjs/session/pase/PaseMessenger.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseServer.js +8 -2
- package/dist/cjs/session/pase/PaseServer.js.map +1 -1
- package/dist/esm/common/Scanner.d.ts +25 -1
- package/dist/esm/common/Scanner.d.ts.map +1 -1
- package/dist/esm/common/Scanner.js +18 -1
- package/dist/esm/common/Scanner.js.map +1 -1
- package/dist/esm/mdns/MdnsBroadcaster.js +3 -3
- package/dist/esm/mdns/MdnsConsts.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsScanner.js +1 -1
- package/dist/esm/mdns/MdnsScanner.js.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.js +55 -55
- package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/esm/session/Session.d.ts +33 -1
- package/dist/esm/session/Session.d.ts.map +1 -1
- package/dist/esm/session/Session.js +16 -3
- package/dist/esm/session/Session.js.map +1 -1
- package/dist/esm/session/SessionManager.d.ts.map +1 -1
- package/dist/esm/session/SessionManager.js +15 -4
- package/dist/esm/session/SessionManager.js.map +1 -1
- package/dist/esm/session/case/CaseMessages.d.ts +15 -0
- package/dist/esm/session/case/CaseMessages.d.ts.map +1 -1
- package/dist/esm/session/case/CaseMessenger.d.ts +15 -0
- package/dist/esm/session/case/CaseMessenger.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseClient.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseClient.js +7 -1
- package/dist/esm/session/pase/PaseClient.js.map +1 -1
- package/dist/esm/session/pase/PaseMessages.d.ts +21 -0
- package/dist/esm/session/pase/PaseMessages.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseMessages.js +16 -2
- package/dist/esm/session/pase/PaseMessages.js.map +1 -1
- package/dist/esm/session/pase/PaseMessenger.d.ts +10 -0
- package/dist/esm/session/pase/PaseMessenger.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseServer.js +8 -2
- package/dist/esm/session/pase/PaseServer.js.map +1 -1
- package/package.json +6 -6
- package/src/common/Scanner.ts +18 -2
- package/src/mdns/MdnsBroadcaster.ts +3 -3
- package/src/mdns/MdnsScanner.ts +3 -2
- package/src/peer/ControllerCommissioningFlow.ts +55 -52
- package/src/session/Session.ts +50 -1
- package/src/session/SessionManager.ts +20 -2
- package/src/session/pase/PaseClient.ts +10 -1
- package/src/session/pase/PaseMessages.ts +17 -1
- package/src/session/pase/PaseServer.ts +11 -1
|
@@ -46,12 +46,21 @@ export class PaseClient {
|
|
|
46
46
|
const initiatorSessionId = await this.#sessions.getNextAvailableSessionId(); // Initiator Session Id
|
|
47
47
|
|
|
48
48
|
// Send pbkdfRequest and Read pbkdfResponse
|
|
49
|
+
const tcpSupported =
|
|
50
|
+
sessionParameters.supportedTransports?.tcpClient ||
|
|
51
|
+
sessionParameters.supportedTransports?.tcpServer ||
|
|
52
|
+
false;
|
|
49
53
|
const requestPayload = await messenger.sendPbkdfParamRequest({
|
|
50
54
|
initiatorRandom,
|
|
51
55
|
initiatorSessionId,
|
|
52
56
|
passcodeId: DEFAULT_PASSCODE_ID,
|
|
53
57
|
hasPbkdfParameters: false,
|
|
54
|
-
initiatorSessionParams:
|
|
58
|
+
initiatorSessionParams: {
|
|
59
|
+
...sessionParameters,
|
|
60
|
+
// The MAX_TCP_MESSAGE_SIZE field SHALL only be present if the SUPPORTED_TRANSPORTS field
|
|
61
|
+
// indicates that TCP is supported.
|
|
62
|
+
maxTcpMessageSize: tcpSupported ? sessionParameters.maxTcpMessageSize : undefined,
|
|
63
|
+
},
|
|
55
64
|
});
|
|
56
65
|
const {
|
|
57
66
|
responsePayload,
|
|
@@ -4,8 +4,18 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
+
import { SupportedTransportsBitmap } from "#common/index.js";
|
|
7
8
|
import { CRYPTO_HASH_LEN_BYTES, CRYPTO_PUBLIC_KEY_SIZE_BYTES } from "#general";
|
|
8
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
TlvBitmap,
|
|
11
|
+
TlvBoolean,
|
|
12
|
+
TlvByteString,
|
|
13
|
+
TlvField,
|
|
14
|
+
TlvObject,
|
|
15
|
+
TlvOptionalField,
|
|
16
|
+
TlvUInt16,
|
|
17
|
+
TlvUInt32,
|
|
18
|
+
} from "#types";
|
|
9
19
|
|
|
10
20
|
/** @see {@link MatterSpecification.v13.Core} § 4.12.8 */
|
|
11
21
|
export const TlvSessionParameters = TlvObject({
|
|
@@ -29,6 +39,12 @@ export const TlvSessionParameters = TlvObject({
|
|
|
29
39
|
|
|
30
40
|
/** Maximum Paths pert Invoke */
|
|
31
41
|
maxPathsPerInvoke: TlvOptionalField(7, TlvUInt16) /* default: 1 */,
|
|
42
|
+
|
|
43
|
+
/** Supported transport protocols in addition to MRP.*/
|
|
44
|
+
supportedTransports: TlvOptionalField(8, TlvBitmap(TlvUInt16, SupportedTransportsBitmap)) /* default: {} */,
|
|
45
|
+
|
|
46
|
+
/** Maximum size of the message carried over TCP in bytes */
|
|
47
|
+
maxTcpMessageSize: TlvOptionalField(9, TlvUInt32) /* default: 64000 */,
|
|
32
48
|
});
|
|
33
49
|
|
|
34
50
|
/** @see {@link MatterSpecification.v13.Core} § 4.14.1.2 */
|
|
@@ -127,12 +127,22 @@ export class PaseServer implements ProtocolHandler {
|
|
|
127
127
|
const responderSessionId = await this.sessions.getNextAvailableSessionId(); // Responder Session Id
|
|
128
128
|
const responderRandom = Crypto.getRandom();
|
|
129
129
|
|
|
130
|
+
const responderSessionParams = this.sessions.sessionParameters;
|
|
131
|
+
const tcpSupported =
|
|
132
|
+
responderSessionParams.supportedTransports?.tcpClient ||
|
|
133
|
+
responderSessionParams.supportedTransports?.tcpServer ||
|
|
134
|
+
false;
|
|
130
135
|
const responsePayload = await messenger.sendPbkdfParamResponse({
|
|
131
136
|
initiatorRandom,
|
|
132
137
|
responderRandom,
|
|
133
138
|
responderSessionId,
|
|
134
139
|
pbkdfParameters: hasPbkdfParameters ? undefined : this.pbkdfParameters,
|
|
135
|
-
responderSessionParams:
|
|
140
|
+
responderSessionParams: {
|
|
141
|
+
...responderSessionParams,
|
|
142
|
+
// The MAX_TCP_MESSAGE_SIZE field SHALL only be present if the SUPPORTED_TRANSPORTS field
|
|
143
|
+
// indicates that TCP is supported.
|
|
144
|
+
maxTcpMessageSize: tcpSupported ? responderSessionParams.maxTcpMessageSize : undefined,
|
|
145
|
+
},
|
|
136
146
|
});
|
|
137
147
|
|
|
138
148
|
// Process pake1 and send pake2
|