Vendor dependencies
Let's see how I like this workflow.
This commit is contained in:
parent
34d1830413
commit
9c435dc440
7500 changed files with 1665121 additions and 99 deletions
16
vendor/rustix/src/backend/libc/rand/syscalls.rs
vendored
Normal file
16
vendor/rustix/src/backend/libc/rand/syscalls.rs
vendored
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
//! libc syscalls supporting `rustix::rand`.
|
||||
|
||||
#[cfg(target_os = "linux")]
|
||||
use {super::super::c, super::super::conv::ret_ssize_t, crate::io, crate::rand::GetRandomFlags};
|
||||
|
||||
#[cfg(target_os = "linux")]
|
||||
pub(crate) fn getrandom(buf: &mut [u8], flags: GetRandomFlags) -> io::Result<usize> {
|
||||
// `getrandom` wasn't supported in glibc until 2.25.
|
||||
weak_or_syscall! {
|
||||
fn getrandom(buf: *mut c::c_void, buflen: c::size_t, flags: c::c_uint) via SYS_getrandom -> c::ssize_t
|
||||
}
|
||||
|
||||
let nread =
|
||||
unsafe { ret_ssize_t(getrandom(buf.as_mut_ptr().cast(), buf.len(), flags.bits()))? };
|
||||
Ok(nread as usize)
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue