Struct sc_cli::NetworkParams [−][src]
pub struct NetworkParams {}Show fields
pub bootnodes: Vec<MultiaddrWithPeerId>, pub reserved_nodes: Vec<MultiaddrWithPeerId>, pub reserved_only: bool, pub public_addr: Vec<Multiaddr>, pub listen_addr: Vec<Multiaddr>, pub port: Option<u16>, pub no_private_ipv4: bool, pub allow_private_ipv4: bool, pub out_peers: u32, pub in_peers: u32, pub no_mdns: bool, pub max_parallel_downloads: u32, pub node_key_params: NodeKeyParams, pub discover_local: bool, pub kademlia_disjoint_query_paths: bool, pub ipfs_server: bool, pub sync: SyncMode,
Expand description
Parameters used to create the network configuration.
Fields
bootnodes: Vec<MultiaddrWithPeerId>
Specify a list of bootnodes.
reserved_nodes: Vec<MultiaddrWithPeerId>
Specify a list of reserved node addresses.
reserved_only: bool
Whether to only synchronize the chain with reserved nodes.
Also disables automatic peer discovery.
TCP connections might still be established with non-reserved nodes. In particular, if you are a validator your node might still connect to other validator nodes and collator nodes regardless of whether they are defined as reserved nodes.
public_addr: Vec<Multiaddr>
The public address that other nodes will use to connect to it. This can be used if there’s a proxy in front of this node.
listen_addr: Vec<Multiaddr>
Listen on this multiaddress.
By default:
If --validator
is passed: /ip4/0.0.0.0/tcp/<port>
and /ip6/[::]/tcp/<port>
.
Otherwise: /ip4/0.0.0.0/tcp/<port>/ws
and /ip6/[::]/tcp/<port>/ws
.
port: Option<u16>
Specify p2p protocol TCP port.
no_private_ipv4: bool
Always forbid connecting to private IPv4 addresses (as specified in
RFC1918), unless the address was passed with
--reserved-nodes
or --bootnodes
. Enabled by default for chains marked as “live” in
their chain specifications.
allow_private_ipv4: bool
Always accept connecting to private IPv4 addresses (as specified in
RFC1918). Enabled by default for chains marked as
“local” in their chain specifications, or when --dev
is passed.
out_peers: u32
Specify the number of outgoing connections we’re trying to maintain.
in_peers: u32
Specify the maximum number of incoming connections we’re accepting.
no_mdns: bool
Disable mDNS discovery.
By default, the network will use mDNS to discover other nodes on the local network. This disables it. Automatically implied when using –dev.
max_parallel_downloads: u32
Maximum number of peers from which to ask for the same blocks in parallel.
This allows downloading announced blocks from multiple peers. Decrease to save traffic and risk increased latency.
node_key_params: NodeKeyParams
discover_local: bool
Enable peer discovery on local networks.
By default this option is true
for --dev
or when the chain type is Local
/Development
and false otherwise.
kademlia_disjoint_query_paths: bool
Require iterative Kademlia DHT queries to use disjoint paths for increased resiliency in the presence of potentially adversarial nodes.
See the S/Kademlia paper for more information on the high level design as well as its security improvements.
ipfs_server: bool
Join the IPFS network and serve transactions over bitswap protocol.
sync: SyncMode
Blockchain syncing mode.
-
Full
: Download and validate full blockchain history. -
Fast
: Download blocks and the latest state only. -
FastUnsafe
: Same asFast
, but skip downloading state proofs.
Implementations
pub fn network_config(
&self,
chain_spec: &Box<dyn ChainSpec>,
is_dev: bool,
is_validator: bool,
net_config_path: Option<PathBuf>,
client_id: &str,
node_name: &str,
node_key: NodeKeyConfig,
default_listen_port: u16
) -> NetworkConfiguration
pub fn network_config(
&self,
chain_spec: &Box<dyn ChainSpec>,
is_dev: bool,
is_validator: bool,
net_config_path: Option<PathBuf>,
client_id: &str,
node_name: &str,
node_key: NodeKeyConfig,
default_listen_port: u16
) -> NetworkConfiguration
Fill the given NetworkConfiguration
by looking at the cli parameters.
Trait Implementations
Builds the struct from clap::ArgMatches
. It’s guaranteed to succeed
if matches
originates from an App
generated by [StructOpt::clap
] called on
the same type, otherwise it must panic. Read more
fn from_args() -> Self
fn from_args() -> Self
Builds the struct from the command line arguments (std::env::args_os
).
Calls clap::Error::exit
on failure, printing the error message and aborting the program. Read more
fn from_args_safe() -> Result<Self, Error>
fn from_args_safe() -> Result<Self, Error>
Builds the struct from the command line arguments (std::env::args_os
).
Unlike [StructOpt::from_args
], returns clap::Error
on failure instead of aborting the program,
so calling .exit
is up to you. Read more
fn from_iter<I>(iter: I) -> Self where
I: IntoIterator,
<I as IntoIterator>::Item: Into<OsString>,
<I as IntoIterator>::Item: Clone,
fn from_iter<I>(iter: I) -> Self where
I: IntoIterator,
<I as IntoIterator>::Item: Into<OsString>,
<I as IntoIterator>::Item: Clone,
Gets the struct from any iterator such as a Vec
of your making.
Print the error message and quit the program in case of failure. Read more
fn from_iter_safe<I>(iter: I) -> Result<Self, Error> where
I: IntoIterator,
<I as IntoIterator>::Item: Into<OsString>,
<I as IntoIterator>::Item: Clone,
fn from_iter_safe<I>(iter: I) -> Result<Self, Error> where
I: IntoIterator,
<I as IntoIterator>::Item: Into<OsString>,
<I as IntoIterator>::Item: Clone,
Gets the struct from any iterator such as a Vec
of your making. Read more
Auto Trait Implementations
impl RefUnwindSafe for NetworkParams
impl Send for NetworkParams
impl Sync for NetworkParams
impl Unpin for NetworkParams
impl UnwindSafe for NetworkParams
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
The counterpart to unchecked_from
.
Consume self to return an equivalent value of T
.
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
impl<T> MaybeDebug for T where
T: Debug,
impl<T> MaybeDebug for T where
T: Debug,