RIOT-POLICE: An implementation of spatial memory safety for the RIOT operating system
S\"oren Tempel (University of Bremen), Nora Bruns (University of, Bremen)

TL;DR
This paper integrates Checked C, a safe C dialect, into the RIOT IoT operating system to enhance spatial memory safety while maintaining compatibility with standard C compilers.
Contribution
It introduces the first integration of a safe C dialect into RIOT, enabling optional spatial memory safety improvements in IoT OS modules.
Findings
Conversion overhead is minimal.
Checked C integration is optional and compatible with standard C.
Positive experience reported with using Checked C in IoT development.
Abstract
We present an integration of a safe C dialect, Checked C, for the Internet of Things operating system RIOT. We utilize this integration to convert parts of the RIOT network stack to Checked C, thereby achieving spatial memory safety in these code parts. Similar to prior research done on IoT operating systems and safe C dialects, our integration of Checked C remains entirely optional, i.e. compilation with a standard C compiler not supporting the Checked C language extension is still possible. We believe this to be the first proposed integration of a safe C dialect for the RIOT operating system. We present an incremental process for converting RIOT modules to Checked C, evaluate the overhead introduced by the conversions, and discuss our general experience with utilizing Checked C in the Internet of Things domain.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSecurity and Verification in Computing · Radiation Effects in Electronics · Software System Performance and Reliability
