Struct r_extcap::interface::Dlt

source ·
pub struct Dlt {
    pub data_link_type: DataLink,
    pub name: Cow<'static, str>,
    pub display: Cow<'static, str>,
}
Expand description

Struct defining the DLT to be used for this extcap. Typically the DLT is defined together with the Interface and used in the ExtcapApplication. But you can also use this class standalone and print out the resulting config using the print_sentence method.

Fields§

§data_link_type: DataLink

The data link type this packet should be analyzed as.

See: http://www.tcpdump.org/linktypes.html for the list of DLTs.

§name: Cow<'static, str>

The name of this DLT. Typically this is the same as the name in http://www.tcpdump.org/linktypes.html without the LINKTYPE_ prefix.

§display: Cow<'static, str>

A user-friendly string describing this DLT.

Implementations§

source§

impl Dlt

source

pub fn builder() -> DltBuilder<((), (), ())>

Create a builder for building Dlt. On the builder, call .data_link_type(...), .name(...), .display(...) to set the values of the fields. Finally, call .build() to create the instance of Dlt.

Trait Implementations§

source§

impl Clone for Dlt

source§

fn clone(&self) -> Dlt

Returns a copy 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 Dlt

source§

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

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

impl PrintSentence for Dlt

Print the configuration line suitable for use with --extcap-dlts.

Example
use r_extcap::config::ExtcapFormatter;
use r_extcap::interface::{DataLink, Dlt};

let dlt = Dlt {
    data_link_type: DataLink::ETHERNET,
    name: "ETHERNET".into(),
    display: "IEEE 802.3 Ethernet".into(),
};
assert_eq!(
    ExtcapFormatter(&dlt).to_string(),
    "dlt {number=1}{name=ETHERNET}{display=IEEE 802.3 Ethernet}\n",
);
source§

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

The extcap interface expects certain output “sentences” to stdout to communicate with Wireshark, like Read more
source§

fn print_sentence(&self)

Prints the extcap sentence to stdout.

Auto Trait Implementations§

§

impl RefUnwindSafe for Dlt

§

impl Send for Dlt

§

impl Sync for Dlt

§

impl Unpin for Dlt

§

impl UnwindSafe for Dlt

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · 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 Twhere T: Clone,

§

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 Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.