Expand description
Erlang Distribution Protocol (EDP) client implementation for Rust.
This crate provides a client implementation of the Erlang Distribution Protocol, targeting Erlang/OTP 26 and later versions. It enables Rust applications to communicate with Erlang nodes using the native distribution protocol.
§Features
- Full protocol version 6 (OTP 23+) support
- Mandatory OTP 26+ capability flags
- EPMD (Erlang Port Mapper Daemon) client
- Async I/O using Tokio
- Type-safe message handling
§Security
The Erlang Distribution Protocol is not secure by itself. For production use:
- Use TLS distribution with mutual authentication
- Isolate distribution traffic on dedicated networks
- Do not expose EPMD or distribution ports publicly
Re-exports§
pub use connection::Connection;pub use connection::ConnectionConfig;pub use errors::Error;pub use errors::Result;pub use flags::DistributionFlags;pub use pid_allocator::PidAllocator;pub use state_machine::ConnectionState;pub use term_helpers::nil;pub use types::Creation;pub use types::SequenceId;
Modules§
- connection
- Distribution protocol connection orchestration.
- control
- Distribution protocol control messages.
- digest
- MD5 digest computation for distribution protocol handshake.
- epmd_
client - An EPMD (Erlang Port Mapper Daemon) protocol client.
- errors
- flags
- Distribution protocol capability flags for Erlang/OTP 26+.
- fragmentation
- framing
- handshake
- Distribution protocol handshake messages and state machine.
- pid_
allocator - Process ID (PID) allocation for local processes.
- state_
machine - term_
helpers - transport
- types
Structs§
- Owned
Read Half - Owned read half of a
TcpStream, created byinto_split.