Crate netstack3_device

Source
Expand description

Netstack3 core device layer.

This crate contains the device layer for netstack3.

Modules§

blackhole
Blackhole devices.
ethernet
Ethernet devices.
loopback
Loopback devices.
marker
Marker traits controlling Device context behavior.
pure_ip
Pure IP devices.
queue
Device RX and TX queueing.
socket
Device sockets.

Macros§

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

Structs§

ArpConfiguration
Device ARP configuration.
ArpConfigurationUpdate
An update to apply to ARP configurations.
ArpCounters
Counters for the ARP layer.
ArpNudCtx
Provides a [NudContext] IPv4 implementation for a core context that implements ArpContext.
ArpState
The state associated with an instance of the Address Resolution Protocol (ARP).
BaseDeviceId
A base device identifier.
DeviceAnyApi
The device API interacting with any kind of supported device.
DeviceApi
The device API.
DeviceConfiguration
Device link layer configuration.
DeviceConfigurationUpdate
An update to apply to device configurations.
DeviceCounters
Device layer counters.
DeviceLayerState
The state associated with the device layer.
DeviceLayerTimerId
The identifier for timer events in the device layer.
Devices
The collection of devices within DeviceLayerState.
DevicesIter
Iterator over devices.
IpLinkDeviceStateInner
State for a link-device that is also an IP device.
NdpConfiguration
Device NDP configuration.
NdpConfigurationUpdate
An update to apply to NDP configurations.
OriginTracker
Light-weight tracker for recording the source of some instance.

Enums§

DeviceConfigurationUpdateError
Errors observed updating device configuration.
DeviceId
A strong ID identifying a device.
DeviceSendFrameError
An error encountered when sending a frame.
Ipv6DeviceLinkLayerAddr
Supported link layer address types for IPv6.
WeakDeviceId
A weak ID identifying a device.

Traits§

ArpConfigContext
An execution context for the ARP protocol that allows accessing configuration parameters.
ArpContext
An execution context for the ARP protocol.
ArpSenderContext
An execution context for the ARP protocol that allows sending IP packets to specific neighbors.
DeviceClassMatcher
Provides matching functionality for the device class of a device installed in the netstack.
DeviceCollectionContext
A context providing facilities to store and remove primary device IDs.
DeviceConfigurationContext
A trait abstracting device configuration.
DeviceIdAndNameMatcher
Provides matching functionality for the ID and name of a device installed in the netstack.
DeviceLayerEventDispatcher
An event dispatcher for the device layer.
DeviceLayerStateTypes
Provides associated types used in the device layer.
DeviceLayerTypes
Provides associated types used in the device layer.
DeviceProvider
Provides the Device type for each device domain.
DeviceStateSpec
Provides the specifications for device state held by [BaseDeviceId] in [BaseDeviceState].
OriginTrackerContext
A trait abstracting a context containing an OriginTracker.

Type Aliases§

IpLinkDeviceState
A convenience wrapper around IpLinkDeviceStateInner that uses DeviceStateSpec to extract the link state type and make type signatures shorter.