#[non_exhaustive]pub enum Error {
Show 16 variants
MessageParse(String),
MessageWrite(String),
MethodNotValidInState {
method: Method,
state: SessionState,
},
UnknownCSeq(u32),
MissingCSeq,
MissingSession,
TransportParse(String),
HeaderSerialize(String),
SessionParse(String),
InterleavedFrame(String),
Auth(String),
MissingRequestUri,
Io(String),
Timeout {
what: &'static str,
},
Tls(String),
SessionNotFound {
method: Method,
},
}Expand description
Errors produced by the RTSP session engine.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
MessageParse(String)
The RTSP message could not be parsed by the underlying rtsp-types codec.
MessageWrite(String)
The RTSP message could not be serialized by the underlying codec.
MethodNotValidInState
A method was invoked (client) or received (server) that is not permitted
in the current session state. The server maps this to 455 Method Not Valid In This State (RFC 2326 §11.3.6, Appendix A).
Fields
state: SessionStateThe state the object was in when the method was attempted.
UnknownCSeq(u32)
A response arrived carrying a CSeq that does not match any outstanding
request.
MissingCSeq
A response arrived with no parseable CSeq header.
MissingSession
An operation required an established session id but none was negotiated (no SETUP response has been processed yet).
TransportParse(String)
The Transport header value could not be parsed per RFC 2326 §12.39.
HeaderSerialize(String)
A header value could not be serialized safely (control character in a value, or a name that is not an RFC 2326 §15.1 token / session-id character).
SessionParse(String)
The Session header value could not be parsed per RFC 2326 §12.37.
InterleavedFrame(String)
An interleaved $ frame was malformed (RFC 2326 §10.12).
Auth(String)
Authentication failed: no credentials were configured, the challenge could not be parsed, or the digest computation failed (RFC 2326 §14).
MissingRequestUri
The request required a request URI but none was set.
Io(String)
A socket IO operation failed in the async adapter (feature tokio).
Timeout
A bounded wait in the async adapter expired (feature tokio).
Tls(String)
A TLS operation failed in the async adapter (feature tls): bad server
name, handshake, or certificate configuration (rtsps://, RFC 2326 §19).
SessionNotFound
The server answered 454 Session Not Found (RFC 2326 §11.3.2) to a
request on our session — the session is gone (timed out, or torn down
server-side), so the caller must re-SETUP. Surfaced by the send-only
push drain (a GET_PARAMETER keepalive is the usual trigger) instead
of being silently discarded.
Trait Implementations§
Source§impl Error for Error
impl Error for Error
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()