]>
git.proxmox.com Git - pve-lxc-syscalld.git/blob - src/sys_mknod.rs
7 use crate::lxcseccomp
::ProxyMessageBuffer
;
8 use crate::syscall
::SyscallStatus
;
11 pub async
fn mknod(msg
: &ProxyMessageBuffer
) -> Result
<SyscallStatus
, Error
> {
12 let pathname
= msg
.arg_c_string(0)?
;
13 let mode
= msg
.arg_mode_t(1)?
;
14 let dev
= msg
.arg_dev_t(2)?
;
15 let cwd
= msg
.pid_fd().fd_cwd()?
;
16 do_mknodat(cwd
, pathname
, mode
, dev
).await
19 pub async
fn mknodat(msg
: &ProxyMessageBuffer
) -> Result
<SyscallStatus
, Error
> {
20 let dirfd
= msg
.arg_fd(0, libc
::O_DIRECTORY
)?
;
21 let pathname
= msg
.arg_c_string(1)?
;
22 let mode
= msg
.arg_mode_t(2)?
;
23 let dev
= msg
.arg_dev_t(3)?
;
24 do_mknodat(dirfd
, pathname
, mode
, dev
).await
32 ) -> Result
<SyscallStatus
, Error
> {
33 println
!("=> Responding with ENOENT");
34 Err(Errno
::ENOENT
.into())