Description
Hiyo. I was poking around random generation for Apple platforms and while tweaking Miri realized getrandom
attempts to dlsym
the getentropy
function. The reasoning has been pretty simple for a while: Old macOS didn't have it. But once Rust 1.74 comes out that won't follow since upstream has now dropped pre 10.12. I'm working on cleaning up things in std as a result.
Similarly, the Android and Linux implementations are also following this as even with their semi-recent bumps, the getrandom
syscall isn't yet guaranteed to be present.
So that nicely swings around to the question: What is getrandom
's policy for platform version assumptions? Does it just follow what the latest std
does (as this comment sort of implies)? Or does the 1.36 MSRV imply getrandom
can't make newer platform assumptions and is stuck supporting versions of OSes that are long deprecated? libc
seems to have taken the path of not supporting the removed versions via changes such as rust-lang/libc#3362.