| # Copyright 2022 The ChromiumOS Authors | |
| # Use of this source code is governed by a BSD-style license that can be | |
| # found in the LICENSE file. | |
| # rseq should be first due to frequency and purpose to decrease nptl latency | |
| rseq: 1 | |
| getpid: 1 | |
| gettid: 1 | |
| getuid32: 1 | |
| geteuid32: 1 | |
| getgid32: 1 | |
| getegid32: 1 | |
| getresuid32: 1 | |
| getresgid32: 1 | |
| clock_getres: 1 | |
| clock_getres_time64: 1 | |
| clock_gettime: 1 | |
| clock_gettime64: 1 | |
| gettimeofday: 1 | |
| # This call should return EPERM when calling with wrong argument. | |
| socket: arg0 == AF_UNIX; return 1 | |
| socketpair: 1 | |
| connect: 1 | |
| getsockname: 1 | |
| getpeername: 1 | |
| pipe: 1 | |
| pipe2: 1 | |
| send: 1 | |
| sendmsg: 1 | |
| recv: 1 | |
| recvmsg: 1 | |
| recvfrom: 1 | |
| setsockopt: 1 | |
| getsockopt: 1 | |
| epoll_create: 1 | |
| epoll_create1: 1 | |
| epoll_wait: 1 | |
| epoll_ctl: 1 | |
| poll: 1 | |
| open: 1 | |
| openat: 1 | |
| creat: 1 | |
| read: 1 | |
| write: 1 | |
| unlink: 1 | |
| unlinkat: 1 | |
| close: 1 | |
| # For device policy to walk through the directory of interest. | |
| getdents: 1 | |
| getdents64: 1 | |
| inotify_init: 1 | |
| inotify_add_watch: 1 | |
| inotify_rm_watch: 1 | |
| _newselect: 1 | |
| fstat64: 1 | |
| fstatat64: 1 | |
| stat64: 1 | |
| lstat64: 1 | |
| statx: 1 | |
| _llseek: 1 | |
| fcntl64: 1 | |
| access: 1 | |
| faccessat: 1 | |
| faccessat2: 1 | |
| flock: 1 | |
| fstatfs: 1 | |
| fstatfs64: 1 | |
| futex: 1 | |
| futex_time64: 1 | |
| set_robust_list: 1 | |
| restart_syscall: 1 | |
| exit: 1 | |
| exit_group: 1 | |
| rt_sigreturn: 1 | |
| rt_sigprocmask: 1 | |
| rt_sigaction: 1 | |
| signalfd4: 1 | |
| brk: 1 | |
| # Don't allow mmap2 with both PROT_WRITE and PROT_EXEC. | |
| mmap2: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE | |
| munmap: 1 | |
| # Don't allow mprotect with PROT_EXEC. | |
| mprotect: arg2 in ~PROT_EXEC | |
| madvise: 1 | |
| mlock: 1 | |
| munlock: 1 | |
| clone: 1 | |
| setpriority: 1 | |
| setitimer: 1 | |
| pwrite64: 1 | |
| fdatasync: 1 | |
| fsync: 1 | |
| rename: 1 | |
| chmod: 1 | |
| fchmodat: 1 | |
| tgkill: 1 | |
| set_tid_address: 1 | |
| ARM_set_tls: 1 | |
| uname: 1 | |
| ugetrlimit: 1 | |
| nanosleep: 1 | |
| clock_nanosleep: 1 | |
| clock_nanosleep_time64: 1 | |
| sched_yield: 1 | |
| sysinfo: 1 | |
| getrandom: arg2 in ~GRND_RANDOM | |
| # openssl 1.1.1d+ uses these to access the seeded state in shared memory if | |
| # getrandom() is not implemented. | |
| shmget: 1 | |
| shmat: 1 | |
| shmdt: 1 | |
| # These calls are attempted but apparently not necessary; return EPERM. | |
| ioctl: return 1 | |
| prctl: return 1 | |
| prlimit64: arg2 == 0 && arg3 != 0 | |
| sched_getattr: 1 | |
| sched_setattr: 1 | |
| sched_getaffinity: 1 | |
| eventfd2: 1 |