Struct OspfLinkStateUpdatePacket

Source
pub struct OspfLinkStateUpdatePacket {
    pub header: Ospfv2PacketHeader,
    pub num_advertisements: u32,
    pub lsa: Vec<OspfLinkStateAdvertisement>,
}
Expand description

The Link State Update packet

Link State Update packets are OSPF packet type 4. These packets implement the flooding of link state advertisements. Each Link State Update packet carries a collection of link state advertisements one hop further from its origin. Several link state advertisements may be included in a single packet.

Link State Update packets are multicast on those physical networks that support multicast/broadcast. In order to make the flooding procedure reliable, flooded advertisements are acknowledged in Link State Acknowledgment packets. If retransmission of certain advertisements is necessary, the retransmitted advertisements are always carried by unicast Link State Update packets. For more information on the reliable flooding of link state advertisements, consult Section 13.

Fields§

§header: Ospfv2PacketHeader§num_advertisements: u32§lsa: Vec<OspfLinkStateAdvertisement>

Trait Implementations§

Source§

impl Debug for OspfLinkStateUpdatePacket

Source§

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

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

impl<'nom> Parse<&'nom [u8]> for OspfLinkStateUpdatePacket

Source§

fn parse_be(orig_i: &'nom [u8]) -> IResult<&'nom [u8], Self>

Parse input as Big-Endian
Source§

fn parse_le(orig_i: &'nom [u8]) -> IResult<&'nom [u8], Self>

Parse input as Little-Endian
Source§

fn parse(orig_i: &'nom [u8]) -> IResult<&'nom [u8], Self>

Parse input, not knowing the endianness Read more

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