mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-06 18:21:45 +00:00
## Issue Addressed #1378 ## Proposed Changes Boot node reuses code from beacon_node to initialize network config. This also enables using the network directory to store/load the enr and the private key. ## Additional Info Note that before this PR the port cli arguments were off (the argument was named `enr-port` but used as `boot-node-enr-port`). Therefore as port always the cli port argument was used (for both enr and listening). Now the enr-port argument can be used to overwrite the listening port as the public port others should connect to. Last but not least note, that this restructuring reuses `ethlibp2p::NetworkConfig` that has many more options than the ones used in the boot node. For example the network config has an own `discv5_config` field that gets never used in the boot node and instead another `Discv5Config` gets created later in the boot node process. Co-authored-by: Age Manning <Age@AgeManning.com>
30 lines
1.0 KiB
Rust
30 lines
1.0 KiB
Rust
/// This crate contains the main link for lighthouse to rust-libp2p. It therefore re-exports
|
|
/// all required libp2p functionality.
|
|
///
|
|
/// This crate builds and manages the libp2p services required by the beacon node.
|
|
#[macro_use]
|
|
extern crate lazy_static;
|
|
|
|
pub mod behaviour;
|
|
mod config;
|
|
pub mod discovery;
|
|
mod metrics;
|
|
mod peer_manager;
|
|
pub mod rpc;
|
|
mod service;
|
|
pub mod types;
|
|
|
|
pub use crate::types::{error, Enr, GossipTopic, NetworkGlobals, PubsubMessage, SubnetDiscovery};
|
|
pub use behaviour::{BehaviourEvent, PeerRequestId, Request, Response};
|
|
pub use config::Config as NetworkConfig;
|
|
pub use discovery::{CombinedKeyExt, EnrExt, Eth2Enr};
|
|
pub use discv5;
|
|
pub use libp2p::gossipsub::{MessageId, Topic, TopicHash};
|
|
pub use libp2p::{core::ConnectedPoint, PeerId, Swarm};
|
|
pub use libp2p::{multiaddr, Multiaddr};
|
|
pub use metrics::scrape_discovery_metrics;
|
|
pub use peer_manager::{
|
|
client::Client, score::PeerAction, PeerDB, PeerInfo, PeerSyncStatus, SyncInfo,
|
|
};
|
|
pub use service::{load_private_key, Libp2pEvent, Service, NETWORK_KEY_FILENAME};
|