#[non_exhaustive]pub enum Error {
Show 14 variants
MessageParse(String),
MessageWrite(String),
MethodNotValidInState {
method: Method,
state: SessionState,
},
MissingCSeq,
TransportParse(String),
HeaderSerialize(String),
SessionParse(String),
InterleavedFrame(String),
Auth(Error),
MissingAuthChallenge,
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.
MissingCSeq
A response arrived with no parseable CSeq header.
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(Error)
Authentication failed: no credentials were configured, the challenge could not be parsed, or the digest computation failed (RFC 2326 §14).
MissingAuthChallenge
The server answered 401 Unauthorized without a WWW-Authenticate
challenge, so there is nothing to answer (RFC 2326 §14).
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://).
SessionNotFound
The server answered 454 Session Not Found (RFC 2326 §11.3.5) 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§
impl Eq for Error
Source§impl Error for Error
impl Error for Error
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()