Expand description
IPT Manager
Maintains introduction points and publishes descriptors. Provides a stream of rendezvous requests.
See IptManager::run_once
for discussion of the implementation approach.
Re-exports§
pub use crate::ipt_establish::IptError;
Modules§
- persist 🔒
- Persistent state for the IPT manager
Structs§
- Immutable 🔒
- Immutable contents of an IPT Manager
- Ipt 🔒
- One introduction point, representation in memory
- IptExpect
Existing 🔒Keys - Token telling
Ipt::start_establisher
to expect existing keys in the keystore - IptManager 🔒
- IPT Manager (for one hidden service)
- IptRelay 🔒
- One selected relay, at which we are establishing (or relavantly advertised) IPTs
- IsCurrent 🔒
- Token indicating that this introduction point is current (not Retiring)
- Promise
Last 🔒Descriptor Expiry None IsGood - Token, representing promise by caller of
start_establisher
- Real 🔒
- Mockable state in an IPT Manager - real version
- State 🔒
- State of an IPT Manager
Enums§
- Choose
IptError 🔒 - An error that happened while trying to select a relay
- Create
IptError 🔒 - An error that happened while trying to crate an IPT (at a selected relay)
- Tracked
Status 🔒 - Last information from establisher about an IPT, with timing info added by us
Constants§
- IPT_
PUBLISH_ 🔒CERTAIN - Expiry time to put on a final descriptor (IPT publication set Certain
- IPT_
PUBLISH_ 🔒UNCERTAIN - Expiry time to put on an interim descriptor (IPT publication set Uncertain)
Traits§
- Mockable 🔒
- Mockable state for the IPT Manager
Type Aliases§
- Erased
IptEstablisher 🔒 - Type-erased version of
Box<IptEstablisher>