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§
- EstIntro
Extension 🔒Set - A set of extensions to send with our
ESTABLISH_INTRO
message. - Establisher
State 🔒 - State shared between the IptEstablisher and the Reactor.
- Good
IptDetails 🔒 - Details of a good introduction point
- Intro
PtSession 🔒 - An open session with a single introduction point.
- IptEstablisher 🔒
- Handle onto the task which is establishing and maintaining one IPT
- IptMsg
Handler 🔒 - MsgHandler type to implement a conversation with an introduction point.
- IptParameters 🔒
- Parameters for an introduction point
- IptStatus 🔒
- The current status of an introduction point.
- IptWants
ToRetire 🔒 Err(IptWantsToRetire)
indicates that the IPT Establisher wants to retire this IPT- Reactor 🔒
- Implementation structure for the task that implements an IptEstablisher.
- Stream
WasFull 🔒 - 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.
- IptEstablisher
Error 🔒 - An error from trying to work with an IptEstablisher.
- IptMsg 🔒
- An acceptable message to receive from an introduction point.
- IptStatus
Status 🔒 - The current status of an introduction point, as defined in
hssvc-ipt-algorithms.md
. - Request
Disposition 🔒 - 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.