Enum smoltcp::wire::IpRepr

source ·
pub enum IpRepr {
    Unspecified {
        src_addr: Address,
        dst_addr: Address,
        protocol: Protocol,
        payload_len: usize,
        hop_limit: u8,
    },
    Ipv4(Ipv4Repr),
    Ipv6(Ipv6Repr),
    // some variants omitted
}
Expand description

An IP packet representation.

This enum abstracts the various versions of IP packets. It either contains a concrete high-level representation for some IP protocol version, or an unspecified representation, which permits the IpAddress::Unspecified addresses.

Variants§

§

Unspecified

Fields

§src_addr: Address
§dst_addr: Address
§protocol: Protocol
§payload_len: usize
§hop_limit: u8
§

Ipv4(Ipv4Repr)

§

Ipv6(Ipv6Repr)

Implementations§

Return the protocol version.

Return the source address.

Return the destination address.

Return the protocol.

Return the payload length.

Set the payload length.

Return the TTL value.

Convert an unspecified representation into a concrete one, or return Err(Error::Unaddressable) if not possible.

Panics

This function panics if source and destination addresses belong to different families, or the destination address is unspecified, since this indicates a logic error.

Return the length of a header that will be emitted from this high-level representation.

Panics

This function panics if invoked on an unspecified representation.

Emit this high-level representation into a buffer.

Panics

This function panics if invoked on an unspecified representation.

Return the total length of a packet that will be emitted from this high-level representation.

This is the same as repr.buffer_len() + repr.payload_len().

Panics

This function panics if invoked on an unspecified representation.

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Converts to this type from the input type.
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.