| Crates.io | clock-bound-shm |
| lib.rs | clock-bound-shm |
| version | 2.0.3 |
| created_at | 2024-04-09 20:12:25.074212+00 |
| updated_at | 2025-09-10 21:32:03.554258+00 |
| description | A library used to interact with shared memory in ClockBound. |
| homepage | |
| repository | https://github.com/aws/clock-bound |
| max_upload_size | |
| id | 1202814 |
| size | 92,840 |
This crate implements the low-level IPC functionality to share ClockErrorBound data and clock status over a shared memory segment. It provides a reader and writer implementation to facilitate operating on the shared memory segment.
Clock status are retrieved directly from chronyd tracking data.
Unknown: the status of the clock is unknown.Synchronized: the clock is kept accurate by the synchronization daemon.FreeRunning: the clock is free running and not updated by the synchronization daemon.Disrupted: the clock has been disrupted and the accuracy of time cannot be bounded.FSM drives a change in the clock status word stored in the ClockBound shared memory segment. Each transition in the FSM is triggered by chrony. See following state diagram for clock status in shared memory:

SyscallError(Errno, &'static CStr): a system call failed.
SegmentNotInitialized: the shared memory segment is not initialized.SegmentMalformed: the shared memory segment is initialized but malformed.CausalityBreach: failed causality check when comparing timestamps.SegmentVersionNotSupported: the shared memory segment version is not supported.