Skip to main content

Module endpoint

Module endpoint 

Source
Expand description

The endpoint: one event loop driving the sans-IO core.

Everything mutable lives in this loop — the transaction layer, the timer queue, the sockets. No transaction is reachable from two tasks, so there are no locks in the signalling path and no way to observe a half-applied transition. Applications talk to the loop over channels.

Structs§

Config
How an endpoint is configured.
Handle
A handle to a running endpoint.
Incoming
A request that arrived and created a server transaction.
InviteCancellation
One created CANCEL transaction, anchored to the INVITE it names.
Responses
Events from a client transaction: responses, then a terminal event.
Unmatched
A response that matched no client transaction (RFC 3261 §16.7).

Enums§

CancelInviteOutcome
The result of asking to cancel one exact outgoing INVITE transaction.
CancelTransactionOutcome
How a created CANCEL transaction terminated.
CleartextTransports
Which cleartext signalling listeners an endpoint exposes.

Functions§

bind
Bind an endpoint and start its loop.
new_branch
A branch token: the RFC’s magic cookie plus 64 bits from a cryptographic RNG.