News for hackers. Stuff that matters.
Re:Making Rust a Better Fit for Cheri and Other Platforms by mlindner on Thursday April 14, 2022 @06:16AM (#31025021)
> For example, is it useful for safe Rust code to always pay the size penalty of capabilities when you've proven at compile-time that they can't misuse the underlying pointers?

This seems like it's impossible though? How can you prove at compile time that all software that your safe Rust calls doesn't corrupt pointers? Don't you need capabilities in the Rust to ensure that if such software does something nefarious, the Rust code catches it before doing something untoward? (Not to mention the risk of compiler bugs causing something.)

Re:Making Rust a Better Fit for Cheri and Other Platforms by saagarjha on Thursday April 14, 2022 @10:16AM (#31027344)
If you’re passing a pointer to safe Rust code, with the capability bound encoded into something “native” to the language, then you don’t need hardware capabilities at all.
Re:Making Rust a Better Fit for Cheri and Other Platforms by connicpu on Thursday April 14, 2022 @12:00PM (#31028719)
You'd still need access to the capability interface to perform that checking at the unsafe/safe boundary
Re:Making Rust a Better Fit for Cheri and Other Platforms by saagarjha on Friday April 15, 2022 @08:24AM (#31039380)
Correct, but once you've done that you can strip the capability information and pass the raw address around to the safe code because the compiler runs validation.