@matter/protocol 0.12.4-alpha.0-20250217-b0bba5179 → 0.12.4-alpha.0-20250223-1e0341a1a

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.
Files changed (41) hide show
  1. package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
  2. package/dist/cjs/protocol/ExchangeManager.js +12 -8
  3. package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
  4. package/dist/cjs/session/InsecureSession.d.ts.map +1 -1
  5. package/dist/cjs/session/InsecureSession.js +1 -0
  6. package/dist/cjs/session/InsecureSession.js.map +1 -1
  7. package/dist/cjs/session/SecureSession.d.ts.map +1 -1
  8. package/dist/cjs/session/SecureSession.js +4 -0
  9. package/dist/cjs/session/SecureSession.js.map +1 -1
  10. package/dist/cjs/session/Session.d.ts +3 -1
  11. package/dist/cjs/session/Session.d.ts.map +1 -1
  12. package/dist/cjs/session/Session.js +5 -1
  13. package/dist/cjs/session/Session.js.map +1 -1
  14. package/dist/cjs/session/case/CaseClient.d.ts.map +1 -1
  15. package/dist/cjs/session/case/CaseClient.js +22 -15
  16. package/dist/cjs/session/case/CaseClient.js.map +1 -1
  17. package/dist/cjs/session/case/CaseServer.js +1 -1
  18. package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
  19. package/dist/esm/protocol/ExchangeManager.js +12 -8
  20. package/dist/esm/protocol/ExchangeManager.js.map +1 -1
  21. package/dist/esm/session/InsecureSession.d.ts.map +1 -1
  22. package/dist/esm/session/InsecureSession.js +1 -0
  23. package/dist/esm/session/InsecureSession.js.map +1 -1
  24. package/dist/esm/session/SecureSession.d.ts.map +1 -1
  25. package/dist/esm/session/SecureSession.js +4 -0
  26. package/dist/esm/session/SecureSession.js.map +1 -1
  27. package/dist/esm/session/Session.d.ts +3 -1
  28. package/dist/esm/session/Session.d.ts.map +1 -1
  29. package/dist/esm/session/Session.js +6 -2
  30. package/dist/esm/session/Session.js.map +1 -1
  31. package/dist/esm/session/case/CaseClient.d.ts.map +1 -1
  32. package/dist/esm/session/case/CaseClient.js +22 -15
  33. package/dist/esm/session/case/CaseClient.js.map +1 -1
  34. package/dist/esm/session/case/CaseServer.js +1 -1
  35. package/package.json +6 -6
  36. package/src/protocol/ExchangeManager.ts +12 -8
  37. package/src/session/InsecureSession.ts +1 -0
  38. package/src/session/SecureSession.ts +4 -0
  39. package/src/session/Session.ts +7 -2
  40. package/src/session/case/CaseClient.ts +18 -12
  41. package/src/session/case/CaseServer.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ExchangeManager.d.ts","sourceRoot":"","sources":["../../../src/protocol/ExchangeManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,OAAO,EAEP,WAAW,EACX,aAAa,EAIb,WAAW,EAKX,qBAAqB,EAExB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,OAAO,EAA6B,MAAM,0BAA0B,CAAC;AAG9E,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAA+B,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAA0B,MAAM,sBAAsB,CAAC;AAEnG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD,qBAAa,wBAAyB,SAAQ,WAAW;CAAG;AAE5D,qBAAa,cAAe,YAAW,OAAO,CAAC,OAAO,CAAC;;IAK/C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO;IALtB,MAAM,UAAS;gBAIT,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,EAC5B,OAAO,EAAE,OAAO,EACzB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAKvC,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAE9C;IAED,4CAA4C;IAC5C,IAAI,UAAU,YAEb;IAED,IAAI,IAAI,mCAEP;IAED;;;OAGG;IACH,IAAI,cAAc,WAEjB;IAED,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAatE,IAAI,IAAI,WAEP;IAEK,KAAK;CAQd;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,mBAAmB,EAAE,qBAAqB,CAAC;IAC3C,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;CAClC;AAED,qBAAa,eAAe;;gBAYZ,OAAO,EAAE,sBAAsB;IAoB3C,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAU9C,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,QAAQ,EAAE,eAAe;IAO5C,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM;IAIzD,2BAA2B,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM;IAQjE,KAAK;YAkBG,SAAS;IA2HjB,cAAc,CAAC,aAAa,EAAE,MAAM;CAyI7C;AAED,qBAAa,eAAe;IACxB,OAAO,CAAC,eAAe,CAA4B;IAEnD,qBAAqB;CAOxB"}
