Skip to main content

Crate rns_net

Crate rns_net 

Source
Expand description

rns-net: Network node for Reticulum.

Drives rns-core::TransportEngine with real TCP/UDP sockets and threads. Reads standard Python RNS config files, opens TCP server/client, UDP, and Local interfaces, persists identity and known destinations.

Re-exports§

pub use driver::Callbacks;
pub use event::Event;
pub use event::QueryRequest;
pub use event::QueryResponse;
pub use event::InterfaceStatsResponse;
pub use event::SingleInterfaceStat;
pub use event::PathTableEntry;
pub use event::RateTableEntry;
pub use event::NextHopResponse;
pub use event::BlackholeInfo;
pub use event::LocalDestinationEntry;
pub use event::LinkInfoEntry;
pub use event::ResourceInfoEntry;
pub use node::IfacConfig;
pub use node::InterfaceConfig;
pub use node::InterfaceVariant;
pub use node::NodeConfig;
pub use node::RnsNode;
pub use node::SendError;
pub use interface::tcp::TcpClientConfig;
pub use interface::tcp_server::TcpServerConfig;
pub use interface::udp::UdpConfig;
pub use interface::local::LocalServerConfig;
pub use interface::local::LocalClientConfig;
pub use interface::serial_iface::SerialIfaceConfig;
pub use interface::kiss_iface::KissIfaceConfig;
pub use interface::pipe::PipeConfig;
pub use interface::rnode::RNodeConfig;
pub use interface::rnode::RNodeSubConfig;
pub use interface::backbone::BackboneConfig;
pub use interface::auto::AutoConfig;
pub use shared_client::SharedClientConfig;
pub use config::RnsConfig;
pub use ifac::IfacState;
pub use serial::Parity;
pub use storage::StoragePaths;
pub use storage::KnownDestination;
pub use rpc::RpcAddr;
pub use rpc::RpcServer;
pub use rpc::RpcClient;
pub use link_manager::LinkManager;
pub use link_manager::LinkManagerAction;
pub use management::ManagementConfig;
pub use destination::Destination;
pub use destination::AnnouncedIdentity;
pub use destination::GroupKeyError;

Modules§

announce_cache
Announce cache for disk persistence.
config
ConfigObj parser for RNS config files.
destination
Application-facing Destination and AnnouncedIdentity types.
driver
Driver loop: receives events, drives the TransportEngine, dispatches actions.
event
Event types for the driver loop.
hdlc
HDLC framing for TCP transport.
ifac
IFAC (Interface Access Codes) — per-interface cryptographic authentication.
interface
Network interface abstractions.
kiss
KISS framing for serial/radio interfaces.
link_manager
Link manager: wires rns-core LinkEngine + Channel + Resource into the driver.
management
Remote management destinations for the Reticulum transport node.
md5
MD5 hash function (RFC 1321) and HMAC-MD5 (RFC 2104).
node
RnsNode: high-level lifecycle management.
pickle
Minimal pickle codec (protocols 2-5).
rnode_kiss
RNode-specific KISS protocol commands and streaming decoder.
rpc
RPC server and client for cross-process daemon communication.
serial
Serial port abstraction using libc termios.
shared_client
Shared instance client mode.
storage
Identity and known destinations persistence.
time
Time utilities.

Structs§

DestHash
A destination hash (truncated, 16 bytes).
IdentityHash
An identity hash (truncated SHA-256 of public key, 16 bytes).
InterfaceId
Opaque identifier for a network interface.
LinkId
A link identifier (16 bytes).
PacketHash
A full packet hash (SHA-256, 32 bytes).

Enums§

DestinationType
Destination type.
Direction
Destination direction.
ProofStrategy
Proof strategy for a destination.

Constants§

MODE_ACCESS_POINT
MODE_BOUNDARY
MODE_FULL
MODE_GATEWAY
MODE_POINT_TO_POINT
MODE_ROAMING