pub enum ParseError {
RDataLen(Type, u16),
Malformed,
UnexpectedZeroCharacter,
PointerCycle,
BadPointerIndex(u16),
DomainTooLong(usize),
LabelTooLong(usize),
UnknownType(u16),
UnknownClass(u16),
}Expand description
Determines which error was run into during parsing.
For ones that contain lengths, this tells which length was encountered during
parsing. For example, RDataLen is a pretty general error relating to the
RData being the wrong size for the included type (both the size and type
are included. More below).
For RData errors:
– Type::A the size was not found to be an IPv4 address.
– Type::Aaaa the size was not found to be an IPv6 address.
– Type::Srv the size of RData was not large enough to fit a SRV record
header as well as a payload.
BadPointerIndex returns the last encountered pointer that attempted to
reference data beyond the bounds of the available packet buffer.
LabelTooLong refers to there being too long of a label byte when parsing.
DomainTooLong refers to overrunning the maximum size of a domain
(255 bytes) when parsing.
Variants§
RDataLen(Type, u16)
Malformed
UnexpectedZeroCharacter
PointerCycle
BadPointerIndex(u16)
DomainTooLong(usize)
LabelTooLong(usize)
UnknownType(u16)
UnknownClass(u16)
Trait Implementations§
Source§impl Debug for ParseError
impl Debug for ParseError
Source§impl PartialEq for ParseError
impl PartialEq for ParseError
Source§fn eq(&self, other: &ParseError) -> bool
fn eq(&self, other: &ParseError) -> bool
self and other values to be equal, and is used by ==.