mirror of
https://github.com/CloudNebulaProject/wayray.git
synced 2026-04-10 13:10:41 +00:00
Add platform-aware IPC transport layer for the launcher protocol: - transport module: send_request_sync() auto-selects doors (illumos) or Unix sockets (Linux) at compile time - doors_transport: uses doors::Client for high-speed synchronous RPC, gated behind cfg(target_os = "illumos") + "doors" feature flag - unix_transport: blocking Unix socket client for all platforms Simplify client binaries to use the sync transport: - wradm: drops tokio dependency entirely, now fully synchronous - wrlogin: drops tokio dependency, uses sync transport - wrsessd: uses shared default_ipc_path() for consistency The doors crate (0.8.1) is an optional illumos-only dependency. On Linux, all code compiles and tests pass with Unix socket transport.
15 lines
435 B
Rust
15 lines
435 B
Rust
//! WayRay wire protocol definitions.
|
|
//!
|
|
//! Shared between wrsrvd (server) and wrclient (client).
|
|
//! Messages are serialized with postcard and framed with a 4-byte
|
|
//! length prefix for transmission over QUIC streams.
|
|
|
|
pub mod codec;
|
|
pub mod encoding;
|
|
pub mod launcher;
|
|
pub mod messages;
|
|
pub mod session_config;
|
|
pub mod transport;
|
|
|
|
/// Current protocol version. Incremented on breaking changes.
|
|
pub const PROTOCOL_VERSION: u32 = 1;
|