Struct netlink_packet_route::rtnl::LinkHeader
source · pub struct LinkHeader {
pub interface_family: u8,
pub index: u32,
pub link_layer_type: u16,
pub flags: u32,
pub change_mask: u32,
}
Expand description
High level representation of RTM_GETLINK
, RTM_SETLINK
, RTM_NEWLINK
and RTM_DELLINK
messages headers.
These headers have the following structure:
0 8 16 24 32
+----------------+----------------+----------------+----------------+
|interface family| reserved | link layer type |
+----------------+----------------+----------------+----------------+
| link index |
+----------------+----------------+----------------+----------------+
| flags |
+----------------+----------------+----------------+----------------+
| change mask |
+----------------+----------------+----------------+----------------+
LinkHeader
exposes all these fields except for the “reserved” one.
Fields§
§interface_family: u8
Address family: one of the AF_*
constants.
index: u32
Link index.
link_layer_type: u16
Link type. It should be set to one of the ARPHRD_*
constants. The most common value is ARPHRD_ETHER
for
Ethernet.
flags: u32
State of the link, described by a combinations of IFF_*
constants, for instance IFF_UP | IFF_LOWER_UP
.
change_mask: u32
Change mask for the flags
field. Reserved, it should be set
to 0xffff_ffff
.
Trait Implementations§
source§impl Clone for LinkHeader
impl Clone for LinkHeader
source§fn clone(&self) -> LinkHeader
fn clone(&self) -> LinkHeader
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for LinkHeader
impl Debug for LinkHeader
source§impl Default for LinkHeader
impl Default for LinkHeader
source§fn default() -> LinkHeader
fn default() -> LinkHeader
Returns the “default value” for a type. Read more
source§impl Emitable for LinkHeader
impl Emitable for LinkHeader
source§impl<T: AsRef<[u8]>> Parseable<LinkMessageBuffer<T>> for LinkHeader
impl<T: AsRef<[u8]>> Parseable<LinkMessageBuffer<T>> for LinkHeader
source§fn parse(buf: &LinkMessageBuffer<T>) -> Result<Self, DecodeError>
fn parse(buf: &LinkMessageBuffer<T>) -> Result<Self, DecodeError>
Deserialize the current type.