pub struct NetworkConfiguration {
Show 17 fields pub config_path: Option<String>, pub net_config_path: Option<String>, pub listen_address: Option<SocketAddr>, pub public_address: Option<SocketAddr>, pub udp_port: Option<u16>, pub nat_enabled: bool, pub discovery_enabled: bool, pub boot_nodes: Vec<String>, pub use_secret: Option<Secret>, pub min_peers: u32, pub max_peers: u32, pub max_handshakes: u32, pub reserved_protocols: HashMap<ProtocolId, u32>, pub reserved_nodes: Vec<String>, pub non_reserved_mode: NonReservedPeerMode, pub ip_filter: IpFilter, pub client_version: String,
}
Expand description

Network service configuration

Fields

config_path: Option<String>

Directory path to store general network configuration. None means nothing will be saved

net_config_path: Option<String>

Directory path to store network-specific configuration. None means nothing will be saved

listen_address: Option<SocketAddr>

IP address to listen for incoming connections. Listen to all connections by default

public_address: Option<SocketAddr>

IP address to advertise. Detected automatically if none.

udp_port: Option<u16>

Port for UDP connections, same as TCP by default

nat_enabled: bool

Enable NAT configuration

discovery_enabled: bool

Enable discovery

boot_nodes: Vec<String>

List of initial node addresses

use_secret: Option<Secret>

Use provided node key instead of default

min_peers: u32

Minimum number of connected peers to maintain

max_peers: u32

Maximum allowed number of peers

max_handshakes: u32

Maximum handshakes

reserved_protocols: HashMap<ProtocolId, u32>

Reserved protocols. Peers with protocol get additional connection slots.

reserved_nodes: Vec<String>

List of reserved node addresses.

non_reserved_mode: NonReservedPeerMode

The non-reserved peer mode.

ip_filter: IpFilter

IP filter

client_version: String

Client identifier

Implementations

Create a new instance of default settings.

Create new default configuration with specified listen port.

Create new default configuration for localhost-only connection with random port (usefull for testing)

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.