Module ipt_establish

Source
Expand description

IPT Establisher

Responsible for maintaining and establishing one introduction point.

TODO (#1235): move docs from hssvc-ipt-algorithm.md

See the docs for IptManager::idempotently_progress_things_now for details of our algorithm.

Structs§

EstIntroExtensionSet 🔒
A set of extensions to send with our ESTABLISH_INTRO message.
EstablisherState 🔒
State shared between the IptEstablisher and the Reactor.
GoodIptDetails 🔒
Details of a good introduction point
IntroPtSession 🔒
An open session with a single introduction point.
IptEstablisher 🔒
Handle onto the task which is establishing and maintaining one IPT
IptMsgHandler 🔒
MsgHandler type to implement a conversation with an introduction point.
IptParameters 🔒
Parameters for an introduction point
IptStatus 🔒
The current status of an introduction point.
IptWantsToRetire 🔒
Err(IptWantsToRetire) indicates that the IPT Establisher wants to retire this IPT
Reactor 🔒
Implementation structure for the task that implements an IptEstablisher.
StreamWasFull 🔒
We failed to send a rendezvous request onto the handler test that should have handled it, because it was not handling requests fast enough.

Enums§

IptError
An error caused by a faulty IPT.
IptEstablisherError 🔒
An error from trying to work with an IptEstablisher.
IptMsg 🔒
An acceptable message to receive from an introduction point.
IptStatusStatus 🔒
The current status of an introduction point, as defined in hssvc-ipt-algorithms.md.
RequestDisposition 🔒
Current state of an introduction point; determines what we want to do with any incoming messages.

Constants§

FAULTY_IPT_THRESHOLD 🔒
We declare an introduction point to be faulty if all of the attempts to reach it fail, over this much time.