Expand description
The Endpoint
allows establishing connections to other iroh-net nodes.
The Endpoint
is the main API interface to manage a local iroh-net node. It allows
connecting to and accepting connections from other nodes. See the module docs for
more details on how iroh-net connections work.
The main items in this module are:
Structs§
- Future produced by
Endpoint::accept
. - Future produced by
Connection::accept_bi
- Future produced by
Connection::accept_uni
- Parameters for controlling the peer’s acknowledgement frequency
- Network paths to contact an iroh-net node.
- Reason given by an application for closing the connection
- Builder for
Endpoint
. - A cheaply cloneable and sliceable chunk of contiguous memory.
- A chunk of data from the receive stream
- Error indicating that a stream has not been opened or has already been finished or reset
- In-progress connection attempt future
- A QUIC connection.
- Reason given by the transport for closing the connection
- Connection statistics
- Stream returning
ConnectionTypes
- Generic crypto errors
- A direct address on which an iroh-node might be contactable.
- Information about a direct address.
- Stream returning local endpoints as they change.
- Controls an iroh-net node, establishing connections with other nodes.
- Error returned by Session::export_keying_material.
- Number of frames transmitted of each frame type
- An incoming connection for which the server has not yet begun its parts of the handshake.
- Parameters governing MTU discovery.
- Network-level addressing information for an iroh-net node.
- Future produced by
Connection::open_bi
- Future produced by
Connection::open_uni
- Statistics related to a transmission path
- Future produced by
Connection::read_datagram
- A stream that can only be used to receive data
- Details about a remote iroh-net node which is known to this node.
- Error for attempting to retry an
Incoming
which already bears an address validation token from a previous retry - A stream that can only be used to send data
- Parameters governing incoming connections
- Identifier for a stream within a particular connection
- Parameters governing the core QUIC state machine
- Transport-level errors occur when a peer violates the protocol specification
- Transport-level error code
- Statistics about UDP datagrams transmitted or received on a connection
- Error indicating that the specified QUIC version is not supported
- An integer less than 2^62
- A handle to some connection internals, use with care.
- Indicates how many bytes and chunks had been transferred in a write operation
- Future that completes when a connection is fully established
Enums§
- Reasons why a connection might be lost
- The type of connection we have to the endpoint.
- The type of control message we have received.
- The type of direct address.
- Errors that arise from reading from a stream.
- Errors that arise from reading from a stream.
- Errors from
RecvStream::read_to_end
- Errors that arise while waiting for a stream to be reset
- Errors that can arise when sending a datagram
- The origin or source through which an address associated with a remote node was discovered.
- Errors that arise while monitoring for a send stream stop from the peer
- Errors that arise from writing to a stream
Traits§
- A key for sealing data with AEAD-based algorithms
- Common interface for different congestion controllers
- Constructs controllers on demand
- Server-side configuration for the crypto protocol
- A pseudo random key for HKDF
Functions§
- Returns the default relay mode.
- Extract the
PublicKey
from the peer’s TLS certificate. - Creates a
ServerConfig
with the given secret key and limits.