Expand description
SentinelPass IPC protocol contract.
This crate is the narrow, stable surface that daemon clients embed:
message types, the authentication envelope, wire framing (length-prefixed
frames, 64 KiB cap), platform transports (client side), token file
management, and IpcClient.
Stability rules:
- Every wire type must deserialize old payloads (serde defaults for new fields; unknown fields are ignored by serde).
- Framing and Windows AES-256-GCM frame format never change byte layout.
Server-side types (listeners, the request dispatcher) intentionally live
in sentinelpass-core, not here.
Re-exports§
pub use client::IpcClient;pub use envelope::IpcEnvelope;pub use envelope::Origin;pub use error::ProtocolError;pub use message::CredentialSummary;pub use message::ExternalSecretField;pub use message::IpcMessage;pub use paths::default_ipc_socket_path;pub use paths::default_ipc_token_path;pub use paths::get_config_dir;pub use token::load_ipc_token;pub use token::load_or_create_ipc_token;pub use transport::unix::UnixSocketConnection;pub use transport::TransportConfig;pub use transport::TransportError;pub use transport::TransportResult;pub use transport::MAX_MESSAGE_SIZE;
Modules§
- client
- IPC client — sends messages to the daemon.
- envelope
- Authentication envelope for IPC frames.
- error
- Protocol-level errors.
- message
- IPC message types — the daemon request/response vocabulary.
- paths
- Platform path helpers for the IPC socket and token file.
- token
- IPC auth token file management.
- transport
- Wire framing and platform connection types for IPC clients.