pub enum TcpIpTransportContext {}
Expand description
An implementation of [IpTransportContext
] for TCP.
Trait Implementations§
Source§impl<I, BC, CC> IpTransportContext<I, BC, CC> for TcpIpTransportContextwhere
I: DualStackIpExt,
BC: TcpBindingsContext + BufferProvider<BC::ReceiveBuffer, BC::SendBuffer, ActiveOpen = <BC as TcpBindingsTypes>::ListenerNotifierOrProvidedBuffers, PassiveOpen = <BC as TcpBindingsTypes>::ReturnedBuffers>,
CC: TcpContext<I, BC> + TcpContext<I::OtherVersion, BC> + CounterContext<TcpCounters<I>> + CounterContext<TcpCounters<I::OtherVersion>>,
impl<I, BC, CC> IpTransportContext<I, BC, CC> for TcpIpTransportContextwhere
I: DualStackIpExt,
BC: TcpBindingsContext + BufferProvider<BC::ReceiveBuffer, BC::SendBuffer, ActiveOpen = <BC as TcpBindingsTypes>::ListenerNotifierOrProvidedBuffers, PassiveOpen = <BC as TcpBindingsTypes>::ReturnedBuffers>,
CC: TcpContext<I, BC> + TcpContext<I::OtherVersion, BC> + CounterContext<TcpCounters<I>> + CounterContext<TcpCounters<I::OtherVersion>>,
Source§fn receive_icmp_error(
core_ctx: &mut CC,
bindings_ctx: &mut BC,
_device: &CC::DeviceId,
original_src_ip: Option<SpecifiedAddr<I::Addr>>,
original_dst_ip: SpecifiedAddr<I::Addr>,
original_body: &[u8],
err: I::ErrorCode,
)
fn receive_icmp_error( core_ctx: &mut CC, bindings_ctx: &mut BC, _device: &CC::DeviceId, original_src_ip: Option<SpecifiedAddr<I::Addr>>, original_dst_ip: SpecifiedAddr<I::Addr>, original_body: &[u8], err: I::ErrorCode, )
Receive an ICMP error message. Read more
Source§fn receive_ip_packet<B: BufferMut, H: IpHeaderInfo<I>>(
core_ctx: &mut CC,
bindings_ctx: &mut BC,
device: &CC::DeviceId,
remote_ip: I::RecvSrcAddr,
local_ip: SpecifiedAddr<I::Addr>,
buffer: B,
info: &LocalDeliveryPacketInfo<I, H>,
) -> Result<(), (B, TransportReceiveError)>
fn receive_ip_packet<B: BufferMut, H: IpHeaderInfo<I>>( core_ctx: &mut CC, bindings_ctx: &mut BC, device: &CC::DeviceId, remote_ip: I::RecvSrcAddr, local_ip: SpecifiedAddr<I::Addr>, buffer: B, info: &LocalDeliveryPacketInfo<I, H>, ) -> Result<(), (B, TransportReceiveError)>
Receive a transport layer packet in an IP packet. Read more
Auto Trait Implementations§
impl Freeze for TcpIpTransportContext
impl RefUnwindSafe for TcpIpTransportContext
impl Send for TcpIpTransportContext
impl Sync for TcpIpTransportContext
impl Unpin for TcpIpTransportContext
impl UnwindSafe for TcpIpTransportContext
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<CC, BC, Meta> RecvFrameContext<Meta, BC> for CCwhere
Meta: ReceivableFrameMeta<CC, BC>,
impl<CC, BC, Meta> RecvFrameContext<Meta, BC> for CCwhere
Meta: ReceivableFrameMeta<CC, BC>,
Source§impl<CC, BC, Meta> SendFrameContext<BC, Meta> for CCwhere
Meta: SendableFrameMeta<CC, BC>,
impl<CC, BC, Meta> SendFrameContext<BC, Meta> for CCwhere
Meta: SendableFrameMeta<CC, BC>,
Source§fn send_frame<S>(
&mut self,
bindings_ctx: &mut BC,
metadata: Meta,
frame: S,
) -> Result<(), ErrorAndSerializer<SendFrameErrorReason, S>>where
S: Serializer,
<S as Serializer>::Buffer: BufferMut,
fn send_frame<S>(
&mut self,
bindings_ctx: &mut BC,
metadata: Meta,
frame: S,
) -> Result<(), ErrorAndSerializer<SendFrameErrorReason, S>>where
S: Serializer,
<S as Serializer>::Buffer: BufferMut,
Send a frame. Read more
Source§impl<Id, CC, BC> TimerHandler<BC, Id> for CCwhere
BC: TimerBindingsTypes,
Id: HandleableTimer<CC, BC>,
impl<Id, CC, BC> TimerHandler<BC, Id> for CCwhere
BC: TimerBindingsTypes,
Id: HandleableTimer<CC, BC>,
Source§fn handle_timer(
&mut self,
bindings_ctx: &mut BC,
dispatch: Id,
timer: <BC as TimerBindingsTypes>::UniqueTimerId,
)
fn handle_timer( &mut self, bindings_ctx: &mut BC, dispatch: Id, timer: <BC as TimerBindingsTypes>::UniqueTimerId, )
Handle a timer firing. Read more
Source§impl<L, T> UnlockedAccess<L> for Twhere
L: UnlockedAccessMarkerFor<T>,
impl<L, T> UnlockedAccess<L> for Twhere
L: UnlockedAccessMarkerFor<T>,
Source§type Data = <L as UnlockedAccessMarkerFor<T>>::Data
type Data = <L as UnlockedAccessMarkerFor<T>>::Data
The type of state being accessed.
Source§type Guard<'l> = &'l <L as UnlockedAccessMarkerFor<T>>::Data
where
T: 'l
type Guard<'l> = &'l <L as UnlockedAccessMarkerFor<T>>::Data where T: 'l
A guard providing read access to the data.
Source§fn access(&self) -> <T as UnlockedAccess<L>>::Guard<'_>
fn access(&self) -> <T as UnlockedAccess<L>>::Guard<'_>
How to access the state.