Skip to main content

Crate sentinelpass_protocol

Crate sentinelpass_protocol 

Source
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.

Type Aliases§

Result