@libp2p/autonat 2.0.37 → 2.0.38

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.
@@ -1 +1 @@
1
- {"version":3,"file":"autonat.d.ts","sourceRoot":"","sources":["../../src/autonat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAgB5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACvE,OAAO,KAAK,EAAU,UAAU,EAAU,SAAS,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAmEhH,qBAAa,cAAe,YAAW,SAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAQ;IAC1C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;IAC3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,UAAU,CAAC,CAAQ;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA0B;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAQ;gBAE/B,UAAU,EAAE,iBAAiB,EAAE,IAAI,EAAE,kBAAkB;IAkBpE,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,qBAAoB;IAEjD,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAEvC;IAED,IAAI,CAAC,mBAAmB,CAAC,IAAK,MAAM,EAAE,CAIrC;IAED,SAAS,IAAK,OAAO;IAIf,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IA4BvB,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAY5B,OAAO,CAAC,uBAAuB;IAWzB,eAAe,CAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA4C7D;;OAEG;IACG,2BAA2B,CAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;YA2B7D,oBAAoB;IAiKlC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,2BAA2B;IAsGnC;;;OAGG;IACH,OAAO,CAAC,8BAA8B;IAoBtC;;OAEG;IACG,uBAAuB,CAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;YAsDvD,eAAe;IAsG7B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,iBAAiB;CAY1B"}
1
+ {"version":3,"file":"autonat.d.ts","sourceRoot":"","sources":["../../src/autonat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAgB5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACvE,OAAO,KAAK,EAAU,UAAU,EAAU,SAAS,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAmEhH,qBAAa,cAAe,YAAW,SAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAQ;IAC1C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;IAC3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,UAAU,CAAC,CAAQ;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA0B;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAQ;gBAE/B,UAAU,EAAE,iBAAiB,EAAE,IAAI,EAAE,kBAAkB;IAkBpE,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,qBAAoB;IAEjD,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAEvC;IAED,IAAI,CAAC,mBAAmB,CAAC,IAAK,MAAM,EAAE,CAIrC;IAED,SAAS,IAAK,OAAO;IAIf,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IA4BvB,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAY5B,OAAO,CAAC,uBAAuB;IAWzB,eAAe,CAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA4C7D;;OAEG;IACG,2BAA2B,CAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;YA2B7D,oBAAoB;IAuKlC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,2BAA2B;IAsGnC;;;OAGG;IACH,OAAO,CAAC,8BAA8B;IAoBtC;;OAEG;IACG,uBAAuB,CAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;YAsDvD,eAAe;IAsG7B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,iBAAiB;CAY1B"}
@@ -226,26 +226,33 @@ export class AutoNATService {
226
226
  const multiaddrs = peer.addrs
227
227
  .map(buf => multiaddr(buf))
228
228
  .filter(ma => {
229
- const options = ma.toOptions();
230
- if (isPrivate(ma)) {
231
- // don't try to dial private addresses
232
- return false;
233
- }
234
- if (options.host !== connection.remoteAddr.toOptions().host) {
235
- // skip any Multiaddrs where the target node's IP does not match the sending node's IP
236
- this.log.trace('not dialing %a - target host did not match remote host %a', ma, connection.remoteAddr);
237
- return false;
238
- }
239
- if (ourHosts.includes(options.host)) {
240
- // don't try to dial nodes on the same host as us
241
- return false;
229
+ try {
230
+ const options = ma.toOptions();
231
+ if (isPrivate(ma)) {
232
+ // don't try to dial private addresses
233
+ return false;
234
+ }
235
+ if (options.host !== connection.remoteAddr.toOptions().host) {
236
+ // skip any Multiaddrs where the target node's IP does not match the sending node's IP
237
+ this.log.trace('not dialing %a - target host did not match remote host %a', ma, connection.remoteAddr);
238
+ return false;
239
+ }
240
+ if (ourHosts.includes(options.host)) {
241
+ // don't try to dial nodes on the same host as us
242
+ return false;
243
+ }
244
+ if (this.components.transportManager.dialTransportForMultiaddr(ma) == null) {
245
+ // skip any Multiaddrs that have transports we do not support
246
+ this.log.trace('not dialing %a - transport unsupported', ma);
247
+ return false;
248
+ }
249
+ return true;
242
250
  }
243
- if (this.components.transportManager.dialTransportForMultiaddr(ma) == null) {
244
- // skip any Multiaddrs that have transports we do not support
245
- this.log.trace('not dialing %a - transport unsupported', ma);
251
+ catch {
252
+ // skip any addresses that cannot be parsed (memory, webrtc incoming,
253
+ // etc)
246
254
  return false;
247
255
  }
248
- return true;
249
256
  })
250
257
  .map(ma => {
251
258
  if (ma.getPeerId() == null) {
@@ -1 +1 @@
1
- {"version":3,"file":"autonat.js","sourceRoot":"","sources":["../../src/autonat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autonat.js","sourceRoot":"","sources":["../../src/autonat.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/autonat",
3
- "version": "2.0.37",
3
+ "version": "2.0.38",
4
4
  "description": "Implementation of Autonat Protocol",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/protocol-autonat#readme",
@@ -45,11 +45,11 @@
45
45
  "doc-check": "aegir doc-check"
46
46
  },
47
47
  "dependencies": {
48
- "@libp2p/interface": "^2.10.5",
49
- "@libp2p/interface-internal": "^2.3.18",
50
- "@libp2p/peer-collections": "^6.0.34",
51
- "@libp2p/peer-id": "^5.1.8",
52
- "@libp2p/utils": "^6.7.1",
48
+ "@libp2p/interface": "^2.11.0",
49
+ "@libp2p/interface-internal": "^2.3.19",
50
+ "@libp2p/peer-collections": "^6.0.35",
51
+ "@libp2p/peer-id": "^5.1.9",
52
+ "@libp2p/utils": "^6.7.2",
53
53
  "@multiformats/multiaddr": "^12.4.4",
54
54
  "any-signal": "^4.1.1",
55
55
  "it-protobuf-stream": "^2.0.2",
@@ -59,8 +59,8 @@
59
59
  "uint8arraylist": "^2.4.8"
60
60
  },
61
61
  "devDependencies": {
62
- "@libp2p/crypto": "^5.1.7",
63
- "@libp2p/logger": "^5.1.21",
62
+ "@libp2p/crypto": "^5.1.8",
63
+ "@libp2p/logger": "^5.2.0",
64
64
  "aegir": "^47.0.14",
65
65
  "it-all": "^3.0.8",
66
66
  "it-drain": "^3.0.9",
package/src/autonat.ts CHANGED
@@ -323,31 +323,37 @@ export class AutoNATService implements Startable {
323
323
  const multiaddrs = peer.addrs
324
324
  .map(buf => multiaddr(buf))
325
325
  .filter(ma => {
326
- const options = ma.toOptions()
326
+ try {
327
+ const options = ma.toOptions()
327
328
 
328
- if (isPrivate(ma)) {
329
- // don't try to dial private addresses
330
- return false
331
- }
329
+ if (isPrivate(ma)) {
330
+ // don't try to dial private addresses
331
+ return false
332
+ }
332
333
 
333
- if (options.host !== connection.remoteAddr.toOptions().host) {
334
- // skip any Multiaddrs where the target node's IP does not match the sending node's IP
335
- this.log.trace('not dialing %a - target host did not match remote host %a', ma, connection.remoteAddr)
336
- return false
337
- }
334
+ if (options.host !== connection.remoteAddr.toOptions().host) {
335
+ // skip any Multiaddrs where the target node's IP does not match the sending node's IP
336
+ this.log.trace('not dialing %a - target host did not match remote host %a', ma, connection.remoteAddr)
337
+ return false
338
+ }
338
339
 
339
- if (ourHosts.includes(options.host)) {
340
- // don't try to dial nodes on the same host as us
341
- return false
342
- }
340
+ if (ourHosts.includes(options.host)) {
341
+ // don't try to dial nodes on the same host as us
342
+ return false
343
+ }
343
344
 
344
- if (this.components.transportManager.dialTransportForMultiaddr(ma) == null) {
345
- // skip any Multiaddrs that have transports we do not support
346
- this.log.trace('not dialing %a - transport unsupported', ma)
345
+ if (this.components.transportManager.dialTransportForMultiaddr(ma) == null) {
346
+ // skip any Multiaddrs that have transports we do not support
347
+ this.log.trace('not dialing %a - transport unsupported', ma)
348
+ return false
349
+ }
350
+
351
+ return true
352
+ } catch {
353
+ // skip any addresses that cannot be parsed (memory, webrtc incoming,
354
+ // etc)
347
355
  return false
348
356
  }
349
-
350
- return true
351
357
  })
352
358
  .map(ma => {
353
359
  if (ma.getPeerId() == null) {