Software ecosystem
Rust
Rust support for CHERI aims to combine language-level memory safety with capability-aware targets and hardware enforcement.
Why it matters
Rust is especially valuable for new components, while CHERI can enforce boundaries around mixed-language and legacy parts of the system.
In brief
Rust support for CHERI aims to combine language-level memory safety with capability-aware targets and hardware enforcement. The practical state depends on the compiler target, standard library, allocator, runtime, unsafe code and C interfaces used by a project.
Key considerations
1. Target
Confirm the current Rust compiler, architecture, ABI and standard-library support for the chosen platform.
2. Interfaces
Review FFI, layout, pointer provenance, allocation ownership and capability exposure at unsafe boundaries.
3. Testing
Run Rust, C and mixed tests on the target; include malformed inputs and compartment faults, not only successful builds.
Evidence and caveats
Safe Rust guarantees do not automatically extend through unsafe code, foreign libraries or an unsupported platform runtime.
Treat build, test, integration, upstream and maintained support as distinct states. Name the target and last verified date.