Skip to main content

Crate dlep_core

Crate dlep_core 

Source
Expand description

Wire types, data items and byte-level codec for DLEP (RFC 8175).

This crate is the foundation of the workspace. It has no dependencies on tokio, rustls or socket2 — only bytes, thiserror and ipnet. Anything that touches I/O or state machines lives in sibling crates.

Re-exports§

pub use data_item::DataItem;
pub use data_item::RawDataItem;
pub use error::CodecError;
pub use error::ExpectedLen;
pub use ids::DataItemType;
pub use ids::ExtensionId;
pub use ids::MessageType;
pub use ids::SignalType;
pub use mac::MacAddress;
pub use mac::MacAddressFormat;
pub use message::Message;
pub use metrics::LinkCharacteristics;
pub use metrics::LinkMetrics;
pub use signal::Signal;
pub use status::StatusCode;

Modules§

codec
Byte-level encoding and decoding primitives.
data_item
error
ids
Type-id newtypes for signals, messages, data items and extensions.
mac
message
metrics
Session and destination link metrics — RFC 8175 §13.12–13.20, reduced to a single plain-old-data struct.
signal
status
DLEP Status Codes (RFC 8175 §13.1).

Constants§

DEFAULT_PORT
Default IANA-assigned TCP/UDP port for DLEP.
DISCOVERY_IPV4_GROUP
IANA-assigned IPv4 link-local multicast group for discovery.
DISCOVERY_IPV6_GROUP
IANA-assigned IPv6 link-local multicast group for discovery.
MIN_HEARTBEAT_INTERVAL_MS
RFC 8175 §7.3.1 requires the heartbeat interval to be at least one second.
SIGNAL_PREFIX
ASCII prefix used on every DLEP UDP discovery signal (RFC 8175 §11.1).