Rollup merge of #132048 - mustartt:aix-random-impl, r=workingjubilee

AIX: use /dev/urandom for random implementation

On AIX, we can poll `/dev/urandom` for cryptographically secure random output to implement `fill_bytes` because we don't have equivalent syscalls like other platforms. https://www.ibm.com/docs/en/aix/7.3?topic=files-random-urandom-devices
This commit is contained in:
Jubilee 2024-10-24 15:53:33 -07:00 committed by GitHub
commit a0afe45466
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 2 additions and 1 deletions

View File

@ -38,7 +38,7 @@
/// Vita | `arc4random_buf` /// Vita | `arc4random_buf`
/// Hermit | `read_entropy` /// Hermit | `read_entropy`
/// Horizon | `getrandom` shim /// Horizon | `getrandom` shim
/// Hurd, L4Re, QNX | `/dev/urandom` /// AIX, Hurd, L4Re, QNX | `/dev/urandom`
/// Redox | `/scheme/rand` /// Redox | `/scheme/rand`
/// RTEMS | [`arc4random_buf`](https://docs.rtems.org/branches/master/bsp-howto/getentropy.html) /// RTEMS | [`arc4random_buf`](https://docs.rtems.org/branches/master/bsp-howto/getentropy.html)
/// SGX | [`rdrand`](https://en.wikipedia.org/wiki/RDRAND) /// SGX | [`rdrand`](https://en.wikipedia.org/wiki/RDRAND)

View File

@ -40,6 +40,7 @@
mod horizon; mod horizon;
pub use horizon::fill_bytes; pub use horizon::fill_bytes;
} else if #[cfg(any( } else if #[cfg(any(
target_os = "aix",
target_os = "hurd", target_os = "hurd",
target_os = "l4re", target_os = "l4re",
target_os = "nto", target_os = "nto",