Expand description
Session
object providing the session functionality over the HOPR transport
The session proxies the user interactions with the transport to hide the advanced interactions and functionality.
The SessionManager
allows for automatic management of sessions via the Start protocol.
This crate implements RFC-0007.
Modules§
Structs§
- Incoming
Session - Wrapper for incoming Session along with other information extracted from the Start protocol during the session establishment.
- Session
- Session
Client Config - Configuration for the session.
- Session
Id - Unique ID of a specific Session in a certain direction.
- Session
Manager - Manages lifecycles of Sessions.
- Session
Manager Config - Configuration for the
SessionManager
. - Surb
Balancer Config - Configuration for the [
SurbBalancer
]. - Validated
Path - Represents [
NonEmptyPath
] that has been resolved and validated.
Enums§
- Capability
- Individual capabilities of a Session.
- Destination
Routing - Routing information containing forward or return routing options.
- Dispatch
Result - Indicates the result of processing a message.
- IpOr
Host - Implements a host name with port.
This could be either a DNS name with port
or an IP address with port represented by
std::net::SocketAddr
. - IpProtocol
- Lists some of the IP protocols.
- Resolved
Transport Routing - Contains the resolved routing information for the packet.
- Routing
Options - Represents routing options in a mixnet with a maximum number of hops.
- Sealed
Host - Contains optionally encrypted
IpOrHost
. - Session
Target - Defines what should happen with the data at the recipient where the
data from the established session are supposed to be forwarded to some
target
. - Surb
Matcher - Allows finding saved SURBs based on different criteria.
Constants§
- MIN_
BALANCER_ SAMPLING_ INTERVAL - Smallest possible interval for balancer sampling.
- SESSION_
PAYLOAD_ SIZE - Number of bytes that can be sent in a single Session protocol payload.
Functions§
- transfer_
session - Convenience function to copy data in both directions between a Session and arbitrary async IO stream. This function is only available with Tokio and will panic with other runtimes.
Type Aliases§
- Capabilities
- Set of Session capabilities.
- Service
Id - Describes a node service target.
These are specialized
SessionTargets
that are local to the Exit node and have different purposes, such as Cover Traffic.