How can a Rust and a C process access the same physical memory under Linux?
I have a C process which runs a low-level C program that allows UDP packets to bypass the linux kernel and instead be delivered from the network card directly to my C program's address space buffers. The problem is that the program that needs the payload in these UDP packets is written in Rust. So what is the best way for my C memory buffers to end up in the Rust process' virtual address space? Can you use mmap() from Rust? Google told me it's "not safe and not recommended".