|
Nexus Embedded Platform 0.1.0
Statically assembled reusable embedded mechanisms
|
Caller-owned Secure context leases for a trusted NS kernel. More...
Go to the source code of this file.
Data Structures | |
| struct | nx_freertos_secure_context_t |
| Explicit Secure metadata, never stored in Nonsecure RAM. More... | |
Macros | |
| #define | NX_FREERTOS_SECURE_MIN_STACK_BYTES 64u |
| Minimum context capacity excludes the eight-byte ARM stack seal. | |
Enumerations | |
| enum | nx_freertos_secure_fault_t { NX_FREERTOS_SECURE_SEAL_FAILURE = 1 , NX_FREERTOS_SECURE_STACK_FAILURE } |
| Secure-context integrity failures, distinct from normal rejection. More... | |
Functions | |
| nx_result_t | nx_freertos_secure_context_prepare (nx_freertos_secure_context_t *context, void *stack, size_t bytes, void *task) |
| Prepare exact Secure storage for one trusted task identity. | |
| nx_result_t | nx_freertos_secure_context_rebind (nx_freertos_secure_context_t *context, void *task) |
| Rebind retired metadata while preserving its epoch history. | |
| nx_freertos_secure_context_t * | nx_freertos_secure_context_for_task (void *task) |
| Resolve a trusted, statically composed Secure task record. | |
| void | nx_freertos_secure_fault (nx_freertos_secure_fault_t fault) |
| Fail stop after a loaded Secure stack integrity failure. | |
Caller-owned Secure context leases for a trusted NS kernel.
Definition in file secure_context.h.
| #define NX_FREERTOS_SECURE_MIN_STACK_BYTES 64u |
Minimum context capacity excludes the eight-byte ARM stack seal.
Definition at line 19 of file secure_context.h.
Secure-context integrity failures, distinct from normal rejection.
| Enumerator | |
|---|---|
| NX_FREERTOS_SECURE_SEAL_FAILURE | |
| NX_FREERTOS_SECURE_STACK_FAILURE | |
Definition at line 81 of file secure_context.h.
| nx_freertos_secure_context_t * nx_freertos_secure_context_for_task | ( | void * | task | ) |
Resolve a trusted, statically composed Secure task record.
| [in] | task | Opaque identity supplied by the trusted NS kernel. |
| nx_result_t nx_freertos_secure_context_prepare | ( | nx_freertos_secure_context_t * | context, |
| void * | stack, | ||
| size_t | bytes, | ||
| void * | task ) |
Prepare exact Secure storage for one trusted task identity.
| [out] | context | Zero-initialized caller-owned Secure metadata. |
| [in] | stack | Eight-byte-aligned Secure writable stack allocation. |
| [in] | bytes | Whole allocation, including eight-byte upper seal. |
| [in] | task | Opaque NS task identity, never dereferenced here. |
| nx_result_t nx_freertos_secure_context_rebind | ( | nx_freertos_secure_context_t * | context, |
| void * | task ) |
Rebind retired metadata while preserving its epoch history.
| [in,out] | context | Prepared, unleased and unloaded Secure metadata. |
| [in] | task | New trusted NS task identity. |
| void nx_freertos_secure_fault | ( | nx_freertos_secure_fault_t | fault | ) |
Fail stop after a loaded Secure stack integrity failure.
| [in] | fault | Seal or stack invariant violation. |