Struct sc_cli::NodeKeyParams [−][src]
pub struct NodeKeyParams { pub node_key: Option<String>, pub node_key_type: NodeKeyType, pub node_key_file: Option<PathBuf>, }
Expand description
Parameters used to create the NodeKeyConfig
, which determines the keypair
used for libp2p networking.
Fields
node_key: Option<String>
The secret key to use for libp2p networking.
The value is a string that is parsed according to the choice of
--node-key-type
as follows:
ed25519
:
The value is parsed as a hex-encoded Ed25519 32 byte secret key,
i.e. 64 hex characters.
The value of this option takes precedence over --node-key-file
.
WARNING: Secrets provided as command-line arguments are easily exposed.
Use of this option should be limited to development and testing. To use
an externally managed secret key, use --node-key-file
instead.
node_key_type: NodeKeyType
The type of secret key to use for libp2p networking.
The secret key of the node is obtained as follows:
-
If the
--node-key
option is given, the value is parsed as a secret key according to the type. See the documentation for--node-key
. -
If the
--node-key-file
option is given, the secret key is read from the specified file. See the documentation for--node-key-file
. -
Otherwise, the secret key is read from a file with a predetermined, type-specific name from the chain-specific network config directory inside the base directory specified by
--base-dir
. If this file does not exist, it is created with a newly generated secret key of the chosen type.
The node’s secret key determines the corresponding public key and hence the node’s peer ID in the context of libp2p.
node_key_file: Option<PathBuf>
The file from which to read the node’s secret key to use for libp2p networking.
The contents of the file are parsed according to the choice of --node-key-type
as follows:
ed25519
:
The file must contain an unencoded 32 byte or hex encoded Ed25519 secret key.
If the file does not exist, it is created with a newly generated secret key of the chosen type.
Implementations
Create a NodeKeyConfig
from the given NodeKeyParams
in the context
of an optional network config storage directory.
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 NodeKeyParams
impl Send for NodeKeyParams
impl Sync for NodeKeyParams
impl Unpin for NodeKeyParams
impl UnwindSafe for NodeKeyParams
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,