Google depends on a lot of C and C++ libraries for fundamental tasks like image and audio decoding. Unfortunately, due to the nature of C and C++ these libraries are suspect to a large amount of memory safety vulnerabilities and are generally considered unsafe. To address this security risk, our team at Google moved all these common parsing and decoding libraries over to Rust alternatives. We use Crubit to expose a C++ interface for these libraries and then change the callsites to use the Rust alternative. We will talk about a wrapper for image-rs as an example for our efforts.
Maria is a Software Engineer in Google Memory Safety team, working on expanding Rust’s usage at Google. She is also a contributor to Rust libraries, such as image-rs.