[−][src]Struct pnet_packet::gre::Gre
GRE (Generic Routing Encapsulation) Packet.
See RFCs 1701, 2784, 2890, 7676, 2637
Current status of implementation:
-
RFC 1701 except for source routing and checksums. Processing a source routed packet will panic. Checksums are able to be inspected, but not calculated or verified.
-
RFC 2784 except for checksums (same as 1701 status). Note that it is possible to generate noncompliant packets by setting any of the reserved bits (but see 2890).
-
RFC 2890 implemented
-
RFC 7676 has no packet changes - compliance is up to the user
-
RFC 2637 not implemented.
Note that routing information from RFC 1701 is not implemented, packets with routing_present true will currently cause a panic.
Fields
checksum_present: u1
routing_present: u1
key_present: u1
sequence_present: u1
strict_source_route: u1
recursion_control: u3
zero_flags: u5
version: u3
protocol_type: u16be
checksum: Vec<U16BE>
offset: Vec<U16BE>
key: Vec<U32BE>
sequence: Vec<U32BE>
routing: Vec<u8>
payload: Vec<u8>
Trait Implementations
impl Clone for Gre
[src]
fn clone(&self) -> Gre
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for Gre
[src]
Auto Trait Implementations
Blanket Implementations
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,