2 use std
::os
::unix
::io
::RawFd
;
7 pub flags MemFdCreateFlag
: libc
::c_uint
{
8 const MFD_CLOEXEC
= 0x0001,
9 const MFD_ALLOW_SEALING
= 0x0002,
13 pub fn memfd_create(name
: &CStr
, flags
: MemFdCreateFlag
) -> Result
<RawFd
> {
14 use sys
::syscall
::{syscall, MEMFD_CREATE}
;
15 let res
= unsafe { syscall(MEMFD_CREATE, name.as_ptr(), flags.bits()) }
;
17 Errno
::result(res
).map(|r
| r
as RawFd
)