#include "sandbox/linux/services/syscall_wrappers.h"
#include <fcntl.h>
#include <pthread.h>
#include <sched.h>
#include <setjmp.h>
#include <sys/resource.h>
#include <sys/syscall.h>
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
#include <cstring>
#include "base/check.h"
#include "base/compiler_specific.h"
#include "base/logging.h"
#include "build/build_config.h"
#include "sandbox/linux/system_headers/capability.h"
#include "sandbox/linux/system_headers/linux_signal.h"
#include "sandbox/linux/system_headers/linux_stat.h"
#include "sandbox/linux/system_headers/linux_syscalls.h"
namespace sandbox {
pid_t sys_getpid(void) { … }
pid_t sys_gettid(void) { … }
ssize_t sys_write(int fd, const char* buffer, size_t buffer_size) { … }
long sys_clone(unsigned long flags,
std::nullptr_t child_stack,
pid_t* ptid,
pid_t* ctid,
std::nullptr_t tls) { … }
long sys_clone(unsigned long flags) { … }
void sys_exit_group(int status) { … }
int sys_seccomp(unsigned int operation,
unsigned int flags,
const struct sock_fprog* args) { … }
int sys_prlimit64(pid_t pid,
int resource,
const struct rlimit64* new_limit,
struct rlimit64* old_limit) { … }
int sys_capget(cap_hdr* hdrp, cap_data* datap) { … }
int sys_capset(cap_hdr* hdrp, const cap_data* datap) { … }
int sys_getresuid(uid_t* ruid, uid_t* euid, uid_t* suid) { … }
int sys_getresgid(gid_t* rgid, gid_t* egid, gid_t* sgid) { … }
int sys_chroot(const char* path) { … }
int sys_unshare(int flags) { … }
int sys_sigprocmask(int how, const sigset_t* set, std::nullptr_t oldset) { … }
int sys_sigaction(int signum,
const struct sigaction* act,
struct sigaction* oldact) { … }
int sys_stat(const char* path, struct kernel_stat* stat_buf) { … }
int sys_lstat(const char* path, struct kernel_stat* stat_buf) { … }
int sys_fstatat64(int dirfd,
const char* pathname,
struct kernel_stat64* stat_buf,
int flags) { … }
int landlock_create_ruleset(const struct landlock_ruleset_attr* const attr,
const size_t size,
const uint32_t flags) { … }
}