pub struct TcpSegmentBuilderWithOptions<A: IpAddress, O> { /* private fields */ }
Expand description
A builder for TCP segments with options
Implementations§
Source§impl<'a, A, I> TcpSegmentBuilderWithOptions<A, OptionSequenceBuilder<TcpOption<'a>, I>>
impl<'a, A, I> TcpSegmentBuilderWithOptions<A, OptionSequenceBuilder<TcpOption<'a>, I>>
Sourcepub fn new<T: IntoIterator<IntoIter = I>>(
prefix_builder: TcpSegmentBuilder<A>,
options: T,
) -> Result<TcpSegmentBuilderWithOptions<A, OptionSequenceBuilder<TcpOption<'a>, I>>, TcpOptionsTooLongError>
pub fn new<T: IntoIterator<IntoIter = I>>( prefix_builder: TcpSegmentBuilder<A>, options: T, ) -> Result<TcpSegmentBuilderWithOptions<A, OptionSequenceBuilder<TcpOption<'a>, I>>, TcpOptionsTooLongError>
Creates a TcpSegmentBuilderWithOptions
.
Returns Err
if the segment header would exceed the maximum length of
MAX_HDR_LEN
. This happens if the options
, when serialized, would
exceed MAX_OPTIONS_LEN
.
Sourcepub fn iter_options(&self) -> impl Iterator<Item = I::Item>
pub fn iter_options(&self) -> impl Iterator<Item = I::Item>
Returns an iterator over the options set in this builder.
Source§impl<A: IpAddress, O> TcpSegmentBuilderWithOptions<A, O>
impl<A: IpAddress, O> TcpSegmentBuilderWithOptions<A, O>
Sourcepub fn src_port(&self) -> Option<NonZeroU16>
pub fn src_port(&self) -> Option<NonZeroU16>
Returns the source port for the builder.
Sourcepub fn dst_port(&self) -> Option<NonZeroU16>
pub fn dst_port(&self) -> Option<NonZeroU16>
Returns the destination port for the builder.
Sourcepub fn set_src_ip(&mut self, addr: A)
pub fn set_src_ip(&mut self, addr: A)
Sets the source IP address for the builder.
Sourcepub fn set_dst_ip(&mut self, addr: A)
pub fn set_dst_ip(&mut self, addr: A)
Sets the destination IP address for the builder.
Sourcepub fn set_src_port(&mut self, port: NonZeroU16)
pub fn set_src_port(&mut self, port: NonZeroU16)
Sets the source port for the builder.
Sourcepub fn set_dst_port(&mut self, port: NonZeroU16)
pub fn set_dst_port(&mut self, port: NonZeroU16)
Sets the destination port for the builder.
Sourcepub fn prefix_builder(&self) -> &TcpSegmentBuilder<A>
pub fn prefix_builder(&self) -> &TcpSegmentBuilder<A>
Returns a shared reference to the prefix builder of the segment.
Trait Implementations§
Source§impl<A: Clone + IpAddress, O: Clone> Clone for TcpSegmentBuilderWithOptions<A, O>
impl<A: Clone + IpAddress, O: Clone> Clone for TcpSegmentBuilderWithOptions<A, O>
Source§fn clone(&self) -> TcpSegmentBuilderWithOptions<A, O>
fn clone(&self) -> TcpSegmentBuilderWithOptions<A, O>
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<A: IpAddress, O: InnerPacketBuilder> PacketBuilder for TcpSegmentBuilderWithOptions<A, O>
impl<A: IpAddress, O: InnerPacketBuilder> PacketBuilder for TcpSegmentBuilderWithOptions<A, O>
Auto Trait Implementations§
impl<A, O> Freeze for TcpSegmentBuilderWithOptions<A, O>
impl<A, O> RefUnwindSafe for TcpSegmentBuilderWithOptions<A, O>where
O: RefUnwindSafe,
A: RefUnwindSafe,
impl<A, O> Send for TcpSegmentBuilderWithOptions<A, O>where
O: Send,
impl<A, O> Sync for TcpSegmentBuilderWithOptions<A, O>where
O: Sync,
impl<A, O> Unpin for TcpSegmentBuilderWithOptions<A, O>
impl<A, O> UnwindSafe for TcpSegmentBuilderWithOptions<A, O>where
O: UnwindSafe,
A: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)