From 8cdfa445d6629ffef4cb84967ff7017654045bc2 Mon Sep 17 00:00:00 2001 From: mo khan Date: Wed, 2 Jul 2025 18:36:06 -0600 Subject: chore: add vendor directory --- vendor/rustix/src/backend/linux_raw/rand/mod.rs | 2 ++ vendor/rustix/src/backend/linux_raw/rand/syscalls.rs | 15 +++++++++++++++ vendor/rustix/src/backend/linux_raw/rand/types.rs | 20 ++++++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 vendor/rustix/src/backend/linux_raw/rand/mod.rs create mode 100644 vendor/rustix/src/backend/linux_raw/rand/syscalls.rs create mode 100644 vendor/rustix/src/backend/linux_raw/rand/types.rs (limited to 'vendor/rustix/src/backend/linux_raw/rand') diff --git a/vendor/rustix/src/backend/linux_raw/rand/mod.rs b/vendor/rustix/src/backend/linux_raw/rand/mod.rs new file mode 100644 index 00000000..1e0181a9 --- /dev/null +++ b/vendor/rustix/src/backend/linux_raw/rand/mod.rs @@ -0,0 +1,2 @@ +pub(crate) mod syscalls; +pub(crate) mod types; diff --git a/vendor/rustix/src/backend/linux_raw/rand/syscalls.rs b/vendor/rustix/src/backend/linux_raw/rand/syscalls.rs new file mode 100644 index 00000000..acea3968 --- /dev/null +++ b/vendor/rustix/src/backend/linux_raw/rand/syscalls.rs @@ -0,0 +1,15 @@ +//! linux_raw syscalls supporting `rustix::rand`. +//! +//! # Safety +//! +//! See the `rustix::backend` module documentation for details. +#![allow(unsafe_code, clippy::undocumented_unsafe_blocks)] + +use crate::backend::conv::{pass_usize, ret_usize}; +use crate::io; +use crate::rand::GetRandomFlags; + +#[inline] +pub(crate) unsafe fn getrandom(buf: (*mut u8, usize), flags: GetRandomFlags) -> io::Result { + ret_usize(syscall!(__NR_getrandom, buf.0, pass_usize(buf.1), flags)) +} diff --git a/vendor/rustix/src/backend/linux_raw/rand/types.rs b/vendor/rustix/src/backend/linux_raw/rand/types.rs new file mode 100644 index 00000000..9bc857fd --- /dev/null +++ b/vendor/rustix/src/backend/linux_raw/rand/types.rs @@ -0,0 +1,20 @@ +use bitflags::bitflags; + +bitflags! { + /// `GRND_*` flags for use with [`getrandom`]. + /// + /// [`getrandom`]: crate::rand::getrandom + #[repr(transparent)] + #[derive(Copy, Clone, Eq, PartialEq, Hash, Debug)] + pub struct GetRandomFlags: u32 { + /// `GRND_RANDOM` + const RANDOM = linux_raw_sys::general::GRND_RANDOM; + /// `GRND_NONBLOCK` + const NONBLOCK = linux_raw_sys::general::GRND_NONBLOCK; + /// `GRND_INSECURE` + const INSECURE = linux_raw_sys::general::GRND_INSECURE; + + /// + const _ = !0; + } +} -- cgit v1.2.3