pub struct DirMgrConfig {
    pub cache_path: PathBuf,
    pub cache_trust: Mistrust,
    pub network: NetworkConfig,
    pub schedule: DownloadScheduleConfig,
    pub tolerance: DirSkewTolerance,
    pub override_net_params: NetParams<i32>,
    pub extensions: DirMgrExtensions,
}
Expand description

Configuration type for network directory operations.

If the directory manager gains new configurabilities, this structure will gain additional supertraits, as an API break.

Prefer to use TorClientConfig, which will always be convertible to this struct via TryInto.

Fields

cache_path: PathBuf

Location to use for storing and reading current-format directory information.

Cannot be changed on a running Arti client.

cache_trust: Mistrust

Rules for whether to trust the the permissions on the cache_path.

network: NetworkConfig

Configuration information about the network.

schedule: DownloadScheduleConfig

Configuration information about when we download things.

This can be replaced on a running Arti client. Doing so affects future download attempts, but has no effect on attempts that are currently in progress or being retried.

(The above is a limitation: we would like it to someday have an effect on in-progress attempts as well, at least at the top level. Users should not assume that the effect of changing this option will always be delayed.)

tolerance: DirSkewTolerance

How much skew do we tolerate in directory validity times?

override_net_params: NetParams<i32>

A map of network parameters that we’re overriding from their settings in the consensus.

This can be replaced on a running Arti client. Doing so will take effect the next time a consensus is downloaded.

(The above is a limitation: we would like it to someday take effect immediately. Users should not assume that the effect of changing this option will always be delayed.)

extensions: DirMgrExtensions

Extra fields for extension purposes.

These are kept in a separate type so that the type can be marked as non_exhaustive and used for optional features.

Implementations

Return a slice of the configured authorities

Return the configured set of fallback directories

Construct a new configuration object where all replaceable fields in self are replaced with those from new_config.

Any fields which aren’t allowed to change at runtime are copied from self.

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

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

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

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

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

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait. Read more

Returns the argument unchanged.

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

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.

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