@matter/protocol 0.16.0-alpha.0-20251022-5a69ce65a → 0.16.0-alpha.0-20251023-bb23617e5
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/advertisement/mdns/MdnsAdvertisement.d.ts.map +1 -1
- package/dist/cjs/advertisement/mdns/MdnsAdvertisement.js +13 -0
- package/dist/cjs/advertisement/mdns/MdnsAdvertisement.js.map +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/cjs/securechannel/SecureChannelProtocol.d.ts +1 -1
- package/dist/cjs/securechannel/SecureChannelProtocol.d.ts.map +1 -1
- package/dist/cjs/securechannel/SecureChannelProtocol.js +2 -1
- package/dist/cjs/securechannel/SecureChannelProtocol.js.map +1 -1
- package/dist/cjs/session/pase/PaseMessenger.d.ts +7 -0
- package/dist/cjs/session/pase/PaseMessenger.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseMessenger.js +21 -0
- package/dist/cjs/session/pase/PaseMessenger.js.map +1 -1
- package/dist/cjs/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseServer.js +15 -2
- package/dist/cjs/session/pase/PaseServer.js.map +1 -1
- package/dist/esm/advertisement/mdns/MdnsAdvertisement.d.ts.map +1 -1
- package/dist/esm/advertisement/mdns/MdnsAdvertisement.js +13 -0
- package/dist/esm/advertisement/mdns/MdnsAdvertisement.js.map +1 -1
- package/dist/esm/protocol/DeviceCommissioner.js +1 -1
- package/dist/esm/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/esm/securechannel/SecureChannelProtocol.d.ts +1 -1
- package/dist/esm/securechannel/SecureChannelProtocol.d.ts.map +1 -1
- package/dist/esm/securechannel/SecureChannelProtocol.js +2 -1
- package/dist/esm/securechannel/SecureChannelProtocol.js.map +1 -1
- package/dist/esm/session/pase/PaseMessenger.d.ts +7 -0
- package/dist/esm/session/pase/PaseMessenger.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseMessenger.js +22 -1
- package/dist/esm/session/pase/PaseMessenger.js.map +1 -1
- package/dist/esm/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseServer.js +15 -2
- package/dist/esm/session/pase/PaseServer.js.map +1 -1
- package/package.json +6 -6
- package/src/advertisement/mdns/MdnsAdvertisement.ts +16 -0
- package/src/protocol/DeviceCommissioner.ts +1 -1
- package/src/securechannel/SecureChannelProtocol.ts +2 -1
- package/src/session/pase/PaseMessenger.ts +32 -2
- package/src/session/pase/PaseServer.ts +17 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MdnsAdvertisement.d.ts","sourceRoot":"","sources":["../../../../src/advertisement/mdns/MdnsAdvertisement.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAGH,SAAS,EAQZ,MAAM,UAAU,CAAC;AAGlB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAI1D;;;;GAIG;AACH,8BAAsB,iBAAiB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;;IACvG,UAAU,EAAE,cAAc,CAAC;IAEnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"MdnsAdvertisement.d.ts","sourceRoot":"","sources":["../../../../src/advertisement/mdns/MdnsAdvertisement.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAGH,SAAS,EAQZ,MAAM,UAAU,CAAC;AAGlB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAI1D;;;;GAIG;AACH,8BAAsB,iBAAiB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;;IACvG,UAAU,EAAE,cAAc,CAAC;IAEnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;gBAMF,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAUrE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC;IAE3C,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEjD;IAEc,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,eAAe,EAAE,KAAK,GAAE,UAAU,CAAC,cAA0B;IAkBvG;;OAEG;IACG,SAAS;IAqBf;;OAEG;IACG,MAAM;IAQH,gBAAgB;IAehB,mBAAmB;cAIH,QAAQ;cASR,OAAO;CAsDnC"}
|
|
@@ -38,6 +38,7 @@ class MdnsAdvertisement extends import_Advertisement.Advertisement {
|
|
|
38
38
|
qname;
|
|
39
39
|
#isPrivacyMasked;
|
|
40
40
|
#stopAt;
|
|
41
|
+
#broadcastPromise;
|
|
41
42
|
constructor(advertiser, qname, description) {
|
|
42
43
|
description = {
|
|
43
44
|
...description,
|
|
@@ -70,6 +71,15 @@ class MdnsAdvertisement extends import_Advertisement.Advertisement {
|
|
|
70
71
|
* Broadcast a single announcement immediately.
|
|
71
72
|
*/
|
|
72
73
|
async broadcast() {
|
|
74
|
+
if (this.#broadcastPromise !== void 0) {
|
|
75
|
+
return this.#broadcastPromise;
|
|
76
|
+
}
|
|
77
|
+
this.#broadcastPromise = this.#broadcast().then(() => {
|
|
78
|
+
this.#broadcastPromise = void 0;
|
|
79
|
+
});
|
|
80
|
+
return this.#broadcastPromise;
|
|
81
|
+
}
|
|
82
|
+
async #broadcast() {
|
|
73
83
|
if (!this.#isPrivacyMasked && this.isPrivacyMasked) {
|
|
74
84
|
this.#isPrivacyMasked = true;
|
|
75
85
|
await this.advertiser.server.setRecordsGenerator(this.service, this.#recordsGenerator);
|
|
@@ -80,6 +90,9 @@ class MdnsAdvertisement extends import_Advertisement.Advertisement {
|
|
|
80
90
|
* Broadcast expiration announcement immediately.
|
|
81
91
|
*/
|
|
82
92
|
async expire() {
|
|
93
|
+
if (this.#broadcastPromise !== void 0) {
|
|
94
|
+
await this.#broadcastPromise;
|
|
95
|
+
}
|
|
83
96
|
logger.info("Unpublishing", this.dict({ time: import_general.Duration.format(this.duration) }));
|
|
84
97
|
await this.advertiser.server.expireAnnouncements(this.service);
|
|
85
98
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/advertisement/mdns/MdnsAdvertisement.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,2BAA8B;AAG9B,uCAA0C;AAC1C,qBAWO;AAEP,8BAAiC;AAvBjC;AAAA;AAAA;AAAA;AAAA;AA0BA,MAAM,SAAS,sBAAO,IAAI,mBAAmB;AAOtC,MAAe,0BAA6E,mCAAiB;AAAA;AAAA;AAAA;AAAA,EAMhH;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EAEA,YAAY,YAA4B,OAAe,aAAgB;AACnE,kBAAc;AAAA,MACV,GAAG;AAAA,MACH,OAAG,0CAAiB,WAAW;AAAA,IACnC;AACA,UAAM,YAAY,QAAQ,KAAK,IAAI,aAAa,EAAE,oBAAoB,WAAW,mBAAmB,CAAC;AACrG,SAAK,QAAQ;AACb,SAAK,mBAAmB,KAAK;AAAA,EACjC;AAAA,EAIA,IAAc,YAAqC;AAC/C,WAAO,CAAC;AAAA,EACZ;AAAA,EAEA,MAAe,IAAI,SAAwC,QAAmC,WAAW;AACrG,SAAK,UAAU;AACf,QAAI,SAAS;AACb,eAAW,iBAAiB,KAAK,WAAW,qBAAqB,MAAM,KAAK,GAAG;AAC3E,UAAI,KAAK,YAAY,UAAa,KAAK,WAAW,oBAAK,OAAO;AAC1D;AAAA,MACJ;AAEA;AACA,aAAO,MAAM,aAAa,KAAK,KAAK,EAAE,QAAQ,MAAM,wBAAS,OAAO,aAAa,EAAE,CAAC,CAAC;AACrF,YAAM,KAAK,UAAU;AACrB,YAAM,QAAQ,MAAM,eAAe,aAAa;AAChD,UAAI,QAAQ,WAAW;AACnB;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,YAAY;AACd,QAAI,KAAK,sBAAsB,QAAW;AACtC,aAAO,KAAK;AAAA,IAChB;AAEA,SAAK,oBAAoB,KAAK,WAAW,EAAE,KAAK,MAAM;AAClD,WAAK,oBAAoB;AAAA,IAC7B,CAAC;AAED,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,MAAM,aAAa;AACf,QAAI,CAAC,KAAK,oBAAoB,KAAK,iBAAiB;AAChD,WAAK,mBAAmB;AACxB,YAAM,KAAK,WAAW,OAAO,oBAAoB,KAAK,SAAS,KAAK,iBAAiB;AAAA,IACzF;AAEA,UAAM,KAAK,WAAW,OAAO,UAAU,KAAK,OAAO;AAAA,EACvD;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,SAAS;AACX,QAAI,KAAK,sBAAsB,QAAW;AACtC,YAAM,KAAK;AAAA,IACf;AACA,WAAO,KAAK,gBAAgB,KAAK,KAAK,EAAE,MAAM,wBAAS,OAAO,KAAK,QAAQ,EAAE,CAAC,CAAC;AAC/E,UAAM,KAAK,WAAW,OAAO,oBAAoB,KAAK,OAAO;AAAA,EACjE;AAAA,EAES,mBAAmB;AACxB,UAAM,EAAE,yBAAyB,IAAI,KAAK,WAAW,mBAAmB,IAAI;AAE5E,QAAI,6BAA6B,QAAW;AACxC;AAAA,IACJ;AAEA,QAAI,4BAA4B,GAAG;AAC/B,WAAK,KAAK;AACV;AAAA,IACJ;AAEA,SAAK,cAAU,0BAAU,oBAAK,QAAQ,wBAAwB;AAAA,EAClE;AAAA,EAES,sBAAsB;AAC3B,SAAK,MAAM,WAAW;AAAA,EAC1B;AAAA,EAEA,MAAyB,WAAW;AAEhC,UAAM,QAAQ,QAAQ,EAAE,KAAK,MAAM;AAE/B,aAAO,KAAK,cAAc,KAAK,KAAK,CAAC;AACrC,aAAO,KAAK,WAAW,OAAO,oBAAoB,KAAK,SAAS,KAAK,iBAAiB;AAAA,IAC1F,CAAC;AAAA,EACL;AAAA,EAEA,MAAyB,UAAU;AAE/B,UAAM,KAAK,OAAO;AAAA,EACtB;AAAA,EAEA,IAAI,oBAAgD;AAChD,WAAO,CAAC,OAAO,UAAU,KAAK,YAAY,KAAK;AAAA,EACnD;AAAA,EAEA,YAAY,OAAgC;AACxC,UAAM,WAAW,MAAM,IAAI,QAAQ,MAAM,EAAE,EAAE,YAAY,IAAI;AAE7D,UAAM,UAAuB;AAAA,MACzB,GAAG,KAAK;AAAA,UACR,0BAAU,KAAK,OAAO,EAAE,UAAU,GAAG,QAAQ,GAAG,MAAM,KAAK,WAAW,MAAM,QAAQ,SAAS,CAAC;AAAA,UAC9F;AAAA,QACI,KAAK;AAAA,QACL,OAAO,QAAQ,KAAK,UAAU,EACzB,OAAO,CAAC,CAAC,EAAE,CAAC,MAAM,MAAM,MAAS,EACjC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,EAAE;AAAA,MACpC;AAAA,IACJ;AAEA,eAAW,QAAQ,MAAM,MAAM;AAC3B,cAAQ,SAAK,2BAAW,UAAU,IAAI,CAAC;AAAA,IAC3C;AAEA,QAAI,KAAK,WAAW,OAAO,cAAc;AACrC,iBAAW,QAAQ,MAAM,MAAM;AAC3B,gBAAQ,SAAK,wBAAQ,UAAU,IAAI,CAAC;AAAA,MACxC;AAAA,IACJ;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,aAAa;AACb,UAAM,SAAkC;AAAA,MACpC,KAAK,KAAK,YAAY;AAAA,MACtB,KAAK,KAAK,YAAY;AAAA,MACtB,KAAK,KAAK,YAAY;AAAA,MACtB,GAAG,KAAK;AAAA,IACZ;AAEA,QAAI,KAAK,YAAY,QAAQ,QAAW;AACpC,aAAO,IAAI,2DAA0B,OAAO,KAAK,YAAY,GAAG;AAAA,IACpE;AAEA,QAAI,KAAK,YAAY,QAAQ,QAAW;AACpC,aAAO,MAAM,KAAK,YAAY;AAAA,IAClC;AAEA,WAAO;AAAA,EACX;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -168,7 +168,7 @@ class DeviceCommissioner {
|
|
|
168
168
|
return;
|
|
169
169
|
}
|
|
170
170
|
this.#cancelTimeout();
|
|
171
|
-
this.#context.secureChannelProtocol.removePaseCommissioner();
|
|
171
|
+
await this.#context.secureChannelProtocol.removePaseCommissioner();
|
|
172
172
|
this.#windowStatus = import_administrator_commissioning.AdministratorCommissioning.CommissioningWindowStatus.WindowNotOpen;
|
|
173
173
|
if (this.#activeCommissioningEndCallback !== void 0) {
|
|
174
174
|
const activeCommissioningEndCallback = this.#activeCommissioningEndCallback;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/protocol/DeviceCommissioner.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,+BAAkC;AAClC,gCAAmC;AACnC,yCAA2C;AAE3C,2BAA8B;AAC9B,qBAWO;AACP,mCAAsC;AACtC,wBAA2B;AAC3B,4BAA+B;AAC/B,mBAAsG;AAEtG,8BAAiC;AA5BjC;AAAA;AAAA;AAAA;AAAA;AA8BA,MAAM,SAAS,sBAAO,IAAI,oBAAoB;AAKvC,MAAe,4BAA4B;AAElD;AAmBO,MAAM,mBAAmB;AAAA,EAC5B;AAAA,EACA;AAAA,EACA,gBAAgB,8DAA2B,0BAA0B;AAAA,EACrE;AAAA,EACA;AAAA,EACA,aAAa,IAAI,6BAAc,IAAI;AAAA,EACnC;AAAA,EAEA,YAAY,SAAoC;AAC5C,SAAK,WAAW;AAGhB,SAAK,WAAW,GAAG,KAAK,SAAS,sBAAsB,mBAAmB,YAAY;AAClF,aAAO,KAAK,wEAAwE;AACpF,YAAM,KAAK,iBAAiB;AAAA,IAChC,CAAC;AAAA,EACL;AAAA,EAEA,QAAQ,6BAAc,MAAM,EAAE,KAAkB;AAC5C,UAAM,WAAW,IAAI,mBAAmB;AAAA,MACpC,SAAS,IAAI,IAAI,kCAAa;AAAA,MAC9B,UAAU,IAAI,IAAI,oCAAc;AAAA,MAChC,YAAY,IAAI,IAAI,wCAAgB;AAAA,MACpC,uBAAuB,IAAI,IAAI,kDAAqB;AAAA,MACpD,qBAAqB,IAAI,IAAI,2BAA2B;AAAA,IAC5D,CAAC;AACD,QAAI,IAAI,oBAAoB,QAAQ;AACpC,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,kBAAkB;AAClB,SAAK,oBAAoB;AACzB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,MAAM,2BACF,eACA,YACA,0BACF;AACE,QAAI,KAAK,kBAAkB,8DAA2B,0BAA0B,iBAAiB;AAC7F,YAAM,IAAI;AAAA,QACN;AAAA,MACJ;AAAA,IACJ;AAEA,SAAK,SAAS,sBAAsB,oBAAoB,UAAU;AAClE,SAAK;AAAA,MACD,8DAA2B,0BAA0B;AAAA,MACrD;AAAA,MACA;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,MAAM,wBAAwB,0BAA+C;AACzE,QAAI,KAAK,kBAAkB,8DAA2B,0BAA0B,oBAAoB;AAChG,YAAM,IAAI;AAAA,QACN;AAAA,MACJ;AAAA,IACJ;AAEA,SAAK,SAAS,sBAAsB;AAAA,MAChC,MAAM,6BAAW,QAAQ,KAAK,SAAS,UAAU,KAAK,SAAS,oBAAoB,OAAO,UAAU;AAAA,QAChG,YAAY;AAAA,QACZ,MAAM,KAAK,SAAS,QAAQ,OAAO,YAAY,EAAE;AAAA,MACrD,CAAC;AAAA,IACL;AAEA,SAAK;AAAA,MACD,8DAA2B,0BAA0B;AAAA,MACrD;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,WAAW,iBAAkC;AACzC,SAAK,mBAAmB;AAExB,oBAAgB,aAAa,GAAG,YAAY,MAAM,KAAK,iBAAiB,CAAC;AAEzE,oBAAgB,aAAa,OAAO,GAAG,YAAU;AAC7C,UAAI,WAAW,yBAAU,OAAO,WAAW;AACvC,aAAK,mBAAmB;AAAA,MAC5B;AAAA,IACJ,CAAC;AAAA,EACL;AAAA,EAEA,IAAI,kBAAkB;AAClB,WAAO,KAAK,qBAAqB;AAAA,EACrC;AAAA,EAEA,oBAAoB,SAAkB;AAClC,QAAI,KAAK,gBAAiB;AAC1B,UAAM,IAAI;AAAA,MACN,WAAW;AAAA,MACX,wBAAW;AAAA,IACf;AAAA,EACJ;AAAA,EAEA,wBACI,cACA,eACF;AACE,SAAK,eAAe;AAEpB,SAAK,gBAAgB;AACrB,UAAM,sBAAsB,KAAK,SAAS,oBAAoB;AAC9D,UAAM,uBAAuB,oBAAoB,uBAAuB;AAExE,UAAM,OACF,iBAAiB,8DAA2B,0BAA0B,qBAChE,2CAAkB,WAClB,2CAAkB;AAE5B,SAAK,SAAS,WAAW;AAAA,MACrB,6CAAmB,eAAe;AAAA,QAC9B,GAAG,oBAAoB;AAAA,QACvB;AAAA,QACA,eAAe,iBAAiB,oBAAoB;AAAA,MACxD,CAAC;AAAA,IACL;AAEA,SAAK,wBAAwB,oBAAK;AAAA,MAC9B;AAAA,MACA;AAAA,MACA,KAAK,iBAAiB,KAAK,IAAI;AAAA,IACnC;AAAA,EACJ;AAAA,EAEA,sBACI,cAGA,gCACA,eACF;AACE,QAAI,KAAK,kBAAkB,8DAA2B,0BAA0B,eAAe;AAC3F,UAAI,KAAK,kBAAkB,cAAc;AACrC,cAAM,IAAI;AAAA,UACN,sBAAsB,YAAY,gCAAgC,KAAK,aAAa;AAAA,QACxF;AAAA,MACJ;AAEA,UACI,KAAK,mCACL,KAAK,oCAAoC,gCAC3C;AACE,cAAM,IAAI,6BAAc,yDAAyD;AAAA,MACrF;AAAA,IACJ;AAEA,QACI,KAAK,kBAAkB,iBACtB,kBAAkB,UAAa,kBAAkB,KAAK,uBACzD;AACE,WAAK,wBAAwB,KAAK,eAAe,KAAK,oBAAoB;AAC1E;AAAA,IACJ;AAEA,QAAI,KAAK,kBAAkB,8DAA2B,0BAA0B,eAAe;AAC3F,YAAM,IAAI,6BAAc,0DAA0D,KAAK,aAAa,IAAI;AAAA,IAC5G;AAEA,QAAI,KAAK,oCAAoC,QAAW;AACpD,YAAM,IAAI,6BAAc,4DAA4D;AAAA,IACxF;AAEA,SAAK,kCAAkC;AACvC,SAAK,uBAAuB;AAG5B,SAAK,wBAAwB,cAAc,aAAa;AAAA,EAC5D;AAAA,EAEA,MAAM,mBAAmB;AACrB,QAAI,KAAK,kBAAkB,8DAA2B,0BAA0B,eAAe;AAC3F;AAAA,IACJ;AAEA,SAAK,eAAe;AAEpB,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -26,7 +26,7 @@ export declare class SecureChannelProtocol extends StatusReportOnlySecureChannel
|
|
|
26
26
|
*/
|
|
27
27
|
get tooManyPaseErrors(): AsyncObservable<[], void>;
|
|
28
28
|
setPaseCommissioner(paseServer: PaseServer): void;
|
|
29
|
-
removePaseCommissioner(): void
|
|
29
|
+
removePaseCommissioner(): Promise<void>;
|
|
30
30
|
onNewExchange(exchange: MessageExchange, message: Message): Promise<void>;
|
|
31
31
|
}
|
|
32
32
|
//# sourceMappingURL=SecureChannelProtocol.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecureChannelProtocol.d.ts","sourceRoot":"","sources":["../../../src/securechannel/SecureChannelProtocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAA2B,MAAM,UAAU,CAAC;AAGhG,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAS5D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAwC,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAMjG,qBAAa,qCAAsC,YAAW,eAAe;IACzE,QAAQ,CAAC,EAAE,KAA8B;IAGzC,QAAQ,CAAC,qBAAqB,YAAa;IAErC,aAAa,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;IAkBzD,yBAAyB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;IAqCrE,KAAK;CAGd;AAED,qBAAa,qBAAsB,SAAQ,qCAAqC;;gBAKhE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa;IAK5D,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAO9C;;OAEG;IACH,IAAI,iBAAiB,8BAEpB;IAED,mBAAmB,CAAC,UAAU,EAAE,UAAU;
|
|
1
|
+
{"version":3,"file":"SecureChannelProtocol.d.ts","sourceRoot":"","sources":["../../../src/securechannel/SecureChannelProtocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAA2B,MAAM,UAAU,CAAC;AAGhG,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAS5D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAwC,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAMjG,qBAAa,qCAAsC,YAAW,eAAe;IACzE,QAAQ,CAAC,EAAE,KAA8B;IAGzC,QAAQ,CAAC,qBAAqB,YAAa;IAErC,aAAa,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;IAkBzD,yBAAyB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;IAqCrE,KAAK;CAGd;AAED,qBAAa,qBAAsB,SAAQ,qCAAqC;;gBAKhE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa;IAK5D,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAO9C;;OAEG;IACH,IAAI,iBAAiB,8BAEpB;IAED,mBAAmB,CAAC,UAAU,EAAE,UAAU;IAIpC,sBAAsB;IAKb,aAAa,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;CA4B3E"}
|
|
@@ -115,7 +115,8 @@ class SecureChannelProtocol extends StatusReportOnlySecureChannelProtocol {
|
|
|
115
115
|
setPaseCommissioner(paseServer) {
|
|
116
116
|
this.#paseCommissioner = paseServer;
|
|
117
117
|
}
|
|
118
|
-
removePaseCommissioner() {
|
|
118
|
+
async removePaseCommissioner() {
|
|
119
|
+
await this.#paseCommissioner?.close();
|
|
119
120
|
this.#paseCommissioner = void 0;
|
|
120
121
|
}
|
|
121
122
|
async onNewExchange(exchange, message) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/securechannel/SecureChannelProtocol.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,2BAA8B;AAC9B,qBAAqF;AACrF,6BAAgC;AAChC,yBAA4B;AAC5B,4BAA+B;AAC/B,mBAOO;AAIP,wBAA2B;AAC3B,wBAAiE;AACjE,oCAAmE;AACnE,8CAA2C;AAzB3C;AAAA;AAAA;AAAA;AAAA;AA2BA,MAAM,SAAS,sBAAO,IAAI,uBAAuB;AAE1C,MAAM,sCAAiE;AAAA,EACjE,KAAK;AAAA;AAAA,EAGL,wBAAwB;AAAA,EAEjC,MAAM,cAAc,UAA2B,SAAkB;AAC7D,UAAM,cAAc,QAAQ,cAAc;AAE1C,YAAQ,aAAa;AAAA,MACjB,KAAK,+BAAkB;AACnB,cAAM,KAAK,0BAA0B,UAAU,OAAO;AACtD;AAAA,MACJ;AAEI,YAAI,gBAAgB,+BAAkB,eAAe;AACjD,gBAAM,IAAI;AAAA,YACN,0DAA0D,YAAY,SAAS,EAAE,CAAC;AAAA,YAClF,wBAAW;AAAA,UACf;AAAA,QACJ;AAAA,IACR;AAAA,EACJ;AAAA,EAEA,MAAM,0BAA0B,UAA2B,SAAkB;AACzE,UAAM;AAAA,MACF,eAAe,EAAE,YAAY;AAAA,MAC7B;AAAA,IACJ,IAAI;AACJ,QAAI,gBAAgB,+BAAkB,cAAc;AAChD,YAAM,IAAI;AAAA,QACN,8EAA8E,YAAY;AAAA,UACtF;AAAA,QACJ,CAAC;AAAA,MACL;AAAA,IACJ;AAEA,UAAM,EAAE,eAAe,YAAY,eAAe,IAAI,mEAA2B,OAAO,OAAO;AAC/F,QAAI,kBAAkB,+BAAkB,SAAS;AAC7C,YAAM,IAAI;AAAA,QACN,kCAAkC,UAAU;AAAA,QAC5C;AAAA,QACA;AAAA,MACJ;AAAA,IACJ;AAGA,QAAI,mBAAmB,qCAAwB,cAAc;AACzD,YAAM,IAAI;AAAA,QACN;AAAA,QACA;AAAA,QACA;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,EAAE,QAAQ,IAAI;AACpB,mCAAY,OAAO,OAAO;AAC1B,WAAO,MAAM,mCAAmC,QAAQ,IAAI,uBAAuB;AACnF,UAAM,QAAQ,YAAY;AAAA,EAC9B;AAAA,EAEA,MAAM,QAAQ;AAAA,EAEd;AACJ;AAEO,MAAM,8BAA8B,sCAAsC;AAAA,EAC7E;AAAA,EACS;AAAA,EACA,yBAAqB,gCAAoB;AAAA,EAElD,YAAY,UAA0B,SAAwB;AAC1D,UAAM;AACN,SAAK,oBAAoB,IAAI,6BAAW,UAAU,OAAO;AAAA,EAC7D;AAAA,EAEA,QAAQ,6BAAc,MAAM,EAAE,KAAkB;AAC5C,UAAM,WAAW,IAAI,sBAAsB,IAAI,IAAI,oCAAc,GAAG,IAAI,IAAI,kCAAa,CAAC;AAC1F,QAAI,IAAI,sCAAe,EAAE,mBAAmB,QAAQ;AACpD,QAAI,IAAI,uBAAuB,QAAQ;AACvC,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,oBAAoB;AACpB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,oBAAoB,YAAwB;AACxC,SAAK,oBAAoB;AAAA,EAC7B;AAAA,EAEA,yBAAyB;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,11 +3,15 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { Duration } from "#general";
|
|
7
|
+
import { TlvSchema } from "#types";
|
|
8
|
+
import { ExchangeSendOptions } from "../../protocol/MessageExchange.js";
|
|
6
9
|
import { SecureChannelMessenger } from "../../securechannel/SecureChannelMessenger.js";
|
|
7
10
|
import { PasePake1, PasePake2, PasePake3, PbkdfParamRequest, PbkdfParamResponse } from "./PaseMessages.js";
|
|
8
11
|
export declare const DEFAULT_PASSCODE_ID = 0;
|
|
9
12
|
export declare const SPAKE_CONTEXT: AllowSharedBufferSource;
|
|
10
13
|
export declare class PaseServerMessenger extends SecureChannelMessenger {
|
|
14
|
+
#private;
|
|
11
15
|
readPbkdfParamRequest(): Promise<{
|
|
12
16
|
requestPayload: AllowSharedBufferSource;
|
|
13
17
|
request: PbkdfParamRequest;
|
|
@@ -20,6 +24,9 @@ export declare class PaseServerMessenger extends SecureChannelMessenger {
|
|
|
20
24
|
readPasePake3(): Promise<import("#types").TypeFromFields<{
|
|
21
25
|
verifier: import("#types").FieldType<AllowSharedBufferSource>;
|
|
22
26
|
}>>;
|
|
27
|
+
close(): Promise<void>;
|
|
28
|
+
send<T>(message: T, type: number, schema: TlvSchema<T>, options?: ExchangeSendOptions): Promise<AllowSharedBufferSource>;
|
|
29
|
+
nextMessage(expectedMessageType: number, expectedProcessingTimeMs?: Duration, expectedMessageInfo?: string): Promise<import("../../index.js").Message>;
|
|
23
30
|
}
|
|
24
31
|
export declare class PaseClientMessenger extends SecureChannelMessenger {
|
|
25
32
|
sendPbkdfParamRequest(request: PbkdfParamRequest): Promise<AllowSharedBufferSource>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaseMessenger.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseMessenger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"PaseMessenger.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseMessenger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAS,QAAQ,EAAuB,MAAM,UAAU,CAAC;AAChE,OAAO,EAAqB,SAAS,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAkC,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AACvH,OAAO,EACH,SAAS,EACT,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,kBAAkB,EAMrB,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,aAAa,yBAAiD,CAAC;AAE5E,qBAAa,mBAAoB,SAAQ,sBAAsB;;IAGrD,qBAAqB;;iBAE4D,iBAAiB;;IAGlG,sBAAsB,CAAC,QAAQ,EAAE,kBAAkB;IAMzD,aAAa;;;IAIb,aAAa,CAAC,SAAS,EAAE,SAAS;IAIlC,aAAa;;;IAIJ,KAAK;IAKL,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,mBAAmB;IAO/E,WAAW,CACtB,mBAAmB,EAAE,MAAM,EAC3B,wBAAwB,CAAC,EAAE,QAAQ,EACnC,mBAAmB,CAAC,EAAE,MAAM;CAWnC;AAED,qBAAa,mBAAoB,SAAQ,sBAAsB;IAC3D,qBAAqB,CAAC,OAAO,EAAE,iBAAiB;IAM1C,sBAAsB;;kBAO8D,kBAAkB;;IAG5G,aAAa,CAAC,SAAS,EAAE,SAAS;IAIlC,aAAa;;;;IAIb,aAAa,CAAC,SAAS,EAAE,SAAS;CAGrC"}
|
|
@@ -36,6 +36,7 @@ var import_PaseMessages = require("./PaseMessages.js");
|
|
|
36
36
|
const DEFAULT_PASSCODE_ID = 0;
|
|
37
37
|
const SPAKE_CONTEXT = import_general.Bytes.fromString("CHIP PAKE V1 Commissioning");
|
|
38
38
|
class PaseServerMessenger extends import_SecureChannelMessenger.SecureChannelMessenger {
|
|
39
|
+
#closed = false;
|
|
39
40
|
async readPbkdfParamRequest() {
|
|
40
41
|
const { payload } = await this.nextMessage(import_types.SecureMessageType.PbkdfParamRequest, import_SecureChannelMessenger.DEFAULT_NORMAL_PROCESSING_TIME);
|
|
41
42
|
return { requestPayload: payload, request: import_PaseMessages.TlvPbkdfParamRequest.decode(payload) };
|
|
@@ -54,6 +55,26 @@ class PaseServerMessenger extends import_SecureChannelMessenger.SecureChannelMes
|
|
|
54
55
|
readPasePake3() {
|
|
55
56
|
return this.nextMessageDecoded(import_types.SecureMessageType.PasePake3, import_PaseMessages.TlvPasePake3);
|
|
56
57
|
}
|
|
58
|
+
close() {
|
|
59
|
+
this.#closed = true;
|
|
60
|
+
return super.close();
|
|
61
|
+
}
|
|
62
|
+
send(message, type, schema, options) {
|
|
63
|
+
if (this.#closed) {
|
|
64
|
+
throw new import_general.UnexpectedDataError("Cannot send message, messenger is closed");
|
|
65
|
+
}
|
|
66
|
+
return super.send(message, type, schema, options);
|
|
67
|
+
}
|
|
68
|
+
async nextMessage(expectedMessageType, expectedProcessingTimeMs, expectedMessageInfo) {
|
|
69
|
+
if (this.#closed) {
|
|
70
|
+
throw new import_general.UnexpectedDataError("Cannot read message, messenger is closed");
|
|
71
|
+
}
|
|
72
|
+
const result = await super.nextMessage(expectedMessageType, expectedProcessingTimeMs, expectedMessageInfo);
|
|
73
|
+
if (this.#closed) {
|
|
74
|
+
throw new import_general.UnexpectedDataError("Cannot read message, messenger is closed");
|
|
75
|
+
}
|
|
76
|
+
return result;
|
|
77
|
+
}
|
|
57
78
|
}
|
|
58
79
|
class PaseClientMessenger extends import_SecureChannelMessenger.SecureChannelMessenger {
|
|
59
80
|
sendPbkdfParamRequest(request) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/session/pase/PaseMessenger.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAqD;AACrD,mBAA6C;AAE7C,oCAAuE;AACvE,0BAWO;AArBP;AAAA;AAAA;AAAA;AAAA;AAuBO,MAAM,sBAAsB;AAC5B,MAAM,gBAAgB,qBAAM,WAAW,4BAA4B;AAEnE,MAAM,4BAA4B,qDAAuB;AAAA,EAC5D,UAAU;AAAA,EAEV,MAAM,wBAAwB;AAC1B,UAAM,EAAE,QAAQ,IAAI,MAAM,KAAK,YAAY,+BAAkB,mBAAmB,4DAA8B;AAC9G,WAAO,EAAE,gBAAgB,SAAS,SAAS,yCAAqB,OAAO,OAAO,EAAuB;AAAA,EACzG;AAAA,EAEA,MAAM,uBAAuB,UAA8B;AACvD,WAAO,KAAK,KAAK,UAAU,+BAAkB,oBAAoB,2CAAuB;AAAA,MACpF,wBAAwB;AAAA,IAC5B,CAAC;AAAA,EACL;AAAA,EAEA,gBAAgB;AACZ,WAAO,KAAK,mBAAmB,+BAAkB,WAAW,gCAAY;AAAA,EAC5E;AAAA,EAEA,cAAc,WAAsB;AAChC,WAAO,KAAK,KAAK,WAAW,+BAAkB,WAAW,gCAAY;AAAA,EACzE;AAAA,EAEA,gBAAgB;AACZ,WAAO,KAAK,mBAAmB,+BAAkB,WAAW,gCAAY;AAAA,EAC5E;AAAA,EAES,QAAQ;AACb,SAAK,UAAU;AACf,WAAO,MAAM,MAAM;AAAA,EACvB;AAAA,EAES,KAAQ,SAAY,MAAc,QAAsB,SAA+B;AAC5F,QAAI,KAAK,SAAS;AACd,YAAM,IAAI,mCAAoB,0CAA0C;AAAA,IAC5E;AACA,WAAO,MAAM,KAAK,SAAS,MAAM,QAAQ,OAAO;AAAA,EACpD;AAAA,EAEA,MAAe,YACX,qBACA,0BACA,qBACF;AACE,QAAI,KAAK,SAAS;AACd,YAAM,IAAI,mCAAoB,0CAA0C;AAAA,IAC5E;AACA,UAAM,SAAS,MAAM,MAAM,YAAY,qBAAqB,0BAA0B,mBAAmB;AACzG,QAAI,KAAK,SAAS;AACd,YAAM,IAAI,mCAAoB,0CAA0C;AAAA,IAC5E;AACA,WAAO;AAAA,EACX;AACJ;AAEO,MAAM,4BAA4B,qDAAuB;AAAA,EAC5D,sBAAsB,SAA4B;AAC9C,WAAO,KAAK,KAAK,SAAS,+BAAkB,mBAAmB,0CAAsB;AAAA,MACjF,wBAAwB;AAAA,IAC5B,CAAC;AAAA,EACL;AAAA,EAEA,MAAM,yBAAyB;AAC3B,UAAM,EAAE,QAAQ,IAAI,MAAM,KAAK;AAAA,MAC3B,+BAAkB;AAAA,MAClB;AAAA,IACJ;AAGA,WAAO,EAAE,iBAAiB,SAAS,UAAU,0CAAsB,OAAO,OAAO,EAAwB;AAAA,EAC7G;AAAA,EAEA,cAAc,WAAsB;AAChC,WAAO,KAAK,KAAK,WAAW,+BAAkB,WAAW,gCAAY;AAAA,EACzE;AAAA,EAEA,gBAAgB;AACZ,WAAO,KAAK,mBAAmB,+BAAkB,WAAW,gCAAY;AAAA,EAC5E;AAAA,EAEA,cAAc,WAAsB;AAChC,WAAO,KAAK,KAAK,WAAW,+BAAkB,WAAW,gCAAY;AAAA,EACzE;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaseServer.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EAKL,eAAe,EACf,eAAe,EAMlB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAuB,mBAAmB,EAAiB,MAAM,oBAAoB,CAAC;AAS7F,qBAAa,oCAAqC,SAAQ,eAAe;CAAG;AAE5E,qBAAa,UAAW,YAAW,eAAe;;
|
|
1
|
+
{"version":3,"file":"PaseServer.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EAKL,eAAe,EACf,eAAe,EAMlB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAuB,mBAAmB,EAAiB,MAAM,oBAAoB,CAAC;AAS7F,qBAAa,oCAAqC,SAAQ,eAAe;CAAG;AAE5E,qBAAa,UAAW,YAAW,eAAe;;IA0B1C,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IA5BrC,QAAQ,CAAC,EAAE,KAA8B;IACzC,QAAQ,CAAC,qBAAqB,SAAS;WAO1B,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe;IAKrG,MAAM,CAAC,qBAAqB,CACxB,QAAQ,EAAE,cAAc,EACxB,iBAAiB,EAAE,KAAK,EACxB,eAAe,CAAC,EAAE,eAAe;gBASzB,QAAQ,EAAE,cAAc,EACf,EAAE,EAAE,MAAM,EACV,CAAC,EAAE,KAAK,EACR,eAAe,CAAC,EAAE,eAAe,YAAA;IAGhD,aAAa,CAAC,QAAQ,EAAE,eAAe;YAgD/B,oBAAoB;IA2E5B,aAAa,CAAC,SAAS,EAAE,mBAAmB,EAAE,SAAS,UAAO;IAU9D,KAAK;CAId"}
|
|
@@ -47,7 +47,9 @@ class PaseServer {
|
|
|
47
47
|
id = import_types.SECURE_CHANNEL_PROTOCOL_ID;
|
|
48
48
|
requiresSecureSession = false;
|
|
49
49
|
#pairingTimer;
|
|
50
|
+
#pairingMessenger;
|
|
50
51
|
#pairingErrors = 0;
|
|
52
|
+
#closed = false;
|
|
51
53
|
static async fromPin(sessions, setupPinCode, pbkdfParameters) {
|
|
52
54
|
const { w0, L } = await import_general.Spake2p.computeW0L(sessions.crypto, pbkdfParameters, setupPinCode);
|
|
53
55
|
return new PaseServer(sessions, w0, L, pbkdfParameters);
|
|
@@ -59,6 +61,10 @@ class PaseServer {
|
|
|
59
61
|
return new PaseServer(sessions, w0, L, pbkdfParameters);
|
|
60
62
|
}
|
|
61
63
|
async onNewExchange(exchange) {
|
|
64
|
+
if (this.#closed) {
|
|
65
|
+
logger.warn("Pase server: Received new exchange but server is closed, ignoring exchange.");
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
62
68
|
const messenger = new import_PaseMessenger.PaseServerMessenger(exchange);
|
|
63
69
|
try {
|
|
64
70
|
const paseSession = this.sessions.getPaseSession();
|
|
@@ -68,8 +74,11 @@ class PaseServer {
|
|
|
68
74
|
logger.info(
|
|
69
75
|
"Pase server: Pairing already in progress (PASE establishment Timer running), ignoring new exchange."
|
|
70
76
|
);
|
|
77
|
+
} else if (this.#pairingMessenger !== void 0) {
|
|
78
|
+
logger.info("Already handling a pairing request, ignoring new exchange.");
|
|
71
79
|
} else {
|
|
72
|
-
|
|
80
|
+
this.#pairingMessenger = messenger;
|
|
81
|
+
await this.handlePairingRequest(this.sessions.crypto);
|
|
73
82
|
}
|
|
74
83
|
} catch (error) {
|
|
75
84
|
this.#pairingErrors++;
|
|
@@ -85,10 +94,12 @@ class PaseServer {
|
|
|
85
94
|
);
|
|
86
95
|
}
|
|
87
96
|
} finally {
|
|
97
|
+
this.#pairingMessenger = void 0;
|
|
88
98
|
await exchange.session.destroy();
|
|
89
99
|
}
|
|
90
100
|
}
|
|
91
|
-
async handlePairingRequest(crypto
|
|
101
|
+
async handlePairingRequest(crypto) {
|
|
102
|
+
const messenger = this.#pairingMessenger;
|
|
92
103
|
logger.info("Received pairing request \xAB", import_general.Diagnostic.via(messenger.channelName));
|
|
93
104
|
this.#pairingTimer = import_general.Time.getTimer(
|
|
94
105
|
"PASE pairing timeout",
|
|
@@ -157,6 +168,8 @@ class PaseServer {
|
|
|
157
168
|
await messenger.close();
|
|
158
169
|
}
|
|
159
170
|
async close() {
|
|
171
|
+
this.#closed = true;
|
|
172
|
+
await this.#pairingMessenger?.close();
|
|
160
173
|
}
|
|
161
174
|
}
|
|
162
175
|
//# sourceMappingURL=PaseServer.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/session/pase/PaseServer.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAaO;AAEP,mBAA4E;AAG5E,oCAA2C;AAC3C,2BAAwE;AAzBxE;AAAA;AAAA;AAAA;AAAA;AA2BA,MAAM,EAAE,gBAAgB,IAAI;AAE5B,MAAM,SAAS,sBAAO,IAAI,YAAY;AAEtC,MAAM,8BAA0B,wBAAQ,EAAE;AAC1C,MAAM,gCAAgC;AAE/B,MAAM,6CAA6C,+BAAgB;AAAC;AAEpE,MAAM,WAAsC;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MdnsAdvertisement.d.ts","sourceRoot":"","sources":["../../../../src/advertisement/mdns/MdnsAdvertisement.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAGH,SAAS,EAQZ,MAAM,UAAU,CAAC;AAGlB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAI1D;;;;GAIG;AACH,8BAAsB,iBAAiB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;;IACvG,UAAU,EAAE,cAAc,CAAC;IAEnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"MdnsAdvertisement.d.ts","sourceRoot":"","sources":["../../../../src/advertisement/mdns/MdnsAdvertisement.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAGH,SAAS,EAQZ,MAAM,UAAU,CAAC;AAGlB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAI1D;;;;GAIG;AACH,8BAAsB,iBAAiB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;;IACvG,UAAU,EAAE,cAAc,CAAC;IAEnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;gBAMF,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAUrE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC;IAE3C,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEjD;IAEc,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,eAAe,EAAE,KAAK,GAAE,UAAU,CAAC,cAA0B;IAkBvG;;OAEG;IACG,SAAS;IAqBf;;OAEG;IACG,MAAM;IAQH,gBAAgB;IAehB,mBAAmB;cAIH,QAAQ;cASR,OAAO;CAsDnC"}
|
|
@@ -24,6 +24,7 @@ class MdnsAdvertisement extends Advertisement {
|
|
|
24
24
|
qname;
|
|
25
25
|
#isPrivacyMasked;
|
|
26
26
|
#stopAt;
|
|
27
|
+
#broadcastPromise;
|
|
27
28
|
constructor(advertiser, qname, description) {
|
|
28
29
|
description = {
|
|
29
30
|
...description,
|
|
@@ -56,6 +57,15 @@ class MdnsAdvertisement extends Advertisement {
|
|
|
56
57
|
* Broadcast a single announcement immediately.
|
|
57
58
|
*/
|
|
58
59
|
async broadcast() {
|
|
60
|
+
if (this.#broadcastPromise !== void 0) {
|
|
61
|
+
return this.#broadcastPromise;
|
|
62
|
+
}
|
|
63
|
+
this.#broadcastPromise = this.#broadcast().then(() => {
|
|
64
|
+
this.#broadcastPromise = void 0;
|
|
65
|
+
});
|
|
66
|
+
return this.#broadcastPromise;
|
|
67
|
+
}
|
|
68
|
+
async #broadcast() {
|
|
59
69
|
if (!this.#isPrivacyMasked && this.isPrivacyMasked) {
|
|
60
70
|
this.#isPrivacyMasked = true;
|
|
61
71
|
await this.advertiser.server.setRecordsGenerator(this.service, this.#recordsGenerator);
|
|
@@ -66,6 +76,9 @@ class MdnsAdvertisement extends Advertisement {
|
|
|
66
76
|
* Broadcast expiration announcement immediately.
|
|
67
77
|
*/
|
|
68
78
|
async expire() {
|
|
79
|
+
if (this.#broadcastPromise !== void 0) {
|
|
80
|
+
await this.#broadcastPromise;
|
|
81
|
+
}
|
|
69
82
|
logger.info("Unpublishing", this.dict({ time: Duration.format(this.duration) }));
|
|
70
83
|
await this.advertiser.server.expireAnnouncements(this.service);
|
|
71
84
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/advertisement/mdns/MdnsAdvertisement.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -152,7 +152,7 @@ class DeviceCommissioner {
|
|
|
152
152
|
return;
|
|
153
153
|
}
|
|
154
154
|
this.#cancelTimeout();
|
|
155
|
-
this.#context.secureChannelProtocol.removePaseCommissioner();
|
|
155
|
+
await this.#context.secureChannelProtocol.removePaseCommissioner();
|
|
156
156
|
this.#windowStatus = AdministratorCommissioning.CommissioningWindowStatus.WindowNotOpen;
|
|
157
157
|
if (this.#activeCommissioningEndCallback !== void 0) {
|
|
158
158
|
const activeCommissioningEndCallback = this.#activeCommissioningEndCallback;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/protocol/DeviceCommissioner.ts"],
|
|
4
|
-
"mappings": "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
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -26,7 +26,7 @@ export declare class SecureChannelProtocol extends StatusReportOnlySecureChannel
|
|
|
26
26
|
*/
|
|
27
27
|
get tooManyPaseErrors(): AsyncObservable<[], void>;
|
|
28
28
|
setPaseCommissioner(paseServer: PaseServer): void;
|
|
29
|
-
removePaseCommissioner(): void
|
|
29
|
+
removePaseCommissioner(): Promise<void>;
|
|
30
30
|
onNewExchange(exchange: MessageExchange, message: Message): Promise<void>;
|
|
31
31
|
}
|
|
32
32
|
//# sourceMappingURL=SecureChannelProtocol.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecureChannelProtocol.d.ts","sourceRoot":"","sources":["../../../src/securechannel/SecureChannelProtocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAA2B,MAAM,UAAU,CAAC;AAGhG,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAS5D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAwC,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAMjG,qBAAa,qCAAsC,YAAW,eAAe;IACzE,QAAQ,CAAC,EAAE,KAA8B;IAGzC,QAAQ,CAAC,qBAAqB,YAAa;IAErC,aAAa,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;IAkBzD,yBAAyB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;IAqCrE,KAAK;CAGd;AAED,qBAAa,qBAAsB,SAAQ,qCAAqC;;gBAKhE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa;IAK5D,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAO9C;;OAEG;IACH,IAAI,iBAAiB,8BAEpB;IAED,mBAAmB,CAAC,UAAU,EAAE,UAAU;
|
|
1
|
+
{"version":3,"file":"SecureChannelProtocol.d.ts","sourceRoot":"","sources":["../../../src/securechannel/SecureChannelProtocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAA2B,MAAM,UAAU,CAAC;AAGhG,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAS5D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAwC,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAMjG,qBAAa,qCAAsC,YAAW,eAAe;IACzE,QAAQ,CAAC,EAAE,KAA8B;IAGzC,QAAQ,CAAC,qBAAqB,YAAa;IAErC,aAAa,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;IAkBzD,yBAAyB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;IAqCrE,KAAK;CAGd;AAED,qBAAa,qBAAsB,SAAQ,qCAAqC;;gBAKhE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa;IAK5D,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAO9C;;OAEG;IACH,IAAI,iBAAiB,8BAEpB;IAED,mBAAmB,CAAC,UAAU,EAAE,UAAU;IAIpC,sBAAsB;IAKb,aAAa,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO;CA4B3E"}
|
|
@@ -98,7 +98,8 @@ class SecureChannelProtocol extends StatusReportOnlySecureChannelProtocol {
|
|
|
98
98
|
setPaseCommissioner(paseServer) {
|
|
99
99
|
this.#paseCommissioner = paseServer;
|
|
100
100
|
}
|
|
101
|
-
removePaseCommissioner() {
|
|
101
|
+
async removePaseCommissioner() {
|
|
102
|
+
await this.#paseCommissioner?.close();
|
|
102
103
|
this.#paseCommissioner = void 0;
|
|
103
104
|
}
|
|
104
105
|
async onNewExchange(exchange, message) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/securechannel/SecureChannelProtocol.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,qBAAqB;AAC9B,SAAS,iBAA8B,eAAe,QAAQ,uBAAuB;AACrF,SAAS,uBAAuB;AAChC,SAAS,mBAAmB;AAC5B,SAAS,sBAAsB;AAC/B;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AAIP,SAAS,kBAAkB;AAC3B,SAAS,4CAAwD;AACjE,SAAS,4BAA4B,8BAA8B;AACnE,SAAS,kCAAkC;AAE3C,MAAM,SAAS,OAAO,IAAI,uBAAuB;AAE1C,MAAM,sCAAiE;AAAA,EACjE,KAAK;AAAA;AAAA,EAGL,wBAAwB;AAAA,EAEjC,MAAM,cAAc,UAA2B,SAAkB;AAC7D,UAAM,cAAc,QAAQ,cAAc;AAE1C,YAAQ,aAAa;AAAA,MACjB,KAAK,kBAAkB;AACnB,cAAM,KAAK,0BAA0B,UAAU,OAAO;AACtD;AAAA,MACJ;AAEI,YAAI,gBAAgB,kBAAkB,eAAe;AACjD,gBAAM,IAAI;AAAA,YACN,0DAA0D,YAAY,SAAS,EAAE,CAAC;AAAA,YAClF,WAAW;AAAA,UACf;AAAA,QACJ;AAAA,IACR;AAAA,EACJ;AAAA,EAEA,MAAM,0BAA0B,UAA2B,SAAkB;AACzE,UAAM;AAAA,MACF,eAAe,EAAE,YAAY;AAAA,MAC7B;AAAA,IACJ,IAAI;AACJ,QAAI,gBAAgB,kBAAkB,cAAc;AAChD,YAAM,IAAI;AAAA,QACN,8EAA8E,YAAY;AAAA,UACtF;AAAA,QACJ,CAAC;AAAA,MACL;AAAA,IACJ;AAEA,UAAM,EAAE,eAAe,YAAY,eAAe,IAAI,2BAA2B,OAAO,OAAO;AAC/F,QAAI,kBAAkB,kBAAkB,SAAS;AAC7C,YAAM,IAAI;AAAA,QACN,kCAAkC,UAAU;AAAA,QAC5C;AAAA,QACA;AAAA,MACJ;AAAA,IACJ;AAGA,QAAI,mBAAmB,wBAAwB,cAAc;AACzD,YAAM,IAAI;AAAA,QACN;AAAA,QACA;AAAA,QACA;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,EAAE,QAAQ,IAAI;AACpB,gBAAY,OAAO,OAAO;AAC1B,WAAO,MAAM,mCAAmC,QAAQ,IAAI,uBAAuB;AACnF,UAAM,QAAQ,YAAY;AAAA,EAC9B;AAAA,EAEA,MAAM,QAAQ;AAAA,EAEd;AACJ;AAEO,MAAM,8BAA8B,sCAAsC;AAAA,EAC7E;AAAA,EACS;AAAA,EACA,qBAAqB,gBAAoB;AAAA,EAElD,YAAY,UAA0B,SAAwB;AAC1D,UAAM;AACN,SAAK,oBAAoB,IAAI,WAAW,UAAU,OAAO;AAAA,EAC7D;AAAA,EAEA,QAAQ,cAAc,MAAM,EAAE,KAAkB;AAC5C,UAAM,WAAW,IAAI,sBAAsB,IAAI,IAAI,cAAc,GAAG,IAAI,IAAI,aAAa,CAAC;AAC1F,QAAI,IAAI,eAAe,EAAE,mBAAmB,QAAQ;AACpD,QAAI,IAAI,uBAAuB,QAAQ;AACvC,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,oBAAoB;AACpB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,oBAAoB,YAAwB;AACxC,SAAK,oBAAoB;AAAA,EAC7B;AAAA,EAEA,yBAAyB;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,11 +3,15 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { Duration } from "#general";
|
|
7
|
+
import { TlvSchema } from "#types";
|
|
8
|
+
import { ExchangeSendOptions } from "../../protocol/MessageExchange.js";
|
|
6
9
|
import { SecureChannelMessenger } from "../../securechannel/SecureChannelMessenger.js";
|
|
7
10
|
import { PasePake1, PasePake2, PasePake3, PbkdfParamRequest, PbkdfParamResponse } from "./PaseMessages.js";
|
|
8
11
|
export declare const DEFAULT_PASSCODE_ID = 0;
|
|
9
12
|
export declare const SPAKE_CONTEXT: AllowSharedBufferSource;
|
|
10
13
|
export declare class PaseServerMessenger extends SecureChannelMessenger {
|
|
14
|
+
#private;
|
|
11
15
|
readPbkdfParamRequest(): Promise<{
|
|
12
16
|
requestPayload: AllowSharedBufferSource;
|
|
13
17
|
request: PbkdfParamRequest;
|
|
@@ -20,6 +24,9 @@ export declare class PaseServerMessenger extends SecureChannelMessenger {
|
|
|
20
24
|
readPasePake3(): Promise<import("#types").TypeFromFields<{
|
|
21
25
|
verifier: import("#types").FieldType<AllowSharedBufferSource>;
|
|
22
26
|
}>>;
|
|
27
|
+
close(): Promise<void>;
|
|
28
|
+
send<T>(message: T, type: number, schema: TlvSchema<T>, options?: ExchangeSendOptions): Promise<AllowSharedBufferSource>;
|
|
29
|
+
nextMessage(expectedMessageType: number, expectedProcessingTimeMs?: Duration, expectedMessageInfo?: string): Promise<import("../../index.js").Message>;
|
|
23
30
|
}
|
|
24
31
|
export declare class PaseClientMessenger extends SecureChannelMessenger {
|
|
25
32
|
sendPbkdfParamRequest(request: PbkdfParamRequest): Promise<AllowSharedBufferSource>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaseMessenger.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseMessenger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"PaseMessenger.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseMessenger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAS,QAAQ,EAAuB,MAAM,UAAU,CAAC;AAChE,OAAO,EAAqB,SAAS,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAkC,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AACvH,OAAO,EACH,SAAS,EACT,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,kBAAkB,EAMrB,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,aAAa,yBAAiD,CAAC;AAE5E,qBAAa,mBAAoB,SAAQ,sBAAsB;;IAGrD,qBAAqB;;iBAE4D,iBAAiB;;IAGlG,sBAAsB,CAAC,QAAQ,EAAE,kBAAkB;IAMzD,aAAa;;;IAIb,aAAa,CAAC,SAAS,EAAE,SAAS;IAIlC,aAAa;;;IAIJ,KAAK;IAKL,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,mBAAmB;IAO/E,WAAW,CACtB,mBAAmB,EAAE,MAAM,EAC3B,wBAAwB,CAAC,EAAE,QAAQ,EACnC,mBAAmB,CAAC,EAAE,MAAM;CAWnC;AAED,qBAAa,mBAAoB,SAAQ,sBAAsB;IAC3D,qBAAqB,CAAC,OAAO,EAAE,iBAAiB;IAM1C,sBAAsB;;kBAO8D,kBAAkB;;IAG5G,aAAa,CAAC,SAAS,EAAE,SAAS;IAIlC,aAAa;;;;IAIb,aAAa,CAAC,SAAS,EAAE,SAAS;CAGrC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Bytes } from "#general";
|
|
6
|
+
import { Bytes, UnexpectedDataError } from "#general";
|
|
7
7
|
import { SecureMessageType } from "#types";
|
|
8
8
|
import { DEFAULT_NORMAL_PROCESSING_TIME, SecureChannelMessenger } from "../../securechannel/SecureChannelMessenger.js";
|
|
9
9
|
import {
|
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
const DEFAULT_PASSCODE_ID = 0;
|
|
17
17
|
const SPAKE_CONTEXT = Bytes.fromString("CHIP PAKE V1 Commissioning");
|
|
18
18
|
class PaseServerMessenger extends SecureChannelMessenger {
|
|
19
|
+
#closed = false;
|
|
19
20
|
async readPbkdfParamRequest() {
|
|
20
21
|
const { payload } = await this.nextMessage(SecureMessageType.PbkdfParamRequest, DEFAULT_NORMAL_PROCESSING_TIME);
|
|
21
22
|
return { requestPayload: payload, request: TlvPbkdfParamRequest.decode(payload) };
|
|
@@ -34,6 +35,26 @@ class PaseServerMessenger extends SecureChannelMessenger {
|
|
|
34
35
|
readPasePake3() {
|
|
35
36
|
return this.nextMessageDecoded(SecureMessageType.PasePake3, TlvPasePake3);
|
|
36
37
|
}
|
|
38
|
+
close() {
|
|
39
|
+
this.#closed = true;
|
|
40
|
+
return super.close();
|
|
41
|
+
}
|
|
42
|
+
send(message, type, schema, options) {
|
|
43
|
+
if (this.#closed) {
|
|
44
|
+
throw new UnexpectedDataError("Cannot send message, messenger is closed");
|
|
45
|
+
}
|
|
46
|
+
return super.send(message, type, schema, options);
|
|
47
|
+
}
|
|
48
|
+
async nextMessage(expectedMessageType, expectedProcessingTimeMs, expectedMessageInfo) {
|
|
49
|
+
if (this.#closed) {
|
|
50
|
+
throw new UnexpectedDataError("Cannot read message, messenger is closed");
|
|
51
|
+
}
|
|
52
|
+
const result = await super.nextMessage(expectedMessageType, expectedProcessingTimeMs, expectedMessageInfo);
|
|
53
|
+
if (this.#closed) {
|
|
54
|
+
throw new UnexpectedDataError("Cannot read message, messenger is closed");
|
|
55
|
+
}
|
|
56
|
+
return result;
|
|
57
|
+
}
|
|
37
58
|
}
|
|
38
59
|
class PaseClientMessenger extends SecureChannelMessenger {
|
|
39
60
|
sendPbkdfParamRequest(request) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/session/pase/PaseMessenger.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,OAAiB,2BAA2B;AACrD,SAAS,yBAAoC;AAE7C,SAAS,gCAAgC,8BAA8B;AACvE;AAAA,EAMI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AAEA,MAAM,sBAAsB;AAC5B,MAAM,gBAAgB,MAAM,WAAW,4BAA4B;AAEnE,MAAM,4BAA4B,uBAAuB;AAAA,EAC5D,UAAU;AAAA,EAEV,MAAM,wBAAwB;AAC1B,UAAM,EAAE,QAAQ,IAAI,MAAM,KAAK,YAAY,kBAAkB,mBAAmB,8BAA8B;AAC9G,WAAO,EAAE,gBAAgB,SAAS,SAAS,qBAAqB,OAAO,OAAO,EAAuB;AAAA,EACzG;AAAA,EAEA,MAAM,uBAAuB,UAA8B;AACvD,WAAO,KAAK,KAAK,UAAU,kBAAkB,oBAAoB,uBAAuB;AAAA,MACpF,wBAAwB;AAAA,IAC5B,CAAC;AAAA,EACL;AAAA,EAEA,gBAAgB;AACZ,WAAO,KAAK,mBAAmB,kBAAkB,WAAW,YAAY;AAAA,EAC5E;AAAA,EAEA,cAAc,WAAsB;AAChC,WAAO,KAAK,KAAK,WAAW,kBAAkB,WAAW,YAAY;AAAA,EACzE;AAAA,EAEA,gBAAgB;AACZ,WAAO,KAAK,mBAAmB,kBAAkB,WAAW,YAAY;AAAA,EAC5E;AAAA,EAES,QAAQ;AACb,SAAK,UAAU;AACf,WAAO,MAAM,MAAM;AAAA,EACvB;AAAA,EAES,KAAQ,SAAY,MAAc,QAAsB,SAA+B;AAC5F,QAAI,KAAK,SAAS;AACd,YAAM,IAAI,oBAAoB,0CAA0C;AAAA,IAC5E;AACA,WAAO,MAAM,KAAK,SAAS,MAAM,QAAQ,OAAO;AAAA,EACpD;AAAA,EAEA,MAAe,YACX,qBACA,0BACA,qBACF;AACE,QAAI,KAAK,SAAS;AACd,YAAM,IAAI,oBAAoB,0CAA0C;AAAA,IAC5E;AACA,UAAM,SAAS,MAAM,MAAM,YAAY,qBAAqB,0BAA0B,mBAAmB;AACzG,QAAI,KAAK,SAAS;AACd,YAAM,IAAI,oBAAoB,0CAA0C;AAAA,IAC5E;AACA,WAAO;AAAA,EACX;AACJ;AAEO,MAAM,4BAA4B,uBAAuB;AAAA,EAC5D,sBAAsB,SAA4B;AAC9C,WAAO,KAAK,KAAK,SAAS,kBAAkB,mBAAmB,sBAAsB;AAAA,MACjF,wBAAwB;AAAA,IAC5B,CAAC;AAAA,EACL;AAAA,EAEA,MAAM,yBAAyB;AAC3B,UAAM,EAAE,QAAQ,IAAI,MAAM,KAAK;AAAA,MAC3B,kBAAkB;AAAA,MAClB;AAAA,IACJ;AAGA,WAAO,EAAE,iBAAiB,SAAS,UAAU,sBAAsB,OAAO,OAAO,EAAwB;AAAA,EAC7G;AAAA,EAEA,cAAc,WAAsB;AAChC,WAAO,KAAK,KAAK,WAAW,kBAAkB,WAAW,YAAY;AAAA,EACzE;AAAA,EAEA,gBAAgB;AACZ,WAAO,KAAK,mBAAmB,kBAAkB,WAAW,YAAY;AAAA,EAC5E;AAAA,EAEA,cAAc,WAAsB;AAChC,WAAO,KAAK,KAAK,WAAW,kBAAkB,WAAW,YAAY;AAAA,EACzE;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaseServer.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EAKL,eAAe,EACf,eAAe,EAMlB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAuB,mBAAmB,EAAiB,MAAM,oBAAoB,CAAC;AAS7F,qBAAa,oCAAqC,SAAQ,eAAe;CAAG;AAE5E,qBAAa,UAAW,YAAW,eAAe;;
|
|
1
|
+
{"version":3,"file":"PaseServer.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EAKL,eAAe,EACf,eAAe,EAMlB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAuB,mBAAmB,EAAiB,MAAM,oBAAoB,CAAC;AAS7F,qBAAa,oCAAqC,SAAQ,eAAe;CAAG;AAE5E,qBAAa,UAAW,YAAW,eAAe;;IA0B1C,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IA5BrC,QAAQ,CAAC,EAAE,KAA8B;IACzC,QAAQ,CAAC,qBAAqB,SAAS;WAO1B,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe;IAKrG,MAAM,CAAC,qBAAqB,CACxB,QAAQ,EAAE,cAAc,EACxB,iBAAiB,EAAE,KAAK,EACxB,eAAe,CAAC,EAAE,eAAe;gBASzB,QAAQ,EAAE,cAAc,EACf,EAAE,EAAE,MAAM,EACV,CAAC,EAAE,KAAK,EACR,eAAe,CAAC,EAAE,eAAe,YAAA;IAGhD,aAAa,CAAC,QAAQ,EAAE,eAAe;YAgD/B,oBAAoB;IA2E5B,aAAa,CAAC,SAAS,EAAE,mBAAmB,EAAE,SAAS,UAAO;IAU9D,KAAK;CAId"}
|
|
@@ -33,7 +33,9 @@ class PaseServer {
|
|
|
33
33
|
id = SECURE_CHANNEL_PROTOCOL_ID;
|
|
34
34
|
requiresSecureSession = false;
|
|
35
35
|
#pairingTimer;
|
|
36
|
+
#pairingMessenger;
|
|
36
37
|
#pairingErrors = 0;
|
|
38
|
+
#closed = false;
|
|
37
39
|
static async fromPin(sessions, setupPinCode, pbkdfParameters) {
|
|
38
40
|
const { w0, L } = await Spake2p.computeW0L(sessions.crypto, pbkdfParameters, setupPinCode);
|
|
39
41
|
return new PaseServer(sessions, w0, L, pbkdfParameters);
|
|
@@ -45,6 +47,10 @@ class PaseServer {
|
|
|
45
47
|
return new PaseServer(sessions, w0, L, pbkdfParameters);
|
|
46
48
|
}
|
|
47
49
|
async onNewExchange(exchange) {
|
|
50
|
+
if (this.#closed) {
|
|
51
|
+
logger.warn("Pase server: Received new exchange but server is closed, ignoring exchange.");
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
48
54
|
const messenger = new PaseServerMessenger(exchange);
|
|
49
55
|
try {
|
|
50
56
|
const paseSession = this.sessions.getPaseSession();
|
|
@@ -54,8 +60,11 @@ class PaseServer {
|
|
|
54
60
|
logger.info(
|
|
55
61
|
"Pase server: Pairing already in progress (PASE establishment Timer running), ignoring new exchange."
|
|
56
62
|
);
|
|
63
|
+
} else if (this.#pairingMessenger !== void 0) {
|
|
64
|
+
logger.info("Already handling a pairing request, ignoring new exchange.");
|
|
57
65
|
} else {
|
|
58
|
-
|
|
66
|
+
this.#pairingMessenger = messenger;
|
|
67
|
+
await this.handlePairingRequest(this.sessions.crypto);
|
|
59
68
|
}
|
|
60
69
|
} catch (error) {
|
|
61
70
|
this.#pairingErrors++;
|
|
@@ -71,10 +80,12 @@ class PaseServer {
|
|
|
71
80
|
);
|
|
72
81
|
}
|
|
73
82
|
} finally {
|
|
83
|
+
this.#pairingMessenger = void 0;
|
|
74
84
|
await exchange.session.destroy();
|
|
75
85
|
}
|
|
76
86
|
}
|
|
77
|
-
async handlePairingRequest(crypto
|
|
87
|
+
async handlePairingRequest(crypto) {
|
|
88
|
+
const messenger = this.#pairingMessenger;
|
|
78
89
|
logger.info("Received pairing request \xAB", Diagnostic.via(messenger.channelName));
|
|
79
90
|
this.#pairingTimer = Time.getTimer(
|
|
80
91
|
"PASE pairing timeout",
|
|
@@ -143,6 +154,8 @@ class PaseServer {
|
|
|
143
154
|
await messenger.close();
|
|
144
155
|
}
|
|
145
156
|
async close() {
|
|
157
|
+
this.#closed = true;
|
|
158
|
+
await this.#pairingMessenger?.close();
|
|
146
159
|
}
|
|
147
160
|
}
|
|
148
161
|
export {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/session/pase/PaseServer.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,EACI;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OACG;AAEP,SAAS,QAAQ,4BAA4B,+BAA+B;AAG5E,SAAS,kCAAkC;AAC3C,SAAS,qBAAqB,qBAAqB,qBAAqB;AAExE,MAAM,EAAE,gBAAgB,IAAI;AAE5B,MAAM,SAAS,OAAO,IAAI,YAAY;AAEtC,MAAM,0BAA0B,QAAQ,EAAE;AAC1C,MAAM,gCAAgC;AAE/B,MAAM,6CAA6C,gBAAgB;AAAC;AAEpE,MAAM,WAAsC;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/protocol",
|
|
3
|
-
"version": "0.16.0-alpha.0-
|
|
3
|
+
"version": "0.16.0-alpha.0-20251023-bb23617e5",
|
|
4
4
|
"description": "Low-level APIs for Matter interaction",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"iot",
|
|
@@ -40,13 +40,13 @@
|
|
|
40
40
|
"#*": "./src/*"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@matter/general": "0.16.0-alpha.0-
|
|
44
|
-
"@matter/model": "0.16.0-alpha.0-
|
|
45
|
-
"@matter/types": "0.16.0-alpha.0-
|
|
43
|
+
"@matter/general": "0.16.0-alpha.0-20251023-bb23617e5",
|
|
44
|
+
"@matter/model": "0.16.0-alpha.0-20251023-bb23617e5",
|
|
45
|
+
"@matter/types": "0.16.0-alpha.0-20251023-bb23617e5"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@matter/tools": "0.16.0-alpha.0-
|
|
49
|
-
"@matter/testing": "0.16.0-alpha.0-
|
|
48
|
+
"@matter/tools": "0.16.0-alpha.0-20251023-bb23617e5",
|
|
49
|
+
"@matter/testing": "0.16.0-alpha.0-20251023-bb23617e5"
|
|
50
50
|
},
|
|
51
51
|
"files": [
|
|
52
52
|
"dist/**/*",
|
|
@@ -41,6 +41,7 @@ export abstract class MdnsAdvertisement<T extends ServiceDescription = ServiceDe
|
|
|
41
41
|
|
|
42
42
|
#isPrivacyMasked: boolean;
|
|
43
43
|
#stopAt?: Timestamp;
|
|
44
|
+
#broadcastPromise?: Promise<void>;
|
|
44
45
|
|
|
45
46
|
constructor(advertiser: MdnsAdvertiser, qname: string, description: T) {
|
|
46
47
|
description = {
|
|
@@ -80,6 +81,18 @@ export abstract class MdnsAdvertisement<T extends ServiceDescription = ServiceDe
|
|
|
80
81
|
* Broadcast a single announcement immediately.
|
|
81
82
|
*/
|
|
82
83
|
async broadcast() {
|
|
84
|
+
if (this.#broadcastPromise !== undefined) {
|
|
85
|
+
return this.#broadcastPromise;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
this.#broadcastPromise = this.#broadcast().then(() => {
|
|
89
|
+
this.#broadcastPromise = undefined;
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
return this.#broadcastPromise;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
async #broadcast() {
|
|
83
96
|
if (!this.#isPrivacyMasked && this.isPrivacyMasked) {
|
|
84
97
|
this.#isPrivacyMasked = true;
|
|
85
98
|
await this.advertiser.server.setRecordsGenerator(this.service, this.#recordsGenerator);
|
|
@@ -92,6 +105,9 @@ export abstract class MdnsAdvertisement<T extends ServiceDescription = ServiceDe
|
|
|
92
105
|
* Broadcast expiration announcement immediately.
|
|
93
106
|
*/
|
|
94
107
|
async expire() {
|
|
108
|
+
if (this.#broadcastPromise !== undefined) {
|
|
109
|
+
await this.#broadcastPromise;
|
|
110
|
+
}
|
|
95
111
|
logger.info("Unpublishing", this.dict({ time: Duration.format(this.duration) }));
|
|
96
112
|
await this.advertiser.server.expireAnnouncements(this.service);
|
|
97
113
|
}
|
|
@@ -235,7 +235,7 @@ export class DeviceCommissioner {
|
|
|
235
235
|
|
|
236
236
|
this.#cancelTimeout();
|
|
237
237
|
|
|
238
|
-
this.#context.secureChannelProtocol.removePaseCommissioner();
|
|
238
|
+
await this.#context.secureChannelProtocol.removePaseCommissioner();
|
|
239
239
|
|
|
240
240
|
this.#windowStatus = AdministratorCommissioning.CommissioningWindowStatus.WindowNotOpen;
|
|
241
241
|
|
|
@@ -121,7 +121,8 @@ export class SecureChannelProtocol extends StatusReportOnlySecureChannelProtocol
|
|
|
121
121
|
this.#paseCommissioner = paseServer;
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
-
removePaseCommissioner() {
|
|
124
|
+
async removePaseCommissioner() {
|
|
125
|
+
await this.#paseCommissioner?.close();
|
|
125
126
|
this.#paseCommissioner = undefined;
|
|
126
127
|
}
|
|
127
128
|
|
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { Bytes } from "#general";
|
|
8
|
-
import { SecureMessageType } from "#types";
|
|
7
|
+
import { Bytes, Duration, UnexpectedDataError } from "#general";
|
|
8
|
+
import { SecureMessageType, TlvSchema } from "#types";
|
|
9
|
+
import { ExchangeSendOptions } from "../../protocol/MessageExchange.js";
|
|
9
10
|
import { DEFAULT_NORMAL_PROCESSING_TIME, SecureChannelMessenger } from "../../securechannel/SecureChannelMessenger.js";
|
|
10
11
|
import {
|
|
11
12
|
PasePake1,
|
|
@@ -24,6 +25,8 @@ export const DEFAULT_PASSCODE_ID = 0;
|
|
|
24
25
|
export const SPAKE_CONTEXT = Bytes.fromString("CHIP PAKE V1 Commissioning");
|
|
25
26
|
|
|
26
27
|
export class PaseServerMessenger extends SecureChannelMessenger {
|
|
28
|
+
#closed = false;
|
|
29
|
+
|
|
27
30
|
async readPbkdfParamRequest() {
|
|
28
31
|
const { payload } = await this.nextMessage(SecureMessageType.PbkdfParamRequest, DEFAULT_NORMAL_PROCESSING_TIME);
|
|
29
32
|
return { requestPayload: payload, request: TlvPbkdfParamRequest.decode(payload) as PbkdfParamRequest };
|
|
@@ -46,6 +49,33 @@ export class PaseServerMessenger extends SecureChannelMessenger {
|
|
|
46
49
|
readPasePake3() {
|
|
47
50
|
return this.nextMessageDecoded(SecureMessageType.PasePake3, TlvPasePake3);
|
|
48
51
|
}
|
|
52
|
+
|
|
53
|
+
override close() {
|
|
54
|
+
this.#closed = true;
|
|
55
|
+
return super.close();
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
override send<T>(message: T, type: number, schema: TlvSchema<T>, options?: ExchangeSendOptions) {
|
|
59
|
+
if (this.#closed) {
|
|
60
|
+
throw new UnexpectedDataError("Cannot send message, messenger is closed");
|
|
61
|
+
}
|
|
62
|
+
return super.send(message, type, schema, options);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
override async nextMessage(
|
|
66
|
+
expectedMessageType: number,
|
|
67
|
+
expectedProcessingTimeMs?: Duration,
|
|
68
|
+
expectedMessageInfo?: string,
|
|
69
|
+
) {
|
|
70
|
+
if (this.#closed) {
|
|
71
|
+
throw new UnexpectedDataError("Cannot read message, messenger is closed");
|
|
72
|
+
}
|
|
73
|
+
const result = await super.nextMessage(expectedMessageType, expectedProcessingTimeMs, expectedMessageInfo);
|
|
74
|
+
if (this.#closed) {
|
|
75
|
+
throw new UnexpectedDataError("Cannot read message, messenger is closed");
|
|
76
|
+
}
|
|
77
|
+
return result;
|
|
78
|
+
}
|
|
49
79
|
}
|
|
50
80
|
|
|
51
81
|
export class PaseClientMessenger extends SecureChannelMessenger {
|
|
@@ -38,8 +38,10 @@ export class PaseServer implements ProtocolHandler {
|
|
|
38
38
|
readonly id = SECURE_CHANNEL_PROTOCOL_ID;
|
|
39
39
|
readonly requiresSecureSession = false;
|
|
40
40
|
|
|
41
|
-
#pairingTimer
|
|
41
|
+
#pairingTimer?: Timer;
|
|
42
|
+
#pairingMessenger?: PaseServerMessenger;
|
|
42
43
|
#pairingErrors = 0;
|
|
44
|
+
#closed = false;
|
|
43
45
|
|
|
44
46
|
static async fromPin(sessions: SessionManager, setupPinCode: number, pbkdfParameters: PbkdfParameters) {
|
|
45
47
|
const { w0, L } = await Spake2p.computeW0L(sessions.crypto, pbkdfParameters, setupPinCode);
|
|
@@ -65,6 +67,10 @@ export class PaseServer implements ProtocolHandler {
|
|
|
65
67
|
) {}
|
|
66
68
|
|
|
67
69
|
async onNewExchange(exchange: MessageExchange) {
|
|
70
|
+
if (this.#closed) {
|
|
71
|
+
logger.warn("Pase server: Received new exchange but server is closed, ignoring exchange.");
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
68
74
|
const messenger = new PaseServerMessenger(exchange);
|
|
69
75
|
try {
|
|
70
76
|
// When a Commissioner is either in the process of establishing a PASE session with the Commissionee or has
|
|
@@ -78,9 +84,12 @@ export class PaseServer implements ProtocolHandler {
|
|
|
78
84
|
logger.info(
|
|
79
85
|
"Pase server: Pairing already in progress (PASE establishment Timer running), ignoring new exchange.",
|
|
80
86
|
);
|
|
87
|
+
} else if (this.#pairingMessenger !== undefined) {
|
|
88
|
+
logger.info("Already handling a pairing request, ignoring new exchange.");
|
|
81
89
|
} else {
|
|
90
|
+
this.#pairingMessenger = messenger;
|
|
82
91
|
// Ok new pairing try, handle it
|
|
83
|
-
await this.handlePairingRequest(this.sessions.crypto
|
|
92
|
+
await this.handlePairingRequest(this.sessions.crypto);
|
|
84
93
|
}
|
|
85
94
|
} catch (error) {
|
|
86
95
|
this.#pairingErrors++;
|
|
@@ -99,12 +108,15 @@ export class PaseServer implements ProtocolHandler {
|
|
|
99
108
|
);
|
|
100
109
|
}
|
|
101
110
|
} finally {
|
|
111
|
+
this.#pairingMessenger = undefined;
|
|
102
112
|
// Destroy the unsecure session used to establish the Pase session
|
|
103
113
|
await exchange.session.destroy();
|
|
104
114
|
}
|
|
105
115
|
}
|
|
106
116
|
|
|
107
|
-
private async handlePairingRequest(crypto: Crypto
|
|
117
|
+
private async handlePairingRequest(crypto: Crypto) {
|
|
118
|
+
const messenger = this.#pairingMessenger!;
|
|
119
|
+
|
|
108
120
|
logger.info("Received pairing request «", Diagnostic.via(messenger.channelName));
|
|
109
121
|
|
|
110
122
|
this.#pairingTimer = Time.getTimer("PASE pairing timeout", PASE_PAIRING_TIMEOUT_MS, () =>
|
|
@@ -188,6 +200,7 @@ export class PaseServer implements ProtocolHandler {
|
|
|
188
200
|
}
|
|
189
201
|
|
|
190
202
|
async close() {
|
|
191
|
-
|
|
203
|
+
this.#closed = true;
|
|
204
|
+
await this.#pairingMessenger?.close();
|
|
192
205
|
}
|
|
193
206
|
}
|