Enum trust_dns_proto::error::ProtoErrorKind[][src]

pub enum ProtoErrorKind {
    Busy,
    Canceled(Canceled),
    CharacterDataTooLong {
        max: usize,
        len: usize,
    },
    LabelOverlapsWithOther {
        label: usize,
        other: usize,
    },
    DnsKeyProtocolNot3(u8),
    DomainNameTooLong(usize),
    EdnsNameNotRoot(Name),
    IncorrectRDataLengthRead {
        read: usize,
        len: usize,
    },
    LabelBytesTooLong(usize),
    PointerNotPriorToLabel {
        idx: usize,
        ptr: u16,
    },
    MaxBufferSizeExceeded(usize),
    Message(&'static str),
    Msg(String),
    NoError,
    NotAllRecordsWritten {
        count: usize,
    },
    RrsigsNotPresent {
        name: Name,
        record_type: RecordType,
    },
    UnknownAlgorithmTypeValue(u8),
    UnknownDnsClassStr(String),
    UnknownDnsClassValue(u16),
    UnknownRecordTypeStr(String),
    UnknownRecordTypeValue(u16),
    UnrecognizedLabelCode(u8),
    UnrecognizedNsec3Flags(u8),
    Io(Error),
    Poisoned,
    Ring(Unspecified),
    SSL(SslErrorStack),
    Timer,
    Timeout,
    UrlParsing(ParseError),
    Utf8(Utf8Error),
    FromUtf8(FromUtf8Error),
    ParseInt(ParseIntError),
}

The error kind for errors that get returned in the crate

Variants

Busy

The underlying resource is too busy

This is a signal that an internal resource is too busy. The intended action should be tried again, ideally after waiting for a little while for the situation to improve. Alternatively, the action could be tried on another resource (for example, in a name server pool).

Canceled(Canceled)

An error caused by a canceled future

CharacterDataTooLong

Character data length exceeded the limit

Fields of CharacterDataTooLong

max: usize

Specified maximum

len: usize

Actual length

LabelOverlapsWithOther

Overlapping labels

Fields of LabelOverlapsWithOther

label: usize

Start of the label that is overlaps

other: usize

Start of the other label

DnsKeyProtocolNot3(u8)

DNS protocol version doesn’t have the expected version 3

DomainNameTooLong(usize)

A domain name was too long

EdnsNameNotRoot(Name)

EDNS resource record label is not the root label, although required

IncorrectRDataLengthRead

The length of rdata read was not as expected

Fields of IncorrectRDataLengthRead

read: usize

The amount of read data

len: usize

The expected length of the data

LabelBytesTooLong(usize)

Label bytes exceeded the limit of 63

PointerNotPriorToLabel

Label bytes exceeded the limit of 63

Fields of PointerNotPriorToLabel

idx: usize

index of the label containing this pointer

ptr: u16

location to which the pointer is directing

MaxBufferSizeExceeded(usize)

The maximum buffer size was exceeded

Message(&'static str)

An error with an arbitrary message, referenced as &’static str

Msg(String)

An error with an arbitrary message, stored as String

NoError

No error was specified

NotAllRecordsWritten

Not all records were able to be written

Fields of NotAllRecordsWritten

count: usize

Number of records that were written before the error

RrsigsNotPresent

Missing rrsigs

Fields of RrsigsNotPresent

name: Name

The record set name

record_type: RecordType

The record type

UnknownAlgorithmTypeValue(u8)

An unknown algorithm type was found

UnknownDnsClassStr(String)

An unknown dns class was found

UnknownDnsClassValue(u16)

An unknown dns class value was found

UnknownRecordTypeStr(String)

An unknown record type string was found

UnknownRecordTypeValue(u16)

An unknown record type value was found

UnrecognizedLabelCode(u8)

An unrecognized label code was found

UnrecognizedNsec3Flags(u8)

Unrecognized nsec3 flags were found

Io(Error)

An error got returned from IO

Poisoned

Any sync poised error

A ring error

An ssl error

Timer

A tokio timer error

Timeout

A request timed out

UrlParsing(ParseError)

An url parsing error

Utf8(Utf8Error)

A utf8 parsing error

FromUtf8(FromUtf8Error)

A utf8 parsing error

ParseInt(ParseIntError)

An int parsing error

Trait Implementations

impl Clone for ProtoErrorKind[src]

impl Debug for ProtoErrorKind[src]

impl Display for ProtoErrorKind[src]

impl Error for ProtoErrorKind[src]

impl From<Error> for ProtoErrorKind[src]

impl From<FromUtf8Error> for ProtoErrorKind[src]

impl From<ParseError> for ProtoErrorKind[src]

impl From<ParseIntError> for ProtoErrorKind[src]

impl From<ProtoErrorKind> for ProtoError[src]

impl From<SslErrorStack> for ProtoErrorKind[src]

impl From<Unspecified> for ProtoErrorKind[src]

impl From<Utf8Error> for ProtoErrorKind[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,