@libp2p/identify 0.0.0 → 1.0.0
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/README.md +1 -1
- package/dist/index.min.js +12 -12
- package/dist/src/identify.d.ts +3 -4
- package/dist/src/identify.d.ts.map +1 -1
- package/dist/src/identify.js +21 -22
- package/dist/src/identify.js.map +1 -1
- package/dist/src/index.d.ts +3 -8
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/pb/message.js.map +1 -1
- package/package.json +15 -11
- package/src/identify.ts +23 -31
- package/src/index.ts +2 -7
package/dist/src/identify.d.ts
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { Identify as IdentifyMessage } from './pb/message.js';
|
|
2
2
|
import type { Identify as IdentifyInterface, IdentifyComponents, IdentifyInit } from './index.js';
|
|
3
|
-
import type { IdentifyResult, AbortOptions } from '@libp2p/interface';
|
|
4
|
-
import type {
|
|
5
|
-
import type { Startable } from '@libp2p/interface/startable';
|
|
6
|
-
import type { IncomingStreamData } from '@libp2p/interface-internal/registrar';
|
|
3
|
+
import type { IdentifyResult, AbortOptions, Connection, Startable } from '@libp2p/interface';
|
|
4
|
+
import type { IncomingStreamData } from '@libp2p/interface-internal';
|
|
7
5
|
export declare class Identify implements Startable, IdentifyInterface {
|
|
8
6
|
#private;
|
|
9
7
|
private readonly identifyProtocolStr;
|
|
@@ -27,6 +25,7 @@ export declare class Identify implements Startable, IdentifyInterface {
|
|
|
27
25
|
private readonly maxObservedAddresses;
|
|
28
26
|
private readonly events;
|
|
29
27
|
private readonly runOnTransientConnection;
|
|
28
|
+
private readonly log;
|
|
30
29
|
constructor(components: IdentifyComponents, init?: IdentifyInit);
|
|
31
30
|
isStarted(): boolean;
|
|
32
31
|
start(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identify.d.ts","sourceRoot":"","sources":["../../src/identify.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"identify.d.ts","sourceRoot":"","sources":["../../src/identify.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,KAAK,EAAE,QAAQ,IAAI,iBAAiB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACjG,OAAO,KAAK,EAAgB,cAAc,EAAoB,YAAY,EAAU,UAAU,EAA+D,SAAS,EAAE,MAAM,mBAAmB,CAAA;AACjM,OAAO,KAAK,EAAqC,kBAAkB,EAAa,MAAM,4BAA4B,CAAA;AAmBlH,qBAAa,QAAS,YAAW,SAAS,EAAE,iBAAiB;;IAC3D,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAQ;IAC5C,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAQ;IAChD,SAAgB,IAAI,EAAE;QACpB,eAAe,EAAE,MAAM,CAAA;QACvB,YAAY,EAAE,MAAM,CAAA;KACrB,CAAA;IAED,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAQ;IAC1C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;IAC3C,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAQ;IAC/C,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAQ;IAC/C,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAQ;IAC/C,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAQ;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgC;IACvD,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAS;IAClD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;gBAEf,UAAU,EAAE,kBAAkB,EAAE,IAAI,GAAE,YAAiB;IAkDpE,SAAS,IAAK,OAAO;IAIf,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IAkCvB,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAO5B;;OAEG;IACG,iBAAiB,CAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAmDlE;;OAEG;IACG,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IA6BtB,SAAS,CAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IAmCxF,QAAQ,CAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;IAqC5F;;;OAGG;IACG,eAAe,CAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoD/D;;OAEG;IACG,WAAW,CAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;CAgK5D"}
|
package/dist/src/identify.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/* eslint-disable complexity */
|
|
2
|
-
import { CodeError, ERR_NOT_FOUND } from '@libp2p/interface
|
|
3
|
-
import { setMaxListeners } from '@libp2p/interface/events';
|
|
2
|
+
import { CodeError, ERR_NOT_FOUND, setMaxListeners } from '@libp2p/interface';
|
|
4
3
|
import { peerIdFromKeys } from '@libp2p/peer-id';
|
|
5
4
|
import { RecordEnvelope, PeerRecord } from '@libp2p/peer-record';
|
|
6
5
|
import { multiaddr, protocols } from '@multiformats/multiaddr';
|
|
@@ -45,7 +44,7 @@ export class Identify {
|
|
|
45
44
|
maxObservedAddresses;
|
|
46
45
|
events;
|
|
47
46
|
runOnTransientConnection;
|
|
48
|
-
|
|
47
|
+
log;
|
|
49
48
|
constructor(components, init = {}) {
|
|
50
49
|
this.started = false;
|
|
51
50
|
this.peerId = components.peerId;
|
|
@@ -54,7 +53,7 @@ export class Identify {
|
|
|
54
53
|
this.addressManager = components.addressManager;
|
|
55
54
|
this.connectionManager = components.connectionManager;
|
|
56
55
|
this.events = components.events;
|
|
57
|
-
this
|
|
56
|
+
this.log = components.logger.forComponent('libp2p:identify');
|
|
58
57
|
this.identifyProtocolStr = `/${init.protocolPrefix ?? defaultValues.protocolPrefix}/${MULTICODEC_IDENTIFY_PROTOCOL_NAME}/${MULTICODEC_IDENTIFY_PROTOCOL_VERSION}`;
|
|
59
58
|
this.identifyPushProtocolStr = `/${init.protocolPrefix ?? defaultValues.protocolPrefix}/${MULTICODEC_IDENTIFY_PUSH_PROTOCOL_NAME}/${MULTICODEC_IDENTIFY_PUSH_PROTOCOL_VERSION}`;
|
|
60
59
|
this.timeout = init.timeout ?? defaultValues.timeout;
|
|
@@ -74,12 +73,12 @@ export class Identify {
|
|
|
74
73
|
// When a new connection happens, trigger identify
|
|
75
74
|
components.events.addEventListener('connection:open', (evt) => {
|
|
76
75
|
const connection = evt.detail;
|
|
77
|
-
this.identify(connection).catch(err => { this
|
|
76
|
+
this.identify(connection).catch(err => { this.log.error('error during identify trigged by connection:open', err); });
|
|
78
77
|
});
|
|
79
78
|
}
|
|
80
79
|
// When self peer record changes, trigger identify-push
|
|
81
80
|
components.events.addEventListener('self:peer:update', (evt) => {
|
|
82
|
-
void this.push().catch(err => { this
|
|
81
|
+
void this.push().catch(err => { this.log.error(err); });
|
|
83
82
|
});
|
|
84
83
|
// Append user agent version to default AGENT_VERSION depending on the environment
|
|
85
84
|
if (this.host.agentVersion === `${components.nodeInfo.name}/${components.nodeInfo.version}`) {
|
|
@@ -106,7 +105,7 @@ export class Identify {
|
|
|
106
105
|
});
|
|
107
106
|
await this.registrar.handle(this.identifyProtocolStr, (data) => {
|
|
108
107
|
void this._handleIdentify(data).catch(err => {
|
|
109
|
-
this
|
|
108
|
+
this.log.error(err);
|
|
110
109
|
});
|
|
111
110
|
}, {
|
|
112
111
|
maxInboundStreams: this.maxInboundStreams,
|
|
@@ -115,7 +114,7 @@ export class Identify {
|
|
|
115
114
|
});
|
|
116
115
|
await this.registrar.handle(this.identifyPushProtocolStr, (data) => {
|
|
117
116
|
void this._handlePush(data).catch(err => {
|
|
118
|
-
this
|
|
117
|
+
this.log.error(err);
|
|
119
118
|
});
|
|
120
119
|
}, {
|
|
121
120
|
maxInboundStreams: this.maxPushIncomingStreams,
|
|
@@ -170,7 +169,7 @@ export class Identify {
|
|
|
170
169
|
}
|
|
171
170
|
catch (err) {
|
|
172
171
|
// Just log errors
|
|
173
|
-
this
|
|
172
|
+
this.log.error('could not push identify update to peer', err);
|
|
174
173
|
stream?.abort(err);
|
|
175
174
|
}
|
|
176
175
|
});
|
|
@@ -224,7 +223,7 @@ export class Identify {
|
|
|
224
223
|
return message;
|
|
225
224
|
}
|
|
226
225
|
catch (err) {
|
|
227
|
-
this
|
|
226
|
+
this.log.error('error while reading identify message', err);
|
|
228
227
|
stream?.abort(err);
|
|
229
228
|
throw err;
|
|
230
229
|
}
|
|
@@ -244,11 +243,11 @@ export class Identify {
|
|
|
244
243
|
}
|
|
245
244
|
// Get the observedAddr if there is one
|
|
246
245
|
const cleanObservedAddr = getCleanMultiaddr(observedAddr);
|
|
247
|
-
this
|
|
248
|
-
this
|
|
246
|
+
this.log('identify completed for peer %p and protocols %o', id, protocols);
|
|
247
|
+
this.log('our observed address is %a', cleanObservedAddr);
|
|
249
248
|
if (cleanObservedAddr != null &&
|
|
250
249
|
this.addressManager.getObservedAddrs().length < (this.maxObservedAddresses ?? Infinity)) {
|
|
251
|
-
this
|
|
250
|
+
this.log('storing our observed address %a', cleanObservedAddr);
|
|
252
251
|
this.addressManager.addObservedAddr(cleanObservedAddr);
|
|
253
252
|
}
|
|
254
253
|
return this.#consumeIdentifyMessage(connection, message);
|
|
@@ -295,7 +294,7 @@ export class Identify {
|
|
|
295
294
|
});
|
|
296
295
|
}
|
|
297
296
|
catch (err) {
|
|
298
|
-
this
|
|
297
|
+
this.log.error('could not respond to identify request', err);
|
|
299
298
|
stream.abort(err);
|
|
300
299
|
}
|
|
301
300
|
}
|
|
@@ -319,14 +318,14 @@ export class Identify {
|
|
|
319
318
|
await this.#consumeIdentifyMessage(connection, message);
|
|
320
319
|
}
|
|
321
320
|
catch (err) {
|
|
322
|
-
this
|
|
321
|
+
this.log.error('received invalid message', err);
|
|
323
322
|
stream.abort(err);
|
|
324
323
|
return;
|
|
325
324
|
}
|
|
326
|
-
this
|
|
325
|
+
this.log('handled push from %p', connection.remotePeer);
|
|
327
326
|
}
|
|
328
327
|
async #consumeIdentifyMessage(connection, message) {
|
|
329
|
-
this
|
|
328
|
+
this.log('received identify from %p', connection.remotePeer);
|
|
330
329
|
if (message == null) {
|
|
331
330
|
throw new CodeError('message was null or undefined', 'ERR_INVALID_MESSAGE');
|
|
332
331
|
}
|
|
@@ -350,7 +349,7 @@ export class Identify {
|
|
|
350
349
|
let output;
|
|
351
350
|
// if the peer record has been sent, prefer the addresses in the record as they are signed by the remote peer
|
|
352
351
|
if (message.signedPeerRecord != null) {
|
|
353
|
-
this
|
|
352
|
+
this.log('received signedPeerRecord from %p', connection.remotePeer);
|
|
354
353
|
let peerRecordEnvelope = message.signedPeerRecord;
|
|
355
354
|
const envelope = await RecordEnvelope.openAndCertify(peerRecordEnvelope, PeerRecord.DOMAIN);
|
|
356
355
|
let peerRecord = PeerRecord.createFromProtobuf(envelope.payload);
|
|
@@ -380,7 +379,7 @@ export class Identify {
|
|
|
380
379
|
const storedRecord = PeerRecord.createFromProtobuf(storedEnvelope.payload);
|
|
381
380
|
// ensure seq is greater than, or equal to, the last received
|
|
382
381
|
if (storedRecord.seqNumber >= peerRecord.seqNumber) {
|
|
383
|
-
this
|
|
382
|
+
this.log('sequence number was lower or equal to existing sequence number - stored: %d received: %d', storedRecord.seqNumber, peerRecord.seqNumber);
|
|
384
383
|
peerRecord = storedRecord;
|
|
385
384
|
peerRecordEnvelope = existingPeer.peerRecordEnvelope;
|
|
386
385
|
}
|
|
@@ -399,9 +398,9 @@ export class Identify {
|
|
|
399
398
|
};
|
|
400
399
|
}
|
|
401
400
|
else {
|
|
402
|
-
this
|
|
401
|
+
this.log('%p did not send a signed peer record', connection.remotePeer);
|
|
403
402
|
}
|
|
404
|
-
this
|
|
403
|
+
this.log('patching %p with', connection.remotePeer, peer);
|
|
405
404
|
await this.peerStore.patch(connection.remotePeer, peer);
|
|
406
405
|
if (message.agentVersion != null || message.protocolVersion != null) {
|
|
407
406
|
const metadata = {};
|
|
@@ -411,7 +410,7 @@ export class Identify {
|
|
|
411
410
|
if (message.protocolVersion != null) {
|
|
412
411
|
metadata.ProtocolVersion = uint8ArrayFromString(message.protocolVersion);
|
|
413
412
|
}
|
|
414
|
-
this
|
|
413
|
+
this.log('merging %p metadata', connection.remotePeer, metadata);
|
|
415
414
|
await this.peerStore.merge(connection.remotePeer, {
|
|
416
415
|
metadata
|
|
417
416
|
});
|
package/dist/src/identify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identify.js","sourceRoot":"","sources":["../../src/identify.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"identify.js","sourceRoot":"","sources":["../../src/identify.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -17,14 +17,9 @@
|
|
|
17
17
|
* })
|
|
18
18
|
* ```
|
|
19
19
|
*/
|
|
20
|
-
import type { AbortOptions, IdentifyResult, Libp2pEvents, ComponentLogger, NodeInfo } from '@libp2p/interface';
|
|
21
|
-
import type { TypedEventTarget } from '@libp2p/interface/events';
|
|
22
|
-
import type { PeerId } from '@libp2p/interface/peer-id';
|
|
23
|
-
import type { PeerStore } from '@libp2p/interface/peer-store';
|
|
20
|
+
import type { AbortOptions, IdentifyResult, Libp2pEvents, ComponentLogger, NodeInfo, TypedEventTarget, PeerId, PeerStore } from '@libp2p/interface';
|
|
24
21
|
import type { Connection } from '@libp2p/interface/src/connection/index.js';
|
|
25
|
-
import type { AddressManager } from '@libp2p/interface-internal
|
|
26
|
-
import type { ConnectionManager } from '@libp2p/interface-internal/connection-manager';
|
|
27
|
-
import type { Registrar } from '@libp2p/interface-internal/registrar';
|
|
22
|
+
import type { AddressManager, ConnectionManager, Registrar } from '@libp2p/interface-internal';
|
|
28
23
|
export interface IdentifyInit {
|
|
29
24
|
/**
|
|
30
25
|
* The prefix to use for the protocol (default: 'ipfs')
|
|
@@ -67,7 +62,7 @@ export interface IdentifyComponents {
|
|
|
67
62
|
nodeInfo: NodeInfo;
|
|
68
63
|
}
|
|
69
64
|
/**
|
|
70
|
-
* The protocols the
|
|
65
|
+
* The protocols the Identify service supports
|
|
71
66
|
*/
|
|
72
67
|
export declare const multicodecs: {
|
|
73
68
|
IDENTIFY: string;
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAOH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAOH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AACnJ,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAA;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAE9F,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAE/B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAE7B;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,SAAS,CAAA;IACpB,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,SAAS,EAAE,SAAS,CAAA;IACpB,cAAc,EAAE,cAAc,CAAA;IAC9B,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAA;IACtC,MAAM,EAAE,eAAe,CAAA;IACvB,QAAQ,EAAE,QAAQ,CAAA;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,WAAW;;;CAGvB,CAAA;AAED,MAAM,WAAW,QAAQ;IACvB;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;IAEjF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACtB;AAED,wBAAgB,QAAQ,CAAE,IAAI,GAAE,YAAiB,GAAG,CAAC,UAAU,EAAE,kBAAkB,KAAK,QAAQ,CAE/F"}
|
package/dist/src/index.js
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
import { MULTICODEC_IDENTIFY, MULTICODEC_IDENTIFY_PUSH } from './consts.js';
|
|
21
21
|
import { Identify as IdentifyClass } from './identify.js';
|
|
22
22
|
/**
|
|
23
|
-
* The protocols the
|
|
23
|
+
* The protocols the Identify service supports
|
|
24
24
|
*/
|
|
25
25
|
export const multicodecs = {
|
|
26
26
|
IDENTIFY: MULTICODEC_IDENTIFY,
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,eAAe,CAAA;AAuDzD;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,QAAQ,EAAE,mBAAmB;IAC7B,aAAa,EAAE,wBAAwB;CACxC,CAAA;AAeD,MAAM,UAAU,QAAQ,CAAE,OAAqB,EAAE;IAC/C,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;AAC5D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,+BAA+B;AAC/B,oDAAoD;AACpD,8EAA8E;AAC9E,0DAA0D;AAE1D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAcvE,MAAM,KAAW,QAAQ,CAyGxB;AAzGD,WAAiB,QAAQ;IACvB,IAAI,MAAuB,CAAA;IAEd,cAAK,GAAG,GAAoB,EAAE;QACzC,IAAI,MAAM,IAAI,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/pb/message.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/identify",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Implementation of the Identify Protocol",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
|
-
"homepage": "https://github.com/libp2p/js-libp2p/tree/
|
|
6
|
+
"homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/protocol-identify#readme",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
9
9
|
"url": "git+https://github.com/libp2p/js-libp2p.git"
|
|
@@ -11,6 +11,10 @@
|
|
|
11
11
|
"bugs": {
|
|
12
12
|
"url": "https://github.com/libp2p/js-libp2p/issues"
|
|
13
13
|
},
|
|
14
|
+
"publishConfig": {
|
|
15
|
+
"access": "public",
|
|
16
|
+
"provenance": true
|
|
17
|
+
},
|
|
14
18
|
"type": "module",
|
|
15
19
|
"types": "./dist/src/index.d.ts",
|
|
16
20
|
"files": [
|
|
@@ -47,13 +51,13 @@
|
|
|
47
51
|
"dep-check": "aegir dep-check"
|
|
48
52
|
},
|
|
49
53
|
"dependencies": {
|
|
50
|
-
"@libp2p/interface": "^0.
|
|
51
|
-
"@libp2p/interface-internal": "^0.1.
|
|
52
|
-
"@libp2p/peer-id": "^
|
|
53
|
-
"@libp2p/peer-record": "^6.0.
|
|
54
|
-
"@multiformats/multiaddr": "^12.1.
|
|
54
|
+
"@libp2p/interface": "^1.0.0",
|
|
55
|
+
"@libp2p/interface-internal": "^0.1.10",
|
|
56
|
+
"@libp2p/peer-id": "^4.0.0",
|
|
57
|
+
"@libp2p/peer-record": "^6.0.10",
|
|
58
|
+
"@multiformats/multiaddr": "^12.1.10",
|
|
55
59
|
"@multiformats/multiaddr-matcher": "^1.1.0",
|
|
56
|
-
"it-length-prefixed": "^9.0.
|
|
60
|
+
"it-length-prefixed": "^9.0.3",
|
|
57
61
|
"it-protobuf-stream": "^1.0.2",
|
|
58
62
|
"protons-runtime": "^5.0.0",
|
|
59
63
|
"uint8arraylist": "^2.4.3",
|
|
@@ -61,13 +65,13 @@
|
|
|
61
65
|
"wherearewe": "^2.0.1"
|
|
62
66
|
},
|
|
63
67
|
"devDependencies": {
|
|
64
|
-
"@libp2p/logger": "^
|
|
65
|
-
"@libp2p/peer-id-factory": "^3.0.
|
|
68
|
+
"@libp2p/logger": "^4.0.0",
|
|
69
|
+
"@libp2p/peer-id-factory": "^3.0.9",
|
|
66
70
|
"aegir": "^41.0.2",
|
|
67
71
|
"delay": "^6.0.0",
|
|
68
72
|
"it-drain": "^3.0.3",
|
|
69
73
|
"it-pair": "^2.0.6",
|
|
70
|
-
"it-pushable": "^3.2.
|
|
74
|
+
"it-pushable": "^3.2.1",
|
|
71
75
|
"protons": "^7.3.0",
|
|
72
76
|
"sinon": "^17.0.0",
|
|
73
77
|
"sinon-ts": "^2.0.0"
|
package/src/identify.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/* eslint-disable complexity */
|
|
2
2
|
|
|
3
|
-
import { CodeError, ERR_NOT_FOUND } from '@libp2p/interface
|
|
4
|
-
import { setMaxListeners } from '@libp2p/interface/events'
|
|
3
|
+
import { CodeError, ERR_NOT_FOUND, setMaxListeners } from '@libp2p/interface'
|
|
5
4
|
import { peerIdFromKeys } from '@libp2p/peer-id'
|
|
6
5
|
import { RecordEnvelope, PeerRecord } from '@libp2p/peer-record'
|
|
7
6
|
import { type Multiaddr, multiaddr, protocols } from '@multiformats/multiaddr'
|
|
@@ -19,15 +18,8 @@ import {
|
|
|
19
18
|
} from './consts.js'
|
|
20
19
|
import { Identify as IdentifyMessage } from './pb/message.js'
|
|
21
20
|
import type { Identify as IdentifyInterface, IdentifyComponents, IdentifyInit } from './index.js'
|
|
22
|
-
import type { Libp2pEvents, IdentifyResult, SignedPeerRecord, AbortOptions, Logger } from '@libp2p/interface'
|
|
23
|
-
import type {
|
|
24
|
-
import type { TypedEventTarget } from '@libp2p/interface/events'
|
|
25
|
-
import type { PeerId } from '@libp2p/interface/peer-id'
|
|
26
|
-
import type { Peer, PeerData, PeerStore } from '@libp2p/interface/peer-store'
|
|
27
|
-
import type { Startable } from '@libp2p/interface/startable'
|
|
28
|
-
import type { AddressManager } from '@libp2p/interface-internal/address-manager'
|
|
29
|
-
import type { ConnectionManager } from '@libp2p/interface-internal/connection-manager'
|
|
30
|
-
import type { IncomingStreamData, Registrar } from '@libp2p/interface-internal/registrar'
|
|
21
|
+
import type { Libp2pEvents, IdentifyResult, SignedPeerRecord, AbortOptions, Logger, Connection, Stream, TypedEventTarget, PeerId, Peer, PeerData, PeerStore, Startable } from '@libp2p/interface'
|
|
22
|
+
import type { AddressManager, ConnectionManager, IncomingStreamData, Registrar } from '@libp2p/interface-internal'
|
|
31
23
|
|
|
32
24
|
// https://github.com/libp2p/go-libp2p/blob/8d2e54e1637041d5cf4fac1e531287560bd1f4ac/p2p/protocol/identify/id.go#L52
|
|
33
25
|
const MAX_IDENTIFY_MESSAGE_SIZE = 1024 * 8
|
|
@@ -69,7 +61,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
69
61
|
private readonly maxObservedAddresses: number
|
|
70
62
|
private readonly events: TypedEventTarget<Libp2pEvents>
|
|
71
63
|
private readonly runOnTransientConnection: boolean
|
|
72
|
-
readonly
|
|
64
|
+
private readonly log: Logger
|
|
73
65
|
|
|
74
66
|
constructor (components: IdentifyComponents, init: IdentifyInit = {}) {
|
|
75
67
|
this.started = false
|
|
@@ -79,7 +71,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
79
71
|
this.addressManager = components.addressManager
|
|
80
72
|
this.connectionManager = components.connectionManager
|
|
81
73
|
this.events = components.events
|
|
82
|
-
this
|
|
74
|
+
this.log = components.logger.forComponent('libp2p:identify')
|
|
83
75
|
|
|
84
76
|
this.identifyProtocolStr = `/${init.protocolPrefix ?? defaultValues.protocolPrefix}/${MULTICODEC_IDENTIFY_PROTOCOL_NAME}/${MULTICODEC_IDENTIFY_PROTOCOL_VERSION}`
|
|
85
77
|
this.identifyPushProtocolStr = `/${init.protocolPrefix ?? defaultValues.protocolPrefix}/${MULTICODEC_IDENTIFY_PUSH_PROTOCOL_NAME}/${MULTICODEC_IDENTIFY_PUSH_PROTOCOL_VERSION}`
|
|
@@ -102,13 +94,13 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
102
94
|
// When a new connection happens, trigger identify
|
|
103
95
|
components.events.addEventListener('connection:open', (evt) => {
|
|
104
96
|
const connection = evt.detail
|
|
105
|
-
this.identify(connection).catch(err => { this
|
|
97
|
+
this.identify(connection).catch(err => { this.log.error('error during identify trigged by connection:open', err) })
|
|
106
98
|
})
|
|
107
99
|
}
|
|
108
100
|
|
|
109
101
|
// When self peer record changes, trigger identify-push
|
|
110
102
|
components.events.addEventListener('self:peer:update', (evt) => {
|
|
111
|
-
void this.push().catch(err => { this
|
|
103
|
+
void this.push().catch(err => { this.log.error(err) })
|
|
112
104
|
})
|
|
113
105
|
|
|
114
106
|
// Append user agent version to default AGENT_VERSION depending on the environment
|
|
@@ -139,7 +131,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
139
131
|
|
|
140
132
|
await this.registrar.handle(this.identifyProtocolStr, (data) => {
|
|
141
133
|
void this._handleIdentify(data).catch(err => {
|
|
142
|
-
this
|
|
134
|
+
this.log.error(err)
|
|
143
135
|
})
|
|
144
136
|
}, {
|
|
145
137
|
maxInboundStreams: this.maxInboundStreams,
|
|
@@ -148,7 +140,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
148
140
|
})
|
|
149
141
|
await this.registrar.handle(this.identifyPushProtocolStr, (data) => {
|
|
150
142
|
void this._handlePush(data).catch(err => {
|
|
151
|
-
this
|
|
143
|
+
this.log.error(err)
|
|
152
144
|
})
|
|
153
145
|
}, {
|
|
154
146
|
maxInboundStreams: this.maxPushIncomingStreams,
|
|
@@ -212,7 +204,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
212
204
|
})
|
|
213
205
|
} catch (err: any) {
|
|
214
206
|
// Just log errors
|
|
215
|
-
this
|
|
207
|
+
this.log.error('could not push identify update to peer', err)
|
|
216
208
|
stream?.abort(err)
|
|
217
209
|
}
|
|
218
210
|
})
|
|
@@ -281,7 +273,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
281
273
|
|
|
282
274
|
return message
|
|
283
275
|
} catch (err: any) {
|
|
284
|
-
this
|
|
276
|
+
this.log.error('error while reading identify message', err)
|
|
285
277
|
stream?.abort(err)
|
|
286
278
|
throw err
|
|
287
279
|
}
|
|
@@ -312,12 +304,12 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
312
304
|
// Get the observedAddr if there is one
|
|
313
305
|
const cleanObservedAddr = getCleanMultiaddr(observedAddr)
|
|
314
306
|
|
|
315
|
-
this
|
|
316
|
-
this
|
|
307
|
+
this.log('identify completed for peer %p and protocols %o', id, protocols)
|
|
308
|
+
this.log('our observed address is %a', cleanObservedAddr)
|
|
317
309
|
|
|
318
310
|
if (cleanObservedAddr != null &&
|
|
319
311
|
this.addressManager.getObservedAddrs().length < (this.maxObservedAddresses ?? Infinity)) {
|
|
320
|
-
this
|
|
312
|
+
this.log('storing our observed address %a', cleanObservedAddr)
|
|
321
313
|
this.addressManager.addObservedAddr(cleanObservedAddr)
|
|
322
314
|
}
|
|
323
315
|
|
|
@@ -375,7 +367,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
375
367
|
signal
|
|
376
368
|
})
|
|
377
369
|
} catch (err: any) {
|
|
378
|
-
this
|
|
370
|
+
this.log.error('could not respond to identify request', err)
|
|
379
371
|
stream.abort(err)
|
|
380
372
|
}
|
|
381
373
|
}
|
|
@@ -404,16 +396,16 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
404
396
|
|
|
405
397
|
await this.#consumeIdentifyMessage(connection, message)
|
|
406
398
|
} catch (err: any) {
|
|
407
|
-
this
|
|
399
|
+
this.log.error('received invalid message', err)
|
|
408
400
|
stream.abort(err)
|
|
409
401
|
return
|
|
410
402
|
}
|
|
411
403
|
|
|
412
|
-
this
|
|
404
|
+
this.log('handled push from %p', connection.remotePeer)
|
|
413
405
|
}
|
|
414
406
|
|
|
415
407
|
async #consumeIdentifyMessage (connection: Connection, message: IdentifyMessage): Promise<IdentifyResult> {
|
|
416
|
-
this
|
|
408
|
+
this.log('received identify from %p', connection.remotePeer)
|
|
417
409
|
|
|
418
410
|
if (message == null) {
|
|
419
411
|
throw new CodeError('message was null or undefined', 'ERR_INVALID_MESSAGE')
|
|
@@ -446,7 +438,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
446
438
|
|
|
447
439
|
// if the peer record has been sent, prefer the addresses in the record as they are signed by the remote peer
|
|
448
440
|
if (message.signedPeerRecord != null) {
|
|
449
|
-
this
|
|
441
|
+
this.log('received signedPeerRecord from %p', connection.remotePeer)
|
|
450
442
|
|
|
451
443
|
let peerRecordEnvelope = message.signedPeerRecord
|
|
452
444
|
const envelope = await RecordEnvelope.openAndCertify(peerRecordEnvelope, PeerRecord.DOMAIN)
|
|
@@ -483,7 +475,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
483
475
|
|
|
484
476
|
// ensure seq is greater than, or equal to, the last received
|
|
485
477
|
if (storedRecord.seqNumber >= peerRecord.seqNumber) {
|
|
486
|
-
this
|
|
478
|
+
this.log('sequence number was lower or equal to existing sequence number - stored: %d received: %d', storedRecord.seqNumber, peerRecord.seqNumber)
|
|
487
479
|
peerRecord = storedRecord
|
|
488
480
|
peerRecordEnvelope = existingPeer.peerRecordEnvelope
|
|
489
481
|
}
|
|
@@ -504,10 +496,10 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
504
496
|
addresses: peerRecord.multiaddrs
|
|
505
497
|
}
|
|
506
498
|
} else {
|
|
507
|
-
this
|
|
499
|
+
this.log('%p did not send a signed peer record', connection.remotePeer)
|
|
508
500
|
}
|
|
509
501
|
|
|
510
|
-
this
|
|
502
|
+
this.log('patching %p with', connection.remotePeer, peer)
|
|
511
503
|
await this.peerStore.patch(connection.remotePeer, peer)
|
|
512
504
|
|
|
513
505
|
if (message.agentVersion != null || message.protocolVersion != null) {
|
|
@@ -521,7 +513,7 @@ export class Identify implements Startable, IdentifyInterface {
|
|
|
521
513
|
metadata.ProtocolVersion = uint8ArrayFromString(message.protocolVersion)
|
|
522
514
|
}
|
|
523
515
|
|
|
524
|
-
this
|
|
516
|
+
this.log('merging %p metadata', connection.remotePeer, metadata)
|
|
525
517
|
await this.peerStore.merge(connection.remotePeer, {
|
|
526
518
|
metadata
|
|
527
519
|
})
|
package/src/index.ts
CHANGED
|
@@ -23,14 +23,9 @@ import {
|
|
|
23
23
|
MULTICODEC_IDENTIFY_PUSH
|
|
24
24
|
} from './consts.js'
|
|
25
25
|
import { Identify as IdentifyClass } from './identify.js'
|
|
26
|
-
import type { AbortOptions, IdentifyResult, Libp2pEvents, ComponentLogger, NodeInfo } from '@libp2p/interface'
|
|
27
|
-
import type { TypedEventTarget } from '@libp2p/interface/events'
|
|
28
|
-
import type { PeerId } from '@libp2p/interface/peer-id'
|
|
29
|
-
import type { PeerStore } from '@libp2p/interface/peer-store'
|
|
26
|
+
import type { AbortOptions, IdentifyResult, Libp2pEvents, ComponentLogger, NodeInfo, TypedEventTarget, PeerId, PeerStore } from '@libp2p/interface'
|
|
30
27
|
import type { Connection } from '@libp2p/interface/src/connection/index.js'
|
|
31
|
-
import type { AddressManager } from '@libp2p/interface-internal
|
|
32
|
-
import type { ConnectionManager } from '@libp2p/interface-internal/connection-manager'
|
|
33
|
-
import type { Registrar } from '@libp2p/interface-internal/registrar'
|
|
28
|
+
import type { AddressManager, ConnectionManager, Registrar } from '@libp2p/interface-internal'
|
|
34
29
|
|
|
35
30
|
export interface IdentifyInit {
|
|
36
31
|
/**
|