Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 1 | Check if legacy syscalls exist |
| 2 | |
| 3 | A lot of legacy syscalls are replaced with *at and are not implemented in newer |
| 4 | architectures like aarch64 |
| 5 | |
| 6 | Upstream-Status: Submitted [https://github.com/draios/sysdig/pull/1601] |
| 7 | Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| 8 | --- a/driver/syscall_table.c |
| 9 | +++ b/driver/syscall_table.c |
| 10 | @@ -42,26 +42,46 @@ or GPL2.txt for full copies of the licen |
| 11 | * SYSCALL TABLE |
| 12 | */ |
| 13 | const struct syscall_evt_pair g_syscall_table[SYSCALL_TABLE_SIZE] = { |
| 14 | +#ifdef __NR_open |
| 15 | [__NR_open - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_OPEN_E, PPME_SYSCALL_OPEN_X}, |
| 16 | +#endif |
| 17 | +#ifdef __NR_creat |
| 18 | [__NR_creat - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_CREAT_E, PPME_SYSCALL_CREAT_X}, |
| 19 | +#endif |
| 20 | [__NR_close - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_CLOSE_E, PPME_SYSCALL_CLOSE_X}, |
| 21 | [__NR_brk - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_BRK_4_E, PPME_SYSCALL_BRK_4_X}, |
| 22 | [__NR_read - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_READ_E, PPME_SYSCALL_READ_X}, |
| 23 | [__NR_write - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_WRITE_E, PPME_SYSCALL_WRITE_X}, |
| 24 | [__NR_execve - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_EXECVE_19_E, PPME_SYSCALL_EXECVE_19_X}, |
| 25 | [__NR_clone - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_CLONE_20_E, PPME_SYSCALL_CLONE_20_X}, |
| 26 | +#ifdef __NR_fork |
| 27 | [__NR_fork - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_FORK_20_E, PPME_SYSCALL_FORK_20_X}, |
| 28 | +#endif |
| 29 | +#ifdef __NR_vfork |
| 30 | [__NR_vfork - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_VFORK_20_E, PPME_SYSCALL_VFORK_20_X}, |
| 31 | +#endif |
| 32 | +#ifdef __NR_pipe |
| 33 | [__NR_pipe - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_PIPE_E, PPME_SYSCALL_PIPE_X}, |
| 34 | +#endif |
| 35 | [__NR_pipe2 - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_PIPE_E, PPME_SYSCALL_PIPE_X}, |
| 36 | +#ifdef __NR_eventfd |
| 37 | [__NR_eventfd - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_EVENTFD_E, PPME_SYSCALL_EVENTFD_X}, |
| 38 | +#endif |
| 39 | [__NR_eventfd2 - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_EVENTFD_E, PPME_SYSCALL_EVENTFD_X}, |
| 40 | [__NR_futex - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_FUTEX_E, PPME_SYSCALL_FUTEX_X}, |
| 41 | +#ifdef __NR_stat |
| 42 | [__NR_stat - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_STAT_E, PPME_SYSCALL_STAT_X}, |
| 43 | +#endif |
| 44 | +#ifdef __NR_lstat |
| 45 | [__NR_lstat - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_LSTAT_E, PPME_SYSCALL_LSTAT_X}, |
| 46 | +#endif |
| 47 | [__NR_fstat - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_FSTAT_E, PPME_SYSCALL_FSTAT_X}, |
| 48 | +#ifdef __NR_epoll_wait |
| 49 | [__NR_epoll_wait - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_EPOLLWAIT_E, PPME_SYSCALL_EPOLLWAIT_X}, |
| 50 | +#endif |
| 51 | +#ifdef __NR_poll |
| 52 | [__NR_poll - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_POLL_E, PPME_SYSCALL_POLL_X}, |
| 53 | +#endif |
| 54 | #ifdef __NR_select |
| 55 | [__NR_select - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_SELECT_E, PPME_SYSCALL_SELECT_X}, |
| 56 | #endif |
| 57 | @@ -70,13 +90,21 @@ const struct syscall_evt_pair g_syscall_ |
| 58 | [__NR_getcwd - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_GETCWD_E, PPME_SYSCALL_GETCWD_X}, |
| 59 | [__NR_chdir - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_CHDIR_E, PPME_SYSCALL_CHDIR_X}, |
| 60 | [__NR_fchdir - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_FCHDIR_E, PPME_SYSCALL_FCHDIR_X}, |
| 61 | +#ifdef __NR_mkdir |
| 62 | [__NR_mkdir - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_MKDIR_2_E, PPME_SYSCALL_MKDIR_2_X}, |
| 63 | +#endif |
| 64 | +#ifdef __NR_rmdir |
| 65 | [__NR_rmdir - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_RMDIR_2_E, PPME_SYSCALL_RMDIR_2_X}, |
| 66 | +#endif |
| 67 | [__NR_openat - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_OPENAT_2_E, PPME_SYSCALL_OPENAT_2_X}, |
| 68 | [__NR_mkdirat - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_MKDIRAT_E, PPME_SYSCALL_MKDIRAT_X}, |
| 69 | +#ifdef __NR_link |
| 70 | [__NR_link - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_LINK_2_E, PPME_SYSCALL_LINK_2_X}, |
| 71 | +#endif |
| 72 | [__NR_linkat - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_LINKAT_2_E, PPME_SYSCALL_LINKAT_2_X}, |
| 73 | +#ifdef __NR_unlink |
| 74 | [__NR_unlink - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_UNLINK_2_E, PPME_SYSCALL_UNLINK_2_X}, |
| 75 | +#endif |
| 76 | [__NR_unlinkat - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_UNLINKAT_2_E, PPME_SYSCALL_UNLINKAT_2_X}, |
| 77 | [__NR_pread64 - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_PREAD_E, PPME_SYSCALL_PREAD_X}, |
| 78 | [__NR_pwrite64 - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_PWRITE_E, PPME_SYSCALL_PWRITE_X}, |
| 79 | @@ -85,16 +113,22 @@ const struct syscall_evt_pair g_syscall_ |
| 80 | [__NR_preadv - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_PREADV_E, PPME_SYSCALL_PREADV_X}, |
| 81 | [__NR_pwritev - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_PWRITEV_E, PPME_SYSCALL_PWRITEV_X}, |
| 82 | [__NR_dup - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_DUP_E, PPME_SYSCALL_DUP_X}, |
| 83 | +#ifdef __NR_dup2 |
| 84 | [__NR_dup2 - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_DUP_E, PPME_SYSCALL_DUP_X}, |
| 85 | +#endif |
| 86 | [__NR_dup3 - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SYSCALL_DUP_E, PPME_SYSCALL_DUP_X}, |
| 87 | +#ifdef __NR_signalfd |
| 88 | [__NR_signalfd - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_SIGNALFD_E, PPME_SYSCALL_SIGNALFD_X}, |
| 89 | +#endif |
| 90 | [__NR_signalfd4 - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_SIGNALFD_E, PPME_SYSCALL_SIGNALFD_X}, |
| 91 | [__NR_kill - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_KILL_E, PPME_SYSCALL_KILL_X}, |
| 92 | [__NR_tkill - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_TKILL_E, PPME_SYSCALL_TKILL_X}, |
| 93 | [__NR_tgkill - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_TGKILL_E, PPME_SYSCALL_TGKILL_X}, |
| 94 | [__NR_nanosleep - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_NANOSLEEP_E, PPME_SYSCALL_NANOSLEEP_X}, |
| 95 | [__NR_timerfd_create - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_TIMERFD_CREATE_E, PPME_SYSCALL_TIMERFD_CREATE_X}, |
| 96 | +#ifdef __NR_inotify_init |
| 97 | [__NR_inotify_init - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_INOTIFY_INIT_E, PPME_SYSCALL_INOTIFY_INIT_X}, |
| 98 | +#endif |
| 99 | [__NR_inotify_init1 - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SYSCALL_INOTIFY_INIT_E, PPME_SYSCALL_INOTIFY_INIT_X}, |
| 100 | [__NR_fchmodat - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_FCHMODAT_E, PPME_SYSCALL_FCHMODAT_X}, |
| 101 | [__NR_fchmod - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_FCHMOD_E, PPME_SYSCALL_FCHMOD_X}, |
| 102 | @@ -114,14 +148,22 @@ const struct syscall_evt_pair g_syscall_ |
| 103 | #endif |
| 104 | /* [__NR_old_select - SYSCALL_TABLE_ID0] = {UF_USED, PPME_GENERIC_E, PPME_GENERIC_X}, */ |
| 105 | [__NR_pselect6 - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 106 | +#ifdef __NR_epoll_create |
| 107 | [__NR_epoll_create - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 108 | +#endif |
| 109 | [__NR_epoll_ctl - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 110 | +#ifdef __NR_uselib |
| 111 | [__NR_uselib - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 112 | +#endif |
| 113 | [__NR_sched_setparam - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 114 | [__NR_sched_getparam - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 115 | [__NR_syslog - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 116 | +#ifdef __NR_chmod |
| 117 | [__NR_chmod - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_CHMOD_E, PPME_SYSCALL_CHMOD_X}, |
| 118 | +#endif |
| 119 | +#ifdef __NR_lchown |
| 120 | [__NR_lchown - SYSCALL_TABLE_ID0] = {UF_USED, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 121 | +#endif |
| 122 | #ifdef __NR_utime |
| 123 | [__NR_utime - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 124 | #endif |
| 125 | @@ -131,8 +173,9 @@ const struct syscall_evt_pair g_syscall_ |
| 126 | #ifdef __NR_alarm |
| 127 | [__NR_alarm - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 128 | #endif |
| 129 | +#ifdef __NR_pause |
| 130 | [__NR_pause - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 131 | - |
| 132 | +#endif |
| 133 | #ifndef __NR_socketcall |
| 134 | [__NR_socket - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP | UF_SIMPLEDRIVER_KEEP, PPME_SOCKET_SOCKET_E, PPME_SOCKET_SOCKET_X}, |
| 135 | [__NR_bind - SYSCALL_TABLE_ID0] = {UF_USED | UF_NEVER_DROP, PPME_SOCKET_BIND_E, PPME_SOCKET_BIND_X}, |
| 136 | @@ -184,9 +227,13 @@ const struct syscall_evt_pair g_syscall_ |
| 137 | [__NR_process_vm_writev - SYSCALL_TABLE_ID0] = {UF_USED, PPME_GENERIC_E, PPME_GENERIC_X}, |
| 138 | #endif |
| 139 | |
| 140 | +#ifdef __NR_rename |
| 141 | [__NR_rename - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_RENAME_E, PPME_SYSCALL_RENAME_X}, |
| 142 | +#endif |
| 143 | [__NR_renameat - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_RENAMEAT_E, PPME_SYSCALL_RENAMEAT_X}, |
| 144 | +#ifdef __NR_symlink |
| 145 | [__NR_symlink - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_SYMLINK_E, PPME_SYSCALL_SYMLINK_X}, |
| 146 | +#endif |
| 147 | [__NR_symlinkat - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_SYMLINKAT_E, PPME_SYSCALL_SYMLINKAT_X}, |
| 148 | [__NR_sendfile - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_SENDFILE_E, PPME_SYSCALL_SENDFILE_X}, |
| 149 | #ifdef __NR_sendfile64 |
| 150 | @@ -255,7 +302,9 @@ const struct syscall_evt_pair g_syscall_ |
| 151 | #ifdef __NR_getresgid32 |
| 152 | [__NR_getresgid32 - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_GETRESGID_E, PPME_SYSCALL_GETRESGID_X }, |
| 153 | #endif |
| 154 | +#ifdef __NR_getdents |
| 155 | [__NR_getdents - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_GETDENTS_E, PPME_SYSCALL_GETDENTS_X}, |
| 156 | +#endif |
| 157 | [__NR_getdents64 - SYSCALL_TABLE_ID0] = {UF_USED | UF_ALWAYS_DROP, PPME_SYSCALL_GETDENTS64_E, PPME_SYSCALL_GETDENTS64_X}, |
| 158 | #ifdef __NR_setns |
| 159 | [__NR_setns - SYSCALL_TABLE_ID0] = {UF_USED, PPME_SYSCALL_SETNS_E, PPME_SYSCALL_SETNS_X}, |
| 160 | @@ -298,19 +347,33 @@ const enum ppm_syscall_code g_syscall_co |
| 161 | [__NR_exit - SYSCALL_TABLE_ID0] = PPM_SC_EXIT, |
| 162 | [__NR_read - SYSCALL_TABLE_ID0] = PPM_SC_READ, |
| 163 | [__NR_write - SYSCALL_TABLE_ID0] = PPM_SC_WRITE, |
| 164 | +#ifdef __NR_open |
| 165 | [__NR_open - SYSCALL_TABLE_ID0] = PPM_SC_OPEN, |
| 166 | +#endif |
| 167 | [__NR_close - SYSCALL_TABLE_ID0] = PPM_SC_CLOSE, |
| 168 | +#ifdef __NR_creat |
| 169 | [__NR_creat - SYSCALL_TABLE_ID0] = PPM_SC_CREAT, |
| 170 | +#endif |
| 171 | +#ifdef __NR_link |
| 172 | [__NR_link - SYSCALL_TABLE_ID0] = PPM_SC_LINK, |
| 173 | +#endif |
| 174 | +#ifdef __NR_unlink |
| 175 | [__NR_unlink - SYSCALL_TABLE_ID0] = PPM_SC_UNLINK, |
| 176 | +#endif |
| 177 | [__NR_chdir - SYSCALL_TABLE_ID0] = PPM_SC_CHDIR, |
| 178 | #ifdef __NR_time |
| 179 | [__NR_time - SYSCALL_TABLE_ID0] = PPM_SC_TIME, |
| 180 | #endif |
| 181 | +#ifdef __NR_mknod |
| 182 | [__NR_mknod - SYSCALL_TABLE_ID0] = PPM_SC_MKNOD, |
| 183 | +#endif |
| 184 | +#ifdef __NR_chmod |
| 185 | [__NR_chmod - SYSCALL_TABLE_ID0] = PPM_SC_CHMOD, |
| 186 | +#endif |
| 187 | /* [__NR_lchown16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_LCHOWN16, */ |
| 188 | +#ifdef __NR_stat |
| 189 | [__NR_stat - SYSCALL_TABLE_ID0] = PPM_SC_STAT, |
| 190 | +#endif |
| 191 | [__NR_lseek - SYSCALL_TABLE_ID0] = PPM_SC_LSEEK, |
| 192 | [__NR_getpid - SYSCALL_TABLE_ID0] = PPM_SC_GETPID, |
| 193 | [__NR_mount - SYSCALL_TABLE_ID0] = PPM_SC_MOUNT, |
| 194 | @@ -322,17 +385,27 @@ const enum ppm_syscall_code g_syscall_co |
| 195 | [__NR_alarm - SYSCALL_TABLE_ID0] = PPM_SC_ALARM, |
| 196 | #endif |
| 197 | [__NR_fstat - SYSCALL_TABLE_ID0] = PPM_SC_FSTAT, |
| 198 | +#ifdef __NR_pause |
| 199 | [__NR_pause - SYSCALL_TABLE_ID0] = PPM_SC_PAUSE, |
| 200 | +#endif |
| 201 | #ifdef __NR_utime |
| 202 | [__NR_utime - SYSCALL_TABLE_ID0] = PPM_SC_UTIME, |
| 203 | #endif |
| 204 | [__NR_sync - SYSCALL_TABLE_ID0] = PPM_SC_SYNC, |
| 205 | [__NR_kill - SYSCALL_TABLE_ID0] = PPM_SC_KILL, |
| 206 | +#ifdef __NR_rename |
| 207 | [__NR_rename - SYSCALL_TABLE_ID0] = PPM_SC_RENAME, |
| 208 | +#endif |
| 209 | +#ifdef __NR_mkdir |
| 210 | [__NR_mkdir - SYSCALL_TABLE_ID0] = PPM_SC_MKDIR, |
| 211 | +#endif |
| 212 | +#ifdef __NR_rmdir |
| 213 | [__NR_rmdir - SYSCALL_TABLE_ID0] = PPM_SC_RMDIR, |
| 214 | +#endif |
| 215 | [__NR_dup - SYSCALL_TABLE_ID0] = PPM_SC_DUP, |
| 216 | +#ifdef __NR_pipe |
| 217 | [__NR_pipe - SYSCALL_TABLE_ID0] = PPM_SC_PIPE, |
| 218 | +#endif |
| 219 | [__NR_times - SYSCALL_TABLE_ID0] = PPM_SC_TIMES, |
| 220 | [__NR_brk - SYSCALL_TABLE_ID0] = PPM_SC_BRK, |
| 221 | /* [__NR_setgid16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_SETGID16, */ |
| 222 | @@ -345,10 +418,16 @@ const enum ppm_syscall_code g_syscall_co |
| 223 | [__NR_setpgid - SYSCALL_TABLE_ID0] = PPM_SC_SETPGID, |
| 224 | [__NR_umask - SYSCALL_TABLE_ID0] = PPM_SC_UMASK, |
| 225 | [__NR_chroot - SYSCALL_TABLE_ID0] = PPM_SC_CHROOT, |
| 226 | +#ifdef __NR_ustat |
| 227 | [__NR_ustat - SYSCALL_TABLE_ID0] = PPM_SC_USTAT, |
| 228 | +#endif |
| 229 | +#ifdef __NR_dup2 |
| 230 | [__NR_dup2 - SYSCALL_TABLE_ID0] = PPM_SC_DUP2, |
| 231 | +#endif |
| 232 | [__NR_getppid - SYSCALL_TABLE_ID0] = PPM_SC_GETPPID, |
| 233 | +#ifdef __NR_getpgrp |
| 234 | [__NR_getpgrp - SYSCALL_TABLE_ID0] = PPM_SC_GETPGRP, |
| 235 | +#endif |
| 236 | [__NR_setsid - SYSCALL_TABLE_ID0] = PPM_SC_SETSID, |
| 237 | [__NR_sethostname - SYSCALL_TABLE_ID0] = PPM_SC_SETHOSTNAME, |
| 238 | [__NR_setrlimit - SYSCALL_TABLE_ID0] = PPM_SC_SETRLIMIT, |
| 239 | @@ -359,10 +438,18 @@ const enum ppm_syscall_code g_syscall_co |
| 240 | /* [__NR_getgroups16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_GETGROUPS16, */ |
| 241 | /* [__NR_setgroups16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_SETGROUPS16, */ |
| 242 | /* [__NR_old_select - SYSCALL_TABLE_ID0] = PPM_SC_NR_OLD_SELECT, */ |
| 243 | +#ifdef __NR_symlink |
| 244 | [__NR_symlink - SYSCALL_TABLE_ID0] = PPM_SC_SYMLINK, |
| 245 | +#endif |
| 246 | +#ifdef __NR_lstat |
| 247 | [__NR_lstat - SYSCALL_TABLE_ID0] = PPM_SC_LSTAT, |
| 248 | +#endif |
| 249 | +#ifdef __NR_readlink |
| 250 | [__NR_readlink - SYSCALL_TABLE_ID0] = PPM_SC_READLINK, |
| 251 | +#endif |
| 252 | +#ifdef __NR_uselib |
| 253 | [__NR_uselib - SYSCALL_TABLE_ID0] = PPM_SC_USELIB, |
| 254 | +#endif |
| 255 | [__NR_swapon - SYSCALL_TABLE_ID0] = PPM_SC_SWAPON, |
| 256 | [__NR_reboot - SYSCALL_TABLE_ID0] = PPM_SC_REBOOT, |
| 257 | /* [__NR_old_readdir - SYSCALL_TABLE_ID0] = PPM_SC_NR_OLD_READDIR, */ |
| 258 | @@ -399,12 +486,16 @@ const enum ppm_syscall_code g_syscall_co |
| 259 | [__NR_delete_module - SYSCALL_TABLE_ID0] = PPM_SC_DELETE_MODULE, |
| 260 | [__NR_getpgid - SYSCALL_TABLE_ID0] = PPM_SC_GETPGID, |
| 261 | [__NR_fchdir - SYSCALL_TABLE_ID0] = PPM_SC_FCHDIR, |
| 262 | +#ifdef __NR_sysfs |
| 263 | [__NR_sysfs - SYSCALL_TABLE_ID0] = PPM_SC_SYSFS, |
| 264 | +#endif |
| 265 | [__NR_personality - SYSCALL_TABLE_ID0] = PPM_SC_PERSONALITY, |
| 266 | /* [__NR_setfsuid16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_SETFSUID16, */ |
| 267 | /* [__NR_setfsgid16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_SETFSGID16, */ |
| 268 | /* [__NR_llseek - SYSCALL_TABLE_ID0] = PPM_SC_NR_LLSEEK, */ |
| 269 | +#ifdef __NR_getdents |
| 270 | [__NR_getdents - SYSCALL_TABLE_ID0] = PPM_SC_GETDENTS, |
| 271 | +#endif |
| 272 | #ifdef __NR_select |
| 273 | [__NR_select - SYSCALL_TABLE_ID0] = PPM_SC_SELECT, |
| 274 | #endif |
| 275 | @@ -431,7 +522,9 @@ const enum ppm_syscall_code g_syscall_co |
| 276 | [__NR_mremap - SYSCALL_TABLE_ID0] = PPM_SC_MREMAP, |
| 277 | /* [__NR_setresuid16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_SETRESUID16, */ |
| 278 | /* [__NR_getresuid16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_GETRESUID16, */ |
| 279 | +#ifdef __NR_poll |
| 280 | [__NR_poll - SYSCALL_TABLE_ID0] = PPM_SC_POLL, |
| 281 | +#endif |
| 282 | /* [__NR_setresgid16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_SETRESGID16, */ |
| 283 | /* [__NR_getresgid16 - SYSCALL_TABLE_ID0] = PPM_SC_NR_GETRESGID16, */ |
| 284 | [__NR_prctl - SYSCALL_TABLE_ID0] = PPM_SC_PRCTL, |
| 285 | @@ -453,13 +546,17 @@ const enum ppm_syscall_code g_syscall_co |
| 286 | [__NR_getrlimit - SYSCALL_TABLE_ID0] = PPM_SC_GETRLIMIT, |
| 287 | #endif |
| 288 | /* [__NR_mmap_pgoff - SYSCALL_TABLE_ID0] = PPM_SC_NR_MMAP_PGOFF, */ |
| 289 | +#ifdef __NR_lchown |
| 290 | [__NR_lchown - SYSCALL_TABLE_ID0] = PPM_SC_LCHOWN, |
| 291 | +#endif |
| 292 | [__NR_setreuid - SYSCALL_TABLE_ID0] = PPM_SC_SETREUID, |
| 293 | [__NR_setregid - SYSCALL_TABLE_ID0] = PPM_SC_SETREGID, |
| 294 | [__NR_getgroups - SYSCALL_TABLE_ID0] = PPM_SC_GETGROUPS, |
| 295 | [__NR_setgroups - SYSCALL_TABLE_ID0] = PPM_SC_SETGROUPS, |
| 296 | [__NR_fchown - SYSCALL_TABLE_ID0] = PPM_SC_FCHOWN, |
| 297 | +#ifdef __NR_chown |
| 298 | [__NR_chown - SYSCALL_TABLE_ID0] = PPM_SC_CHOWN, |
| 299 | +#endif |
| 300 | [__NR_setfsuid - SYSCALL_TABLE_ID0] = PPM_SC_SETFSUID, |
| 301 | [__NR_setfsgid - SYSCALL_TABLE_ID0] = PPM_SC_SETFSGID, |
| 302 | [__NR_pivot_root - SYSCALL_TABLE_ID0] = PPM_SC_PIVOT_ROOT, |
| 303 | @@ -494,9 +591,13 @@ const enum ppm_syscall_code g_syscall_co |
| 304 | [__NR_io_submit - SYSCALL_TABLE_ID0] = PPM_SC_IO_SUBMIT, |
| 305 | [__NR_io_cancel - SYSCALL_TABLE_ID0] = PPM_SC_IO_CANCEL, |
| 306 | [__NR_exit_group - SYSCALL_TABLE_ID0] = PPM_SC_EXIT_GROUP, |
| 307 | +#ifdef __NR_epoll_create |
| 308 | [__NR_epoll_create - SYSCALL_TABLE_ID0] = PPM_SC_EPOLL_CREATE, |
| 309 | +#endif |
| 310 | [__NR_epoll_ctl - SYSCALL_TABLE_ID0] = PPM_SC_EPOLL_CTL, |
| 311 | +#ifdef __NR_epoll_wait |
| 312 | [__NR_epoll_wait - SYSCALL_TABLE_ID0] = PPM_SC_EPOLL_WAIT, |
| 313 | +#endif |
| 314 | [__NR_remap_file_pages - SYSCALL_TABLE_ID0] = PPM_SC_REMAP_FILE_PAGES, |
| 315 | [__NR_set_tid_address - SYSCALL_TABLE_ID0] = PPM_SC_SET_TID_ADDRESS, |
| 316 | [__NR_timer_create - SYSCALL_TABLE_ID0] = PPM_SC_TIMER_CREATE, |
| 317 | @@ -509,7 +610,9 @@ const enum ppm_syscall_code g_syscall_co |
| 318 | [__NR_clock_getres - SYSCALL_TABLE_ID0] = PPM_SC_CLOCK_GETRES, |
| 319 | [__NR_clock_nanosleep - SYSCALL_TABLE_ID0] = PPM_SC_CLOCK_NANOSLEEP, |
| 320 | [__NR_tgkill - SYSCALL_TABLE_ID0] = PPM_SC_TGKILL, |
| 321 | +#ifdef __NR_utimes |
| 322 | [__NR_utimes - SYSCALL_TABLE_ID0] = PPM_SC_UTIMES, |
| 323 | +#endif |
| 324 | [__NR_mq_open - SYSCALL_TABLE_ID0] = PPM_SC_MQ_OPEN, |
| 325 | [__NR_mq_unlink - SYSCALL_TABLE_ID0] = PPM_SC_MQ_UNLINK, |
| 326 | [__NR_mq_timedsend - SYSCALL_TABLE_ID0] = PPM_SC_MQ_TIMEDSEND, |
| 327 | @@ -523,14 +626,18 @@ const enum ppm_syscall_code g_syscall_co |
| 328 | [__NR_keyctl - SYSCALL_TABLE_ID0] = PPM_SC_KEYCTL, |
| 329 | [__NR_ioprio_set - SYSCALL_TABLE_ID0] = PPM_SC_IOPRIO_SET, |
| 330 | [__NR_ioprio_get - SYSCALL_TABLE_ID0] = PPM_SC_IOPRIO_GET, |
| 331 | +#ifdef __NR_inotify_init |
| 332 | [__NR_inotify_init - SYSCALL_TABLE_ID0] = PPM_SC_INOTIFY_INIT, |
| 333 | +#endif |
| 334 | [__NR_inotify_add_watch - SYSCALL_TABLE_ID0] = PPM_SC_INOTIFY_ADD_WATCH, |
| 335 | [__NR_inotify_rm_watch - SYSCALL_TABLE_ID0] = PPM_SC_INOTIFY_RM_WATCH, |
| 336 | [__NR_openat - SYSCALL_TABLE_ID0] = PPM_SC_OPENAT, |
| 337 | [__NR_mkdirat - SYSCALL_TABLE_ID0] = PPM_SC_MKDIRAT, |
| 338 | [__NR_mknodat - SYSCALL_TABLE_ID0] = PPM_SC_MKNODAT, |
| 339 | [__NR_fchownat - SYSCALL_TABLE_ID0] = PPM_SC_FCHOWNAT, |
| 340 | +#ifdef __NR_futimesat |
| 341 | [__NR_futimesat - SYSCALL_TABLE_ID0] = PPM_SC_FUTIMESAT, |
| 342 | +#endif |
| 343 | [__NR_unlinkat - SYSCALL_TABLE_ID0] = PPM_SC_UNLINKAT, |
| 344 | [__NR_renameat - SYSCALL_TABLE_ID0] = PPM_SC_RENAMEAT, |
| 345 | [__NR_linkat - SYSCALL_TABLE_ID0] = PPM_SC_LINKAT, |
| 346 | @@ -551,9 +658,13 @@ const enum ppm_syscall_code g_syscall_co |
| 347 | #endif |
| 348 | [__NR_epoll_pwait - SYSCALL_TABLE_ID0] = PPM_SC_EPOLL_PWAIT, |
| 349 | [__NR_utimensat - SYSCALL_TABLE_ID0] = PPM_SC_UTIMENSAT, |
| 350 | +#ifdef __NR_signalfd |
| 351 | [__NR_signalfd - SYSCALL_TABLE_ID0] = PPM_SC_SIGNALFD, |
| 352 | +#endif |
| 353 | [__NR_timerfd_create - SYSCALL_TABLE_ID0] = PPM_SC_TIMERFD_CREATE, |
| 354 | +#ifdef __NR_eventfd |
| 355 | [__NR_eventfd - SYSCALL_TABLE_ID0] = PPM_SC_EVENTFD, |
| 356 | +#endif |
| 357 | [__NR_timerfd_settime - SYSCALL_TABLE_ID0] = PPM_SC_TIMERFD_SETTIME, |
| 358 | [__NR_timerfd_gettime - SYSCALL_TABLE_ID0] = PPM_SC_TIMERFD_GETTIME, |
| 359 | [__NR_signalfd4 - SYSCALL_TABLE_ID0] = PPM_SC_SIGNALFD4, |