Enum dominion::ParseError
source · [−]pub enum ParseError {
HeaderLength(usize),
HeaderFlag(&'static str, u16),
InvalidJump,
ExcesiveJumps(u8),
LabelLength(usize),
LabelPrefix(u8),
NameLength(usize),
OobRead(usize),
NonUtf8(Utf8Error),
}
Expand description
An error was encountered when trying to parse a byte buffer into a DNS packet
Variants
HeaderLength(usize)
The length of the header is too small.
HeaderFlag(&'static str, u16)
Some header flag used a value that has not been implemented.
InvalidJump
There was a jump to a position forward in the packet (it does not follow the specification) or to itself (it is not sound as it would result in a DoS).
ExcesiveJumps(u8)
Some domain name has been compressed with too many jumps. This error may be removed in the future.
LabelLength(usize)
Some label in the DNS packet it too long, overflowing the packet or not following the DNS specification.
LabelPrefix(u8)
The DNS packet contains a label prefix that is not a length prefix or a pointer. Those values dont have a standard definition so are not implemented.
NameLength(usize)
One of the labels in the packet has a length that is bigger than the DNS specification.
OobRead(usize)
The packet tried to cause an out-of-bound read.
NonUtf8(Utf8Error)
Some label in one of the domain names is not valid UTF-8.
Trait Implementations
sourceimpl Debug for ParseError
impl Debug for ParseError
sourceimpl Display for ParseError
impl Display for ParseError
sourceimpl Error for ParseError
impl Error for ParseError
sourcefn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
1.0.0 · sourcefn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
sourceimpl From<Utf8Error> for ParseError
impl From<Utf8Error> for ParseError
sourcefn from(source: Utf8Error) -> ParseError
fn from(source: Utf8Error) -> ParseError
Converts to this type from the input type.
Auto Trait Implementations
impl RefUnwindSafe for ParseError
impl Send for ParseError
impl Sync for ParseError
impl Unpin for ParseError
impl UnwindSafe for ParseError
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more