1
+ {"version":3,"file":"ExchangeManager.d.ts","sourceRoot":"","sources":["../../../src/protocol/ExchangeManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,OAAO,EAEP,WAAW,EACX,aAAa,EAIb,WAAW,EAKX,qBAAqB,EAExB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,OAAO,EAA6B,MAAM,0BAA0B,CAAC;AAG9E,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAA+B,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAA0B,MAAM,sBAAsB,CAAC;AAEnG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD,qBAAa,wBAAyB,SAAQ,WAAW;CAAG;AAE5D,qBAAa,cAAe,YAAW,OAAO,CAAC,OAAO,CAAC;;IAK/C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO;IALtB,MAAM,UAAS;gBAIT,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,EAC5B,OAAO,EAAE,OAAO,EACzB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAMvC,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAE9C;IAED,4CAA4C;IAC5C,IAAI,UAAU,YAEb;IAED,IAAI,IAAI,mCAEP;IAED;;;OAGG;IACH,IAAI,cAAc,WAEjB;IAED,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAatE,IAAI,IAAI,WAEP;IAEK,KAAK;CAQd;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,mBAAmB,EAAE,qBAAqB,CAAC;IAC3C,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;CAClC;AAED,qBAAa,eAAe;;gBAYZ,OAAO,EAAE,sBAAsB;IAoB3C,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAU9C,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,QAAQ,EAAE,eAAe;IAO5C,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM;IAIzD,2BAA2B,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM;IAQjE,KAAK;YAkBG,SAAS;IA2HjB,cAAc,CAAC,aAAa,EAAE,MAAM;CA4I7C;AAED,qBAAa,eAAe;IACxB,OAAO,CAAC,eAAe,CAA4B;IAEnD,qBAAqB;CAOxB"}
@@ -46,6 +46,7 @@ class MessageChannel {
46
46
  this.channel = channel;
47
47
  this.session = session;
48
48
  this.#closeCallback = closeCallback;
49
+ this.session.destroyed.on(() => this.close());
49
50
  }
50
51
  closed = false;
51
52
  #closeCallback;
@@ -217,7 +218,7 @@ class ExchangeManager {
217
218
  if (protocolHandler !== void 0 && message.payloadHeader.isInitiatorMessage && !isDuplicate) {
218
219
  if (message.payloadHeader.messageType == import_types.SecureMessageType.StandaloneAck && !message.payloadHeader.requiresAck) {
219
220
  logger.debug(
220
- `Ignoring unsolicited standalone ack message ${messageId} for protocol ${message.payloadHeader.protocolId} and exchange id ${message.payloadHeader.exchangeId}.`
221
+ `Ignoring unsolicited standalone ack message ${messageId} for protocol ${message.payloadHeader.protocolId} and exchange id ${message.payloadHeader.exchangeId} on channel ${channel.name}`
221
222
  );
222
223
  return;
223
224
  }
@@ -239,7 +240,7 @@ class ExchangeManager {
239
240
  });
240
241
  await exchange2.close();
241
242
  logger.debug(
242
- `Ignoring unsolicited message ${messageId} for protocol ${message.payloadHeader.protocolId}.`
243
+ `Ignoring unsolicited message ${messageId} for protocol ${message.payloadHeader.protocolId} on channel ${channel.name}`
243
244
  );
244
245
  } else {
245
246
  if (protocolHandler === void 0) {
@@ -247,12 +248,12 @@ class ExchangeManager {
247
248
  }
248
249
  if (isDuplicate) {
249
250
  logger.info(
250
- `Ignoring duplicate message ${messageId} (requires no ack) for protocol ${message.payloadHeader.protocolId}.`
251
+ `Ignoring duplicate message ${messageId} (requires no ack) for protocol ${message.payloadHeader.protocolId} on channel ${channel.name}`
251
252
  );
252
253
  return;
253
254
  } else {
254
255
  logger.info(
255
- `Discarding unexpected message ${messageId} for protocol ${message.payloadHeader.protocolId}, exchangeIndex ${exchangeIndex} and sessionId ${session.id} : ${import_general.Logger.toJSON(message)}`
256
+ `Discarding unexpected message ${messageId} for protocol ${message.payloadHeader.protocolId}, exchangeIndex ${exchangeIndex} and sessionId ${session.id} on channel ${channel.name}: ${import_general.Logger.toJSON(message)}`
256
257
  );
257
258
  }
258
259
  }
@@ -292,7 +293,7 @@ class ExchangeManager {
292
293
  }
293
294
  if (session.sendCloseMessageWhenClosing) {
294
295
  const channel = this.#channelManager.getChannelForSession(session);
295
- logger.debug(`Channel for session ${session.name} is ${channel?.name}`);
296
+ logger.debug(`Channel for session ${sessionName} is ${channel?.name}`);
296
297
  if (channel !== void 0) {
297
298
  const exchange = this.initiateExchangeWithChannel(channel, import_types.SECURE_CHANNEL_PROTOCOL_ID);
298
299
  if (exchange !== void 0) {
@@ -349,17 +350,20 @@ class ExchangeManager {
349
350
  transportInterface.onData((socket, data) => {
350
351
  if (udpInterface && data.length > socket.maxPayloadSize) {
351
352
  logger.warn(
352
- `Ignoring UDP message with size ${data.length} from ${socket.name}, which is larger than the maximum allowed size of ${socket.maxPayloadSize}.`
353
+ `Ignoring UDP message on channel ${socket.name} with size ${data.length} from ${socket.name}, which is larger than the maximum allowed size of ${socket.maxPayloadSize}.`
353
354
  );
354
355
  return;
355
356
  }
356
357
  try {
357
358
  this.onMessage(socket, data).catch(
358
- (error) => logger.info(error instanceof import_general.MatterError ? error.message : error)
359
+ (error) => logger.info(
360
+ `Error on channel ${socket.name}:`,
361
+ error instanceof import_general.MatterError ? error.message : error
362
+ )
359
363
  );
360
364
  } catch (error) {
361
365
  logger.info(
362
- "Ignoring UDP message with error",
366
+ `Ignoring UDP message on channel ${socket.name} with error`,
363
367
  error instanceof import_general.MatterError ? error.message : error
364
368
  );
365
369
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/protocol/ExchangeManager.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAeO;AAEP,mBAAsE;AACtE,0BAAmD;AACnD,oCAAuC;AAGvC,4BAA4D;AAC5D,4BAA+B;AAC/B,6BAA4E;AAC5E,mCAAsC;AA/BtC;AAAA;AAAA;AAAA;AAAA;AAkCA,MAAM,SAAS,sBAAO,IAAI,iBAAiB;AAE3C,MAAM,2CAA2C;AAE1C,MAAM,iCAAiC,2BAAY;AAAC;AAEpD,MAAM,eAA2C;AAAA,EAIpD,YACa,SACA,SACT,eACF;AAHW;AACA;AAGT,SAAK,iBAAiB;AAAA,EAC1B;AAAA,EATO,SAAS;AAAA,EAChB;AAAA,EAUA,IAAI,cAAc,UAA+B;AAC7C,SAAK,iBAAiB;AAAA,EAC1B;AAAA;AAAA,EAGA,IAAI,aAAa;AACb,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,IAAI,iBAAiB;AACjB,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA,EAEA,KAAK,SAAkB,YAAgD;AACnE,WAAO,MAAM,gBAAa,iCAAa,mBAAmB,SAAS,UAAU,CAAC;AAC9E,UAAM,SAAS,KAAK,QAAQ,OAAO,OAAO;AAC1C,UAAM,QAAQ,iCAAa,aAAa,MAAM;AAC9C,QAAI,MAAM,SAAS,KAAK,gBAAgB;AACpC,aAAO;AAAA,QACH,6BAA6B,KAAK,IAAI,OAAO,MAAM,MAAM,gEAAgE,KAAK,cAAc;AAAA,MAChJ;AAAA,IACJ;AAEA,WAAO,KAAK,QAAQ,KAAK,KAAK;AAAA,EAClC;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,GAAG,KAAK,QAAQ,IAAI,eAAe,KAAK,QAAQ,IAAI;AAAA,EAC/D;AAAA,EAEA,MAAM,QAAQ;AACV,UAAM,mBAAmB,KAAK;AAC9B,SAAK,SAAS;AACd,UAAM,KAAK,QAAQ,MAAM;AACzB,QAAI,CAAC,kBAAkB;AACnB,YAAM,KAAK,iBAAiB;AAAA,IAChC;AAAA,EACJ;AACJ;AAWO,MAAM,gBAAgB;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA,mBAAmB,IAAI,gBAAgB;AAAA,EACvC,aAAa,oBAAI,IAA6B;AAAA,EAC9C,aAAa,oBAAI,IAA6B;AAAA,EAC9C,aAAa,oBAAI,IAAqD;AAAA,EACtE,WAAW,oBAAI,IAAmB;AAAA,EAClC,aAAa,IAAI,6BAAc,IAAI;AAAA,EAC5C,WAAW;AAAA,EAEX,YAAY,SAAiC;AACzC,SAAK,uBAAuB,QAAQ;AACpC,SAAK,kBAAkB,QAAQ;AAC/B,SAAK,kBAAkB,QAAQ;AAE/B,eAAW,sBAAsB,KAAK,sBAAsB;AACxD,WAAK,aAAa,kBAAkB;AAAA,IACxC;AAEA,SAAK,WAAW,GAAG,KAAK,qBAAqB,OAAO,KAAK,YAAY;AACrE,SAAK,WAAW,GAAG,KAAK,qBAAqB,SAAS,KAAK,eAAe;AAE1E,SAAK,WAAW,GAAG,KAAK,gBAAgB,SAAS,SAAS,aAAW;AACjE,UAAI,CAAC,QAAQ,8BAA8B;AAEvC,gBAAQ,SAAS,KAAK,cAAc,OAAO;AAAA,MAC/C;AAAA,IACJ,CAAC;AAAA,EACL;AAAA,EAEA,QAAQ,6BAAc,MAAM,EAAE,KAAkB;AAC5C,UAAM,WAAW,IAAI,gBAAgB;AAAA,MACjC,qBAAqB,IAAI,IAAI,oCAAqB;AAAA,MAClD,gBAAgB,IAAI,IAAI,oCAAc;AAAA,MACtC,gBAAgB,IAAI,IAAI,oCAAc;AAAA,IAC1C,CAAC;AACD,QAAI,IAAI,iBAAiB,QAAQ;AACjC,WAAO;AAAA,EACX;AAAA,EAEA,mBAAmB,YAAoB;AACnC,WAAO,KAAK,WAAW,IAAI,UAAU;AAAA,EACzC;AAAA,EAEA,mBAAmB,YAAoB;AACnC,WAAO,KAAK,WAAW,IAAI,UAAU;AAAA,EACzC;AAAA,EAEA,mBAAmB,UAA2B;AAC1C,QAAI,KAAK,mBAAmB,SAAS,MAAM,CAAC,GAAG;AAC3C,YAAM,IAAI,mCAAoB,wBAAwB,SAAS,MAAM,CAAC,sBAAsB;AAAA,IAChG;AACA,SAAK,WAAW,IAAI,SAAS,MAAM,GAAG,QAAQ;AAAA,EAClD;AAAA,EAEA,iBAAiB,SAAsB,YAAoB;AACvD,WAAO,KAAK,4BAA4B,KAAK,gBAAgB,WAAW,OAAO,GAAG,UAAU;AAAA,EAChG;AAAA,EAEA,4BAA4B,SAAyB,YAAoB;AACrE,UAAM,aAAa,KAAK,iBAAiB,sBAAsB;AAC/D,UAAM,gBAAgB,aAAa;AACnC,UAAM,WAAW,uCAAgB,SAAS,KAAK,2BAA2B,OAAO,GAAG,YAAY,UAAU;AAC1G,SAAK,aAAa,eAAe,QAAQ;AACzC,WAAO;AAAA,EACX;AAAA,EAEA,MAAM,QAAQ;AACV,SAAK,WAAW;AAChB,eAAW,YAAY,KAAK,WAAW,OAAO,GAAG;AAC7C,YAAM,SAAS,MAAM;AAAA,IACzB;AACA,eAAW,aAAa,KAAK,WAAW,KAAK,GAAG;AAC5C,WAAK,gBAAgB,SAAS;AAAA,IAClC;AACA,UAAM,oCAAqB,WAAW,KAAK,UAAU,yBAAyB,EAAE;AAAA,MAAM,WAClF,OAAO,MAAM,KAAK;AAAA,IACtB;AACA,UAAM,oCAAqB;AAAA,MACvB,MAAM,KAAK,KAAK,WAAW,OAAO,CAAC,EAAE,IAAI,cAAY,SAAS,MAAM,IAAI,CAAC;AAAA,MACzE;AAAA,IACJ,EAAE,MAAM,WAAS,OAAO,MAAM,KAAK,CAAC;AACpC,SAAK,WAAW,MAAM;AAAA,EAC1B;AAAA,EAEA,MAAc,UAAU,SAA8B,cAA0B;AAC5E,UAAM,SAAS,iCAAa,aAAa,YAAY;AAErD,QAAI,OAAO,OAAO,gBAAgB,gCAAY;AAC1C,YAAM,IAAI,mCAAoB,kCAAkC;AAEpE,QAAI;AACJ,QAAI,OAAO,OAAO,gBAAgB,gCAAY,SAAS;AACnD,UAAI,OAAO,OAAO,cAAc,mDAA6B;AACzD,YAAI,KAAK,SAAU;AACnB,cAAM,kBAAkB,OAAO,OAAO,gBAAgB,oBAAO;AAC7D,kBACI,KAAK,gBAAgB,mBAAmB,eAAe,KACvD,KAAK,gBAAgB,sBAAsB;AAAA,UACvC;AAAA,QACJ,CAAC;AAAA,MACT,OAAO;AACH,kBAAU,KAAK,gBAAgB,WAAW,OAAO,OAAO,SAAS;AAAA,MACrE;AAAA,IACJ,WAAW,OAAO,OAAO,gBAAgB,gCAAY,OAAO;AACxD,UAAI,KAAK,SAAU;AACnB,UAAI,OAAO,OAAO,iBAAiB,QAAW;AAAA,MAE9C;AAAA,IAEJ;AAEA,QAAI,YAAY,QAAW;AACvB,YAAM,IAAI;AAAA,QACN,gCAAgC,OAAO,OAAO,SAAS,GACnD,OAAO,OAAO,iBAAiB,SAAY,sBAAsB,OAAO,OAAO,YAAY,KAAK,EACpG;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,YAAY,OAAO,OAAO;AAEhC,QAAI;AACJ,QAAI;AACA,eAAS,qBAAqB,OAAO,OAAO,WAAW,OAAO,OAAO,YAAY;AACjF,oBAAc;AAAA,IAClB,SAAS,GAAG;AACR,yDAAsB,OAAO,CAAC;AAC9B,oBAAc;AAAA,IAClB;AAEA,UAAM,MAAM,aAAa,MAAM,GAAG,aAAa,SAAS,OAAO,mBAAmB,MAAM;AACxF,UAAM,UAAU,QAAQ,OAAO,QAAQ,GAAG;AAC1C,UAAM,gBAAgB,QAAQ,cAAc,qBACtC,QAAQ,cAAc,aACtB,QAAQ,cAAc,aAAa;AACzC,QAAI,WAAW,KAAK,WAAW,IAAI,aAAa;AAEhD,QACI,aAAa,WACZ,SAAS,QAAQ,OAAO,QAAQ,MAAM,SAAS,gBAAgB,QAAQ,cAAc,qBACxF;AACE,iBAAW;AAAA,IACf;AAEA,QAAI,aAAa,QAAW;AACxB,YAAM,SAAS,kBAAkB,SAAS,WAAW;AAAA,IACzD,OAAO;AACH,UAAI,KAAK,SAAU;AACnB,UAAI,QAAQ,8BAA8B;AACtC,cAAM,IAAI;AAAA,UACN,mBAAmB,OAAO,OAAO,SAAS;AAAA,QAC9C;AAAA,MACJ;AAEA,YAAM,kBAAkB,KAAK,WAAW,IAAI,QAAQ,cAAc,UAAU;AAE5E,UAAI,oBAAoB,UAAa,QAAQ,cAAc,sBAAsB,CAAC,aAAa;AAC3F,YACI,QAAQ,cAAc,eAAe,+BAAkB,iBACvD,CAAC,QAAQ,cAAc,aACzB;AACE,iBAAO;AAAA,YACH,+CAA+C,SAAS,iBAAiB,QAAQ,cAAc,UAAU,oBAAoB,QAAQ,cAAc,UAAU;AAAA,UACjK;AACA;AAAA,QACJ;AAEA,cAAMA,YAAW,uCAAgB;AAAA,UAC7B,KAAK,2BAA2B,MAAM,KAAK,gBAAgB,mBAAmB,SAAS,OAAO,CAAC;AAAA,UAC/F;AAAA,QACJ;AACA,aAAK,aAAa,eAAeA,SAAQ;AACzC,cAAMA,UAAS,kBAAkB,OAAO;AACxC,cAAM,gBAAgB,cAAcA,WAAU,OAAO;AAAA,MACzD,WAAW,QAAQ,cAAc,aAAa;AAC1C,cAAMA,YAAW,uCAAgB;AAAA,UAC7B,KAAK,2BAA2B,MAAM,KAAK,gBAAgB,mBAAmB,SAAS,OAAO,CAAC;AAAA,UAC/F;AAAA,QACJ;AACA,aAAK,aAAa,eAAeA,SAAQ;AACzC,cAAMA,UAAS,KAAK,+BAAkB,eAAe,IAAI,WAAW,CAAC,GAAG;AAAA,UACpE,6BAA6B,QAAQ,aAAa;AAAA,QACtD,CAAC;AACD,cAAMA,UAAS,MAAM;AACrB,eAAO;AAAA,UACH,gCAAgC,SAAS,iBAAiB,QAAQ,cAAc,UAAU;AAAA,QAC9F;AAAA,MACJ,OAAO;AACH,YAAI,oBAAoB,QAAW;AAC/B,gBAAM,IAAI,+BAAgB,wBAAwB,QAAQ,cAAc,UAAU,EAAE;AAAA,QACxF;AACA,YAAI,aAAa;AACb,iBAAO;AAAA,YACH,8BAA8B,SAAS,mCAAmC,QAAQ,cAAc,UAAU;AAAA,UAC9G;AACA;AAAA,QACJ,OAAO;AACH,iBAAO;AAAA,YACH,iCAAiC,SAAS,iBACtC,QAAQ,cAAc,UAC1B,mBAAmB,aAAa,kBAAkB,QAAQ,EAAE,MAAM,sBAAO,OAAO,OAAO,CAAC;AAAA,UAC5F;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,MAAM,eAAe,eAAuB;AACxC,UAAM,WAAW,KAAK,WAAW,IAAI,aAAa;AAClD,QAAI,aAAa,QAAW;AACxB,aAAO,KAAK,uBAAuB,aAAa,0CAA0C;AAC1F;AAAA,IACJ;AACA,UAAM,EAAE,QAAQ,IAAI;AACpB,QAAI,QAAQ,YAAY,QAAQ,8BAA8B;AAC1D,aAAO;AAAA,QACH,kBAAkB,aAAa,YAAY,QAAQ,IAAI;AAAA,MAC3D;AACA,UAAI;AACA,cAAM,KAAK,cAAc,OAAwB;AAAA,MACrD,SAAS,OAAO;AACZ,eAAO,MAAM,yBAAyB,QAAQ,IAAI,eAAe,KAAK;AAAA,MAC1E;AAAA,IACJ;AACA,SAAK,WAAW,OAAO,aAAa;AAAA,EACxC;AAAA,EAEA,MAAM,cAAc,SAAwB;AACxC,UAAM,YAAY,QAAQ;AAC1B,UAAM,cAAc,QAAQ;AAE5B,UAAM,oBAAoB;AAC1B,QAAI,kBAAkB,kBAAkB;AAEpC;AAAA,IACJ;AACA,sBAAkB,mBAAmB;AAErC,eAAW,CAAC,gBAAgB,QAAQ,KAAK,KAAK,WAAW,QAAQ,GAAG;AAChE,UAAI,SAAS,QAAQ,OAAO,WAAW;AACnC,cAAM,SAAS,QAAQ;AAAA,MAC3B;AAAA,IACJ;AACA,QAAI,QAAQ,6BAA6B;AACrC,YAAM,UAAU,KAAK,gBAAgB,qBAAqB,OAAO;AACjE,aAAO,MAAM,uBAAuB,QAAQ,IAAI,OAAO,SAAS,IAAI,EAAE;AACtE,UAAI,YAAY,QAAW;AACvB,cAAM,WAAW,KAAK,4BAA4B,SAAS,uCAA0B;AACrF,YAAI,aAAa,QAAW;AACxB,iBAAO,MAAM,sBAAsB,SAAS,EAAE,qBAAqB,WAAW,EAAE;AAChF,cAAI;AACA,kBAAM,YAAY,IAAI,qDAAuB,QAAQ;AACrD,kBAAM,UAAU,iBAAiB;AACjC,kBAAM,UAAU,MAAM;AAAA,UAC1B,SAAS,OAAO;AACZ,gBAAI,iBAAiB,0BAA0B;AAC3C,qBAAO,MAAM,yDAAyD;AAAA,YAC1E,OAAO;AACH,qBAAO,MAAM,yBAAyB,KAAK;AAAA,YAC/C;AAAA,UACJ;AAAA,QACJ;AACA,cAAM,SAAS,QAAQ;AAAA,MAC3B;AAAA,IACJ;AACA,QAAI,QAAQ,8BAA8B;AACtC,YAAM,QAAQ,QAAQ,OAAO,KAAK;AAAA,IACtC;AAAA,EACJ;AAAA,EAEA,aAAa,eAAuB,UAA2B;AAC3D,aAAS,OAAO,GAAG,MAAM,KAAK,eAAe,aAAa,CAAC;AAC3D,SAAK,WAAW,IAAI,eAAe,QAAQ;AAK3C,SAAK,yBAAyB,SAAS,QAAQ,EAAE;AAAA,EACrD;AAAA,EAEA,yBAAyB,WAAmB;AACxC,QAAI,cAAc,mDAA6B;AAE3C;AAAA,IACJ;AACA,UAAM,mBAAmB,MAAM,KAAK,KAAK,WAAW,OAAO,CAAC,EAAE;AAAA,MAC1D,cAAY,SAAS,QAAQ,OAAO,aAAa,CAAC,SAAS;AAAA,IAC/D;AACA,QAAI,iBAAiB,UAAU,0CAA0C;AACrE;AAAA,IACJ;AAEA,UAAM,kBAAkB,iBAAiB,CAAC;AAC1C,WAAO,MAAM,2BAA2B,gBAAgB,EAAE,gBAAgB,SAAS,EAAE;AACrF,oBAAgB,MAAM,EAAE,MAAM,WAAS,OAAO,MAAM,0BAA0B,KAAK,CAAC;AAAA,EACxF;AAAA,EAEA,2BAA2B,SAAiD;AACxE,WAAO;AAAA,MACH;AAAA,MACA,wBAAwB,KAAK,gBAAgB;AAAA,MAC7C,qBAAqB,MAAM,KAAK,gBAAgB,oBAAoB,KAAK,QAAQ,OAAO;AAAA,IAC5F;AAAA,EACJ;AAAA,EAEA,aAAa,oBAAwC;AACjD,UAAM,eAAe,8BAA8B;AACnD,SAAK,WAAW;AAAA,MACZ;AAAA,MACA,mBAAmB,OAAO,CAAC,QAAQ,SAAS;AACxC,YAAI,gBAAgB,KAAK,SAAS,OAAO,gBAAgB;AACrD,iBAAO;AAAA,YACH,kCAAkC,KAAK,MAAM,SAAS,OAAO,IAAI,sDAAsD,OAAO,cAAc;AAAA,UAChJ;AACA;AAAA,QACJ;AAEA,YAAI;AACA,eAAK,UAAU,QAAQ,IAAI,EAAE;AAAA,YAAM,WAC/B,OAAO,KAAK,iBAAiB,6BAAc,MAAM,UAAU,KAAK;AAAA,UACpE;AAAA,QACJ,SAAS,OAAO;AACZ,iBAAO;AAAA,YACH;AAAA,YACA,iBAAiB,6BAAc,MAAM,UAAU;AAAA,UACnD;AAAA,QACJ;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ;AAAA,EAEA,gBAAgB,oBAAwC;AACpD,UAAM,WAAW,KAAK,WAAW,IAAI,kBAAkB;AACvD,QAAI,aAAa,QAAW;AACxB;AAAA,IACJ;AACA,SAAK,WAAW,OAAO,kBAAkB;AAEzC,UAAM,SAAS,SACV,MAAM,EACN,MAAM,OAAK,OAAO,MAAM,kCAAkC,CAAC,CAAC,EAC5D,QAAQ,MAAM,KAAK,SAAS,OAAO,MAAM,CAAC;AAC/C,SAAK,SAAS,IAAI,MAAM;AAAA,EAC5B;AACJ;AAEO,MAAM,gBAAgB;AAAA,EACjB,kBAAkB,sBAAO,gBAAgB;AAAA,EAEjD,wBAAwB;AACpB,SAAK;AACL,QAAI,KAAK,kBAAkB,OAAQ;AAC/B,WAAK,kBAAkB;AAAA,IAC3B;AACA,WAAO,KAAK;AAAA,EAChB;AACJ;",
4
+ "mappings": "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",
5
5
  "names": ["exchange"]
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InsecureSession.d.ts","sourceRoot":"","sources":["../../../src/session/InsecureSession.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAgB,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACxG,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAG/D,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,cAAc,EAA+B,MAAM,qBAAqB,CAAC;AAIlF,qBAAa,eAAgB,SAAQ,OAAO;;IAExC,QAAQ,CAAC,4BAA4B,SAAS;IAC9C,QAAQ,CAAC,WAAW,QAAQ;gBAEhB,IAAI,EAAE;QACd,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,cAAc,EAAE,cAAc,CAAC;QAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;QAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;KACzB;IAUD,IAAI,QAAQ,YAEX;IAED,IAAI,MAAM,YAET;IAED,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,cAAc;IAI7C,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAIhC,IAAI,uBAAuB,IAAI,UAAU,CAExC;IAED,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIhC,IAAI,IAAI,WAEP;IAED,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,IAAI,MAAM,WAET;IAED,IAAI,UAAU,cAEb;IAED,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAEK,OAAO;IAIP,GAAG;CAIZ"}
1
+ {"version":3,"file":"InsecureSession.d.ts","sourceRoot":"","sources":["../../../src/session/InsecureSession.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAgB,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACxG,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAG/D,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,cAAc,EAA+B,MAAM,qBAAqB,CAAC;AAIlF,qBAAa,eAAgB,SAAQ,OAAO;;IAExC,QAAQ,CAAC,4BAA4B,SAAS;IAC9C,QAAQ,CAAC,WAAW,QAAQ;gBAEhB,IAAI,EAAE;QACd,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,cAAc,EAAE,cAAc,CAAC;QAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;QAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;KACzB;IAUD,IAAI,QAAQ,YAEX;IAED,IAAI,MAAM,YAET;IAED,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,cAAc;IAI7C,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAIhC,IAAI,uBAAuB,IAAI,UAAU,CAExC;IAED,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIhC,IAAI,IAAI,WAEP;IAED,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,IAAI,MAAM,WAET;IAED,IAAI,UAAU,cAEb;IAED,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAEK,OAAO;IAKP,GAAG;CAIZ"}
@@ -86,6 +86,7 @@ class InsecureSession extends import_Session.Session {
86
86
  }
87
87
  async destroy() {
88
88
  await this.end();
89
+ await this.destroyed.emit();
89
90
  }
90
91
  async end() {
91
92
  logger.info(`End insecure session ${this.name}`);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/session/InsecureSession.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAwC;AACxC,mBAAuB;AACvB,0BAA6E;AAG7E,mCAA6D;AAC7D,2BAAwC;AACxC,qBAAiD;AACjD,4BAA4D;AAd5D;AAAA;AAAA;AAAA;AAAA;AAgBA,MAAM,SAAS,sBAAO,IAAI,iBAAiB;AAEpC,MAAM,wBAAwB,uBAAQ;AAAA,EAChC;AAAA,EACA,+BAA+B;AAAA,EAC/B,cAAc;AAAA,EAEvB,YAAY,MAMT;AACC,UAAM,EAAE,iBAAiB,YAAY,IAAI;AACzC,UAAM;AAAA,MACF,GAAG;AAAA,MACH,oBAAoB,CAAC;AAAA;AAAA,MACrB,uBAAuB,IAAI,0EAA6C;AAAA,IAC5E,CAAC;AACD,SAAK,mBAAmB,mBAAmB,oBAAO,wBAAwB;AAAA,EAC9E;AAAA,EAEA,IAAI,WAAW;AACX,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,SAAS;AACT,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,QAAuC;AAC1C,WAAO,iCAAa,cAAc,MAAM;AAAA,EAC5C;AAAA,EAEA,OAAO,SAA0B;AAC7B,WAAO,iCAAa,cAAc,OAAO;AAAA,EAC7C;AAAA,EAEA,IAAI,0BAAsC;AACtC,UAAM,IAAI,+BAAgB,sCAAsC;AAAA,EACpE;AAAA,EAEA,UAAU,SAAuB;AAC7B,UAAM,IAAI,+BAAgB,sCAAsC;AAAA,EACpE;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,YAAY,KAAK,gBAAgB;AAAA,EAC5C;AAAA,EAEA,IAAI,KAAa;AACb,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,gBAAwB;AACxB,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,aAAa;AACb,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,mBAA2B;AAC3B,UAAM,IAAI,6CAAwB,sCAAsC;AAAA,EAC5E;AAAA,EAEA,MAAM,UAAU;AACZ,UAAM,KAAK,IAAI;AAAA,EACnB;AAAA,EAEA,MAAM,MAAM;AACR,WAAO,KAAK,wBAAwB,KAAK,IAAI,EAAE;AAC/C,SAAK,SAAS,iBAAiB,OAAO,KAAK,MAAM;AAAA,EACrD;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAwC;AACxC,mBAAuB;AACvB,0BAA6E;AAG7E,mCAA6D;AAC7D,2BAAwC;AACxC,qBAAiD;AACjD,4BAA4D;AAd5D;AAAA;AAAA;AAAA;AAAA;AAgBA,MAAM,SAAS,sBAAO,IAAI,iBAAiB;AAEpC,MAAM,wBAAwB,uBAAQ;AAAA,EAChC;AAAA,EACA,+BAA+B;AAAA,EAC/B,cAAc;AAAA,EAEvB,YAAY,MAMT;AACC,UAAM,EAAE,iBAAiB,YAAY,IAAI;AACzC,UAAM;AAAA,MACF,GAAG;AAAA,MACH,oBAAoB,CAAC;AAAA;AAAA,MACrB,uBAAuB,IAAI,0EAA6C;AAAA,IAC5E,CAAC;AACD,SAAK,mBAAmB,mBAAmB,oBAAO,wBAAwB;AAAA,EAC9E;AAAA,EAEA,IAAI,WAAW;AACX,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,SAAS;AACT,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,QAAuC;AAC1C,WAAO,iCAAa,cAAc,MAAM;AAAA,EAC5C;AAAA,EAEA,OAAO,SAA0B;AAC7B,WAAO,iCAAa,cAAc,OAAO;AAAA,EAC7C;AAAA,EAEA,IAAI,0BAAsC;AACtC,UAAM,IAAI,+BAAgB,sCAAsC;AAAA,EACpE;AAAA,EAEA,UAAU,SAAuB;AAC7B,UAAM,IAAI,+BAAgB,sCAAsC;AAAA,EACpE;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,YAAY,KAAK,gBAAgB;AAAA,EAC5C;AAAA,EAEA,IAAI,KAAa;AACb,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,gBAAwB;AACxB,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,aAAa;AACb,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,mBAA2B;AAC3B,UAAM,IAAI,6CAAwB,sCAAsC;AAAA,EAC5E;AAAA,EAEA,MAAM,UAAU;AACZ,UAAM,KAAK,IAAI;AACf,UAAM,KAAK,UAAU,KAAK;AAAA,EAC9B;AAAA,EAEA,MAAM,MAAM;AACR,WAAO,KAAK,wBAAwB,KAAK,IAAI,EAAE;AAC/C,SAAK,SAAS,iBAAiB,OAAO,KAAK,MAAM;AAAA,EACrD;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SecureSession.d.ts","sourceRoot":"","sources":["../../../src/session/SecureSession.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SecureSession.d.ts","sourceRoot":"","sources":["../../../src/session/SecureSession.ts"],"names":[],"mappings":"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"}
@@ -273,9 +273,13 @@ class SecureSession extends import_Session.Session {
273
273
  await this.closer;
274
274
  } catch (error) {
275
275
  import_ChannelManager.NoChannelError.accept(error);
276
+ } finally {
277
+ await this.destroyed.emit();
276
278
  }
279
+ return;
277
280
  }
278
281
  }
282
+ await this.destroyed.emit();
279
283
  }
280
284
  /**
281
285
  * The peer node's address.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/session/SecureSession.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { AsyncObservable } from "#general";
6
7
  import { NodeId } from "#types";
7
8
  import { DecodedMessage, DecodedPacket, Message, Packet } from "../codec/MessageCodec.js";
8
9
  import { Fabric } from "../fabric/Fabric.js";
@@ -63,7 +64,7 @@ export declare abstract class Session {
63
64
  /**
64
65
  * If the ExchangeManager performs async work to clean up a session it sets this promise. This is because
65
66
  * historically we didn't return from destroy() until ExchangeManager was complete. Not sure if this is entirely
66
- * necessary but it makes sense so this allows us to maintain the old behavior.
67
+ * necessary, but it makes sense so this allows us to maintain the old behavior.
67
68
  */
68
69
  closer?: Promise<void>;
69
70
  constructor(args: {
@@ -73,6 +74,7 @@ export declare abstract class Session {
73
74
  sessionParameters?: SessionParameterOptions;
74
75
  setActiveTimestamp: boolean;
75
76
  });
77
+ get destroyed(): AsyncObservable<[], void>;
76
78
  notifyActivity(messageReceived: boolean): void;
77
79
  isPeerActive(): boolean;
78
80
  getIncrementedMessageCounter(): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/session/Session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/session/Session.ts"],"names":[],"mappings":"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"}
@@ -57,9 +57,10 @@ class Session {
57
57
  /**
58
58
  * If the ExchangeManager performs async work to clean up a session it sets this promise. This is because
59
59
  * historically we didn't return from destroy() until ExchangeManager was complete. Not sure if this is entirely
60
- * necessary but it makes sense so this allows us to maintain the old behavior.
60
+ * necessary, but it makes sense so this allows us to maintain the old behavior.
61
61
  */
62
62
  closer;
63
+ #destroyed = (0, import_general.AsyncObservable)();
63
64
  constructor(args) {
64
65
  const {
65
66
  manager,
@@ -90,6 +91,9 @@ class Session {
90
91
  this.activeTimestamp = this.timestamp;
91
92
  }
92
93
  }
94
+ get destroyed() {
95
+ return this.#destroyed;
96
+ }
93
97
  notifyActivity(messageReceived) {
94
98
  this.timestamp = import_general.Time.nowMs();
95
99
  if (messageReceived) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/session/Session.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAqB;AANrB;AAAA;AAAA;AAAA;AAAA;AAkBO,MAAM,6BAA6B;AAMnC,MAAM,2BAA2B;AAGjC,MAAM,8BAA8B;AAGpC,MAAM,8BAA8B;AAGpC,MAAM,qCAAqC;AAM3C,MAAM,iCAAiC;AAMvC,MAAM,gCAAgC;AActC,MAAe,QAAQ;AAAA,EAG1B;AAAA,EACA,YAAY,oBAAK,MAAM;AAAA,EACvB,kBAAkB;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOnB;AAAA,EAEA,YAAY,MAMT;AACC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA,mBAAmB;AAAA,QACf,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,oBAAoB;AAAA,QACpB,oBAAoB;AAAA,QACpB,2BAA2B;AAAA,QAC3B,uBAAuB;AAAA,QACvB,oBAAoB;AAAA,MACxB,IAAI,CAAC;AAAA,MACL;AAAA,IACJ,IAAI;AACJ,SAAK,WAAW;AAChB,SAAK,iBAAiB;AACtB,SAAK,wBAAwB;AAC7B,SAAK,iBAAiB;AACtB,SAAK,mBAAmB;AACxB,SAAK,oBAAoB;AACzB,SAAK,oBAAoB;AACzB,SAAK,2BAA2B;AAChC,SAAK,uBAAuB;AAC5B,SAAK,oBAAoB;AACzB,QAAI,oBAAoB;AACpB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,eAAe,iBAA0B;AACrC,SAAK,YAAY,oBAAK,MAAM;AAC5B,QAAI,iBAAiB;AAEjB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,eAAwB;AACpB,WAAO,oBAAK,MAAM,IAAI,KAAK,kBAAkB,KAAK;AAAA,EACtD;AAAA,EAEA,+BAA+B;AAC3B,WAAO,KAAK,eAAe,sBAAsB;AAAA,EACrD;AAAA,EAEA,qBAAqB,gBAAwB,eAAwB;AACjE,SAAK,sBAAsB,qBAAqB,cAAc;AAAA,EAClE;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,aAAgC;AAChC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,IAAI;AACJ,WAAO;AAAA,MACH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ;AAAA,EACJ;AAAA,EAgBA,IAAc,UAAU;AACpB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,QAAQ;AACR,WAAO,KAAK,UAAU;AAAA,EAC1B;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAsC;AANtC;AAAA;AAAA;AAAA;AAAA;AAkBO,MAAM,6BAA6B;AAMnC,MAAM,2BAA2B;AAGjC,MAAM,8BAA8B;AAGpC,MAAM,8BAA8B;AAGpC,MAAM,qCAAqC;AAM3C,MAAM,iCAAiC;AAMvC,MAAM,gCAAgC;AActC,MAAe,QAAQ;AAAA,EAG1B;AAAA,EACA,YAAY,oBAAK,MAAM;AAAA,EACvB,kBAAkB;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOnB;AAAA,EACA,iBAAa,gCAAoB;AAAA,EAEjC,YAAY,MAMT;AACC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA,mBAAmB;AAAA,QACf,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,oBAAoB;AAAA,QACpB,oBAAoB;AAAA,QACpB,2BAA2B;AAAA,QAC3B,uBAAuB;AAAA,QACvB,oBAAoB;AAAA,MACxB,IAAI,CAAC;AAAA,MACL;AAAA,IACJ,IAAI;AACJ,SAAK,WAAW;AAChB,SAAK,iBAAiB;AACtB,SAAK,wBAAwB;AAC7B,SAAK,iBAAiB;AACtB,SAAK,mBAAmB;AACxB,SAAK,oBAAoB;AACzB,SAAK,oBAAoB;AACzB,SAAK,2BAA2B;AAChC,SAAK,uBAAuB;AAC5B,SAAK,oBAAoB;AACzB,QAAI,oBAAoB;AACpB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,IAAI,YAAY;AACZ,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,eAAe,iBAA0B;AACrC,SAAK,YAAY,oBAAK,MAAM;AAC5B,QAAI,iBAAiB;AAEjB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,eAAwB;AACpB,WAAO,oBAAK,MAAM,IAAI,KAAK,kBAAkB,KAAK;AAAA,EACtD;AAAA,EAEA,+BAA+B;AAC3B,WAAO,KAAK,eAAe,sBAAsB;AAAA,EACrD;AAAA,EAEA,qBAAqB,gBAAwB,eAAwB;AACjE,SAAK,sBAAsB,qBAAqB,cAAc;AAAA,EAClE;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,aAAgC;AAChC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,IAAI;AACJ,WAAO;AAAA,MACH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ;AAAA,EACJ;AAAA,EAgBA,IAAc,UAAU;AACpB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,QAAQ;AACR,WAAO,KAAK,UAAU;AAAA,EAC1B;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CaseClient.d.ts","sourceRoot":"","sources":["../../../../src/session/case/CaseClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,UAAU;;gBAGP,QAAQ,EAAE,cAAc;IAI9B,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,wBAAwB,CAAC,EAAE,MAAM;;;;CAsM9G"}
1
+ {"version":3,"file":"CaseClient.d.ts","sourceRoot":"","sources":["../../../../src/session/case/CaseClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,UAAU;;gBAGP,QAAQ,EAAE,cAAc;IAI9B,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,wBAAwB,CAAC,EAAE,MAAM;;;;CA4M9G"}
@@ -22,6 +22,7 @@ __export(CaseClient_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(CaseClient_exports);
24
24
  var import_general = require("#general");
25
+ var import_types = require("#types");
25
26
  var import_CertificateManager = require("../../certificate/CertificateManager.js");
26
27
  var import_CaseMessages = require("./CaseMessages.js");
27
28
  var import_CaseMessenger = require("./CaseMessenger.js");
@@ -75,7 +76,12 @@ class CaseClient {
75
76
  const { sigma2Bytes, sigma2, sigma2Resume } = await messenger.readSigma2();
76
77
  if (sigma2Resume !== void 0) {
77
78
  if (resumptionRecord === void 0) throw new import_general.UnexpectedDataError("Received an unexpected sigma2Resume.");
78
- const { sharedSecret, fabric: fabric2, sessionParameters: resumptionSessionParams } = resumptionRecord;
79
+ const {
80
+ sharedSecret,
81
+ fabric: fabric2,
82
+ sessionParameters: resumptionSessionParams,
83
+ caseAuthenticatedTags
84
+ } = resumptionRecord;
79
85
  const { responderSessionId: peerSessionId, resumptionId, resumeMic } = sigma2Resume;
80
86
  const sessionParameters = {
81
87
  ...exchange.session.parameters,
@@ -94,11 +100,12 @@ class CaseClient {
94
100
  salt: secureSessionSalt,
95
101
  isInitiator: true,
96
102
  isResumption: true,
97
- peerSessionParameters: sessionParameters
103
+ peerSessionParameters: sessionParameters,
104
+ caseAuthenticatedTags
98
105
  });
99
106
  await messenger.sendSuccess();
100
107
  logger.info(
101
- `Case client: Session resumed with ${messenger.getChannelName()} and parameters`,
108
+ `Case client: Session ${secureSession.id} successfully resumed with ${messenger.getChannelName()} for Fabric ${import_types.NodeId.toHexString(fabric2.nodeId)}(index ${fabric2.fabricIndex}) and PeerNode ${import_types.NodeId.toHexString(peerNodeId)} and parameters`,
102
109
  secureSession.parameterDiagnostics()
103
110
  );
104
111
  resumptionRecord.resumptionId = resumptionId;
@@ -144,26 +151,21 @@ class CaseClient {
144
151
  import_general.Crypto.verify((0, import_general.PublicKey)(peerPublicKey), peerSignatureData, peerSignature);
145
152
  if (peerNodeIdNOCert !== peerNodeId) {
146
153
  throw new import_general.UnexpectedDataError(
147
- "The node ID in the peer certificate doesn't match the expected peer node ID"
148
- );
149
- }
150
- if (peerNodeIdNOCert !== peerNodeId) {
151
- throw new import_general.UnexpectedDataError(
152
- "The node ID in the peer certificate doesn't match the expected peer node ID"
154
+ `The node ID in the peer certificate ${peerNodeIdNOCert} doesn't match the expected peer node ID ${peerNodeId}`
153
155
  );
154
156
  }
155
157
  if (peerFabricIdNOCert !== fabric.fabricId) {
156
158
  throw new import_general.UnexpectedDataError(
157
- "The fabric ID in the peer certificate doesn't match the expected fabric ID"
159
+ `The fabric ID in the peer certificate ${peerFabricIdNOCert} doesn't match the expected fabric ID ${fabric.fabricId}`
158
160
  );
159
161
  }
160
162
  if (peerIntermediateCACert !== void 0) {
161
163
  const {
162
164
  subject: { fabricId: peerFabricIdIcaCert }
163
165
  } = import_CertificateManager.TlvIntermediateCertificate.decode(peerIntermediateCACert);
164
- if (peerFabricIdIcaCert !== fabric.fabricId) {
166
+ if (peerFabricIdIcaCert !== void 0 && peerFabricIdIcaCert !== fabric.fabricId) {
165
167
  throw new import_general.UnexpectedDataError(
166
- "The fabric ID in the peer intermediate CA certificate doesn't match the expected fabric ID"
168
+ `The fabric ID in the peer intermediate CA certificate ${peerFabricIdIcaCert} doesn't match the expected fabric ID ${fabric.fabricId}`
167
169
  );
168
170
  }
169
171
  }
@@ -181,6 +183,7 @@ class CaseClient {
181
183
  const encrypted = import_general.Crypto.encrypt(sigma3Key, encryptedData, import_CaseMessages.TBE_DATA3_NONCE);
182
184
  const sigma3Bytes = await messenger.sendSigma3({ encrypted });
183
185
  await messenger.waitForSuccess("Sigma3-Success");
186
+ const { caseAuthenticatedTags } = resumptionRecord ?? {};
184
187
  const secureSessionSalt = import_general.Bytes.concat(
185
188
  operationalIdentityProtectionKey,
186
189
  import_general.Crypto.hash([sigma1Bytes, sigma2Bytes, sigma3Bytes])
@@ -194,10 +197,13 @@ class CaseClient {
194
197
  salt: secureSessionSalt,
195
198
  isInitiator: true,
196
199
  isResumption: false,
197
- peerSessionParameters: sessionParameters
200
+ peerSessionParameters: sessionParameters,
201
+ caseAuthenticatedTags
198
202
  });
199
203
  logger.info(
200
- `Case client: Paired successfully with ${messenger.getChannelName()} and parameters`,
204
+ `Case client Session ${secureSession.id} established successfully with ${messenger.getChannelName()} for Fabric ${import_types.NodeId.toHexString(
205
+ fabric.nodeId
206
+ )}(index ${fabric.fabricIndex}) and PeerNode ${import_types.NodeId.toHexString(peerNodeId)}and parameters`,
201
207
  secureSession.parameterDiagnostics()
202
208
  );
203
209
  resumptionRecord = {
@@ -205,7 +211,8 @@ class CaseClient {
205
211
  peerNodeId,
206
212
  sharedSecret,
207
213
  resumptionId: peerResumptionId,
208
- sessionParameters: secureSession.parameters
214
+ sessionParameters: secureSession.parameters,
215
+ caseAuthenticatedTags
209
216
  };
210
217
  }
211
218
  await messenger.close();
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/session/case/CaseClient.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["fabric"]
6
6
  }
@@ -200,7 +200,7 @@ class CaseServer {
200
200
  caseAuthenticatedTags
201
201
  });
202
202
  logger.info(
203
- `session ${secureSession.id} created with ${messenger.getChannelName()} for Fabric ${import_types.NodeId.toHexString(
203
+ `Session ${secureSession.id} created with ${messenger.getChannelName()} for Fabric ${import_types.NodeId.toHexString(
204
204
  fabric.nodeId
205
205
  )}(index ${fabric.fabricIndex}) and PeerNode ${import_types.NodeId.toHexString(peerNodeId)}`,
206
206
  "with CATs",
@@ -1 +1 @@
1
- {"version":3,"file":"ExchangeManager.d.ts","sourceRoot":"","sources":["../../../src/protocol/ExchangeManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,OAAO,EAEP,WAAW,EACX,aAAa,EAIb,WAAW,EAKX,qBAAqB,EAExB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,OAAO,EAA6B,MAAM,0BAA0B,CAAC;AAG9E,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAA+B,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAA0B,MAAM,sBAAsB,CAAC;AAEnG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD,qBAAa,wBAAyB,SAAQ,WAAW;CAAG;AAE5D,qBAAa,cAAe,YAAW,OAAO,CAAC,OAAO,CAAC;;IAK/C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO;IALtB,MAAM,UAAS;gBAIT,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,EAC5B,OAAO,EAAE,OAAO,EACzB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAKvC,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAE9C;IAED,4CAA4C;IAC5C,IAAI,UAAU,YAEb;IAED,IAAI,IAAI,mCAEP;IAED;;;OAGG;IACH,IAAI,cAAc,WAEjB;IAED,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAatE,IAAI,IAAI,WAEP;IAEK,KAAK;CAQd;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,mBAAmB,EAAE,qBAAqB,CAAC;IAC3C,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;CAClC;AAED,qBAAa,eAAe;;gBAYZ,OAAO,EAAE,sBAAsB;IAoB3C,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAU9C,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,QAAQ,EAAE,eAAe;IAO5C,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM;IAIzD,2BAA2B,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM;IAQjE,KAAK;YAkBG,SAAS;IA2HjB,cAAc,CAAC,aAAa,EAAE,MAAM;CAyI7C;AAED,qBAAa,eAAe;IACxB,OAAO,CAAC,eAAe,CAA4B;IAEnD,qBAAqB;CAOxB"}
1
+ {"version":3,"file":"ExchangeManager.d.ts","sourceRoot":"","sources":["../../../src/protocol/ExchangeManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,OAAO,EAEP,WAAW,EACX,aAAa,EAIb,WAAW,EAKX,qBAAqB,EAExB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,OAAO,EAA6B,MAAM,0BAA0B,CAAC;AAG9E,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAA+B,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAA0B,MAAM,sBAAsB,CAAC;AAEnG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD,qBAAa,wBAAyB,SAAQ,WAAW;CAAG;AAE5D,qBAAa,cAAe,YAAW,OAAO,CAAC,OAAO,CAAC;;IAK/C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO;IALtB,MAAM,UAAS;gBAIT,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,EAC5B,OAAO,EAAE,OAAO,EACzB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAMvC,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAE9C;IAED,4CAA4C;IAC5C,IAAI,UAAU,YAEb;IAED,IAAI,IAAI,mCAEP;IAED;;;OAGG;IACH,IAAI,cAAc,WAEjB;IAED,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAatE,IAAI,IAAI,WAEP;IAEK,KAAK;CAQd;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,mBAAmB,EAAE,qBAAqB,CAAC;IAC3C,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;CAClC;AAED,qBAAa,eAAe;;gBAYZ,OAAO,EAAE,sBAAsB;IAoB3C,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAU9C,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,QAAQ,EAAE,eAAe;IAO5C,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM;IAIzD,2BAA2B,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM;IAQjE,KAAK;YAkBG,SAAS;IA2HjB,cAAc,CAAC,aAAa,EAAE,MAAM;CA4I7C;AAED,qBAAa,eAAe;IACxB,OAAO,CAAC,eAAe,CAA4B;IAEnD,qBAAqB;CAOxB"}
@@ -32,6 +32,7 @@ class MessageChannel {
32
32
  this.channel = channel;
33
33
  this.session = session;
34
34
  this.#closeCallback = closeCallback;
35
+ this.session.destroyed.on(() => this.close());
35
36
  }
36
37
  closed = false;
37
38
  #closeCallback;
@@ -203,7 +204,7 @@ class ExchangeManager {
203
204
  if (protocolHandler !== void 0 && message.payloadHeader.isInitiatorMessage && !isDuplicate) {
204
205
  if (message.payloadHeader.messageType == SecureMessageType.StandaloneAck && !message.payloadHeader.requiresAck) {
205
206
  logger.debug(
206
- `Ignoring unsolicited standalone ack message ${messageId} for protocol ${message.payloadHeader.protocolId} and exchange id ${message.payloadHeader.exchangeId}.`
207
+ `Ignoring unsolicited standalone ack message ${messageId} for protocol ${message.payloadHeader.protocolId} and exchange id ${message.payloadHeader.exchangeId} on channel ${channel.name}`
207
208
  );
208
209
  return;
209
210
  }
@@ -225,7 +226,7 @@ class ExchangeManager {
225
226
  });
226
227
  await exchange2.close();
227
228
  logger.debug(
228
- `Ignoring unsolicited message ${messageId} for protocol ${message.payloadHeader.protocolId}.`
229
+ `Ignoring unsolicited message ${messageId} for protocol ${message.payloadHeader.protocolId} on channel ${channel.name}`
229
230
  );
230
231
  } else {
231
232
  if (protocolHandler === void 0) {
@@ -233,12 +234,12 @@ class ExchangeManager {
233
234
  }
234
235
  if (isDuplicate) {
235
236
  logger.info(
236
- `Ignoring duplicate message ${messageId} (requires no ack) for protocol ${message.payloadHeader.protocolId}.`
237
+ `Ignoring duplicate message ${messageId} (requires no ack) for protocol ${message.payloadHeader.protocolId} on channel ${channel.name}`
237
238
  );
238
239
  return;
239
240
  } else {
240
241
  logger.info(
241
- `Discarding unexpected message ${messageId} for protocol ${message.payloadHeader.protocolId}, exchangeIndex ${exchangeIndex} and sessionId ${session.id} : ${Logger.toJSON(message)}`
242
+ `Discarding unexpected message ${messageId} for protocol ${message.payloadHeader.protocolId}, exchangeIndex ${exchangeIndex} and sessionId ${session.id} on channel ${channel.name}: ${Logger.toJSON(message)}`
242
243
  );
243
244
  }
244
245
  }
@@ -278,7 +279,7 @@ class ExchangeManager {
278
279
  }
279
280
  if (session.sendCloseMessageWhenClosing) {
280
281
  const channel = this.#channelManager.getChannelForSession(session);
281
- logger.debug(`Channel for session ${session.name} is ${channel?.name}`);
282
+ logger.debug(`Channel for session ${sessionName} is ${channel?.name}`);
282
283
  if (channel !== void 0) {
283
284
  const exchange = this.initiateExchangeWithChannel(channel, SECURE_CHANNEL_PROTOCOL_ID);
284
285
  if (exchange !== void 0) {
@@ -335,17 +336,20 @@ class ExchangeManager {
335
336
  transportInterface.onData((socket, data) => {
336
337
  if (udpInterface && data.length > socket.maxPayloadSize) {
337
338
  logger.warn(
338
- `Ignoring UDP message with size ${data.length} from ${socket.name}, which is larger than the maximum allowed size of ${socket.maxPayloadSize}.`
339
+ `Ignoring UDP message on channel ${socket.name} with size ${data.length} from ${socket.name}, which is larger than the maximum allowed size of ${socket.maxPayloadSize}.`
339
340
  );
340
341
  return;
341
342
  }
342
343
  try {
343
344
  this.onMessage(socket, data).catch(
344
- (error) => logger.info(error instanceof MatterError ? error.message : error)
345
+ (error) => logger.info(
346
+ `Error on channel ${socket.name}:`,
347
+ error instanceof MatterError ? error.message : error
348
+ )
345
349
  );
346
350
  } catch (error) {
347
351
  logger.info(
348
- "Ignoring UDP message with error",
352
+ `Ignoring UDP message on channel ${socket.name} with error`,
349
353
  error instanceof MatterError ? error.message : error
350
354
  );
351
355
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/protocol/ExchangeManager.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["exchange"]
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InsecureSession.d.ts","sourceRoot":"","sources":["../../../src/session/InsecureSession.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAgB,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACxG,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAG/D,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,cAAc,EAA+B,MAAM,qBAAqB,CAAC;AAIlF,qBAAa,eAAgB,SAAQ,OAAO;;IAExC,QAAQ,CAAC,4BAA4B,SAAS;IAC9C,QAAQ,CAAC,WAAW,QAAQ;gBAEhB,IAAI,EAAE;QACd,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,cAAc,EAAE,cAAc,CAAC;QAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;QAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;KACzB;IAUD,IAAI,QAAQ,YAEX;IAED,IAAI,MAAM,YAET;IAED,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,cAAc;IAI7C,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAIhC,IAAI,uBAAuB,IAAI,UAAU,CAExC;IAED,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIhC,IAAI,IAAI,WAEP;IAED,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,IAAI,MAAM,WAET;IAED,IAAI,UAAU,cAEb;IAED,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAEK,OAAO;IAIP,GAAG;CAIZ"}
1
+ {"version":3,"file":"InsecureSession.d.ts","sourceRoot":"","sources":["../../../src/session/InsecureSession.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAgB,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACxG,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAG/D,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,cAAc,EAA+B,MAAM,qBAAqB,CAAC;AAIlF,qBAAa,eAAgB,SAAQ,OAAO;;IAExC,QAAQ,CAAC,4BAA4B,SAAS;IAC9C,QAAQ,CAAC,WAAW,QAAQ;gBAEhB,IAAI,EAAE;QACd,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,cAAc,EAAE,cAAc,CAAC;QAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;QAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;KACzB;IAUD,IAAI,QAAQ,YAEX;IAED,IAAI,MAAM,YAET;IAED,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,cAAc;IAI7C,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAIhC,IAAI,uBAAuB,IAAI,UAAU,CAExC;IAED,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIhC,IAAI,IAAI,WAEP;IAED,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,IAAI,MAAM,WAET;IAED,IAAI,UAAU,cAEb;IAED,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAEK,OAAO;IAKP,GAAG;CAIZ"}
@@ -63,6 +63,7 @@ class InsecureSession extends Session {
63
63
  }
64
64
  async destroy() {
65
65
  await this.end();
66
+ await this.destroyed.emit();
66
67
  }
67
68
  async end() {
68
69
  logger.info(`End insecure session ${this.name}`);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/session/InsecureSession.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,QAAQ,uBAAuB;AACxC,SAAS,cAAc;AACvB,SAAiD,oBAA4B;AAG7E,SAAS,oDAAoD;AAC7D,SAAS,+BAA+B;AACxC,SAAS,eAAwC;AACjD,SAAyB,mCAAmC;AAE5D,MAAM,SAAS,OAAO,IAAI,iBAAiB;AAEpC,MAAM,wBAAwB,QAAQ;AAAA,EAChC;AAAA,EACA,+BAA+B;AAAA,EAC/B,cAAc;AAAA,EAEvB,YAAY,MAMT;AACC,UAAM,EAAE,iBAAiB,YAAY,IAAI;AACzC,UAAM;AAAA,MACF,GAAG;AAAA,MACH,oBAAoB,CAAC;AAAA;AAAA,MACrB,uBAAuB,IAAI,6CAA6C;AAAA,IAC5E,CAAC;AACD,SAAK,mBAAmB,mBAAmB,OAAO,wBAAwB;AAAA,EAC9E;AAAA,EAEA,IAAI,WAAW;AACX,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,SAAS;AACT,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,QAAuC;AAC1C,WAAO,aAAa,cAAc,MAAM;AAAA,EAC5C;AAAA,EAEA,OAAO,SAA0B;AAC7B,WAAO,aAAa,cAAc,OAAO;AAAA,EAC7C;AAAA,EAEA,IAAI,0BAAsC;AACtC,UAAM,IAAI,gBAAgB,sCAAsC;AAAA,EACpE;AAAA,EAEA,UAAU,SAAuB;AAC7B,UAAM,IAAI,gBAAgB,sCAAsC;AAAA,EACpE;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,YAAY,KAAK,gBAAgB;AAAA,EAC5C;AAAA,EAEA,IAAI,KAAa;AACb,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,gBAAwB;AACxB,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,aAAa;AACb,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,mBAA2B;AAC3B,UAAM,IAAI,wBAAwB,sCAAsC;AAAA,EAC5E;AAAA,EAEA,MAAM,UAAU;AACZ,UAAM,KAAK,IAAI;AAAA,EACnB;AAAA,EAEA,MAAM,MAAM;AACR,WAAO,KAAK,wBAAwB,KAAK,IAAI,EAAE;AAC/C,SAAK,SAAS,iBAAiB,OAAO,KAAK,MAAM;AAAA,EACrD;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,QAAQ,uBAAuB;AACxC,SAAS,cAAc;AACvB,SAAiD,oBAA4B;AAG7E,SAAS,oDAAoD;AAC7D,SAAS,+BAA+B;AACxC,SAAS,eAAwC;AACjD,SAAyB,mCAAmC;AAE5D,MAAM,SAAS,OAAO,IAAI,iBAAiB;AAEpC,MAAM,wBAAwB,QAAQ;AAAA,EAChC;AAAA,EACA,+BAA+B;AAAA,EAC/B,cAAc;AAAA,EAEvB,YAAY,MAMT;AACC,UAAM,EAAE,iBAAiB,YAAY,IAAI;AACzC,UAAM;AAAA,MACF,GAAG;AAAA,MACH,oBAAoB,CAAC;AAAA;AAAA,MACrB,uBAAuB,IAAI,6CAA6C;AAAA,IAC5E,CAAC;AACD,SAAK,mBAAmB,mBAAmB,OAAO,wBAAwB;AAAA,EAC9E;AAAA,EAEA,IAAI,WAAW;AACX,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,SAAS;AACT,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,QAAuC;AAC1C,WAAO,aAAa,cAAc,MAAM;AAAA,EAC5C;AAAA,EAEA,OAAO,SAA0B;AAC7B,WAAO,aAAa,cAAc,OAAO;AAAA,EAC7C;AAAA,EAEA,IAAI,0BAAsC;AACtC,UAAM,IAAI,gBAAgB,sCAAsC;AAAA,EACpE;AAAA,EAEA,UAAU,SAAuB;AAC7B,UAAM,IAAI,gBAAgB,sCAAsC;AAAA,EACpE;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,YAAY,KAAK,gBAAgB;AAAA,EAC5C;AAAA,EAEA,IAAI,KAAa;AACb,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,gBAAwB;AACxB,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,aAAa;AACb,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,mBAA2B;AAC3B,UAAM,IAAI,wBAAwB,sCAAsC;AAAA,EAC5E;AAAA,EAEA,MAAM,UAAU;AACZ,UAAM,KAAK,IAAI;AACf,UAAM,KAAK,UAAU,KAAK;AAAA,EAC9B;AAAA,EAEA,MAAM,MAAM;AACR,WAAO,KAAK,wBAAwB,KAAK,IAAI,EAAE;AAC/C,SAAK,SAAS,iBAAiB,OAAO,KAAK,MAAM;AAAA,EACrD;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SecureSession.d.ts","sourceRoot":"","sources":["../../../src/session/SecureSession.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SecureSession.d.ts","sourceRoot":"","sources":["../../../src/session/SecureSession.ts"],"names":[],"mappings":"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"}
@@ -258,9 +258,13 @@ class SecureSession extends Session {
258
258
  await this.closer;
259
259
  } catch (error) {
260
260
  NoChannelError.accept(error);
261
+ } finally {
262
+ await this.destroyed.emit();
261
263
  }
264
+ return;
262
265
  }
263
266
  }
267
+ await this.destroyed.emit();
264
268
  }
265
269
  /**
266
270
  * The peer node's address.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/session/SecureSession.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { AsyncObservable } from "#general";
6
7
  import { NodeId } from "#types";
7
8
  import { DecodedMessage, DecodedPacket, Message, Packet } from "../codec/MessageCodec.js";
8
9
  import { Fabric } from "../fabric/Fabric.js";
@@ -63,7 +64,7 @@ export declare abstract class Session {
63
64
  /**
64
65
  * If the ExchangeManager performs async work to clean up a session it sets this promise. This is because
65
66
  * historically we didn't return from destroy() until ExchangeManager was complete. Not sure if this is entirely
66
- * necessary but it makes sense so this allows us to maintain the old behavior.
67
+ * necessary, but it makes sense so this allows us to maintain the old behavior.
67
68
  */
68
69
  closer?: Promise<void>;
69
70
  constructor(args: {
@@ -73,6 +74,7 @@ export declare abstract class Session {
73
74
  sessionParameters?: SessionParameterOptions;
74
75
  setActiveTimestamp: boolean;
75
76
  });
77
+ get destroyed(): AsyncObservable<[], void>;
76
78
  notifyActivity(messageReceived: boolean): void;
77
79
  isPeerActive(): boolean;
78
80
  getIncrementedMessageCounter(): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/session/Session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/session/Session.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Time } from "#general";
6
+ import { AsyncObservable, Time } from "#general";
7
7
  const SESSION_ACTIVE_INTERVAL_MS = 300;
8
8
  const SESSION_IDLE_INTERVAL_MS = 500;
9
9
  const SESSION_ACTIVE_THRESHOLD_MS = 4e3;
@@ -27,9 +27,10 @@ class Session {
27
27
  /**
28
28
  * If the ExchangeManager performs async work to clean up a session it sets this promise. This is because
29
29
  * historically we didn't return from destroy() until ExchangeManager was complete. Not sure if this is entirely
30
- * necessary but it makes sense so this allows us to maintain the old behavior.
30
+ * necessary, but it makes sense so this allows us to maintain the old behavior.
31
31
  */
32
32
  closer;
33
+ #destroyed = AsyncObservable();
33
34
  constructor(args) {
34
35
  const {
35
36
  manager,
@@ -60,6 +61,9 @@ class Session {
60
61
  this.activeTimestamp = this.timestamp;
61
62
  }
62
63
  }
64
+ get destroyed() {
65
+ return this.#destroyed;
66
+ }
63
67
  notifyActivity(messageReceived) {
64
68
  this.timestamp = Time.nowMs();
65
69
  if (messageReceived) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/session/Session.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,YAAY;AAYd,MAAM,6BAA6B;AAMnC,MAAM,2BAA2B;AAGjC,MAAM,8BAA8B;AAGpC,MAAM,8BAA8B;AAGpC,MAAM,qCAAqC;AAM3C,MAAM,iCAAiC;AAMvC,MAAM,gCAAgC;AActC,MAAe,QAAQ;AAAA,EAG1B;AAAA,EACA,YAAY,KAAK,MAAM;AAAA,EACvB,kBAAkB;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOnB;AAAA,EAEA,YAAY,MAMT;AACC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA,mBAAmB;AAAA,QACf,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,oBAAoB;AAAA,QACpB,oBAAoB;AAAA,QACpB,2BAA2B;AAAA,QAC3B,uBAAuB;AAAA,QACvB,oBAAoB;AAAA,MACxB,IAAI,CAAC;AAAA,MACL;AAAA,IACJ,IAAI;AACJ,SAAK,WAAW;AAChB,SAAK,iBAAiB;AACtB,SAAK,wBAAwB;AAC7B,SAAK,iBAAiB;AACtB,SAAK,mBAAmB;AACxB,SAAK,oBAAoB;AACzB,SAAK,oBAAoB;AACzB,SAAK,2BAA2B;AAChC,SAAK,uBAAuB;AAC5B,SAAK,oBAAoB;AACzB,QAAI,oBAAoB;AACpB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,eAAe,iBAA0B;AACrC,SAAK,YAAY,KAAK,MAAM;AAC5B,QAAI,iBAAiB;AAEjB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,eAAwB;AACpB,WAAO,KAAK,MAAM,IAAI,KAAK,kBAAkB,KAAK;AAAA,EACtD;AAAA,EAEA,+BAA+B;AAC3B,WAAO,KAAK,eAAe,sBAAsB;AAAA,EACrD;AAAA,EAEA,qBAAqB,gBAAwB,eAAwB;AACjE,SAAK,sBAAsB,qBAAqB,cAAc;AAAA,EAClE;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,aAAgC;AAChC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,IAAI;AACJ,WAAO;AAAA,MACH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ;AAAA,EACJ;AAAA,EAgBA,IAAc,UAAU;AACpB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,QAAQ;AACR,WAAO,KAAK,UAAU;AAAA,EAC1B;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,iBAAiB,YAAY;AAY/B,MAAM,6BAA6B;AAMnC,MAAM,2BAA2B;AAGjC,MAAM,8BAA8B;AAGpC,MAAM,8BAA8B;AAGpC,MAAM,qCAAqC;AAM3C,MAAM,iCAAiC;AAMvC,MAAM,gCAAgC;AActC,MAAe,QAAQ;AAAA,EAG1B;AAAA,EACA,YAAY,KAAK,MAAM;AAAA,EACvB,kBAAkB;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOnB;AAAA,EACA,aAAa,gBAAoB;AAAA,EAEjC,YAAY,MAMT;AACC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA,mBAAmB;AAAA,QACf,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,oBAAoB;AAAA,QACpB,oBAAoB;AAAA,QACpB,2BAA2B;AAAA,QAC3B,uBAAuB;AAAA,QACvB,oBAAoB;AAAA,MACxB,IAAI,CAAC;AAAA,MACL;AAAA,IACJ,IAAI;AACJ,SAAK,WAAW;AAChB,SAAK,iBAAiB;AACtB,SAAK,wBAAwB;AAC7B,SAAK,iBAAiB;AACtB,SAAK,mBAAmB;AACxB,SAAK,oBAAoB;AACzB,SAAK,oBAAoB;AACzB,SAAK,2BAA2B;AAChC,SAAK,uBAAuB;AAC5B,SAAK,oBAAoB;AACzB,QAAI,oBAAoB;AACpB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,IAAI,YAAY;AACZ,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,eAAe,iBAA0B;AACrC,SAAK,YAAY,KAAK,MAAM;AAC5B,QAAI,iBAAiB;AAEjB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,eAAwB;AACpB,WAAO,KAAK,MAAM,IAAI,KAAK,kBAAkB,KAAK;AAAA,EACtD;AAAA,EAEA,+BAA+B;AAC3B,WAAO,KAAK,eAAe,sBAAsB;AAAA,EACrD;AAAA,EAEA,qBAAqB,gBAAwB,eAAwB;AACjE,SAAK,sBAAsB,qBAAqB,cAAc;AAAA,EAClE;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,aAAgC;AAChC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,IAAI;AACJ,WAAO;AAAA,MACH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ;AAAA,EACJ;AAAA,EAgBA,IAAc,UAAU;AACpB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,QAAQ;AACR,WAAO,KAAK,UAAU;AAAA,EAC1B;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CaseClient.d.ts","sourceRoot":"","sources":["../../../../src/session/case/CaseClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,UAAU;;gBAGP,QAAQ,EAAE,cAAc;IAI9B,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,wBAAwB,CAAC,EAAE,MAAM;;;;CAsM9G"}
1
+ {"version":3,"file":"CaseClient.d.ts","sourceRoot":"","sources":["../../../../src/session/case/CaseClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,UAAU;;gBAGP,QAAQ,EAAE,cAAc;IAI9B,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,wBAAwB,CAAC,EAAE,MAAM;;;;CA4M9G"}
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { Bytes, Crypto, Logger, PublicKey, UnexpectedDataError } from "#general";
7
+ import { NodeId } from "#types";
7
8
  import { TlvIntermediateCertificate, TlvOperationalCertificate } from "../../certificate/CertificateManager.js";
8
9
  import {
9
10
  KDFSR1_KEY_INFO,
@@ -64,7 +65,12 @@ class CaseClient {
64
65
  const { sigma2Bytes, sigma2, sigma2Resume } = await messenger.readSigma2();
65
66
  if (sigma2Resume !== void 0) {
66
67
  if (resumptionRecord === void 0) throw new UnexpectedDataError("Received an unexpected sigma2Resume.");
67
- const { sharedSecret, fabric: fabric2, sessionParameters: resumptionSessionParams } = resumptionRecord;
68
+ const {
69
+ sharedSecret,
70
+ fabric: fabric2,
71
+ sessionParameters: resumptionSessionParams,
72
+ caseAuthenticatedTags
73
+ } = resumptionRecord;
68
74
  const { responderSessionId: peerSessionId, resumptionId, resumeMic } = sigma2Resume;
69
75
  const sessionParameters = {
70
76
  ...exchange.session.parameters,
@@ -83,11 +89,12 @@ class CaseClient {
83
89
  salt: secureSessionSalt,
84
90
  isInitiator: true,
85
91
  isResumption: true,
86
- peerSessionParameters: sessionParameters
92
+ peerSessionParameters: sessionParameters,
93
+ caseAuthenticatedTags
87
94
  });
88
95
  await messenger.sendSuccess();
89
96
  logger.info(
90
- `Case client: Session resumed with ${messenger.getChannelName()} and parameters`,
97
+ `Case client: Session ${secureSession.id} successfully resumed with ${messenger.getChannelName()} for Fabric ${NodeId.toHexString(fabric2.nodeId)}(index ${fabric2.fabricIndex}) and PeerNode ${NodeId.toHexString(peerNodeId)} and parameters`,
91
98
  secureSession.parameterDiagnostics()
92
99
  );
93
100
  resumptionRecord.resumptionId = resumptionId;
@@ -133,26 +140,21 @@ class CaseClient {
133
140
  Crypto.verify(PublicKey(peerPublicKey), peerSignatureData, peerSignature);
134
141
  if (peerNodeIdNOCert !== peerNodeId) {
135
142
  throw new UnexpectedDataError(
136
- "The node ID in the peer certificate doesn't match the expected peer node ID"
137
- );
138
- }
139
- if (peerNodeIdNOCert !== peerNodeId) {
140
- throw new UnexpectedDataError(
141
- "The node ID in the peer certificate doesn't match the expected peer node ID"
143
+ `The node ID in the peer certificate ${peerNodeIdNOCert} doesn't match the expected peer node ID ${peerNodeId}`
142
144
  );
143
145
  }
144
146
  if (peerFabricIdNOCert !== fabric.fabricId) {
145
147
  throw new UnexpectedDataError(
146
- "The fabric ID in the peer certificate doesn't match the expected fabric ID"
148
+ `The fabric ID in the peer certificate ${peerFabricIdNOCert} doesn't match the expected fabric ID ${fabric.fabricId}`
147
149
  );
148
150
  }
149
151
  if (peerIntermediateCACert !== void 0) {
150
152
  const {
151
153
  subject: { fabricId: peerFabricIdIcaCert }
152
154
  } = TlvIntermediateCertificate.decode(peerIntermediateCACert);
153
- if (peerFabricIdIcaCert !== fabric.fabricId) {
155
+ if (peerFabricIdIcaCert !== void 0 && peerFabricIdIcaCert !== fabric.fabricId) {
154
156
  throw new UnexpectedDataError(
155
- "The fabric ID in the peer intermediate CA certificate doesn't match the expected fabric ID"
157
+ `The fabric ID in the peer intermediate CA certificate ${peerFabricIdIcaCert} doesn't match the expected fabric ID ${fabric.fabricId}`
156
158
  );
157
159
  }
158
160
  }
@@ -170,6 +172,7 @@ class CaseClient {
170
172
  const encrypted = Crypto.encrypt(sigma3Key, encryptedData, TBE_DATA3_NONCE);
171
173
  const sigma3Bytes = await messenger.sendSigma3({ encrypted });
172
174
  await messenger.waitForSuccess("Sigma3-Success");
175
+ const { caseAuthenticatedTags } = resumptionRecord ?? {};
173
176
  const secureSessionSalt = Bytes.concat(
174
177
  operationalIdentityProtectionKey,
175
178
  Crypto.hash([sigma1Bytes, sigma2Bytes, sigma3Bytes])
@@ -183,10 +186,13 @@ class CaseClient {
183
186
  salt: secureSessionSalt,
184
187
  isInitiator: true,
185
188
  isResumption: false,
186
- peerSessionParameters: sessionParameters
189
+ peerSessionParameters: sessionParameters,
190
+ caseAuthenticatedTags
187
191
  });
188
192
  logger.info(
189
- `Case client: Paired successfully with ${messenger.getChannelName()} and parameters`,
193
+ `Case client Session ${secureSession.id} established successfully with ${messenger.getChannelName()} for Fabric ${NodeId.toHexString(
194
+ fabric.nodeId
195
+ )}(index ${fabric.fabricIndex}) and PeerNode ${NodeId.toHexString(peerNodeId)}and parameters`,
190
196
  secureSession.parameterDiagnostics()
191
197
  );
192
198
  resumptionRecord = {
@@ -194,7 +200,8 @@ class CaseClient {
194
200
  peerNodeId,
195
201
  sharedSecret,
196
202
  resumptionId: peerResumptionId,
197
- sessionParameters: secureSession.parameters
203
+ sessionParameters: secureSession.parameters,
204
+ caseAuthenticatedTags
198
205
  };
199
206
  }
200
207
  await messenger.close();
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/session/case/CaseClient.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,OAAO,QAAQ,QAAQ,WAAW,2BAA2B;AAGtE,SAAS,4BAA4B,iCAAiC;AAGtE;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP,SAAS,2BAA2B;AAEpC,MAAM,SAAS,OAAO,IAAI,YAAY;AAE/B,MAAM,WAAW;AAAA,EACpB;AAAA,EAEA,YAAY,UAA0B;AAClC,SAAK,YAAY;AAAA,EACrB;AAAA,EAEA,MAAM,KAAK,UAA2B,QAAgB,YAAoB,0BAAmC;AACzG,UAAM,YAAY,IAAI,oBAAoB,UAAU,wBAAwB;AAG5E,UAAM,kBAAkB,OAAO,UAAU;AACzC,UAAM,qBAAqB,MAAM,KAAK,UAAU,0BAA0B;AAC1E,UAAM,EAAE,kCAAkC,iBAAiB,YAAY,mBAAmB,IAAI;AAC9F,UAAM,EAAE,WAAW,wBAAwB,KAAK,IAAI,OAAO,sBAAsB;AAGjF,QAAI;AACJ,QAAI,UAAU;AACd,QAAI,mBAAmB,KAAK,UAAU,8BAA8B,OAAO,UAAU,UAAU,CAAC;AAChG,QAAI,qBAAqB,QAAW;AAChC,YAAM,EAAE,cAAc,aAAa,IAAI;AACvC,YAAM,YAAY,MAAM,OAAO;AAAA,QAC3B;AAAA,QACA,MAAM,OAAO,iBAAiB,YAAY;AAAA,QAC1C;AAAA,MACJ;AACA,YAAM,qBAAqB,OAAO,QAAQ,WAAW,IAAI,WAAW,CAAC,GAAG,iBAAiB;AACzF,oBAAc,MAAM,UAAU,WAAW;AAAA,QACrC;AAAA,QACA,eAAe,OAAO,iBAAiB,YAAY,eAAe;AAAA,QAClE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,wBAAwB,KAAK,UAAU;AAAA,MAC3C,CAAC;AAAA,IACL,OAAO;AACH,oBAAc,MAAM,UAAU,WAAW;AAAA,QACrC;AAAA,QACA,eAAe,OAAO,iBAAiB,YAAY,eAAe;AAAA,QAClE;AAAA,QACA;AAAA,QACA,wBAAwB,KAAK,UAAU;AAAA,MAC3C,CAAC;AAAA,IACL;AAEA,QAAI;AACJ,UAAM,EAAE,aAAa,QAAQ,aAAa,IAAI,MAAM,UAAU,WAAW;AACzE,QAAI,iBAAiB,QAAW;AAE5B,UAAI,qBAAqB,OAAW,OAAM,IAAI,oBAAoB,sCAAsC;AACxG,YAAM,EAAE,cAAc,QAAAA,SAAQ,mBAAmB,wBAAwB,IAAI;AAC7E,YAAM,EAAE,oBAAoB,eAAe,cAAc,UAAU,IAAI;AAGvE,YAAM,oBAAoB;AAAA,QACtB,GAAG,SAAS,QAAQ;AAAA,QACpB,GAAI,2BAA2B,CAAC;AAAA,MACpC;AAEA,YAAM,aAAa,MAAM,OAAO,iBAAiB,YAAY;AAC7D,YAAM,YAAY,MAAM,OAAO,KAAK,cAAc,YAAY,eAAe;AAC7E,aAAO,QAAQ,WAAW,WAAW,iBAAiB;AAEtD,YAAM,oBAAoB,MAAM,OAAO,iBAAiB,iBAAiB,YAAY;AACrF,sBAAgB,MAAM,KAAK,UAAU,oBAAoB;AAAA,QACrD,WAAW;AAAA,QACX,QAAAA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,QACd,uBAAuB;AAAA,MAC3B,CAAC;AACD,YAAM,UAAU,YAAY;AAC5B,aAAO;AAAA,QACH,qCAAqC,UAAU,eAAe,CAAC;AAAA,QAC/D,cAAc,qBAAqB;AAAA,MACvC;AAEA,uBAAiB,eAAe;AAChC,uBAAiB,oBAAoB,cAAc;AACnD,gBAAU;AAAA,IACd,OAAO;AAEH,YAAM;AAAA,QACF,wBAAwB;AAAA,QACxB,WAAW;AAAA,QACX;AAAA,QACA,oBAAoB;AAAA,QACpB;AAAA,MACJ,IAAI;AAEJ,YAAM,oBAAoB;AAAA,QACtB,GAAG,SAAS,QAAQ;AAAA,QACpB,GAAI,0BAA0B,CAAC;AAAA,MACnC;AACA,YAAM,eAAe,OAAO,mBAAmB,mBAAmB,IAAI;AACtE,YAAM,aAAa,MAAM;AAAA,QACrB;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,KAAK,WAAW;AAAA,MAC3B;AACA,YAAM,YAAY,MAAM,OAAO,KAAK,cAAc,YAAY,WAAW;AACzE,YAAM,oBAAoB,OAAO,QAAQ,WAAW,eAAe,eAAe;AAClF,YAAM;AAAA,QACF,YAAY;AAAA,QACZ,oBAAoB;AAAA,QACpB,WAAW;AAAA,QACX,cAAc;AAAA,MAClB,IAAI,uBAAuB,OAAO,iBAAiB;AACnD,YAAM,oBAAoB,cAAc,OAAO;AAAA,QAC3C,YAAY;AAAA,QACZ,oBAAoB;AAAA,QACpB,eAAe;AAAA,QACf,mBAAmB;AAAA,MACvB,CAAC;AACD,YAAM;AAAA,QACF,wBAAwB;AAAA,QACxB,SAAS,EAAE,UAAU,oBAAoB,QAAQ,iBAAiB;AAAA,MACtE,IAAI,0BAA0B,OAAO,aAAa;AAElD,aAAO,OAAO,UAAU,aAAa,GAAG,mBAAmB,aAAa;AAExE,UAAI,qBAAqB,YAAY;AACjC,cAAM,IAAI;AAAA,UACN;AAAA,QACJ;AAAA,MACJ;AACA,UAAI,qBAAqB,YAAY;AACjC,cAAM,IAAI;AAAA,UACN;AAAA,QACJ;AAAA,MACJ;AACA,UAAI,uBAAuB,OAAO,UAAU;AACxC,cAAM,IAAI;AAAA,UACN;AAAA,QACJ;AAAA,MACJ;AACA,UAAI,2BAA2B,QAAW;AACtC,cAAM;AAAA,UACF,SAAS,EAAE,UAAU,oBAAoB;AAAA,QAC7C,IAAI,2BAA2B,OAAO,sBAAsB;AAE5D,YAAI,wBAAwB,OAAO,UAAU;AACzC,gBAAM,IAAI;AAAA,YACN;AAAA,UACJ;AAAA,QACJ;AAAA,MACJ;AACA,aAAO,kBAAkB,eAAe,sBAAsB;AAG9D,YAAM,aAAa,MAAM,OAAO,kCAAkC,OAAO,KAAK,CAAC,aAAa,WAAW,CAAC,CAAC;AACzG,YAAM,YAAY,MAAM,OAAO,KAAK,cAAc,YAAY,WAAW;AACzE,YAAM,gBAAgB,cAAc,OAAO;AAAA,QACvC;AAAA,QACA;AAAA,QACA,eAAe;AAAA,QACf;AAAA,MACJ,CAAC;AACD,YAAM,YAAY,OAAO,KAAK,aAAa;AAC3C,YAAM,gBAAgB,uBAAuB,OAAO,EAAE,YAAY,oBAAoB,UAAU,CAAC;AACjG,YAAM,YAAY,OAAO,QAAQ,WAAW,eAAe,eAAe;AAC1E,YAAM,cAAc,MAAM,UAAU,WAAW,EAAE,UAAU,CAAC;AAC5D,YAAM,UAAU,eAAe,gBAAgB;AAG/C,YAAM,oBAAoB,MAAM;AAAA,QAC5B;AAAA,QACA,OAAO,KAAK,CAAC,aAAa,aAAa,WAAW,CAAC;AAAA,MACvD;AACA,sBAAgB,MAAM,KAAK,UAAU,oBAAoB;AAAA,QACrD,WAAW;AAAA,QACX;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,QACd,uBAAuB;AAAA,MAC3B,CAAC;AACD,aAAO;AAAA,QACH,yCAAyC,UAAU,eAAe,CAAC;AAAA,QACnE,cAAc,qBAAqB;AAAA,MACvC;AACA,yBAAmB;AAAA,QACf;AAAA,QACA;AAAA,QACA;AAAA,QACA,cAAc;AAAA,QACd,mBAAmB,cAAc;AAAA,MACrC;AAAA,IACJ;AAEA,UAAM,UAAU,MAAM;AACtB,UAAM,KAAK,UAAU,qBAAqB,gBAAgB;AAE1D,WAAO,EAAE,SAAS,eAAe,QAAQ;AAAA,EAC7C;AACJ;",
4
+ "mappings": "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",
5
5
  "names": ["fabric"]
6
6
  }
@@ -189,7 +189,7 @@ class CaseServer {
189
189
  caseAuthenticatedTags
190
190
  });
191
191
  logger.info(
192
- `session ${secureSession.id} created with ${messenger.getChannelName()} for Fabric ${NodeId.toHexString(
192
+ `Session ${secureSession.id} created with ${messenger.getChannelName()} for Fabric ${NodeId.toHexString(
193
193
  fabric.nodeId
194
194
  )}(index ${fabric.fabricIndex}) and PeerNode ${NodeId.toHexString(peerNodeId)}`,
195
195
  "with CATs",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/protocol",
3
- "version": "0.12.4-alpha.0-20250217-b0bba5179",
3
+ "version": "0.12.4-alpha.0-20250223-1e0341a1a",
4
4
  "description": "Low-level APIs for Matter interaction",
5
5
  "keywords": [
6
6
  "iot",
@@ -40,14 +40,14 @@
40
40
  "#*": "./src/*"
41
41
  },
42
42
  "dependencies": {
43
- "@matter/general": "0.12.4-alpha.0-20250217-b0bba5179",
44
- "@matter/model": "0.12.4-alpha.0-20250217-b0bba5179",
45
- "@matter/types": "0.12.4-alpha.0-20250217-b0bba5179",
43
+ "@matter/general": "0.12.4-alpha.0-20250223-1e0341a1a",
44
+ "@matter/model": "0.12.4-alpha.0-20250223-1e0341a1a",
45
+ "@matter/types": "0.12.4-alpha.0-20250223-1e0341a1a",
46
46
  "@noble/curves": "^1.8.1"
47
47
  },
48
48
  "devDependencies": {
49
- "@matter/tools": "0.12.4-alpha.0-20250217-b0bba5179",
50
- "@matter/testing": "0.12.4-alpha.0-20250217-b0bba5179"
49
+ "@matter/tools": "0.12.4-alpha.0-20250223-1e0341a1a",
50
+ "@matter/testing": "0.12.4-alpha.0-20250223-1e0341a1a"
51
51
  },
52
52
  "files": [
53
53
  "dist/**/*",
@@ -48,6 +48,7 @@ export class MessageChannel implements Channel<Message> {
48
48
  closeCallback?: () => Promise<void>,
49
49
  ) {
50
50
  this.#closeCallback = closeCallback;
51
+ this.session.destroyed.on(() => this.close());
51
52
  }
52
53
 
53
54
  set closeCallback(callback: () => Promise<void>) {
@@ -272,7 +273,7 @@ export class ExchangeManager {
272
273
  !message.payloadHeader.requiresAck
273
274
  ) {
274
275
  logger.debug(
275
- `Ignoring unsolicited standalone ack message ${messageId} for protocol ${message.payloadHeader.protocolId} and exchange id ${message.payloadHeader.exchangeId}.`,
276
+ `Ignoring unsolicited standalone ack message ${messageId} for protocol ${message.payloadHeader.protocolId} and exchange id ${message.payloadHeader.exchangeId} on channel ${channel.name}`,
276
277
  );
277
278
  return;
278
279
  }
@@ -295,7 +296,7 @@ export class ExchangeManager {
295
296
  });
296
297
  await exchange.close();
297
298
  logger.debug(
298
- `Ignoring unsolicited message ${messageId} for protocol ${message.payloadHeader.protocolId}.`,
299
+ `Ignoring unsolicited message ${messageId} for protocol ${message.payloadHeader.protocolId} on channel ${channel.name}`,
299
300
  );
300
301
  } else {
301
302
  if (protocolHandler === undefined) {
@@ -303,14 +304,14 @@ export class ExchangeManager {
303
304
  }
304
305
  if (isDuplicate) {
305
306
  logger.info(
306
- `Ignoring duplicate message ${messageId} (requires no ack) for protocol ${message.payloadHeader.protocolId}.`,
307
+ `Ignoring duplicate message ${messageId} (requires no ack) for protocol ${message.payloadHeader.protocolId} on channel ${channel.name}`,
307
308
  );
308
309
  return;
309
310
  } else {
310
311
  logger.info(
311
312
  `Discarding unexpected message ${messageId} for protocol ${
312
313
  message.payloadHeader.protocolId
313
- }, exchangeIndex ${exchangeIndex} and sessionId ${session.id} : ${Logger.toJSON(message)}`,
314
+ }, exchangeIndex ${exchangeIndex} and sessionId ${session.id} on channel ${channel.name}: ${Logger.toJSON(message)}`,
314
315
  );
315
316
  }
316
317
  }
@@ -355,7 +356,7 @@ export class ExchangeManager {
355
356
  }
356
357
  if (session.sendCloseMessageWhenClosing) {
357
358
  const channel = this.#channelManager.getChannelForSession(session);
358
- logger.debug(`Channel for session ${session.name} is ${channel?.name}`);
359
+ logger.debug(`Channel for session ${sessionName} is ${channel?.name}`);
359
360
  if (channel !== undefined) {
360
361
  const exchange = this.initiateExchangeWithChannel(channel, SECURE_CHANNEL_PROTOCOL_ID);
361
362
  if (exchange !== undefined) {
@@ -422,18 +423,21 @@ export class ExchangeManager {
422
423
  transportInterface.onData((socket, data) => {
423
424
  if (udpInterface && data.length > socket.maxPayloadSize) {
424
425
  logger.warn(
425
- `Ignoring UDP message with size ${data.length} from ${socket.name}, which is larger than the maximum allowed size of ${socket.maxPayloadSize}.`,
426
+ `Ignoring UDP message on channel ${socket.name} with size ${data.length} from ${socket.name}, which is larger than the maximum allowed size of ${socket.maxPayloadSize}.`,
426
427
  );
427
428
  return;
428
429
  }
429
430
 
430
431
  try {
431
432
  this.onMessage(socket, data).catch(error =>
432
- logger.info(error instanceof MatterError ? error.message : error),
433
+ logger.info(
434
+ `Error on channel ${socket.name}:`,
435
+ error instanceof MatterError ? error.message : error,
436
+ ),
433
437
  );
434
438
  } catch (error) {
435
439
  logger.info(
436
- "Ignoring UDP message with error",
440
+ `Ignoring UDP message on channel ${socket.name} with error`,
437
441
  error instanceof MatterError ? error.message : error,
438
442
  );
439
443
  }
@@ -87,6 +87,7 @@ export class InsecureSession extends Session {
87
87
 
88
88
  async destroy() {
89
89
  await this.end();
90
+ await this.destroyed.emit();
90
91
  }
91
92
 
92
93
  async end() {
@@ -327,9 +327,13 @@ export class SecureSession extends Session {
327
327
  await this.closer;
328
328
  } catch (error) {
329
329
  NoChannelError.accept(error);
330
+ } finally {
331
+ await this.destroyed.emit();
330
332
  }
333
+ return;
331
334
  }
332
335
  }
336
+ await this.destroyed.emit();
333
337
  }
334
338
 
335
339
  /**
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- import { Time } from "#general";
7
+ import { AsyncObservable, Time } from "#general";
8
8
  import { NodeId } from "#types";
9
9
  import { DecodedMessage, DecodedPacket, Message, Packet } from "../codec/MessageCodec.js";
10
10
  import { Fabric } from "../fabric/Fabric.js";
@@ -76,9 +76,10 @@ export abstract class Session {
76
76
  /**
77
77
  * If the ExchangeManager performs async work to clean up a session it sets this promise. This is because
78
78
  * historically we didn't return from destroy() until ExchangeManager was complete. Not sure if this is entirely
79
- * necessary but it makes sense so this allows us to maintain the old behavior.
79
+ * necessary, but it makes sense so this allows us to maintain the old behavior.
80
80
  */
81
81
  closer?: Promise<void>;
82
+ #destroyed = AsyncObservable<[]>();
82
83
 
83
84
  constructor(args: {
84
85
  manager?: SessionManager;
@@ -117,6 +118,10 @@ export abstract class Session {
117
118
  }
118
119
  }
119
120
 
121
+ get destroyed() {
122
+ return this.#destroyed;
123
+ }
124
+
120
125
  notifyActivity(messageReceived: boolean) {
121
126
  this.timestamp = Time.nowMs();
122
127
  if (messageReceived) {
@@ -79,7 +79,12 @@ export class CaseClient {
79
79
  if (sigma2Resume !== undefined) {
80
80
  // Process sigma2 resume
81
81
  if (resumptionRecord === undefined) throw new UnexpectedDataError("Received an unexpected sigma2Resume.");
82
- const { sharedSecret, fabric, sessionParameters: resumptionSessionParams } = resumptionRecord;
82
+ const {
83
+ sharedSecret,
84
+ fabric,
85
+ sessionParameters: resumptionSessionParams,
86
+ caseAuthenticatedTags,
87
+ } = resumptionRecord;
83
88
  const { responderSessionId: peerSessionId, resumptionId, resumeMic } = sigma2Resume;
84
89
 
85
90
  // We use the Fallbacks for the session parameters overridden by our stored ones from the resumption record
@@ -103,10 +108,11 @@ export class CaseClient {
103
108
  isInitiator: true,
104
109
  isResumption: true,
105
110
  peerSessionParameters: sessionParameters,
111
+ caseAuthenticatedTags,
106
112
  });
107
113
  await messenger.sendSuccess();
108
114
  logger.info(
109
- `Case client: Session resumed with ${messenger.getChannelName()} and parameters`,
115
+ `Case client: Session ${secureSession.id} successfully resumed with ${messenger.getChannelName()} for Fabric ${NodeId.toHexString(fabric.nodeId)}(index ${fabric.fabricIndex}) and PeerNode ${NodeId.toHexString(peerNodeId)} and parameters`,
110
116
  secureSession.parameterDiagnostics(),
111
117
  );
112
118
 
@@ -157,17 +163,12 @@ export class CaseClient {
157
163
 
158
164
  if (peerNodeIdNOCert !== peerNodeId) {
159
165
  throw new UnexpectedDataError(
160
- "The node ID in the peer certificate doesn't match the expected peer node ID",
161
- );
162
- }
163
- if (peerNodeIdNOCert !== peerNodeId) {
164
- throw new UnexpectedDataError(
165
- "The node ID in the peer certificate doesn't match the expected peer node ID",
166
+ `The node ID in the peer certificate ${peerNodeIdNOCert} doesn't match the expected peer node ID ${peerNodeId}`,
166
167
  );
167
168
  }
168
169
  if (peerFabricIdNOCert !== fabric.fabricId) {
169
170
  throw new UnexpectedDataError(
170
- "The fabric ID in the peer certificate doesn't match the expected fabric ID",
171
+ `The fabric ID in the peer certificate ${peerFabricIdNOCert} doesn't match the expected fabric ID ${fabric.fabricId}`,
171
172
  );
172
173
  }
173
174
  if (peerIntermediateCACert !== undefined) {
@@ -175,9 +176,9 @@ export class CaseClient {
175
176
  subject: { fabricId: peerFabricIdIcaCert },
176
177
  } = TlvIntermediateCertificate.decode(peerIntermediateCACert);
177
178
 
178
- if (peerFabricIdIcaCert !== fabric.fabricId) {
179
+ if (peerFabricIdIcaCert !== undefined && peerFabricIdIcaCert !== fabric.fabricId) {
179
180
  throw new UnexpectedDataError(
180
- "The fabric ID in the peer intermediate CA certificate doesn't match the expected fabric ID",
181
+ `The fabric ID in the peer intermediate CA certificate ${peerFabricIdIcaCert} doesn't match the expected fabric ID ${fabric.fabricId}`,
181
182
  );
182
183
  }
183
184
  }
@@ -199,6 +200,7 @@ export class CaseClient {
199
200
  await messenger.waitForSuccess("Sigma3-Success");
200
201
 
201
202
  // All good! Create secure session
203
+ const { caseAuthenticatedTags } = resumptionRecord ?? {}; // Even if resumption does not work try to reuse the caseAuthenticatedTags
202
204
  const secureSessionSalt = Bytes.concat(
203
205
  operationalIdentityProtectionKey,
204
206
  Crypto.hash([sigma1Bytes, sigma2Bytes, sigma3Bytes]),
@@ -213,9 +215,12 @@ export class CaseClient {
213
215
  isInitiator: true,
214
216
  isResumption: false,
215
217
  peerSessionParameters: sessionParameters,
218
+ caseAuthenticatedTags,
216
219
  });
217
220
  logger.info(
218
- `Case client: Paired successfully with ${messenger.getChannelName()} and parameters`,
221
+ `Case client Session ${secureSession.id} established successfully with ${messenger.getChannelName()} for Fabric ${NodeId.toHexString(
222
+ fabric.nodeId,
223
+ )}(index ${fabric.fabricIndex}) and PeerNode ${NodeId.toHexString(peerNodeId)}and parameters`,
219
224
  secureSession.parameterDiagnostics(),
220
225
  );
221
226
  resumptionRecord = {
@@ -224,6 +229,7 @@ export class CaseClient {
224
229
  sharedSecret,
225
230
  resumptionId: peerResumptionId,
226
231
  sessionParameters: secureSession.parameters,
232
+ caseAuthenticatedTags,
227
233
  };
228
234
  }
229
235
 
@@ -234,7 +234,7 @@ export class CaseServer implements ProtocolHandler {
234
234
  caseAuthenticatedTags,
235
235
  });
236
236
  logger.info(
237
- `session ${secureSession.id} created with ${messenger.getChannelName()} for Fabric ${NodeId.toHexString(
237
+ `Session ${secureSession.id} created with ${messenger.getChannelName()} for Fabric ${NodeId.toHexString(
238
238
  fabric.nodeId,
239
239
  )}(index ${fabric.fabricIndex}) and PeerNode ${NodeId.toHexString(peerNodeId)}`,
240
240
  "with CATs",