Struct SectionHeaderBlock

Source
pub struct SectionHeaderBlock<'a> {
    pub block_type: u32,
    pub block_len1: u32,
    pub bom: u32,
    pub major_version: u16,
    pub minor_version: u16,
    pub section_len: i64,
    pub options: Vec<PcapNGOption<'a>>,
    pub block_len2: u32,
}
Expand description

The Section Header Block (SHB) identifies the beginning of a section of the capture capture file.

The Section Header Block does not contain data but it rather identifies a list of blocks (interfaces, packets) that are logically correlated.

Fields§

§block_type: u32§block_len1: u32§bom: u32

Byte-order magic

§major_version: u16§minor_version: u16§section_len: i64§options: Vec<PcapNGOption<'a>>§block_len2: u32

Implementations§

Source§

impl SectionHeaderBlock<'_>

Source

pub fn big_endian(&self) -> bool

Source

pub fn shb_hardware(&self) -> Option<Result<&str, PcapNGOptionError>>

Return the shb_hardware option value, if present

If the option is present multiple times, the first value is returned.

Returns None if option is not present, Some(Ok(value)) if the value is present and valid, or Some(Err(_)) if value is present but invalid

Source

pub fn shb_os(&self) -> Option<Result<&str, PcapNGOptionError>>

Return the shb_os option value, if present

If the option is present multiple times, the first value is returned.

Returns None if option is not present, Some(Ok(value)) if the value is present and valid, or Some(Err(_)) if value is present but invalid

Source

pub fn shb_userappl(&self) -> Option<Result<&str, PcapNGOptionError>>

Return the shb_userappl option value, if present

If the option is present multiple times, the first value is returned.

Returns None if option is not present, Some(Ok(value)) if the value is present and valid, or Some(Err(_)) if value is present but invalid

Trait Implementations§

Source§

impl<'a> Debug for SectionHeaderBlock<'a>

Source§

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

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

impl ToVec for SectionHeaderBlock<'_>

Available on crate feature serialize only.
Source§

fn fix(&mut self)

Check and correct all fields: use magic, version and fix lengths fields

Source§

fn to_vec_raw(&self) -> Result<Vec<u8>, GenError>

Serialize to bytes representation (little-endian). Do not check values
Source§

fn to_vec(&mut self) -> Result<Vec<u8>, GenError>

Serialize to bytes representation (little-endian). Check values and fix all fields before serializing.

Auto Trait Implementations§

§

impl<'a> Freeze for SectionHeaderBlock<'a>

§

impl<'a> RefUnwindSafe for SectionHeaderBlock<'a>

§

impl<'a> Send for SectionHeaderBlock<'a>

§

impl<'a> Sync for SectionHeaderBlock<'a>

§

impl<'a> Unpin for SectionHeaderBlock<'a>

§

impl<'a> UnwindSafe for SectionHeaderBlock<'a>

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.