Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -68,3 +68,6 @@ lib

# swp file
*.swp

# others
package-lock.json
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@ Included is a libp2p peer-discovery compatibility module.
```typescript
import { Discv5Discovery, ENR } from "@chainsafe/discv5";
import Libp2p from "libp2p";
import PeerInfo from "peer-info";
import PeerId from "peer-id";

const myPeerInfo: PeerInfo = ...;
const myPeerId: PeerId = ...;

const bootstrapEnrs: ENR[] = [...];

const libp2p = new Libp2p({
peerInfo: myPeerInfo,
peerId: myPeerId,
modules: {
peerDiscovery: [Discv5Discovery],
},
Expand Down
1 change: 0 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,6 @@
"libp2p-crypto": "^0.17.5",
"multiaddr": "^7.4.2",
"peer-id": "^0.13.11",
"peer-info": "^0.17.5",
"rlp": "^2.2.4",
"strict-event-emitter-types": "^2.0.0"
}
Expand Down
16 changes: 7 additions & 9 deletions src/libp2p/discv5.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { EventEmitter } from "events";
import PeerInfo = require("peer-info");
import PeerId = require("peer-id");
import Multiaddr = require("multiaddr");
import { randomBytes } from "libp2p-crypto";

Expand All @@ -24,7 +24,7 @@ export interface IDiscv5DiscoveryInputOptions {
}

export interface IDiscv5DiscoveryOptions extends IDiscv5DiscoveryInputOptions {
peerInfo: PeerInfo;
peerId: PeerId;
}

/**
Expand All @@ -38,7 +38,7 @@ export class Discv5Discovery extends EventEmitter {

constructor(options: IDiscv5DiscoveryOptions) {
super();
this.discv5 = Discv5.create(options.enr, options.peerInfo.id, Multiaddr(options.bindAddr));
this.discv5 = Discv5.create(options.enr, options.peerId, Multiaddr(options.bindAddr));
this.started = false;
options.bootEnrs.forEach((bootEnr) => this.discv5.addEnr(bootEnr));
}
Expand Down Expand Up @@ -69,12 +69,10 @@ export class Discv5Discovery extends EventEmitter {
return;
}
for (const enr of enrs) {
const peerInfo = new PeerInfo(await enr.peerId());
const multiaddrTCP = enr.multiaddrTCP;
if (multiaddrTCP) {
peerInfo.multiaddrs.add(multiaddrTCP);
}
this.emit("peer", peerInfo);
this.emit("peer", {
id: enr.peerId(),
multiaddrs: [Multiaddr(enr.multiaddrTCP)]
});
}
}
}
Expand Down
38 changes: 2 additions & 36 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -574,7 +574,7 @@ chokidar@^3.0.0:
optionalDependencies:
fsevents "~2.1.1"

cids@^0.8.0, cids@~0.8.0:
cids@^0.8.0:
version "0.8.0"
resolved "https://registry.yarnpkg.com/cids/-/cids-0.8.0.tgz#41bf050bc7669cc8d648e21ca834b747bf6fa673"
integrity sha512-HdKURxtSOnww3H28CJU2TauIklEBsOn+ouGl2EOnSfVCVkH6+sWTj7to2D/BmuWvwzEy2+ZIKdcIwsXHJBQVew==
Expand Down Expand Up @@ -1804,13 +1804,6 @@ [email protected], lru-cache@^4.0.1:
pseudomap "^1.0.2"
yallist "^2.1.2"

mafmt@^7.1.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/mafmt/-/mafmt-7.1.0.tgz#4126f6d0eded070ace7dbbb6fb04977412d380b5"
integrity sha512-vpeo9S+hepT3k2h5iFxzEHvvR0GPBx9uKaErmnRzYNcaKb03DgOArjEMlgG4a9LcuZZ89a3I8xbeto487n26eA==
dependencies:
multiaddr "^7.3.0"

make-dir@^2.0.0, make-dir@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"
Expand Down Expand Up @@ -1941,18 +1934,6 @@ ms@^2.1.1:
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==

multiaddr@^7.3.0:
version "7.4.3"
resolved "https://registry.yarnpkg.com/multiaddr/-/multiaddr-7.4.3.tgz#0626945acf309f1c811a95613a0a4371c7aa6109"
integrity sha512-gFjXmjcCMyrx5KF1QOohUQm6a3E2XF4kydvClS8DmRJkY3qJaDPNNe0OC7mWvVUE0nnE8HjyToQfABnpKClXRA==
dependencies:
buffer "^5.5.0"
cids "~0.8.0"
class-is "^1.1.0"
is-ip "^3.1.0"
multibase "^0.7.0"
varint "^5.0.0"

multiaddr@^7.4.2:
version "7.4.2"
resolved "https://registry.yarnpkg.com/multiaddr/-/multiaddr-7.4.2.tgz#70021158dfcdc81d8e0e2664b82a7bc1b4c8dce2"
Expand Down Expand Up @@ -2307,7 +2288,7 @@ pathval@^1.1.0:
resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0"
integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA=

peer-id@^0.13.11, peer-id@~0.13.2:
peer-id@^0.13.11:
version "0.13.11"
resolved "https://registry.yarnpkg.com/peer-id/-/peer-id-0.13.11.tgz#d3b11e45d80839363aeac0e4fa1758368e3b93cd"
integrity sha512-CWDPr4ppKslARSe1qfMlGjTiDqL4Hl25Qyfq43PEPAeRD2meI8B2HfxO0NMMB8BUhNvNGPeDAwhLptyB9jVwkw==
Expand All @@ -2319,16 +2300,6 @@ peer-id@^0.13.11, peer-id@~0.13.2:
multihashes "~0.4.15"
protons "^1.0.2"

peer-info@^0.17.5:
version "0.17.5"
resolved "https://registry.yarnpkg.com/peer-info/-/peer-info-0.17.5.tgz#80afc709e03069cf94a29d8fcfa0426140fa7b69"
integrity sha512-ebbbnvdCnb0onWuW+QNXO4KvLPuQ+kih3zezhov2uxHqA6VLbtzMUyQ06IHtwYLr50AYYWyBOSn17g4zEBsFpw==
dependencies:
mafmt "^7.1.0"
multiaddr "^7.3.0"
peer-id "~0.13.2"
unique-by "^1.0.0"

pem-jwk@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/pem-jwk/-/pem-jwk-2.0.0.tgz#1c5bb264612fc391340907f5c1de60c06d22f085"
Expand Down Expand Up @@ -2979,11 +2950,6 @@ ultron@~1.1.0:
resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c"
integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==

unique-by@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/unique-by/-/unique-by-1.0.0.tgz#5220c86ba7bc572fb713ad74651470cb644212bd"
integrity sha1-UiDIa6e8Vy+3E610ZRRwy2RCEr0=

universalify@^0.1.0:
version "0.1.2"
resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
Expand Down