#[repr(u64)]pub enum SessionErrorCode {
Show 19 variants
NoError = 0,
InternalError = 1,
Unauthorized = 2,
ProtocolViolation = 3,
InvalidRequestId = 4,
DuplicateTrackAlias = 5,
KeyValueFormattingError = 6,
TooManyRequests = 7,
InvalidPath = 8,
MalformedPath = 9,
GoawayTimeout = 16,
ControlMessageTimeout = 17,
DataStreamTimeout = 18,
AuthTokenCacheOverflow = 19,
DuplicateAuthTokenAlias = 20,
VersionNegotiationFailed = 21,
MalformedAuthToken = 22,
UnknownAuthTokenAlias = 23,
ExpiredAuthToken = 24,
}Expand description
Session termination error codes (draft-12 section 3.4, Termination).
Sent when closing the session: “When terminating the Session, the application MAY use any error message and SHOULD use a relevant code, as defined below”.
The table jumps from 0x9 to 0x10; 0xA through 0xF are unassigned.
Variants§
NoError = 0
No Error — The session is being terminated without an error.
InternalError = 1
Internal Error — An implementation specific error occurred.
Unauthorized — The client is not authorized to establish a session.
ProtocolViolation = 3
Protocol Violation — The remote endpoint performed an action that was disallowed
by the specification.
InvalidRequestId = 4
Invalid Request ID — The session was closed because the endpoint used a Request ID
that was smaller than or equal to a previously received request ID, or the
least-significant bit of the request ID was incorrect for the endpoint.
DuplicateTrackAlias = 5
Duplicate Track Alias — The endpoint attempted to use a Track Alias that was
already in use.
KeyValueFormattingError = 6
Key-Value Formatting Error — The key-value pair has a formatting error.
TooManyRequests = 7
Too Many Requests — The session was closed because the endpoint used a Request ID
equal to or larger than the current Maximum Request ID.
InvalidPath = 8
Invalid Path — The PATH parameter was used by a server, on a WebTransport session,
or the server does not support the path.
MalformedPath = 9
Malformed Path — The PATH parameter does not conform to the rules in section
8.3.2.1.
GoawayTimeout = 16
GOAWAY Timeout — The session was closed because the peer took too long to close
the session in response to a GOAWAY (section 8.4) message. See session migration
(section 3.5).
ControlMessageTimeout = 17
Control Message Timeout — The session was closed because the peer took too long to
respond to a control message.
DataStreamTimeout = 18
Data Stream Timeout — The session was closed because the peer took too long to
send data expected on an open Data Stream (see section 9). This includes fields of a
stream header or an object header within a data stream. If an endpoint times out
waiting for a new object header on an open subgroup stream, it MAY send a
STOP_SENDING on that stream or terminate the subscription.
AuthTokenCacheOverflow = 19
Auth Token Cache Overflow — The Session limit (section 8.3.2.3) of the size of all
registered Authorization tokens has been exceeded.
DuplicateAuthTokenAlias = 20
Duplicate Auth Token Alias — Authorization Token attempted to register an Alias
that was in use (see section 8.2.1.1).
VersionNegotiationFailed = 21
Version Negotiation Failed — The client didn’t offer a version supported by the
server.
MalformedAuthToken = 22
Malformed Auth Token — Invalid Auth Token serialization during registration (see
section 8.2.1.1).
UnknownAuthTokenAlias = 23
Unknown Auth Token Alias — No registered token found for the provided Alias (see
section 8.2.1.1).
ExpiredAuthToken = 24
Expired Auth Token — Authorization token has expired (see section 8.2.1.1).
Implementations§
Source§impl SessionErrorCode
impl SessionErrorCode
Sourcepub const ALL: &[SessionErrorCode]
pub const ALL: &[SessionErrorCode]
Every session termination code draft-12 assigns, in ascending wire order.
This is the set Self::from_u64 accepts, written out so that it can
be enumerated: nothing can iterate an enum’s variants, so a caller that
wants the registry has to be handed it. Writing it down is also what
lets a test state its claims about the registry itself rather than about
the range some sweep happens to reach.
Trait Implementations§
Source§impl Clone for SessionErrorCode
impl Clone for SessionErrorCode
Source§fn clone(&self) -> SessionErrorCode
fn clone(&self) -> SessionErrorCode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more