ferrotunnel-core-0.7.0 has been yanked.
ferrotunnel-core
Core tunnel implementation for FerroTunnel.
Overview
This crate provides the core tunnel logic:
TunnelClient- Client-side tunnel connectionTunnelServer- Server-side tunnel listenerMultiplexer- Stream multiplexing over a single connectionSession- Session management with heartbeat tracking
Components
Tunnel
- TunnelClient - Connects to server, handles handshake, runs message loop
- TunnelServer - Listens for connections, authenticates clients, manages sessions
Stream
- Multiplexer - Multiplexes virtual streams over one TCP connection
- VirtualStream - AsyncRead/AsyncWrite implementation for tunneled data
Transport
- TCP transport - Current implementation
- TLS support - Planned for future
Usage
use ;
// Server
let server = new;
server.run.await?;
// Client
let mut client = new;
client.connect_and_run.await?;
License
Licensed under either of Apache License, Version 2.0 or MIT license at your option.