ExtendedInfiniBandGrh

Struct ExtendedInfiniBandGrh 

Source
pub struct ExtendedInfiniBandGrh {
    pub flow_label: u32,
    pub tc: u32,
    pub s_gid: [u8; 16],
    pub d_gid: [u8; 16],
    pub next_header: u32,
    pub length: u32,
}
Expand description

Extended InfiniBand GRH - Format (0,1032)

InfiniBand Global Routing Header information

§XDR Definition (sFlow InfiniBand)

/* GID type  16 bytes long */
typedef opaque gid[16];

/* Extended IB GRH Data
   - Global Routing Header definition from InfiniBand Architecture
     Specification */

/* opaque = flow_data; enterprise = 0; format = 1032 */

struct extended_ib_grh {
   unsigned int flow_label; /* flow label          */
   unsigned int tc;         /* Traffic Class       */
   gid s_gid;               /* source GID          */
   gid d_gid;               /* destination GID     */
   unsigned int next_header; /* next header type    */
   unsigned int length;      /* payload length      */
}

ERRATUM: The specification is missing semicolons after next_header and length, violating RFC 4506 XDR syntax requirements. Additionally, the specification uses non-standard data type ib_grh_data instead of flow_data. The corrected version is shown above.

Fields§

§flow_label: u32

Flow label

§tc: u32

Traffic class

§s_gid: [u8; 16]

Source GID (16 bytes)

§d_gid: [u8; 16]

Destination GID (16 bytes)

§next_header: u32

Next header type

§length: u32

Payload length

Trait Implementations§

Source§

impl Clone for ExtendedInfiniBandGrh

Source§

fn clone(&self) -> ExtendedInfiniBandGrh

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ExtendedInfiniBandGrh

Source§

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

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

impl PartialEq for ExtendedInfiniBandGrh

Source§

fn eq(&self, other: &ExtendedInfiniBandGrh) -> 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 Eq for ExtendedInfiniBandGrh

Source§

impl StructuralPartialEq for ExtendedInfiniBandGrh

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.