Factor out wire::tcp::field::OPTIONS.
This commit is contained in:
parent
315b51d7da
commit
9f8db1d8f9
|
@ -80,6 +80,10 @@ mod field {
|
|||
pub const CHECKSUM: Field = 16..18;
|
||||
pub const URGENT: Field = 18..20;
|
||||
|
||||
pub fn OPTIONS(length: u8) -> Field {
|
||||
URGENT.end..(length as usize)
|
||||
}
|
||||
|
||||
pub const FLG_FIN: u16 = 0x001;
|
||||
pub const FLG_SYN: u16 = 0x002;
|
||||
pub const FLG_RST: u16 = 0x004;
|
||||
|
@ -295,9 +299,9 @@ impl<'a, T: AsRef<[u8]> + ?Sized> Packet<&'a T> {
|
|||
/// Return a pointer to the options.
|
||||
#[inline]
|
||||
pub fn options(&self) -> &'a [u8] {
|
||||
let header_len = self.header_len() as usize;
|
||||
let header_len = self.header_len();
|
||||
let data = self.buffer.as_ref();
|
||||
&data[field::URGENT.end..header_len]
|
||||
&data[field::OPTIONS(header_len)]
|
||||
}
|
||||
|
||||
/// Return a pointer to the payload.
|
||||
|
@ -481,9 +485,9 @@ impl<'a, T: AsRef<[u8]> + AsMut<[u8]> + ?Sized> Packet<&'a mut T> {
|
|||
/// Return a pointer to the options.
|
||||
#[inline]
|
||||
pub fn options_mut(&mut self) -> &mut [u8] {
|
||||
let header_len = self.header_len() as usize;
|
||||
let header_len = self.header_len();
|
||||
let data = self.buffer.as_mut();
|
||||
&mut data[field::URGENT.end..header_len]
|
||||
&mut data[field::OPTIONS(header_len)]
|
||||
}
|
||||
|
||||
/// Return a mutable pointer to the payload data.
|
||||
|
|
Loading…
Reference in New Issue