Struct sn_node::Config [−][src]
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
impl Config
[src]
pub fn new() -> Result<Self, Error>
[src]
Returns a new Config
instance. Tries to read from the default node config file location,
and overrides values with any equivalent command line args.
pub fn wallet_id(&self) -> Option<&String>
[src]
The address to be credited when this node farms SafeCoin.
pub fn is_first(&self) -> bool
[src]
Is this the first node in a section?
pub fn max_capacity(&self) -> u64
[src]
Upper limit in bytes for allowed network storage on this node.
pub fn root_dir(&self) -> Result<PathBuf>
[src]
Root directory for ChunkStore
s 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).
pub fn set_root_dir<P: Into<PathBuf>>(&mut self, path: P)
[src]
Set the root directory for ChunkStore
s and cached state.
pub fn set_log_dir<P: Into<PathBuf>>(&mut self, path: P)
[src]
Set the directory to write the logs.
pub fn verbose(&self) -> Level
[src]
Get the log level.
pub fn network_config(&self) -> &NetworkConfig
[src]
Network configuration options.
pub fn set_network_config(&mut self, config: NetworkConfig)
[src]
Set network configuration options.
pub fn completions(&self) -> &Option<String>
[src]
Get the completions option
pub fn log_dir(&self) -> &Option<PathBuf>
[src]
Directory where to write log file/s if specified
pub fn update(&self) -> bool
[src]
Attempt to self-update?
pub fn update_only(&self) -> bool
[src]
Attempt to self-update without starting the node process
pub fn listen_on_loopback(&mut self)
[src]
Set the Quic-P2P ip
configuration to 127.0.0.1.
pub fn write_to_disk(&self) -> Result<()>
[src]
Writes the config file to disk
Trait Implementations
impl Clone for Config
[src]
impl Debug for Config
[src]
impl Default for Config
[src]
impl<'de> Deserialize<'de> for Config
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl Eq for Config
[src]
impl PartialEq<Config> for Config
[src]
impl Serialize for Config
[src]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl StructOpt for Config
[src]
fn clap<'a, 'b>() -> App<'a, 'b>
[src]
fn from_clap(matches: &ArgMatches<'_>) -> Self
[src]
pub fn from_args() -> Self
[src]
pub fn from_args_safe() -> Result<Self, Error>
[src]
pub fn from_iter<I>(iter: I) -> Self where
I: IntoIterator,
<I as IntoIterator>::Item: Into<OsString>,
<I as IntoIterator>::Item: Clone,
[src]
I: IntoIterator,
<I as IntoIterator>::Item: Into<OsString>,
<I as IntoIterator>::Item: Clone,
pub fn from_iter_safe<I>(iter: I) -> Result<Self, Error> where
I: IntoIterator,
<I as IntoIterator>::Item: Into<OsString>,
<I as IntoIterator>::Item: Clone,
[src]
I: IntoIterator,
<I as IntoIterator>::Item: Into<OsString>,
<I as IntoIterator>::Item: Clone,
impl StructOptInternal for Config
[src]
fn augment_clap<'a, 'b>(app: App<'a, 'b>) -> App<'a, 'b>
[src]
fn is_subcommand() -> bool
[src]
pub fn from_subcommand(
_sub: (&'b str, Option<&'b ArgMatches<'a>>)
) -> Option<Self>
[src]
_sub: (&'b str, Option<&'b ArgMatches<'a>>)
) -> Option<Self>
impl StructuralEq for Config
[src]
impl StructuralPartialEq for Config
[src]
Auto Trait Implementations
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
pub fn equivalent(&self, key: &K) -> bool
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,