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 message::SitePermissionSummary;
pub use paths::default_ipc_socket_path;
pub use paths::default_ipc_token_path;
pub use paths::get_config_dir;
pub use service::ServiceBiometricStatus;
pub use service::ServiceEntity;
pub use service::ServiceEntry;
pub use service::ServiceEntrySummary;
pub use service::ServiceError;
pub use service::ServiceOutcome;
pub use service::ServiceSyncDeviceInfo;
pub use service::ServiceSyncStatus;
pub use service::ServiceTotpMetadata;
pub use service::ServiceVaultStatus;
pub use service::VaultOp;
pub use service::VaultOpResult;
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.
connection
Connection-level session negotiation, deadlines, and framing (WBS-509/510/511). Wraps a platform transport connection and speaks either the v1 SECURED session protocol (default) or the legacy PLAIN envelope protocol (server-accepted migration window, removed in 1.0).
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.
service
Application-service contract (WBS-408, ADR-007).
session
Directional session keys, AAD-bound frames, replay protection, and deadlines for IPC connections (WBS-509/510/511, TD-ROB-16).
token
IPC auth token file management.
transport
Wire framing and platform connection types for IPC clients.

Type Aliases§

Result