[][src]Enum etherparse::ReadError

pub enum ReadError {
    IoError(Error),
    UnexpectedEndOfSlice(usize),
    VlanDoubleTaggingUnexpectedOuterTpid(u16),
    IpUnsupportedVersion(u8),
    Ipv4UnexpectedVersion(u8),
    Ipv4HeaderLengthBad(u8),
    Ipv4TotalLengthTooSmall(u16),
    Ipv6UnexpectedVersion(u8),
    Ipv6TooManyHeaderExtensions,
    TcpDataOffsetTooSmall(u8),
}

Errors that can occur when reading.

Variants

IoError(Error)
UnexpectedEndOfSlice(usize)

Error when an unexpected end of a slice was reached even though more data was expected to be present (expected minimum size as argument).

VlanDoubleTaggingUnexpectedOuterTpid(u16)

Error when a double vlan tag was expected but the tpid of the outer vlan does not contain the expected id of 0x8100.

IpUnsupportedVersion(u8)

Error when the ip header version is not supported (only 4 & 6 are supported). The value is the version that was received.

Ipv4UnexpectedVersion(u8)

Error when the ip header version field is not equal 4. The value is the version that was received.

Ipv4HeaderLengthBad(u8)

Error when the ipv4 header length is smaller then the header itself (5).

Ipv4TotalLengthTooSmall(u16)

Error when the total length field is too small to contain the header itself.

Ipv6UnexpectedVersion(u8)

Error when then ip header version field is not equal 6. The value is the version that was received.

Ipv6TooManyHeaderExtensions

Error when more then 7 header extensions are present (according to RFC82000 this should never happen).

TcpDataOffsetTooSmall(u8)

Error given if the data_offset field in a TCP header is smaller then the minimum size of the tcp header itself.

Methods

impl ReadError[src]

pub fn add_slice_offset(self, offset: usize) -> ReadError[src]

Adds an offset value to the UnexpectedEndOfSlice error.

Trait Implementations

impl From<Error> for ReadError[src]

impl Debug for ReadError[src]

Auto Trait Implementations

Blanket Implementations

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

impl<T> From<T> for T[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<T> Borrow<T> for T where
    T: ?Sized
[src]

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

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