use core::mem::MaybeUninit;
use super::abi::*;
use crate::result_from_value;
pub const GRND_NONBLOCK: u32 = 0x1;
pub const GRND_RANDOM: u32 = 0x2;
pub const GRND_INSECURE: u32 = 0x4;
#[inline]
pub fn getrandom(buf: &mut [MaybeUninit<u8>], flags: u32) -> crate::Result<usize> {
let ret = unsafe { syscall_3(318, buf.as_mut_ptr() as usize, buf.len(), flags as usize) };
result_from_value(ret)
}