Struct sn_node::Config[][src]

pub struct Config {
Show fields pub wallet_id: Option<String>, pub max_capacity: Option<u64>, pub root_dir: Option<PathBuf>, pub verbose: u64, pub completions: Option<String>, pub log_dir: Option<PathBuf>, pub update: bool, pub update_only: bool, pub clear_data: bool, pub first: Option<SocketAddr>, pub local_addr: Option<SocketAddr>, pub public_addr: Option<SocketAddr>, pub skip_igd: bool, pub hard_coded_contacts: HashSet<SocketAddr>, pub max_msg_size_allowed: Option<u32>, pub idle_timeout_msec: Option<u64>, pub keep_alive_interval_msec: Option<u32>, pub bootstrap_cache_dir: Option<String>, pub upnp_lease_duration: Option<u32>, pub network_config: NetworkConfig,
}
Expand description

Node configuration

Fields

wallet_id: Option<String>

The address to be credited when this node farms SafeCoin. A hex formatted BLS public key.

max_capacity: Option<u64>

Upper limit in bytes for allowed network storage on this node.

root_dir: Option<PathBuf>

Root directory for ChunkStores and cached state. If not set, it defaults to “root_dir” within the sn_node project data directory, located at: Linux: $HOME/.safe/node/root_dir Windows: {FOLDERID_Profile}/.safe/node/root_dir MacOS: $HOME/.safe/node/root_dir

verbose: u64

Verbose output. -v is equivalent to logging with warn, -vv to info, -vvv to debug, -vvvv to trace. This flag overrides RUST_LOG.

completions: Option<String>

dump shell completions for: [bash, fish, zsh, powershell, elvish]

log_dir: Option<PathBuf>

Send logs to a file within the specified directory

update: bool

Attempt to self-update?

update_only: bool

Attempt to self-update without starting the node process

clear_data: bool

Delete all data from a previous node running on the same PC

first: Option<SocketAddr>

If the node is the first node on the network, the local address to be used should be passed. To use a random port number, use 0. If this argument is passed --local-ip and --local-port is not requried, however if they are passed, they should match the value provided here.

local_addr: Option<SocketAddr>

Local address to be used for the node. This field is mandatory if manual port forwarding is being used. Otherwise, the value is fetched from --first (for genesis) and obtained by connecting to the bootstrap node otherwise.

public_addr: Option<SocketAddr>

External address of the node. This field can be used to specify the external socket address when manual port forwarding is used. If this field is provided, either --first or --local-addr must be provided

skip_igd: bool

This flag can be used to skip port forwarding using IGD. This is used when running a network on LAN or when a node is connected to the internect directly without a router. Eg. Digital Ocean droplets.

hard_coded_contacts: HashSet<SocketAddr>

Hard Coded contacts

max_msg_size_allowed: Option<u32>

This is the maximum message size we’ll allow the peer to send to us. Any bigger message and we’ll error out probably shutting down the connection to the peer. If none supplied we’ll default to the documented constant.

idle_timeout_msec: Option<u64>

If we hear nothing from the peer in the given interval we declare it offline to us. If none supplied we’ll default to the documented constant.

The interval is in milliseconds. A value of 0 disables this feature.

keep_alive_interval_msec: Option<u32>

Interval to send keep-alives if we are idling so that the peer does not disconnect from us declaring us offline. If none is supplied we’ll default to the documented constant.

The interval is in milliseconds. A value of 0 disables this feature.

bootstrap_cache_dir: Option<String>

Directory in which the bootstrap cache will be stored. If none is supplied, the platform specific default cache directory is used.

upnp_lease_duration: Option<u32>

Duration of a UPnP port mapping.

network_config: NetworkConfig

Implementations

Returns a new Config instance. Tries to read from the default node config file location, and overrides values with any equivalent command line args.

The address to be credited when this node farms SafeCoin.

Is this the first node in a section?

Upper limit in bytes for allowed network storage on this node.

Root directory for ChunkStores and cached state. If not set, it defaults to DEFAULT_ROOT_DIR_NAME within the project’s data directory (see Config::root_dir for the directories on each platform).

Set the root directory for ChunkStores and cached state.

Set the directory to write the logs.

Get the log level.

Network configuration options.

Set network configuration options.

Get the completions option

Directory where to write log file/s if specified

Attempt to self-update?

Attempt to self-update without starting the node process

Set the Quic-P2P ip configuration to 127.0.0.1.

Writes the config file to disk

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

Deserialize this value from the given Serde deserializer. Read more

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

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Returns clap::App corresponding to the struct.

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

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

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

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

Gets the struct from any iterator such as a Vec of your making. Read more

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

Compare self to key and return true if they are equal.

Performs the conversion.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Performs the conversion.

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)

recently added

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.