Crate netstack3_core

Source
Expand description

A networking stack.

Modules§

device
The device layer.
device_socket
Device socket API.
error
Generic netstack errors.
filter
Framework for packet filtering.
icmp
Methods for dealing with ICMP sockets.
inspect
Facilities for inspecting stack state for debugging.
ip
The Internet Protocol, versions 4 and 6.
neighbor
Types and utilities for dealing with neighbors.
routes
Types and utilities for dealing with routes.
socket
Common types for dealing with sockets.
sync
Useful synchronization primitives.
tcp
Methods for dealing with TCP sockets.
types
Miscellaneous and common types.
udp
Methods for dealing with UDP sockets.

Macros§

for_any_device_id
Evaluates the expression for the given device_id, regardless of its variant.

Structs§

CoreApi
The single entry point for function calls into netstack3 core.
CtxPair
A concrete implementation of ContextPair.
StackState
The state associated with the network stack.
StackStateBuilder
A builder for StackState.
TimerId
The identifier for any timer event.
TxMetadata
The frame metadata type for frames traversing the stack.

Traits§

AtomicInstant
A type representing an instant in time that can be atomically updated.
BindingsContext
The execution context provided by bindings.
BindingsTypes
A marker trait for all the types stored in core objects that are specified by bindings.
CoreContext
A marker trait for core context implementations.
DeferredResourceRemovalContext
A context trait that allows core to defer observing proper resource cleanup to bindings.
EventContext
A context for emitting events.
Inspector
A trait abstracting a state inspector.
Instant
A type representing an instant in time.
InstantBindingsTypes
Trait defining the Instant type provided by bindings’ InstantContext implementation.
InstantContext
A context that provides access to a monotonic clock.
IpBindingsContext
The execution context provided by bindings for a given IP version.
IpExt
A marker for extensions to IP types.
ReferenceNotifiers
A context trait determining the types to be used for reference notifications.
RngContext
A context that provides a random number generator (RNG).
TimerBindingsTypes
Opaque types provided by bindings used by TimerContext.
TimerContext
A context providing time scheduling to core.
TracingContext
A context for emitting tracing data.
TxMetadataBindingsTypes
A trait abstracting TX frame metadata when traversing the stack.

Type Aliases§

CoreCtx
Provides access to core context implementations.
UnlockedCoreCtx
An alias for an unlocked CoreCtx.

Attribute Macros§

context_ip_bounds
Generates common bounds for netstack3_core::UnlockedCoreCtx.