Struct NlmsghdrErr

Source
pub struct NlmsghdrErr<T, P> {
    pub nl_len: u32,
    pub nl_type: T,
    pub nl_flags: NlmFFlags,
    pub nl_seq: u32,
    pub nl_pid: u32,
    pub nl_payload: P,
}
Expand description

A special struct that represents the contents of an error returned at the application level. Because the returned nl_len cannot always determine the length of the packet (as in the case of ACKs where no payload will be returned), this data structure relies on the total packet size for deserialization.

Fields§

§nl_len: u32

Length of the netlink message

§nl_type: T

Type of the netlink message

§nl_flags: NlmFFlags

Flags indicating properties of the request or response

§nl_seq: u32

Sequence number for netlink protocol

§nl_pid: u32

ID of the netlink destination for requests and source for responses.

§nl_payload: P

Payload of netlink message

Trait Implementations§

Source§

impl<T: Debug, P: Debug> Debug for NlmsghdrErr<T, P>

Source§

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

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

impl<'lifetime, T: TypeSize + FromBytes<'lifetime>, P: FromBytesWithInput<'lifetime, Input = usize>> FromBytesWithInput<'lifetime> for NlmsghdrErr<T, P>

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<T: TypeSize, P> Header for NlmsghdrErr<T, P>

Source§

fn header_size() -> usize

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

impl<T: PartialEq, P: PartialEq> PartialEq for NlmsghdrErr<T, P>

Source§

fn eq(&self, other: &NlmsghdrErr<T, P>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<T: Size, P: Size> Size for NlmsghdrErr<T, P>

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<T: ToBytes, P: ToBytes> ToBytes for NlmsghdrErr<T, P>

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.
Source§

impl<T: Eq, P: Eq> Eq for NlmsghdrErr<T, P>

Source§

impl<T, P> StructuralPartialEq for NlmsghdrErr<T, P>

Auto Trait Implementations§

§

impl<T, P> Freeze for NlmsghdrErr<T, P>
where T: Freeze, P: Freeze,

§

impl<T, P> RefUnwindSafe for NlmsghdrErr<T, P>

§

impl<T, P> Send for NlmsghdrErr<T, P>
where T: Send, P: Send,

§

impl<T, P> Sync for NlmsghdrErr<T, P>
where T: Sync, P: Sync,

§

impl<T, P> Unpin for NlmsghdrErr<T, P>
where T: Unpin, P: Unpin,

§

impl<T, P> UnwindSafe for NlmsghdrErr<T, P>
where T: UnwindSafe, P: UnwindSafe,

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.