@libp2p/identify 3.0.38-cf9aab5c8 → 3.0.39-a02cb0461
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/index.min.js +1 -1
- package/dist/index.min.js.map +4 -4
- package/dist/src/identify-push.d.ts +2 -2
- package/dist/src/identify-push.d.ts.map +1 -1
- package/dist/src/identify-push.js +23 -32
- package/dist/src/identify-push.js.map +1 -1
- package/dist/src/identify.d.ts +2 -2
- package/dist/src/identify.d.ts.map +1 -1
- package/dist/src/identify.js +52 -58
- package/dist/src/identify.js.map +1 -1
- package/dist/src/utils.d.ts +3 -9
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +6 -19
- package/dist/src/utils.js.map +1 -1
- package/package.json +15 -18
- package/src/identify-push.ts +25 -33
- package/src/identify.ts +59 -66
- package/src/utils.ts +9 -22
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { serviceCapabilities } from '@libp2p/interface';
|
|
2
2
|
import { AbstractIdentify } from './utils.js';
|
|
3
3
|
import type { IdentifyPush as IdentifyPushInterface, IdentifyPushComponents, IdentifyPushInit } from './index.js';
|
|
4
|
-
import type { Startable,
|
|
4
|
+
import type { Stream, Startable, Connection } from '@libp2p/interface';
|
|
5
5
|
export declare class IdentifyPush extends AbstractIdentify implements Startable, IdentifyPushInterface {
|
|
6
6
|
private readonly connectionManager;
|
|
7
7
|
private readonly concurrency;
|
|
@@ -16,6 +16,6 @@ export declare class IdentifyPush extends AbstractIdentify implements Startable,
|
|
|
16
16
|
/**
|
|
17
17
|
* Reads the Identify Push message from the given `connection`
|
|
18
18
|
*/
|
|
19
|
-
handleProtocol(
|
|
19
|
+
handleProtocol(stream: Stream, connection: Connection): Promise<void>;
|
|
20
20
|
}
|
|
21
21
|
//# sourceMappingURL=identify-push.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identify-push.d.ts","sourceRoot":"","sources":["../../src/identify-push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"identify-push.d.ts","sourceRoot":"","sources":["../../src/identify-push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAevD,OAAO,EAAE,gBAAgB,EAAyC,MAAM,YAAY,CAAA;AACpF,OAAO,KAAK,EAAE,YAAY,IAAI,qBAAqB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AACjH,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAGtE,qBAAa,YAAa,SAAQ,gBAAiB,YAAW,SAAS,EAAE,qBAAqB;IAC5F,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,KAAK,CAAY;gBAEZ,UAAU,EAAE,sBAAsB,EAAE,IAAI,GAAE,gBAAqB;IAsB5E,CAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAE9B;IAED;;OAEG;IACG,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;YAId,eAAe;IA0E7B;;OAEG;IACG,cAAc,CAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAsB7E"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { serviceCapabilities } from '@libp2p/interface';
|
|
2
2
|
import { RecordEnvelope, PeerRecord } from '@libp2p/peer-record';
|
|
3
|
-
import { debounce } from '@libp2p/utils
|
|
3
|
+
import { debounce, pbStream } from '@libp2p/utils';
|
|
4
4
|
import { protocols } from '@multiformats/multiaddr';
|
|
5
5
|
import drain from 'it-drain';
|
|
6
6
|
import parallel from 'it-parallel';
|
|
7
|
-
import { pbStream } from 'it-protobuf-stream';
|
|
8
7
|
import { setMaxListeners } from 'main-event';
|
|
9
8
|
import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string';
|
|
10
9
|
import { toString as uint8ArrayToString } from 'uint8arrays/to-string';
|
|
@@ -48,21 +47,20 @@ export class IdentifyPush extends AbstractIdentify {
|
|
|
48
47
|
return;
|
|
49
48
|
}
|
|
50
49
|
try {
|
|
51
|
-
const listenAddresses = this.addressManager.getAddresses().map(ma => ma.decapsulateCode(protocols('p2p').code));
|
|
50
|
+
const listenAddresses = this.components.addressManager.getAddresses().map(ma => ma.decapsulateCode(protocols('p2p').code));
|
|
52
51
|
const peerRecord = new PeerRecord({
|
|
53
|
-
peerId: this.peerId,
|
|
52
|
+
peerId: this.components.peerId,
|
|
54
53
|
multiaddrs: listenAddresses
|
|
55
54
|
});
|
|
56
|
-
const signedPeerRecord = await RecordEnvelope.seal(peerRecord, this.privateKey);
|
|
57
|
-
const supportedProtocols = this.registrar.getProtocols();
|
|
58
|
-
const peer = await this.peerStore.get(this.peerId);
|
|
55
|
+
const signedPeerRecord = await RecordEnvelope.seal(peerRecord, this.components.privateKey);
|
|
56
|
+
const supportedProtocols = this.components.registrar.getProtocols();
|
|
57
|
+
const peer = await this.components.peerStore.get(this.components.peerId);
|
|
59
58
|
const agentVersion = uint8ArrayToString(peer.metadata.get('AgentVersion') ?? uint8ArrayFromString(this.host.agentVersion));
|
|
60
59
|
const protocolVersion = uint8ArrayToString(peer.metadata.get('ProtocolVersion') ?? uint8ArrayFromString(this.host.protocolVersion));
|
|
61
60
|
const self = this;
|
|
62
61
|
async function* pushToConnections() {
|
|
63
62
|
for (const connection of self.connectionManager.getConnections()) {
|
|
64
|
-
const peer = await self.peerStore.get(connection.remotePeer);
|
|
65
|
-
const log = connection.log.newScope('identify-push');
|
|
63
|
+
const peer = await self.components.peerStore.get(connection.remotePeer);
|
|
66
64
|
if (!peer.protocols.includes(self.protocol)) {
|
|
67
65
|
continue;
|
|
68
66
|
}
|
|
@@ -92,8 +90,9 @@ export class IdentifyPush extends AbstractIdentify {
|
|
|
92
90
|
});
|
|
93
91
|
}
|
|
94
92
|
catch (err) {
|
|
95
|
-
// Just log errors
|
|
96
|
-
log.
|
|
93
|
+
// Just log errors if the stream was opened
|
|
94
|
+
const log = stream?.log.newScope('identify-push');
|
|
95
|
+
log?.error('could not push identify update to peer', err);
|
|
97
96
|
stream?.abort(err);
|
|
98
97
|
}
|
|
99
98
|
};
|
|
@@ -110,28 +109,20 @@ export class IdentifyPush extends AbstractIdentify {
|
|
|
110
109
|
/**
|
|
111
110
|
* Reads the Identify Push message from the given `connection`
|
|
112
111
|
*/
|
|
113
|
-
async handleProtocol(
|
|
114
|
-
const
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
if (this.peerId.equals(connection.remotePeer)) {
|
|
118
|
-
throw new Error('received push from ourselves?');
|
|
119
|
-
}
|
|
120
|
-
const options = {
|
|
121
|
-
signal: AbortSignal.timeout(this.timeout)
|
|
122
|
-
};
|
|
123
|
-
const pb = pbStream(stream, {
|
|
124
|
-
maxDataLength: this.maxMessageSize
|
|
125
|
-
}).pb(IdentifyMessage);
|
|
126
|
-
const message = await pb.read(options);
|
|
127
|
-
await stream.close(options);
|
|
128
|
-
await consumeIdentifyMessage(this.peerStore, this.events, log, connection, message);
|
|
129
|
-
}
|
|
130
|
-
catch (err) {
|
|
131
|
-
log.error('received invalid message', err);
|
|
132
|
-
stream.abort(err);
|
|
133
|
-
return;
|
|
112
|
+
async handleProtocol(stream, connection) {
|
|
113
|
+
const log = stream.log.newScope('identify-push');
|
|
114
|
+
if (this.components.peerId.equals(connection.remotePeer)) {
|
|
115
|
+
throw new Error('received push from ourselves?');
|
|
134
116
|
}
|
|
117
|
+
const options = {
|
|
118
|
+
signal: AbortSignal.timeout(this.timeout)
|
|
119
|
+
};
|
|
120
|
+
const pb = pbStream(stream, {
|
|
121
|
+
maxDataLength: this.maxMessageSize
|
|
122
|
+
}).pb(IdentifyMessage);
|
|
123
|
+
const message = await pb.read(options);
|
|
124
|
+
await stream.close(options);
|
|
125
|
+
await consumeIdentifyMessage(this.components.peerStore, this.components.events, log, connection, message);
|
|
135
126
|
log.trace('handled push from %p', connection.remotePeer);
|
|
136
127
|
}
|
|
137
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identify-push.js","sourceRoot":"","sources":["../../src/identify-push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"identify-push.js","sourceRoot":"","sources":["../../src/identify-push.ts"],"names":[],"mappings":"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"}
|
package/dist/src/identify.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { serviceCapabilities } from '@libp2p/interface';
|
|
|
2
2
|
import { Identify as IdentifyMessage } from './pb/message.js';
|
|
3
3
|
import { AbstractIdentify } from './utils.js';
|
|
4
4
|
import type { Identify as IdentifyInterface, IdentifyComponents, IdentifyInit } from './index.js';
|
|
5
|
-
import type { IdentifyResult, AbortOptions, Connection,
|
|
5
|
+
import type { IdentifyResult, AbortOptions, Connection, Stream, Startable } from '@libp2p/interface';
|
|
6
6
|
export declare class Identify extends AbstractIdentify implements Startable, IdentifyInterface {
|
|
7
7
|
constructor(components: IdentifyComponents, init?: IdentifyInit);
|
|
8
8
|
[serviceCapabilities]: string[];
|
|
@@ -13,6 +13,6 @@ export declare class Identify extends AbstractIdentify implements Startable, Ide
|
|
|
13
13
|
* Sends the `Identify` response with the Signed Peer Record
|
|
14
14
|
* to the requesting peer over the given `connection`
|
|
15
15
|
*/
|
|
16
|
-
handleProtocol(
|
|
16
|
+
handleProtocol(stream: Stream, connection: Connection): Promise<void>;
|
|
17
17
|
}
|
|
18
18
|
//# sourceMappingURL=identify.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identify.d.ts","sourceRoot":"","sources":["../../src/identify.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"identify.d.ts","sourceRoot":"","sources":["../../src/identify.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAW5E,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAA4D,MAAM,YAAY,CAAA;AACvG,OAAO,KAAK,EAAE,QAAQ,IAAI,iBAAiB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACjG,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAU,MAAM,mBAAmB,CAAA;AAE5G,qBAAa,QAAS,SAAQ,gBAAiB,YAAW,SAAS,EAAE,iBAAiB;gBACvE,UAAU,EAAE,kBAAkB,EAAE,IAAI,GAAE,YAAiB;IAiBpE,CAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAE9B;IAEK,SAAS,CAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IAuCxF,QAAQ,CAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;IAgC5F,OAAO,CAAC,uBAAuB;IAgC/B;;;OAGG;IACG,cAAc,CAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAkD7E"}
|
package/dist/src/identify.js
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { publicKeyFromProtobuf, publicKeyToProtobuf } from '@libp2p/crypto/keys';
|
|
2
|
-
import { InvalidMessageError,
|
|
2
|
+
import { InvalidMessageError, serviceCapabilities } from '@libp2p/interface';
|
|
3
3
|
import { peerIdFromCID } from '@libp2p/peer-id';
|
|
4
4
|
import { RecordEnvelope, PeerRecord } from '@libp2p/peer-record';
|
|
5
|
-
import { isGlobalUnicast } from '@libp2p/utils
|
|
6
|
-
import {
|
|
7
|
-
import { CODE_IP6, CODE_IP6ZONE, protocols } from '@multiformats/multiaddr';
|
|
5
|
+
import { isGlobalUnicast, isPrivate, pbStream } from '@libp2p/utils';
|
|
6
|
+
import { CODE_IP6, CODE_IP6ZONE, CODE_P2P } from '@multiformats/multiaddr';
|
|
8
7
|
import { IP_OR_DOMAIN, TCP } from '@multiformats/multiaddr-matcher';
|
|
9
|
-
import { pbStream } from 'it-protobuf-stream';
|
|
10
8
|
import { setMaxListeners } from 'main-event';
|
|
11
9
|
import { MULTICODEC_IDENTIFY_PROTOCOL_NAME, MULTICODEC_IDENTIFY_PROTOCOL_VERSION } from './consts.js';
|
|
12
10
|
import { Identify as IdentifyMessage } from './pb/message.js';
|
|
@@ -23,13 +21,7 @@ export class Identify extends AbstractIdentify {
|
|
|
23
21
|
components.events.addEventListener('connection:open', (evt) => {
|
|
24
22
|
const connection = evt.detail;
|
|
25
23
|
this.identify(connection)
|
|
26
|
-
.catch(
|
|
27
|
-
if (err.name === UnsupportedProtocolError.name) {
|
|
28
|
-
// the remote did not support identify, ignore the error
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
this.log.error('error during identify trigged by connection:open', err);
|
|
32
|
-
});
|
|
24
|
+
.catch(() => { });
|
|
33
25
|
});
|
|
34
26
|
}
|
|
35
27
|
}
|
|
@@ -38,6 +30,7 @@ export class Identify extends AbstractIdentify {
|
|
|
38
30
|
];
|
|
39
31
|
async _identify(connection, options = {}) {
|
|
40
32
|
let stream;
|
|
33
|
+
let log;
|
|
41
34
|
if (options.signal == null) {
|
|
42
35
|
const signal = AbortSignal.timeout(this.timeout);
|
|
43
36
|
setMaxListeners(Infinity, signal);
|
|
@@ -51,14 +44,18 @@ export class Identify extends AbstractIdentify {
|
|
|
51
44
|
...options,
|
|
52
45
|
runOnLimitedConnection: this.runOnLimitedConnection
|
|
53
46
|
});
|
|
47
|
+
log = stream.log.newScope('identify');
|
|
54
48
|
const pb = pbStream(stream, {
|
|
55
49
|
maxDataLength: this.maxMessageSize
|
|
56
50
|
}).pb(IdentifyMessage);
|
|
51
|
+
log('read response');
|
|
57
52
|
const message = await pb.read(options);
|
|
58
|
-
|
|
53
|
+
log('close write');
|
|
54
|
+
await pb.unwrap().unwrap().close(options);
|
|
59
55
|
return message;
|
|
60
56
|
}
|
|
61
57
|
catch (err) {
|
|
58
|
+
log?.error('identify failed - %e', err);
|
|
62
59
|
stream?.abort(err);
|
|
63
60
|
throw err;
|
|
64
61
|
}
|
|
@@ -71,32 +68,30 @@ export class Identify extends AbstractIdentify {
|
|
|
71
68
|
}
|
|
72
69
|
const key = publicKeyFromProtobuf(publicKey);
|
|
73
70
|
const id = peerIdFromCID(key.toCID());
|
|
74
|
-
const log = connection.log.newScope('identify');
|
|
75
71
|
if (!connection.remotePeer.equals(id)) {
|
|
76
72
|
throw new InvalidMessageError('Identified peer does not match the expected peer');
|
|
77
73
|
}
|
|
78
|
-
if (this.peerId.equals(id)) {
|
|
74
|
+
if (this.components.peerId.equals(id)) {
|
|
79
75
|
throw new InvalidMessageError('Identified peer is our own peer id?');
|
|
80
76
|
}
|
|
81
77
|
// if the observed address is publicly routable, add it to the address
|
|
82
78
|
// manager for verification via AutoNAT
|
|
83
|
-
this.maybeAddObservedAddress(observedAddr
|
|
84
|
-
log('completed for peer %p and protocols %o', id, protocols);
|
|
85
|
-
return consumeIdentifyMessage(this.peerStore, this.events, log, connection, message);
|
|
79
|
+
this.maybeAddObservedAddress(observedAddr);
|
|
80
|
+
this.log('completed for peer %p and protocols %o', id, protocols);
|
|
81
|
+
return consumeIdentifyMessage(this.components.peerStore, this.components.events, this.log, connection, message);
|
|
86
82
|
}
|
|
87
|
-
maybeAddObservedAddress(observedAddr
|
|
83
|
+
maybeAddObservedAddress(observedAddr) {
|
|
88
84
|
const cleanObservedAddr = getCleanMultiaddr(observedAddr);
|
|
89
85
|
if (cleanObservedAddr == null) {
|
|
90
86
|
return;
|
|
91
87
|
}
|
|
92
|
-
log.trace('our observed address was %a', cleanObservedAddr);
|
|
88
|
+
this.log.trace('our observed address was %a', cleanObservedAddr);
|
|
93
89
|
if (isPrivate(cleanObservedAddr)) {
|
|
94
|
-
this.log.trace('our observed address was private');
|
|
95
90
|
return;
|
|
96
91
|
}
|
|
97
92
|
const tuples = cleanObservedAddr.getComponents();
|
|
98
93
|
if (((tuples[0].code === CODE_IP6) || (tuples[0].code === CODE_IP6ZONE && tuples[1].code === CODE_IP6)) && !isGlobalUnicast(cleanObservedAddr)) {
|
|
99
|
-
log.trace('our observed address was IPv6 but not a global unicast address');
|
|
94
|
+
this.log.trace('our observed address was IPv6 but not a global unicast address');
|
|
100
95
|
return;
|
|
101
96
|
}
|
|
102
97
|
if (TCP.exactMatch(cleanObservedAddr)) {
|
|
@@ -106,54 +101,53 @@ export class Identify extends AbstractIdentify {
|
|
|
106
101
|
// is resolved
|
|
107
102
|
return;
|
|
108
103
|
}
|
|
109
|
-
log.trace('storing the observed address');
|
|
110
|
-
this.addressManager.addObservedAddr(cleanObservedAddr);
|
|
104
|
+
this.log.trace('storing the observed address');
|
|
105
|
+
this.components.addressManager.addObservedAddr(cleanObservedAddr);
|
|
111
106
|
}
|
|
112
107
|
/**
|
|
113
108
|
* Sends the `Identify` response with the Signed Peer Record
|
|
114
109
|
* to the requesting peer over the given `connection`
|
|
115
110
|
*/
|
|
116
|
-
async handleProtocol(
|
|
117
|
-
const
|
|
118
|
-
const log = connection.log.newScope('identify');
|
|
111
|
+
async handleProtocol(stream, connection) {
|
|
112
|
+
const log = stream.log.newScope('identify');
|
|
119
113
|
const signal = AbortSignal.timeout(this.timeout);
|
|
120
114
|
setMaxListeners(Infinity, signal);
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
const envelope = await RecordEnvelope.seal(peerRecord, this.privateKey);
|
|
131
|
-
signedPeerRecord = envelope.marshal().subarray();
|
|
132
|
-
}
|
|
133
|
-
let observedAddr = connection.remoteAddr.bytes;
|
|
134
|
-
if (!IP_OR_DOMAIN.matches(connection.remoteAddr)) {
|
|
135
|
-
observedAddr = undefined;
|
|
136
|
-
}
|
|
137
|
-
const pb = pbStream(stream).pb(IdentifyMessage);
|
|
138
|
-
await pb.write({
|
|
139
|
-
protocolVersion: this.host.protocolVersion,
|
|
140
|
-
agentVersion: this.host.agentVersion,
|
|
141
|
-
publicKey: publicKeyToProtobuf(this.privateKey.publicKey),
|
|
142
|
-
listenAddrs: multiaddrs.map(addr => addr.bytes),
|
|
143
|
-
signedPeerRecord,
|
|
144
|
-
observedAddr,
|
|
145
|
-
protocols: peerData.protocols
|
|
146
|
-
}, {
|
|
147
|
-
signal
|
|
115
|
+
const peerData = await this.components.peerStore.get(this.components.peerId, {
|
|
116
|
+
signal
|
|
117
|
+
});
|
|
118
|
+
const multiaddrs = this.components.addressManager.getAddresses().map(ma => ma.decapsulateCode(CODE_P2P));
|
|
119
|
+
let signedPeerRecord = peerData.peerRecordEnvelope;
|
|
120
|
+
if (multiaddrs.length > 0 && signedPeerRecord == null) {
|
|
121
|
+
const peerRecord = new PeerRecord({
|
|
122
|
+
peerId: this.components.peerId,
|
|
123
|
+
multiaddrs
|
|
148
124
|
});
|
|
149
|
-
await
|
|
125
|
+
const envelope = await RecordEnvelope.seal(peerRecord, this.components.privateKey, {
|
|
150
126
|
signal
|
|
151
127
|
});
|
|
128
|
+
signedPeerRecord = envelope.marshal().subarray();
|
|
152
129
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
130
|
+
let observedAddr = connection.remoteAddr.bytes;
|
|
131
|
+
if (!IP_OR_DOMAIN.matches(connection.remoteAddr)) {
|
|
132
|
+
observedAddr = undefined;
|
|
156
133
|
}
|
|
134
|
+
const pb = pbStream(stream).pb(IdentifyMessage);
|
|
135
|
+
log('send response');
|
|
136
|
+
await pb.write({
|
|
137
|
+
protocolVersion: this.host.protocolVersion,
|
|
138
|
+
agentVersion: this.host.agentVersion,
|
|
139
|
+
publicKey: publicKeyToProtobuf(this.components.privateKey.publicKey),
|
|
140
|
+
listenAddrs: multiaddrs.map(addr => addr.bytes),
|
|
141
|
+
signedPeerRecord,
|
|
142
|
+
observedAddr,
|
|
143
|
+
protocols: peerData.protocols
|
|
144
|
+
}, {
|
|
145
|
+
signal
|
|
146
|
+
});
|
|
147
|
+
log('close write');
|
|
148
|
+
await pb.unwrap().unwrap().close({
|
|
149
|
+
signal
|
|
150
|
+
});
|
|
157
151
|
}
|
|
158
152
|
}
|
|
159
153
|
//# sourceMappingURL=identify.js.map
|
package/dist/src/identify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identify.js","sourceRoot":"","sources":["../../src/identify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAChF,OAAO,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"identify.js","sourceRoot":"","sources":["../../src/identify.ts"],"names":[],"mappings":"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"}
|
package/dist/src/utils.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { IdentifyComponents, IdentifyInit } from './index.js';
|
|
2
2
|
import type { Identify as IdentifyMessage } from './pb/message.js';
|
|
3
|
-
import type { Libp2pEvents, IdentifyResult, Logger, Connection, PeerStore, NodeInfo, Startable,
|
|
4
|
-
import type { AddressManager, Registrar } from '@libp2p/interface-internal';
|
|
3
|
+
import type { Libp2pEvents, IdentifyResult, Logger, Connection, PeerStore, NodeInfo, Startable, Stream } from '@libp2p/interface';
|
|
5
4
|
import type { Multiaddr } from '@multiformats/multiaddr';
|
|
6
5
|
import type { TypedEventTarget } from 'main-event';
|
|
7
6
|
export declare const defaultValues: {
|
|
@@ -31,25 +30,20 @@ export declare abstract class AbstractIdentify implements Startable {
|
|
|
31
30
|
protocolVersion: string;
|
|
32
31
|
agentVersion: string;
|
|
33
32
|
};
|
|
33
|
+
protected components: IdentifyComponents;
|
|
34
34
|
protected protocol: string;
|
|
35
35
|
protected started: boolean;
|
|
36
36
|
protected readonly timeout: number;
|
|
37
|
-
protected readonly peerId: PeerId;
|
|
38
|
-
protected readonly privateKey: PrivateKey;
|
|
39
|
-
protected readonly peerStore: PeerStore;
|
|
40
|
-
protected readonly registrar: Registrar;
|
|
41
|
-
protected readonly addressManager: AddressManager;
|
|
42
37
|
private readonly maxInboundStreams;
|
|
43
38
|
private readonly maxOutboundStreams;
|
|
44
39
|
protected readonly maxMessageSize: number;
|
|
45
40
|
protected readonly maxObservedAddresses: number;
|
|
46
|
-
protected readonly events: TypedEventTarget<Libp2pEvents>;
|
|
47
41
|
protected readonly runOnLimitedConnection: boolean;
|
|
48
42
|
protected readonly log: Logger;
|
|
49
43
|
constructor(components: IdentifyComponents, init: AbstractIdentifyInit);
|
|
50
44
|
isStarted(): boolean;
|
|
51
45
|
start(): Promise<void>;
|
|
52
46
|
stop(): Promise<void>;
|
|
53
|
-
protected abstract handleProtocol(
|
|
47
|
+
protected abstract handleProtocol(stream: Stream, connection: Connection): Promise<void>;
|
|
54
48
|
}
|
|
55
49
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/src/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,KAAK,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAoB,MAAM,EAAE,UAAU,EAAkB,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,KAAK,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAoB,MAAM,EAAE,UAAU,EAAkB,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACnK,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,eAAO,MAAM,aAAa;;;;;;;;;;;CAWzB,CAAA;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAE,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAQtG;AAED,wBAAgB,eAAe,CAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAMlF;AAED,wBAAsB,sBAAsB,CAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAoIlM;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,8BAAsB,gBAAiB,YAAW,SAAS;IACzD,SAAgB,IAAI,EAAE;QACpB,eAAe,EAAE,MAAM,CAAA;QACvB,YAAY,EAAE,MAAM,CAAA;KACrB,CAAA;IAED,SAAS,CAAC,UAAU,EAAE,kBAAkB,CAAA;IACxC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,OAAO,EAAE,OAAO,CAAA;IAC1B,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IAClC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAQ;IAC1C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;IAC3C,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IACzC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAA;IAC/C,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAA;IAClD,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;gBAEjB,UAAU,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB;IAsBvE,SAAS,IAAK,OAAO;IAIf,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IAqBvB,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAM5B,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAC1F"}
|
package/dist/src/utils.js
CHANGED
|
@@ -144,30 +144,20 @@ export async function consumeIdentifyMessage(peerStore, events, log, connection,
|
|
|
144
144
|
}
|
|
145
145
|
export class AbstractIdentify {
|
|
146
146
|
host;
|
|
147
|
+
components;
|
|
147
148
|
protocol;
|
|
148
149
|
started;
|
|
149
150
|
timeout;
|
|
150
|
-
peerId;
|
|
151
|
-
privateKey;
|
|
152
|
-
peerStore;
|
|
153
|
-
registrar;
|
|
154
|
-
addressManager;
|
|
155
151
|
maxInboundStreams;
|
|
156
152
|
maxOutboundStreams;
|
|
157
153
|
maxMessageSize;
|
|
158
154
|
maxObservedAddresses;
|
|
159
|
-
events;
|
|
160
155
|
runOnLimitedConnection;
|
|
161
156
|
log;
|
|
162
157
|
constructor(components, init) {
|
|
163
158
|
this.protocol = init.protocol;
|
|
164
159
|
this.started = false;
|
|
165
|
-
this.
|
|
166
|
-
this.privateKey = components.privateKey;
|
|
167
|
-
this.peerStore = components.peerStore;
|
|
168
|
-
this.registrar = components.registrar;
|
|
169
|
-
this.addressManager = components.addressManager;
|
|
170
|
-
this.events = components.events;
|
|
160
|
+
this.components = components;
|
|
171
161
|
this.log = init.log;
|
|
172
162
|
this.timeout = init.timeout ?? defaultValues.timeout;
|
|
173
163
|
this.maxInboundStreams = init.maxInboundStreams ?? defaultValues.maxInboundStreams;
|
|
@@ -180,6 +170,7 @@ export class AbstractIdentify {
|
|
|
180
170
|
protocolVersion: `${init.protocolPrefix ?? defaultValues.protocolPrefix}/${IDENTIFY_PROTOCOL_VERSION}`,
|
|
181
171
|
agentVersion: getAgentVersion(components.nodeInfo, init.agentVersion)
|
|
182
172
|
};
|
|
173
|
+
this.handleProtocol = this.handleProtocol.bind(this);
|
|
183
174
|
}
|
|
184
175
|
isStarted() {
|
|
185
176
|
return this.started;
|
|
@@ -188,17 +179,13 @@ export class AbstractIdentify {
|
|
|
188
179
|
if (this.started) {
|
|
189
180
|
return;
|
|
190
181
|
}
|
|
191
|
-
await this.peerStore.merge(this.peerId, {
|
|
182
|
+
await this.components.peerStore.merge(this.components.peerId, {
|
|
192
183
|
metadata: {
|
|
193
184
|
AgentVersion: uint8ArrayFromString(this.host.agentVersion),
|
|
194
185
|
ProtocolVersion: uint8ArrayFromString(this.host.protocolVersion)
|
|
195
186
|
}
|
|
196
187
|
});
|
|
197
|
-
await this.registrar.handle(this.protocol,
|
|
198
|
-
void this.handleProtocol(data).catch(err => {
|
|
199
|
-
this.log.error(err);
|
|
200
|
-
});
|
|
201
|
-
}, {
|
|
188
|
+
await this.components.registrar.handle(this.protocol, this.handleProtocol, {
|
|
202
189
|
maxInboundStreams: this.maxInboundStreams,
|
|
203
190
|
maxOutboundStreams: this.maxOutboundStreams,
|
|
204
191
|
runOnLimitedConnection: this.runOnLimitedConnection
|
|
@@ -206,7 +193,7 @@ export class AbstractIdentify {
|
|
|
206
193
|
this.started = true;
|
|
207
194
|
}
|
|
208
195
|
async stop() {
|
|
209
|
-
await this.registrar.unhandle(this.protocol);
|
|
196
|
+
await this.components.registrar.unhandle(this.protocol);
|
|
210
197
|
this.started = false;
|
|
211
198
|
}
|
|
212
199
|
}
|
package/dist/src/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACpE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/identify",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.39-a02cb0461",
|
|
4
4
|
"description": "Implementation of the Identify Protocol",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/protocol-identify#readme",
|
|
@@ -45,30 +45,27 @@
|
|
|
45
45
|
"doc-check": "aegir doc-check"
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@libp2p/crypto": "5.1.
|
|
49
|
-
"@libp2p/interface": "2.
|
|
50
|
-
"@libp2p/interface-internal": "2.3.
|
|
51
|
-
"@libp2p/peer-id": "5.1.
|
|
52
|
-
"@libp2p/peer-record": "8.0.
|
|
53
|
-
"@libp2p/utils": "6.7.
|
|
54
|
-
"@multiformats/multiaddr": "^12.
|
|
55
|
-
"@multiformats/multiaddr-matcher": "^2.0.
|
|
56
|
-
"it-drain": "^3.0.
|
|
57
|
-
"it-parallel": "^3.0.
|
|
58
|
-
"it-protobuf-stream": "^2.0.2",
|
|
48
|
+
"@libp2p/crypto": "5.1.8-a02cb0461",
|
|
49
|
+
"@libp2p/interface": "2.11.0-a02cb0461",
|
|
50
|
+
"@libp2p/interface-internal": "2.3.19-a02cb0461",
|
|
51
|
+
"@libp2p/peer-id": "5.1.9-a02cb0461",
|
|
52
|
+
"@libp2p/peer-record": "8.0.35-a02cb0461",
|
|
53
|
+
"@libp2p/utils": "6.7.2-a02cb0461",
|
|
54
|
+
"@multiformats/multiaddr": "^12.5.1",
|
|
55
|
+
"@multiformats/multiaddr-matcher": "^2.0.2",
|
|
56
|
+
"it-drain": "^3.0.10",
|
|
57
|
+
"it-parallel": "^3.0.13",
|
|
59
58
|
"main-event": "^1.0.1",
|
|
60
|
-
"protons-runtime": "^5.
|
|
59
|
+
"protons-runtime": "^5.6.0",
|
|
61
60
|
"uint8arraylist": "^2.4.8",
|
|
62
61
|
"uint8arrays": "^5.1.0"
|
|
63
62
|
},
|
|
64
63
|
"devDependencies": {
|
|
65
|
-
"@libp2p/logger": "5.
|
|
66
|
-
"aegir": "^47.0.
|
|
64
|
+
"@libp2p/logger": "5.2.0-a02cb0461",
|
|
65
|
+
"aegir": "^47.0.21",
|
|
67
66
|
"delay": "^6.0.0",
|
|
68
67
|
"it-length-prefixed": "^10.0.1",
|
|
69
|
-
"
|
|
70
|
-
"it-pushable": "^3.2.3",
|
|
71
|
-
"protons": "^7.6.1",
|
|
68
|
+
"protons": "^7.7.0",
|
|
72
69
|
"sinon-ts": "^2.0.0"
|
|
73
70
|
},
|
|
74
71
|
"sideEffects": false
|