Bug fixes
- Fix TLS certificate chain loading (#3) — When
cert_path pointed to a PEM bundle (e.g. Let's Encrypt fullchain.pem), the server only presented the leaf certificate, causing UnknownCA errors on clients. The server now loads and presents the full certificate chain.
Improvements
- Protocol v3: E2E encryption support — Added
e2e_supported in ClientInfo, user_id and e2e_available in channel_joined, and opaque relay of e2e_pubkey/e2e_data messages.
to-based targeted forwarding — Relayed messages with a to field are forwarded only to the addressed peer instead of broadcasting. Used by E2E encrypted messages.
- TLS module refactor — Extracted TLS loading into
src/tls.rs with 8 unit tests.
Docker
docker pull ghcr.io/ragb/nvda-remote-server-rs:0.0.2
docker run -p 6837:6837 ghcr.io/ragb/nvda-remote-server-rs:0.0.2