lx 0.4.0

A no_std crate to use Linux system calls
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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)
}