Struct pnet_packet::tcp::MutableTcpPacket [−][src]
pub struct MutableTcpPacket<'p> { /* fields omitted */ }
Expand description
A structure enabling manipulation of on the wire packets
Implementations
Constructs a new MutableTcpPacket. If the provided buffer is less than the minimum required packet size, this will return None.
Constructs a new MutableTcpPacket. If the provided buffer is less than the minimum required packet size, this will return None. With this constructor the MutableTcpPacket will own its own data and the underlying buffer will be dropped when the MutableTcpPacket is.
Maps from a MutableTcpPacket to a TcpPacket
Maps from a MutableTcpPacket to a TcpPacket while consuming the source
The minimum size (in bytes) a packet of this type can be. It’s based on the total size of the fixed-size fields.
The size (in bytes) of a Tcp instance when converted into a byte-array
Get the source field. This field is always stored big-endian within the struct, but this accessor returns host order.
Get the destination field. This field is always stored big-endian within the struct, but this accessor returns host order.
Get the sequence field. This field is always stored big-endian within the struct, but this accessor returns host order.
Get the acknowledgement field. This field is always stored big-endian within the struct, but this accessor returns host order.
Get the data_offset field.
Get the reserved field.
Get the flags field. This field is always stored big-endian within the struct, but this accessor returns host order.
Get the window field. This field is always stored big-endian within the struct, but this accessor returns host order.
Get the checksum field. This field is always stored big-endian within the struct, but this accessor returns host order.
Get the urgent_ptr field. This field is always stored big-endian within the struct, but this accessor returns host order.
Get the raw &u8 value of the options field, without copying
Get the value of the options field (copies contents)
pub fn get_options_iter(&self) -> TcpOptionIterable<'_>ⓘNotable traits for TcpOptionIterable<'a>impl<'a> Iterator for TcpOptionIterable<'a> type Item = TcpOptionPacket<'a>;
pub fn get_options_iter(&self) -> TcpOptionIterable<'_>ⓘNotable traits for TcpOptionIterable<'a>impl<'a> Iterator for TcpOptionIterable<'a> type Item = TcpOptionPacket<'a>;
impl<'a> Iterator for TcpOptionIterable<'a> type Item = TcpOptionPacket<'a>;
Get the value of the options field as iterator
Set the source field. This field is always stored big-endian within the struct, but this mutator wants host order.
Set the destination field. This field is always stored big-endian within the struct, but this mutator wants host order.
Set the sequence field. This field is always stored big-endian within the struct, but this mutator wants host order.
Set the acknowledgement field. This field is always stored big-endian within the struct, but this mutator wants host order.
Set the data_offset field.
Set the reserved field.
Set the flags field. This field is always stored big-endian within the struct, but this mutator wants host order.
Set the window field. This field is always stored big-endian within the struct, but this mutator wants host order.
Set the checksum field. This field is always stored big-endian within the struct, but this mutator wants host order.
Set the urgent_ptr field. This field is always stored big-endian within the struct, but this mutator wants host order.
Get the raw &mut u8 value of the options field, without copying
Set the value of the options field (copies contents)
Set the value of the payload field (copies contents)
Trait Implementations
Converts a wire-format packet to #[packet] struct format.
Retreive the underlying, mutable, buffer for the packet.
Retreive the mutable payload for the packet.
Initialize this packet by cloning another.
Retrieve the underlying buffer for the packet.
Get the calculated size of the packet.
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.