pub enum MessageDecodeError {
ReadFailure(Error),
HeaderDecodeFailure(HeaderDecodeError),
AttributeDecodeFailure {
source: AttributeDecodeError,
transaction_id: [u8; 12],
},
IntegrityKeyGenerationFailure(IntegrityKeyGenerationError),
IncorrectFingerprintAttributePosition {
msg_len: usize,
attr_pos: usize,
},
FingerprintMismatch {
attr_value: u32,
computed_value: u32,
},
MessageIntegrityFail {
attr_value: Vec<u8>,
computed_value: Vec<u8>,
},
}
Expand description
Message encoding errors.
Variants§
ReadFailure(Error)
IO error when reading a field value
HeaderDecodeFailure(HeaderDecodeError)
Failure to decode the STUN header section
AttributeDecodeFailure
Failure to decode a STUN attribute
IntegrityKeyGenerationFailure(IntegrityKeyGenerationError)
Failure to generate an integrity verification key
IncorrectFingerprintAttributePosition
Fingerprint attribute is not the last one. This can mean that either the provided byte data contains more than only the STUN message, or message integrity has been compromised.
Fields
FingerprintMismatch
Stored and calculated fingerprints mismatch. Means that the message integrity has been compromised.
MessageIntegrityFail
The calculated HMAC value doesn’t match with the provided one.
Either the provided integrity_key
is incorrect or the message integrity has been compromised.
Trait Implementations§
Source§impl Debug for MessageDecodeError
impl Debug for MessageDecodeError
Source§impl Display for MessageDecodeError
impl Display for MessageDecodeError
Source§impl Error for MessageDecodeError
impl Error for MessageDecodeError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<Error> for MessageDecodeError
impl From<Error> for MessageDecodeError
Source§impl From<HeaderDecodeError> for MessageDecodeError
impl From<HeaderDecodeError> for MessageDecodeError
Source§fn from(source: HeaderDecodeError) -> Self
fn from(source: HeaderDecodeError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for MessageDecodeError
impl !RefUnwindSafe for MessageDecodeError
impl Send for MessageDecodeError
impl Sync for MessageDecodeError
impl Unpin for MessageDecodeError
impl !UnwindSafe for MessageDecodeError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more