Work on things.

This commit is contained in:
Michael Mikovsky
2025-08-23 09:12:40 -06:00
parent 8ba4e92d60
commit 0e36538e84
18 changed files with 347 additions and 268 deletions
+14 -16
View File
@@ -1,5 +1,3 @@
use std::mem::transmute;
use crate::*;
impl Syscall {
@@ -30,9 +28,9 @@ impl Syscall {
flags: args[1] as libc::c_int,
mode: args[2] as libc::c_int,
},
libc::SYS_close => Syscall::Close {
fd: args[0] as libc::c_uint,
},
// libc::SYS_close => Syscall::Close {
// fd: args[0] as libc::c_uint,
// },
libc::SYS_stat => Syscall::Stat {
path: StrRef::new(args[0]),
statbuf: Ptr::new(args[1]),
@@ -55,14 +53,14 @@ impl Syscall {
// offset: args[1] as libc::off_t,
// whence: args[2] as libc::c_uint,
// },
libc::SYS_mmap => Syscall::Mmap {
addr: PtrVoid(args[0]),
len: args[1] as libc::size_t,
prot: args[2] as libc::c_int,
flags: args[3] as libc::c_int,
fd: args[4] as libc::c_int,
offset: args[5] as libc::off_t,
},
// libc::SYS_mmap => Syscall::Mmap {
// addr: PtrVoid(args[0]),
// len: args[1] as libc::size_t,
// prot: args[2] as libc::c_int,
// flags: args[3] as libc::c_int,
// fd: args[4] as libc::c_int,
// offset: args[5] as libc::off_t,
// },
// libc::SYS_mprotect => Syscall::Mprotect {
// addr: args[0] as Ptr<libc::c_void>,
// len: args[1] as libc::size_t,
@@ -925,9 +923,9 @@ impl Syscall {
// rqtp: args[2] as ConstPtr<libc::timespec>,
// rmtp: args[3] as Ptr<libc::timespec>,
// },
// libc::SYS_exit_group => Syscall::ExitGroup {
// error_code: args[0] as libc::c_int,
// },
libc::SYS_exit_group => Syscall::ExitGroup {
error_code: args[0] as libc::c_int,
},
// libc::SYS_epoll_wait => Syscall::EpollWait {
// epfd: args[0] as libc::c_int,
// events: args[1] as Ptr<libc::epoll_event>,
+3 -3
View File
@@ -71,8 +71,6 @@ use syscaller::{syscall0, syscall1, syscall2, syscall3, syscall4, syscall5, sysc
// }
// }
use libc::{c_long, c_ulong};
// The Syscall enum and type aliases from the previous response are assumed to be present here.
#[allow(unused_unsafe, unsafe_op_in_unsafe_fn)]
impl Syscall {
@@ -411,7 +409,9 @@ impl Syscall {
// Syscall::ClockNanosleep(arg0, arg1, arg2, arg3) => unsafe {
// syscall4(230, arg0, arg1, arg2, arg3)
// },
// Syscall::ExitGroup(arg0) => unsafe { syscall1(231, arg0) },
Syscall::ExitGroup { error_code } => unsafe {
syscall1(libc::SYS_exit_group as usize, *error_code as usize)
},
// Syscall::EpollWait(arg0, arg1, arg2, arg3) => unsafe {
// syscall4(232, arg0, arg1, arg2, arg3)
// },
+7 -6
View File
@@ -1,9 +1,10 @@
use bincode::{Decode, Encode};
use crate::{arch_types, types::*};
use crate::{types, types::*};
mod create;
mod exec;
mod proxy_list;
impl Syscall {
pub fn encode(&self) -> Vec<u8> {
@@ -45,11 +46,11 @@ pub enum Syscall {
},
Stat {
path: StrRef,
statbuf: Ptr<arch_types::stat>,
statbuf: Ptr<types::stat>,
},
Fstat {
fd: libc::c_uint,
statbuf: Ptr<arch_types::stat>,
statbuf: Ptr<types::stat>,
},
// Lstat {
// path: Buf<libc::c_char>,
@@ -935,9 +936,9 @@ pub enum Syscall {
// rqtp: Ptr<libc::timespec>,
// rmtp: Ptr<libc::timespec>,
// },
// ExitGroup {
// error_code: libc::c_int,
// },
ExitGroup {
error_code: libc::c_int,
},
// EpollWait {
// epfd: libc::c_int,
// events: Ptr<libc::epoll_event>,
+608
View File
@@ -0,0 +1,608 @@
use crate::{FwdType, Syscall};
impl Syscall {
pub fn get_fwd_type(&self) -> FwdType {
match self {
// Syscall::Close { fd }
_ => FwdType::Local,
}
}
}
// pub fn syscall_should_proxy(syscall: &Syscall) -> bool {
// match syscall {
// // === MEMORY MANAGEMENT ===
// // These operate on the process's virtual address space, which is managed
// // locally. The remote host only needs the resulting memory content on demand.
// Syscall::Mmap(..) |
// Syscall::Munmap(..) |
// Syscall::Mprotect(..) |
// Syscall::Mremap(..) |
// Syscall::Brk(_) |
// Syscall::Msync(..) |
// Syscall::Madvise(..) |
// Syscall::Mlock(..) |
// Syscall::Munlock(..) |
// Syscall::Mlockall(_) |
// Syscall::Munlockall |
// Syscall::Mbind(..) |
// Syscall::SetMempolicy(..) |
// Syscall::GetMempolicy(..) |
// Syscall::RemapFilePages(..) |
// Syscall::Membarrier(..) |
// Syscall::Mlock2(..) |
// Syscall::Userfaultfd(_) => false,
// // === SYNCHRONIZATION & SCHEDULING ===
// // Futexes are highly dependent on shared memory access. Simple sleeps
// // and yields can be handled by the local scheduler.
// Syscall::Futex(..) |
// Syscall::FutexWaitv(..) |
// Syscall::FutexWake(..) |
// Syscall::FutexWait(..) |
// Syscall::FutexRequeue(..) |
// Syscall::SchedYield |
// Syscall::Pause |
// Syscall::Nanosleep(..) => false,
// // === SIGNAL HANDLING SETUP ===
// // Configuring *how* to handle a signal is part of the process's internal
// // state. The actual delivery of signals (e.g., `kill`) is forwarded.
// Syscall::RtSigaction(..) |
// Syscall::RtSigprocmask(..) |
// Syscall::RtSigreturn | // Returns from a local signal handler context
// Syscall::Sigaltstack(..) => false,
// // === THREAD-LOCAL CONTEXT ===
// // These manage thread-local storage or architecture-specific register state.
// Syscall::ArchPrctl(..) |
// Syscall::SetThreadArea(_) |
// Syscall::GetThreadArea(_) |
// Syscall::SetRobustList(..) |
// Syscall::GetRobustList(..) => false,
// // === KERNEL INTERNAL ===
// // This is a pseudo-syscall used by the kernel and should not be forwarded.
// Syscall::RestartSyscall => false,
// // === DEFAULT: FORWARD ===
// // All other syscalls interact with the remote environment (files, sockets,
// // processes, timers, etc.) and must be forwarded. This is the safe default.
// _ => true,
// // // --- Filesystem & I/O Syscalls ---
// // // These interact with the filesystem and need to be forwarded to the remote host.
// // Syscall::Read(..)
// // | Syscall::Write(..)
// // | Syscall::Open(..)
// // | Syscall::Close(..)
// // | Syscall::Stat(..)
// // | Syscall::Fstat(..)
// // | Syscall::Lstat(..)
// // | Syscall::Openat(..)
// // | Syscall::Creat(..)
// // | Syscall::Rename(..)
// // | Syscall::Renameat(..)
// // | Syscall::Unlink(..)
// // | Syscall::Unlinkat(..)
// // | Syscall::Mkdir(..)
// // | Syscall::Mkdirat(..)
// // | Syscall::Rmdir(..)
// // | Syscall::Chdir(..)
// // | Syscall::Fchdir(..)
// // | Syscall::Chmod(..)
// // | Syscall::Fchmod(..)
// // | Syscall::Fchmodat(..)
// // | Syscall::Chown(..)
// // | Syscall::Fchown(..)
// // | Syscall::Lchown(..)
// // | Syscall::Fchownat(..)
// // | Syscall::Access(..)
// // | Syscall::Faccessat(..)
// // | Syscall::Getdents(..)
// // | Syscall::Getdents64(..)
// // | Syscall::Readlink(..)
// // | Syscall::Readlinkat(..)
// // | Syscall::Symlink(..)
// // | Syscall::Symlinkat(..)
// // | Syscall::Truncate(..)
// // | Syscall::Ftruncate(..)
// // | Syscall::Getcwd(..)
// // | Syscall::Lseek(..)
// // | Syscall::Sendfile(..)
// // | Syscall::Sync
// // | Syscall::Fsync(..)
// // | Syscall::Fdatasync(..)
// // | Syscall::Fcntl(..)
// // | Syscall::Flock(..)
// // | Syscall::Pipe(..)
// // | Syscall::Pipe2(..)
// // | Syscall::Dup(..)
// // | Syscall::Dup2(..)
// // | Syscall::Dup3(..)
// // | Syscall::InotifyInit
// // | Syscall::InotifyInit1(..)
// // | Syscall::InotifyAddWatch(..)
// // | Syscall::InotifyRmWatch(..)
// // | Syscall::EpollCreate(..)
// // | Syscall::EpollCreate1(..)
// // | Syscall::EpollCtl(..)
// // | Syscall::EpollWait(..)
// // | Syscall::EpollPwait(..)
// // | Syscall::EpollPwait2(..)
// // | Syscall::Splice(..)
// // | Syscall::Tee(..)
// // | Syscall::Vmsplice(..)
// // | Syscall::Fallocate(..)
// // | Syscall::CopyFileRange(..)
// // | Syscall::Utimes(..)
// // | Syscall::Futimesat(..)
// // | Syscall::Getxattr(..)
// // | Syscall::Lgetxattr(..)
// // | Syscall::Fgetxattr(..)
// // | Syscall::Listxattr(..)
// // | Syscall::Llistxattr(..)
// // | Syscall::Flistxattr(..)
// // | Syscall::Setxattr(..)
// // | Syscall::Lsetxattr(..)
// // | Syscall::Fsetxattr(..)
// // | Syscall::Removexattr(..)
// // | Syscall::Lremovexattr(..)
// // | Syscall::Fremovexattr(..)
// // | Syscall::Readv(..)
// // | Syscall::Writev(..)
// // | Syscall::Pread64(..)
// // | Syscall::Pwrite64(..)
// // | Syscall::Preadv(..)
// // | Syscall::Pwritev(..)
// // | Syscall::Preadv2(..)
// // | Syscall::Pwritev2(..)
// // | Syscall::Syncfs(..)
// // | Syscall::Readahead(..)
// // | Syscall::Statx(..) => true,
// // // --- Network Syscalls ---
// // // These are inherently remote operations.
// // Syscall::Socket(..)
// // | Syscall::Connect(..)
// // | Syscall::Accept(..)
// // | Syscall::Accept4(..)
// // | Syscall::Sendto(..)
// // | Syscall::Recvfrom(..)
// // | Syscall::Sendmsg(..)
// // | Syscall::Recvmsg(..)
// // | Syscall::Sendmmsg(..)
// // | Syscall::Recvmmsg(..)
// // | Syscall::Shutdown(..)
// // | Syscall::Bind(..)
// // | Syscall::Listen(..)
// // | Syscall::Getsockname(..)
// // | Syscall::Getpeername(..)
// // | Syscall::Socketpair(..)
// // | Syscall::Setsockopt(..)
// // | Syscall::Getsockopt(..) => true,
// // // --- Process & IPC Syscalls ---
// // // Syscalls that create new processes or threads (fork, clone, execve)
// // // or manipulate inter-process state should be forwarded.
// // Syscall::Clone(..)
// // | Syscall::Clone3(..)
// // | Syscall::Fork
// // | Syscall::Vfork
// // | Syscall::Execve(..)
// // | Syscall::Execveat(..)
// // | Syscall::ExitGroup(..)
// // | Syscall::Wait4(..)
// // | Syscall::Waitid(..)
// // | Syscall::Kill(..)
// // | Syscall::Tgkill(..)
// // | Syscall::Tkill(..)
// // | Syscall::Semget(..)
// // | Syscall::Semop(..)
// // | Syscall::Semctl(..)
// // | Syscall::Semtimedop(..)
// // | Syscall::Shmget(..)
// // | Syscall::Shmat(..)
// // | Syscall::Shmctl(..)
// // | Syscall::Shmdt(..)
// // | Syscall::Msgget(..)
// // | Syscall::Msgsnd(..)
// // | Syscall::Msgrcv(..)
// // | Syscall::Msgctl(..) => true,
// // // --- Other Syscalls that should be forwarded ---
// // // A few other miscellaneous syscalls that are typically forwarded.
// // Syscall::Reboot(..)
// // | Syscall::Adjtimex(..)
// // | Syscall::Gettimeofday(..)
// // | Syscall::Settimeofday(..)
// // | Syscall::ClockGettime(..)
// // | Syscall::ClockSettime(..)
// // | Syscall::ClockAdjtime(..)
// // | Syscall::TimerCreate(..)
// // | Syscall::TimerSettime(..)
// // | Syscall::TimerfdCreate(..)
// // | Syscall::TimerfdSettime(..) => true,
// // // --- All other syscalls should NOT be forwarded ---
// // // This includes memory management, local process state queries,
// // // and other local operations.
// // _ => false,
// }
// // match unsafe { std::mem::transmute::<i32, Sysno>(n as i32) } {
// // Sysno::read => false,
// // Sysno::write => false,
// // Sysno::open => false,
// // Sysno::close => false,
// // Sysno::stat => false,
// // Sysno::fstat => false,
// // Sysno::lstat => false,
// // Sysno::poll => false,
// // Sysno::lseek => false,
// // Sysno::mmap => false,
// // Sysno::mprotect => false,
// // Sysno::munmap => false,
// // Sysno::brk => false,
// // Sysno::rt_sigaction => false,
// // Sysno::rt_sigprocmask => false,
// // Sysno::rt_sigreturn => false,
// // Sysno::ioctl => false,
// // Sysno::pread64 => false,
// // Sysno::pwrite64 => false,
// // Sysno::readv => false,
// // Sysno::writev => false,
// // Sysno::access => false,
// // Sysno::pipe => false,
// // Sysno::select => false,
// // Sysno::sched_yield => false,
// // Sysno::mremap => false,
// // Sysno::msync => false,
// // Sysno::mincore => false,
// // Sysno::madvise => false,
// // Sysno::shmget => false,
// // Sysno::shmat => false,
// // Sysno::shmctl => false,
// // Sysno::dup => false,
// // Sysno::dup2 => false,
// // Sysno::pause => false,
// // Sysno::nanosleep => false,
// // Sysno::getitimer => false,
// // Sysno::alarm => false,
// // Sysno::setitimer => false,
// // Sysno::getpid => false,
// // Sysno::sendfile => false,
// // Sysno::socket => false,
// // Sysno::connect => false,
// // Sysno::accept => false,
// // Sysno::sendto => false,
// // Sysno::recvfrom => false,
// // Sysno::sendmsg => false,
// // Sysno::recvmsg => false,
// // Sysno::shutdown => false,
// // Sysno::bind => false,
// // Sysno::listen => false,
// // Sysno::getsockname => false,
// // Sysno::getpeername => false,
// // Sysno::socketpair => false,
// // Sysno::setsockopt => false,
// // Sysno::getsockopt => false,
// // Sysno::clone => false,
// // Sysno::fork => false,
// // Sysno::vfork => false,
// // Sysno::execve => false,
// // Sysno::exit => false,
// // Sysno::wait4 => false,
// // Sysno::kill => false,
// // Sysno::uname => false,
// // Sysno::semget => false,
// // Sysno::semop => false,
// // Sysno::semctl => false,
// // Sysno::shmdt => false,
// // Sysno::msgget => false,
// // Sysno::msgsnd => false,
// // Sysno::msgrcv => false,
// // Sysno::msgctl => false,
// // Sysno::fcntl => false,
// // Sysno::flock => false,
// // Sysno::fsync => false,
// // Sysno::fdatasync => false,
// // Sysno::truncate => false,
// // Sysno::ftruncate => false,
// // Sysno::getdents => false,
// // Sysno::getcwd => false,
// // Sysno::chdir => false,
// // Sysno::fchdir => false,
// // Sysno::rename => false,
// // Sysno::mkdir => false,
// // Sysno::rmdir => false,
// // Sysno::creat => false,
// // Sysno::link => false,
// // Sysno::unlink => false,
// // Sysno::symlink => false,
// // Sysno::readlink => false,
// // Sysno::chmod => false,
// // Sysno::fchmod => false,
// // Sysno::chown => false,
// // Sysno::fchown => false,
// // Sysno::lchown => false,
// // Sysno::umask => false,
// // Sysno::gettimeofday => false,
// // Sysno::getrlimit => false,
// // Sysno::getrusage => false,
// // Sysno::sysinfo => false,
// // Sysno::times => false,
// // Sysno::ptrace => false,
// // Sysno::getuid => false,
// // Sysno::syslog => false,
// // Sysno::getgid => false,
// // Sysno::setuid => false,
// // Sysno::setgid => false,
// // Sysno::geteuid => false,
// // Sysno::getegid => false,
// // Sysno::setpgid => false,
// // Sysno::getppid => false,
// // Sysno::getpgrp => false,
// // Sysno::setsid => false,
// // Sysno::setreuid => false,
// // Sysno::setregid => false,
// // Sysno::getgroups => false,
// // Sysno::setgroups => false,
// // Sysno::setresuid => false,
// // Sysno::getresuid => false,
// // Sysno::setresgid => false,
// // Sysno::getresgid => false,
// // Sysno::getpgid => false,
// // Sysno::setfsuid => false,
// // Sysno::setfsgid => false,
// // Sysno::getsid => false,
// // Sysno::capget => false,
// // Sysno::capset => false,
// // Sysno::rt_sigpending => false,
// // Sysno::rt_sigtimedwait => false,
// // Sysno::rt_sigqueueinfo => false,
// // Sysno::rt_sigsuspend => false,
// // Sysno::sigaltstack => false,
// // Sysno::utime => false,
// // Sysno::mknod => false,
// // Sysno::uselib => false,
// // Sysno::personality => false,
// // Sysno::ustat => false,
// // Sysno::statfs => false,
// // Sysno::fstatfs => false,
// // Sysno::sysfs => false,
// // Sysno::getpriority => false,
// // Sysno::setpriority => false,
// // Sysno::sched_setparam => false,
// // Sysno::sched_getparam => false,
// // Sysno::sched_setscheduler => false,
// // Sysno::sched_getscheduler => false,
// // Sysno::sched_get_priority_max => false,
// // Sysno::sched_get_priority_min => false,
// // Sysno::sched_rr_get_interval => false,
// // Sysno::mlock => false,
// // Sysno::munlock => false,
// // Sysno::mlockall => false,
// // Sysno::munlockall => false,
// // Sysno::vhangup => false,
// // Sysno::modify_ldt => false,
// // Sysno::pivot_root => false,
// // Sysno::_sysctl => false,
// // Sysno::prctl => false,
// // Sysno::arch_prctl => false,
// // Sysno::adjtimex => false,
// // Sysno::setrlimit => false,
// // Sysno::chroot => false,
// // Sysno::sync => false,
// // Sysno::acct => false,
// // Sysno::settimeofday => false,
// // Sysno::mount => false,
// // Sysno::umount2 => false,
// // Sysno::swapon => false,
// // Sysno::swapoff => false,
// // Sysno::reboot => false,
// // Sysno::sethostname => false,
// // Sysno::setdomainname => false,
// // Sysno::iopl => false,
// // Sysno::ioperm => false,
// // Sysno::create_module => false,
// // Sysno::init_module => false,
// // Sysno::delete_module => false,
// // Sysno::get_kernel_syms => false,
// // Sysno::query_module => false,
// // Sysno::quotactl => false,
// // Sysno::nfsservctl => false,
// // Sysno::getpmsg => false,
// // Sysno::putpmsg => false,
// // Sysno::afs_syscall => false,
// // Sysno::tuxcall => false,
// // Sysno::security => false,
// // Sysno::gettid => false,
// // Sysno::readahead => false,
// // Sysno::setxattr => false,
// // Sysno::lsetxattr => false,
// // Sysno::fsetxattr => false,
// // Sysno::getxattr => false,
// // Sysno::lgetxattr => false,
// // Sysno::fgetxattr => false,
// // Sysno::listxattr => false,
// // Sysno::llistxattr => false,
// // Sysno::flistxattr => false,
// // Sysno::removexattr => false,
// // Sysno::lremovexattr => false,
// // Sysno::fremovexattr => false,
// // Sysno::tkill => false,
// // Sysno::time => false,
// // Sysno::futex => false,
// // Sysno::sched_setaffinity => false,
// // Sysno::sched_getaffinity => false,
// // Sysno::set_thread_area => false,
// // Sysno::io_setup => false,
// // Sysno::io_destroy => false,
// // Sysno::io_getevents => false,
// // Sysno::io_submit => false,
// // Sysno::io_cancel => false,
// // Sysno::get_thread_area => false,
// // Sysno::lookup_dcookie => false,
// // Sysno::epoll_create => false,
// // Sysno::epoll_ctl_old => false,
// // Sysno::epoll_wait_old => false,
// // Sysno::remap_file_pages => false,
// // Sysno::getdents64 => false,
// // Sysno::set_tid_address => false,
// // Sysno::restart_syscall => false,
// // Sysno::semtimedop => false,
// // Sysno::fadvise64 => false,
// // Sysno::timer_create => false,
// // Sysno::timer_settime => false,
// // Sysno::timer_gettime => false,
// // Sysno::timer_getoverrun => false,
// // Sysno::timer_delete => false,
// // Sysno::clock_settime => false,
// // Sysno::clock_gettime => false,
// // Sysno::clock_getres => false,
// // Sysno::clock_nanosleep => false,
// // Sysno::exit_group => true,
// // Sysno::epoll_wait => false,
// // Sysno::epoll_ctl => false,
// // Sysno::tgkill => false,
// // Sysno::utimes => false,
// // Sysno::vserver => false,
// // Sysno::mbind => false,
// // Sysno::set_mempolicy => false,
// // Sysno::get_mempolicy => false,
// // Sysno::mq_open => false,
// // Sysno::mq_unlink => false,
// // Sysno::mq_timedsend => false,
// // Sysno::mq_timedreceive => false,
// // Sysno::mq_notify => false,
// // Sysno::mq_getsetattr => false,
// // Sysno::kexec_load => false,
// // Sysno::waitid => false,
// // Sysno::add_key => false,
// // Sysno::request_key => false,
// // Sysno::keyctl => false,
// // Sysno::ioprio_set => false,
// // Sysno::ioprio_get => false,
// // Sysno::inotify_init => false,
// // Sysno::inotify_add_watch => false,
// // Sysno::inotify_rm_watch => false,
// // Sysno::migrate_pages => false,
// // Sysno::openat => false,
// // Sysno::mkdirat => false,
// // Sysno::mknodat => false,
// // Sysno::fchownat => false,
// // Sysno::futimesat => false,
// // Sysno::newfstatat => false,
// // Sysno::unlinkat => false,
// // Sysno::renameat => false,
// // Sysno::linkat => false,
// // Sysno::symlinkat => false,
// // Sysno::readlinkat => false,
// // Sysno::fchmodat => false,
// // Sysno::faccessat => false,
// // Sysno::pselect6 => false,
// // Sysno::ppoll => false,
// // Sysno::unshare => false,
// // Sysno::set_robust_list => false,
// // Sysno::get_robust_list => false,
// // Sysno::splice => false,
// // Sysno::tee => false,
// // Sysno::sync_file_range => false,
// // Sysno::vmsplice => false,
// // Sysno::move_pages => false,
// // Sysno::utimensat => false,
// // Sysno::epoll_pwait => false,
// // Sysno::signalfd => false,
// // Sysno::timerfd_create => false,
// // Sysno::eventfd => false,
// // Sysno::fallocate => false,
// // Sysno::timerfd_settime => false,
// // Sysno::timerfd_gettime => false,
// // Sysno::accept4 => false,
// // Sysno::signalfd4 => false,
// // Sysno::eventfd2 => false,
// // Sysno::epoll_create1 => false,
// // Sysno::dup3 => false,
// // Sysno::pipe2 => false,
// // Sysno::inotify_init1 => false,
// // Sysno::preadv => false,
// // Sysno::pwritev => false,
// // Sysno::rt_tgsigqueueinfo => false,
// // Sysno::perf_event_open => false,
// // Sysno::recvmmsg => false,
// // Sysno::fanotify_init => false,
// // Sysno::fanotify_mark => false,
// // Sysno::prlimit64 => false,
// // Sysno::name_to_handle_at => false,
// // Sysno::open_by_handle_at => false,
// // Sysno::clock_adjtime => false,
// // Sysno::syncfs => false,
// // Sysno::sendmmsg => false,
// // Sysno::setns => false,
// // Sysno::getcpu => false,
// // Sysno::process_vm_readv => false,
// // Sysno::process_vm_writev => false,
// // Sysno::kcmp => false,
// // Sysno::finit_module => false,
// // Sysno::sched_setattr => false,
// // Sysno::sched_getattr => false,
// // Sysno::renameat2 => false,
// // Sysno::seccomp => false,
// // Sysno::getrandom => false,
// // Sysno::memfd_create => false,
// // Sysno::kexec_file_load => false,
// // Sysno::bpf => false,
// // Sysno::execveat => false,
// // Sysno::userfaultfd => false,
// // Sysno::membarrier => false,
// // Sysno::mlock2 => false,
// // Sysno::copy_file_range => false,
// // Sysno::preadv2 => false,
// // Sysno::pwritev2 => false,
// // Sysno::pkey_mprotect => false,
// // Sysno::pkey_alloc => false,
// // Sysno::pkey_free => false,
// // Sysno::statx => false,
// // Sysno::io_pgetevents => false,
// // Sysno::rseq => false,
// // Sysno::pidfd_send_signal => false,
// // Sysno::io_uring_setup => false,
// // Sysno::io_uring_enter => false,
// // Sysno::io_uring_register => false,
// // Sysno::open_tree => false,
// // Sysno::move_mount => false,
// // Sysno::fsopen => false,
// // Sysno::fsconfig => false,
// // Sysno::fsmount => false,
// // Sysno::fspick => false,
// // Sysno::pidfd_open => false,
// // Sysno::clone3 => false,
// // Sysno::close_range => false,
// // Sysno::openat2 => false,
// // Sysno::pidfd_getfd => false,
// // Sysno::faccessat2 => false,
// // Sysno::process_madvise => false,
// // Sysno::epoll_pwait2 => false,
// // Sysno::mount_setattr => false,
// // Sysno::quotactl_fd => false,
// // Sysno::landlock_create_ruleset => false,
// // Sysno::landlock_add_rule => false,
// // Sysno::landlock_restrict_self => false,
// // Sysno::memfd_secret => false,
// // Sysno::process_mrelease => false,
// // Sysno::futex_waitv => false,
// // Sysno::set_mempolicy_home_node => false,
// // Sysno::cachestat => false,
// // Sysno::fchmodat2 => false,
// // Sysno::map_shadow_stack => false,
// // Sysno::futex_wake => false,
// // Sysno::futex_wait => false,
// // Sysno::futex_requeue => false,
// // Sysno::statmount => false,
// // Sysno::listmount => false,
// // Sysno::lsm_get_self_attr => false,
// // Sysno::lsm_set_self_attr => false,
// // Sysno::lsm_list_modules => false,
// // }
// }