Struct Rtmsg

Source
pub struct Rtmsg {
    pub rtm_family: RtAddrFamily,
    pub rtm_dst_len: c_uchar,
    pub rtm_src_len: c_uchar,
    pub rtm_tos: c_uchar,
    pub rtm_table: RtTable,
    pub rtm_protocol: Rtprot,
    pub rtm_scope: RtScope,
    pub rtm_type: Rtn,
    pub rtm_flags: RtmFFlags,
    pub rtattrs: RtBuffer<Rta, Buffer>,
}
Expand description

Route message

Fields§

§rtm_family: RtAddrFamily

Address family of route

§rtm_dst_len: c_uchar

Length of destination

§rtm_src_len: c_uchar

Length of source

§rtm_tos: c_uchar

TOS filter

§rtm_table: RtTable

Routing table ID

§rtm_protocol: Rtprot

Routing protocol

§rtm_scope: RtScope

Routing scope

§rtm_type: Rtn

Routing type

§rtm_flags: RtmFFlags

Routing flags

§rtattrs: RtBuffer<Rta, Buffer>

Payload of Rtattrs

Trait Implementations§

Source§

impl Debug for Rtmsg

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'lifetime> FromBytesWithInput<'lifetime> for Rtmsg

Source§

type Input = usize

The type of the additional input.
Source§

fn from_bytes_with_input( buffer: &mut Cursor<&'lifetime [u8]>, input: Self::Input, ) -> Result<Self, DeError>

Takes a byte buffer and an additional input and returns the deserialized data structure.
Source§

impl Header for Rtmsg

Source§

fn header_size() -> usize

Return the size in bytes of the data structure header.
Source§

impl Size for Rtmsg

Source§

fn unpadded_size(&self) -> usize

Size of the unpadded data structure. This will usually only be unaligned for variable length types like strings or byte buffers.
Source§

fn padded_size(&self) -> usize

Get the size of of the payload and align it to the required netlink byte alignment.
Source§

impl ToBytes for Rtmsg

Source§

fn to_bytes(&self, buffer: &mut Cursor<Vec<u8>>) -> Result<(), SerError>

Takes a byte buffer and serializes the data structure into it.
Source§

fn pad(&self, buffer: &mut Cursor<Vec<u8>>) -> Result<(), SerError>

Pad a netlink message to the appropriate alignment.

Auto Trait Implementations§

§

impl Freeze for Rtmsg

§

impl RefUnwindSafe for Rtmsg

§

impl Send for Rtmsg

§

impl Sync for Rtmsg

§

impl Unpin for Rtmsg

§

impl UnwindSafe for Rtmsg

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.