Struct rust_ipfs::IpfsOptions
source · pub struct IpfsOptions {Show 27 fields
pub ipfs_path: StoragePath,
pub bootstrap: Vec<Multiaddr>,
pub mdns: bool,
pub mdns_ipv6: bool,
pub dcutr: bool,
pub relay: bool,
pub disable_kad: bool,
pub disable_bitswap: bool,
pub bitswap_config: Option<BitswapConfig>,
pub relay_server: bool,
pub relay_server_config: Option<RelayConfig>,
pub listening_addrs: Vec<Multiaddr>,
pub transport_configuration: Option<TransportConfig>,
pub swarm_configuration: Option<SwarmConfig>,
pub identify_configuration: Option<IdentifyConfiguration>,
pub pubsub_config: Option<PubsubConfig>,
pub kad_configuration: Option<Either<KadConfig, KademliaConfig>>,
pub kad_store_config: KadStoreConfig,
pub ping_configuration: Option<Config>,
pub port_mapping: bool,
pub addr_config: Option<AddressBookConfig>,
pub keystore: Keystore,
pub connection_idle: Duration,
pub provider: RepoProvider,
pub rendezvous_client: bool,
pub rendezvous_server: bool,
pub span: Option<Span>,
}
Expand description
Ipfs node options used to configure the node to be created with UninitializedIpfs
.
Fields§
§ipfs_path: StoragePath
The path of the ipfs repo (blockstore and datastore).
This is always required but can be any path with in-memory backends. The filesystem backend creates a directory structure alike but not compatible to other ipfs implementations.
Incompatiblity and interop warning
It is not recommended to set this to IPFS_PATH without first at least backing up your existing repository.
bootstrap: Vec<Multiaddr>
Nodes used as bootstrap peers.
mdns: bool
Enables mdns for peer discovery and announcement when true.
mdns_ipv6: bool
Enables ipv6 for mdns
dcutr: bool
Enables dcutr
relay: bool
Enables relay client.
disable_kad: bool
Disables kademlia protocol
disable_bitswap: bool
Disables bitswap protocol
bitswap_config: Option<BitswapConfig>
Bitswap configuration
relay_server: bool
Enables relay server
relay_server_config: Option<RelayConfig>
Relay server config
listening_addrs: Vec<Multiaddr>
Bound listening addresses; by default the node will not listen on any address.
transport_configuration: Option<TransportConfig>
Transport configuration
swarm_configuration: Option<SwarmConfig>
Swarm configuration
identify_configuration: Option<IdentifyConfiguration>
Identify configuration
pubsub_config: Option<PubsubConfig>
Pubsub configuration
kad_configuration: Option<Either<KadConfig, KademliaConfig>>
Kad configuration
kad_store_config: KadStoreConfig
Kad Store Config Note: Only supports MemoryStoreConfig at this time
ping_configuration: Option<Config>
Ping Configuration
port_mapping: bool
Enables port mapping (aka UPnP)
addr_config: Option<AddressBookConfig>
Address book configuration
keystore: Keystore
§connection_idle: Duration
Connection idle
provider: RepoProvider
Repo Provider option
rendezvous_client: bool
Rendezvous Client
rendezvous_server: bool
Rendezvous Server
span: Option<Span>
The span for tracing purposes, None
value is converted to tracing::trace_span!("ipfs")
.
All futures returned by Ipfs
, background task actions and swarm actions are instrumented
with this span or spans referring to this as their parent. Setting this other than None
default is useful when running multiple nodes.
Implementations§
source§impl IpfsOptions
impl IpfsOptions
sourcepub fn inmemory_with_generated_keys() -> Self
pub fn inmemory_with_generated_keys() -> Self
Creates an in-memory store backed configuration useful for any testing purposes.
Also used from examples.
Trait Implementations§
source§impl Clone for IpfsOptions
impl Clone for IpfsOptions
source§fn clone(&self) -> IpfsOptions
fn clone(&self) -> IpfsOptions
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more