Enum rdest::Error[][src]

pub enum Error {
Show variants MsgToLarge, UnknownId(u8), Incomplete(&'static str), InvalidProtocolId, InvalidInfoHash, InvalidPeerId, InvalidLength(&'static str), InvalidPieceIndex(&'static str), FileNotFound, FileCannotWrite, PeerNotFound, PieceNotRequested, PieceNotLoaded, PieceBuffMissing, PieceHashMismatch, KeepAliveTimeout, InfoMissing, SocketNotAvailable, CantReadFromSocket, ConnectionReset, ConnectionClosed, DecodeUnexpectedChar(&'static strusize), DecodeIncorrectChar(&'static strusize), DecodeUnableConvert(&'static str, &'static strusize), DecodeNotEnoughChars(&'static strusize), DecodeMissingTerminalChars(&'static strusize), DecodeLeadingZero(&'static strusize), DecodeOddNumOfElements(&'static strusize), DecodeKeyNotString(&'static strusize), TrackerBEncodeMissing, TrackerDataMissing, TrackerIncorrectOrMissing(&'static str), TrackerRespFail(String), MetaFileNotFound, MetaBEncodeMissing, MetaDataMissing, MetaLenAndFilesConflict, MetaLenOrFilesMissing, MetaInvalidUtf8(&'static str), MetaIncorrectOrMissing(&'static str), MetaInvalidU64(&'static str), MetaNotDivisible(&'static str),
}

rdest lib errors

Variants

MsgToLarge

To avoid DDoS and exhaustion of RAM by peer, maximal size of message is limited to MAX_FRAME_SIZE bytes.

UnknownId(u8)

Not supported ID message (probably from not supported standard extension).

Incomplete(&'static str)

Incomplete message (details as argument e.g: message name).

InvalidProtocolId

Invalid protocol ID in Handshake message. Check BEP3.

InvalidInfoHash

Peer return invalid info hash in Handshake message.

InvalidPeerId

Peer introduced himself with unexpected ID

InvalidLength(&'static str)

Invalid length of Piece or Request message (different than requested peer).

InvalidPieceIndex(&'static str)

Invalid piece index (different than requested by peer).

FileNotFound

Can’t load piece file.

FileCannotWrite

Can’t write to file.

PeerNotFound

Peer not found in manager.

PieceNotRequested

Piece not requested by client.

PieceNotLoaded

Piece not loaded by handler.

PieceBuffMissing

Missing piece buffer on requested message.

PieceHashMismatch

Piece hash mismatch.

KeepAliveTimeout

Peer doesn’t send any message, keep-alive trigger.

InfoMissing

Missing info field to calculate hash.

SocketNotAvailable

Socket not available.

CantReadFromSocket

Can’t read from socket.

ConnectionReset

Connection reset.

ConnectionClosed

Connection closed.

DecodeUnexpectedChar(&'static strusize)

Decoder encountered unexpected char.

DecodeIncorrectChar(&'static strusize)

Decoder encountered incorrect char.

DecodeUnableConvert(&'static str, &'static strusize)

Decoder was unable to convert to BValue.

DecodeNotEnoughChars(&'static strusize)

Not enough chars to decode.

DecodeMissingTerminalChars(&'static strusize)

Decoder encountered missing terminal character “e”.

DecodeLeadingZero(&'static strusize)

Incorrect integer with leading zero.

DecodeOddNumOfElements(&'static strusize)

Odd number of elements in dictionary.

DecodeKeyNotString(&'static strusize)

Key not string in dictionary

TrackerBEncodeMissing

Missing bencoded data to decode tracker response.

TrackerDataMissing

Not enough data in tracker response.

TrackerIncorrectOrMissing(&'static str)

Incorrect or missing fields in tracker response.

TrackerRespFail(String)

Tracker replay with error.

MetaFileNotFound

Missing metainfo file.

MetaBEncodeMissing

Missing bencoded data in metainfo.

MetaDataMissing

Missing data in metainfo.

MetaLenAndFilesConflict

Mutually exclusive length and files in metafile.

MetaLenOrFilesMissing

Missing length or files in metafile.

MetaInvalidUtf8(&'static str)

Can’t convert metainfo fields to UTF-8.

MetaIncorrectOrMissing(&'static str)

Missing field in metainfo.

MetaInvalidU64(&'static str)

Can’t convert metainfo field to u64

MetaNotDivisible(&'static str)

Not enough data to extract SHA-1 hashes.

Trait Implementations

impl Clone for Error[src]

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error[src]

impl PartialEq<Error> for Error[src]

impl StructuralPartialEq for Error[src]

Auto Trait Implementations

impl RefUnwindSafe for Error

impl Send for Error

impl Sync for Error

impl Unpin for Error

impl UnwindSafe for Error

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> Instrument for T[src]

impl<T> Instrument 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.