|
Safe Data API
CRC-protected (optionally redundant) data containers for Zephyr
|
|
v0.0-dev+gbb519af | |
| ID | |
|---|---|
| SD-REQ-001 | Sealing on initialisation Satisfied by safe_data_init(). |
| SD-REQ-002 | Argument validation |
| SD-REQ-003 | Pure verification Satisfied by safe_data_verify(). |
| SD-REQ-004 | In-place repair under mutual exclusion Satisfied by safe_data_verify_repair(). |
| SD-REQ-005 | Validated read Satisfied by safe_data_read(). |
| SD-REQ-006 | Atomic sealed write Satisfied by safe_data_write(). |
| SD-REQ-007 | Transactional read-modify-write Satisfied by safe_data_update(). |
| SD-REQ-008 | Mutator contract enforcement Satisfied by safe_data_update(). |
| SD-REQ-009 | Single-copy fault recovery Satisfied by safe_data_verify_repair(). |
| SD-REQ-010 | Double-fault detection Satisfied by safe_data_verify_repair(). |
| SD-REQ-011 | Configurable unrecoverable-fault reaction |
| SD-REQ-012 | Integrity-event statistics Satisfied by safe_data_stats_get(). |
| SD-REQ-013 | Fault-handler registration and event reporting Satisfied by safe_data_fault_handler_register(). |
| SD-REQ-014 | Bounded lock acquisition Satisfied by safe_data_commit(), safe_data_read(), safe_data_update(), safe_data_write(), and SAFE_SECTION. |
| SD-REQ-015 | No ISR-context locking Satisfied by safe_data_commit(), safe_data_read(), safe_data_update(), safe_data_write(), and SAFE_SECTION. |
| SD-REQ-016 | Serialised access — no torn snapshots Satisfied by safe_data_commit(), safe_data_read(), safe_data_update(), safe_data_write(), and SAFE_SECTION. |
| SD-REQ-017 | Integrity-mechanism self-test Satisfied by safe_data_selftest(). |
| SD-REQ-018 | Write may not silently mask corruption Satisfied by safe_data_write(). |
| SD-REQ-019 | Compile-time payload guards Satisfied by SAFE_CONTAINER_DEFINE. |
| SD-REQ-020 | Reduced API surface at the Strict level Satisfied by SAFE_COMMIT, safe_data_commit(), and SAFE_SECTION. |
| SD-REQ-021 | Scoped access block Satisfied by SAFE_SECTION. |
| SD-REQ-022 | Unchecked commit Satisfied by safe_data_commit(). |