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.