1 /* $NetBSD: linux_sysent.c,v 1.1 1998/12/15 19:28:31 itohy Exp $ */ 2 3 /* 4 * System call switch table. 5 * 6 * DO NOT EDIT-- this file is automatically generated. 7 * created from NetBSD: syscalls.master,v 1.1 1998/12/15 19:25:41 itohy Exp 8 */ 9 10 #include "opt_compat_netbsd.h" 11 #include "opt_compat_43.h" 12 #include <sys/param.h> 13 #include <sys/systm.h> 14 #include <sys/signal.h> 15 #include <sys/mount.h> 16 #include <sys/syscallargs.h> 17 #include <compat/linux/common/linux_types.h> 18 #include <compat/linux/common/linux_signal.h> 19 #include <compat/linux/common/linux_siginfo.h> 20 #include <compat/linux/common/linux_machdep.h> 21 #include <compat/linux/linux_syscallargs.h> 22 23 #define s(type) sizeof(type) 24 25 struct sysent linux_sysent[] = { 26 { 0, 0, 27 sys_nosys }, /* 0 = syscall */ 28 { 1, s(struct sys_exit_args), 29 sys_exit }, /* 1 = exit */ 30 { 0, 0, 31 sys_fork }, /* 2 = fork */ 32 { 3, s(struct sys_read_args), 33 sys_read }, /* 3 = read */ 34 { 3, s(struct sys_write_args), 35 sys_write }, /* 4 = write */ 36 { 3, s(struct linux_sys_open_args), 37 linux_sys_open }, /* 5 = open */ 38 { 1, s(struct sys_close_args), 39 sys_close }, /* 6 = close */ 40 { 3, s(struct linux_sys_waitpid_args), 41 linux_sys_waitpid }, /* 7 = waitpid */ 42 { 2, s(struct linux_sys_creat_args), 43 linux_sys_creat }, /* 8 = creat */ 44 { 2, s(struct sys_link_args), 45 sys_link }, /* 9 = link */ 46 { 1, s(struct linux_sys_unlink_args), 47 linux_sys_unlink }, /* 10 = unlink */ 48 { 3, s(struct linux_sys_execve_args), 49 linux_sys_execve }, /* 11 = execve */ 50 { 1, s(struct linux_sys_chdir_args), 51 linux_sys_chdir }, /* 12 = chdir */ 52 { 1, s(struct linux_sys_time_args), 53 linux_sys_time }, /* 13 = time */ 54 { 3, s(struct linux_sys_mknod_args), 55 linux_sys_mknod }, /* 14 = mknod */ 56 { 2, s(struct linux_sys_chmod_args), 57 linux_sys_chmod }, /* 15 = chmod */ 58 { 3, s(struct linux_sys_chown_args), 59 linux_sys_chown }, /* 16 = chown */ 60 { 0, 0, 61 sys_nosys }, /* 17 = obsolete break */ 62 { 0, 0, 63 sys_nosys }, /* 18 = obsolete ostat */ 64 #if !defined(_KERNEL) || defined(COMPAT_43) 65 { 3, s(struct compat_43_sys_lseek_args), 66 compat_43_sys_lseek }, /* 19 = lseek */ 67 #else 68 { 0, 0, 69 sys_nosys }, /* 19 = unimplemented compat_43_sys_lseek */ 70 #endif 71 { 0, 0, 72 sys_getpid }, /* 20 = getpid */ 73 { 0, 0, 74 sys_nosys }, /* 21 = unimplemented mount */ 75 { 0, 0, 76 sys_nosys }, /* 22 = obsolete umount */ 77 { 1, s(struct sys_setuid_args), 78 sys_setuid }, /* 23 = setuid */ 79 { 0, 0, 80 sys_getuid }, /* 24 = getuid */ 81 { 0, 0, 82 sys_nosys }, /* 25 = unimplemented stime */ 83 { 0, 0, 84 sys_nosys }, /* 26 = unimplemented ptrace */ 85 { 1, s(struct linux_sys_alarm_args), 86 linux_sys_alarm }, /* 27 = alarm */ 87 { 0, 0, 88 sys_nosys }, /* 28 = obsolete ofstat */ 89 { 0, 0, 90 linux_sys_pause }, /* 29 = pause */ 91 { 2, s(struct linux_sys_utime_args), 92 linux_sys_utime }, /* 30 = utime */ 93 { 0, 0, 94 sys_nosys }, /* 31 = obsolete stty */ 95 { 0, 0, 96 sys_nosys }, /* 32 = obsolete gtty */ 97 { 2, s(struct linux_sys_access_args), 98 linux_sys_access }, /* 33 = access */ 99 { 1, s(struct linux_sys_nice_args), 100 linux_sys_nice }, /* 34 = nice */ 101 { 0, 0, 102 sys_nosys }, /* 35 = obsolete ftime */ 103 { 0, 0, 104 sys_sync }, /* 36 = sync */ 105 { 2, s(struct linux_sys_kill_args), 106 linux_sys_kill }, /* 37 = kill */ 107 { 2, s(struct linux_sys_rename_args), 108 linux_sys_rename }, /* 38 = rename */ 109 { 2, s(struct linux_sys_mkdir_args), 110 linux_sys_mkdir }, /* 39 = mkdir */ 111 { 1, s(struct linux_sys_rmdir_args), 112 linux_sys_rmdir }, /* 40 = rmdir */ 113 { 1, s(struct sys_dup_args), 114 sys_dup }, /* 41 = dup */ 115 { 1, s(struct linux_sys_pipe_args), 116 linux_sys_pipe }, /* 42 = pipe */ 117 { 1, s(struct linux_sys_times_args), 118 linux_sys_times }, /* 43 = times */ 119 { 0, 0, 120 sys_nosys }, /* 44 = obsolete prof */ 121 { 1, s(struct linux_sys_brk_args), 122 linux_sys_brk }, /* 45 = brk */ 123 { 1, s(struct sys_setgid_args), 124 sys_setgid }, /* 46 = setgid */ 125 { 0, 0, 126 sys_getgid }, /* 47 = getgid */ 127 { 2, s(struct linux_sys_signal_args), 128 linux_sys_signal }, /* 48 = signal */ 129 { 0, 0, 130 sys_geteuid }, /* 49 = geteuid */ 131 { 0, 0, 132 sys_getegid }, /* 50 = getegid */ 133 { 1, s(struct sys_acct_args), 134 sys_acct }, /* 51 = acct */ 135 { 0, 0, 136 sys_nosys }, /* 52 = unimplemented umount */ 137 { 0, 0, 138 sys_nosys }, /* 53 = obsolete lock */ 139 { 3, s(struct linux_sys_ioctl_args), 140 linux_sys_ioctl }, /* 54 = ioctl */ 141 { 3, s(struct linux_sys_fcntl_args), 142 linux_sys_fcntl }, /* 55 = fcntl */ 143 { 0, 0, 144 sys_nosys }, /* 56 = obsolete mpx */ 145 { 2, s(struct sys_setpgid_args), 146 sys_setpgid }, /* 57 = setpgid */ 147 { 0, 0, 148 sys_nosys }, /* 58 = obsolete ulimit */ 149 { 0, 0, 150 sys_nosys }, /* 59 = unimplemented oldolduname */ 151 { 1, s(struct sys_umask_args), 152 sys_umask }, /* 60 = umask */ 153 { 1, s(struct sys_chroot_args), 154 sys_chroot }, /* 61 = chroot */ 155 { 0, 0, 156 sys_nosys }, /* 62 = unimplemented ustat */ 157 { 2, s(struct sys_dup2_args), 158 sys_dup2 }, /* 63 = dup2 */ 159 { 0, 0, 160 sys_getppid }, /* 64 = getppid */ 161 { 0, 0, 162 sys_getpgrp }, /* 65 = getpgrp */ 163 { 0, 0, 164 sys_setsid }, /* 66 = setsid */ 165 { 3, s(struct linux_sys_sigaction_args), 166 linux_sys_sigaction }, /* 67 = sigaction */ 167 { 0, 0, 168 linux_sys_siggetmask }, /* 68 = siggetmask */ 169 { 1, s(struct linux_sys_sigsetmask_args), 170 linux_sys_sigsetmask }, /* 69 = sigsetmask */ 171 { 2, s(struct linux_sys_setreuid_args), 172 linux_sys_setreuid }, /* 70 = setreuid */ 173 { 2, s(struct linux_sys_setregid_args), 174 linux_sys_setregid }, /* 71 = setregid */ 175 { 3, s(struct linux_sys_sigsuspend_args), 176 linux_sys_sigsuspend }, /* 72 = sigsuspend */ 177 { 1, s(struct linux_sys_sigpending_args), 178 linux_sys_sigpending }, /* 73 = sigpending */ 179 #if !defined(_KERNEL) || defined(COMPAT_43) 180 { 2, s(struct compat_43_sys_sethostname_args), 181 compat_43_sys_sethostname }, /* 74 = sethostname */ 182 { 2, s(struct compat_43_sys_setrlimit_args), 183 compat_43_sys_setrlimit }, /* 75 = setrlimit */ 184 { 2, s(struct compat_43_sys_getrlimit_args), 185 compat_43_sys_getrlimit }, /* 76 = getrlimit */ 186 #else 187 { 0, 0, 188 sys_nosys }, /* 74 = unimplemented compat_43_sys_sethostname */ 189 { 0, 0, 190 sys_nosys }, /* 75 = unimplemented compat_43_sys_setrlimit */ 191 { 0, 0, 192 sys_nosys }, /* 76 = unimplemented compat_43_sys_getrlimit */ 193 #endif 194 { 2, s(struct sys_getrusage_args), 195 sys_getrusage }, /* 77 = getrusage */ 196 { 2, s(struct sys_gettimeofday_args), 197 sys_gettimeofday }, /* 78 = gettimeofday */ 198 { 2, s(struct sys_settimeofday_args), 199 sys_settimeofday }, /* 79 = settimeofday */ 200 { 2, s(struct sys_getgroups_args), 201 sys_getgroups }, /* 80 = getgroups */ 202 { 2, s(struct sys_setgroups_args), 203 sys_setgroups }, /* 81 = setgroups */ 204 { 1, s(struct linux_sys_oldselect_args), 205 linux_sys_oldselect }, /* 82 = oldselect */ 206 { 2, s(struct linux_sys_symlink_args), 207 linux_sys_symlink }, /* 83 = symlink */ 208 #if !defined(_KERNEL) || defined(COMPAT_43) 209 { 2, s(struct compat_43_sys_lstat_args), 210 compat_43_sys_lstat }, /* 84 = oolstat */ 211 #else 212 { 0, 0, 213 sys_nosys }, /* 84 = unimplemented compat_43_sys_lstat */ 214 #endif 215 { 3, s(struct linux_sys_readlink_args), 216 linux_sys_readlink }, /* 85 = readlink */ 217 { 1, s(struct linux_sys_uselib_args), 218 linux_sys_uselib }, /* 86 = uselib */ 219 #if !defined(_KERNEL) || defined(COMPAT_12) 220 { 1, s(struct compat_12_sys_swapon_args), 221 compat_12_sys_swapon }, /* 87 = swapon */ 222 #else 223 { 0, 0, 224 sys_nosys }, /* 87 = unimplemented compat_12_sys_swapon */ 225 #endif 226 { 1, s(struct sys_reboot_args), 227 sys_reboot }, /* 88 = reboot */ 228 { 3, s(struct linux_sys_readdir_args), 229 linux_sys_readdir }, /* 89 = readdir */ 230 { 1, s(struct linux_sys_old_mmap_args), 231 linux_sys_old_mmap }, /* 90 = old_mmap */ 232 { 2, s(struct sys_munmap_args), 233 sys_munmap }, /* 91 = munmap */ 234 { 2, s(struct linux_sys_truncate_args), 235 linux_sys_truncate }, /* 92 = truncate */ 236 #if !defined(_KERNEL) || defined(COMPAT_43) 237 { 2, s(struct compat_43_sys_ftruncate_args), 238 compat_43_sys_ftruncate }, /* 93 = ftruncate */ 239 #else 240 { 0, 0, 241 sys_nosys }, /* 93 = unimplemented compat_43_sys_ftruncate */ 242 #endif 243 { 2, s(struct sys_fchmod_args), 244 sys_fchmod }, /* 94 = fchmod */ 245 { 3, s(struct linux_sys_fchown_args), 246 linux_sys_fchown }, /* 95 = fchown */ 247 { 2, s(struct sys_getpriority_args), 248 sys_getpriority }, /* 96 = getpriority */ 249 { 3, s(struct sys_setpriority_args), 250 sys_setpriority }, /* 97 = setpriority */ 251 { 4, s(struct sys_profil_args), 252 sys_profil }, /* 98 = profil */ 253 { 2, s(struct linux_sys_statfs_args), 254 linux_sys_statfs }, /* 99 = statfs */ 255 { 2, s(struct linux_sys_fstatfs_args), 256 linux_sys_fstatfs }, /* 100 = fstatfs */ 257 { 0, 0, 258 sys_nosys }, /* 101 = unimplemented ioperm */ 259 { 2, s(struct linux_sys_socketcall_args), 260 linux_sys_socketcall }, /* 102 = socketcall */ 261 { 0, 0, 262 sys_nosys }, /* 103 = unimplemented syslog */ 263 { 3, s(struct sys_setitimer_args), 264 sys_setitimer }, /* 104 = setitimer */ 265 { 2, s(struct sys_getitimer_args), 266 sys_getitimer }, /* 105 = getitimer */ 267 { 2, s(struct linux_sys_stat_args), 268 linux_sys_stat }, /* 106 = stat */ 269 { 2, s(struct linux_sys_lstat_args), 270 linux_sys_lstat }, /* 107 = lstat */ 271 { 2, s(struct linux_sys_fstat_args), 272 linux_sys_fstat }, /* 108 = fstat */ 273 { 0, 0, 274 sys_nosys }, /* 109 = unimplemented olduname */ 275 { 0, 0, 276 sys_nosys }, /* 110 = unimplemented iopl */ 277 { 0, 0, 278 sys_nosys }, /* 111 = unimplemented vhangup */ 279 { 0, 0, 280 sys_nosys }, /* 112 = unimplemented idle */ 281 { 0, 0, 282 sys_nosys }, /* 113 = unimplemented vm86old */ 283 { 4, s(struct linux_sys_wait4_args), 284 linux_sys_wait4 }, /* 114 = wait4 */ 285 { 0, 0, 286 sys_nosys }, /* 115 = unimplemented swapoff */ 287 { 0, 0, 288 sys_nosys }, /* 116 = unimplemented sysinfo */ 289 { 5, s(struct linux_sys_ipc_args), 290 linux_sys_ipc }, /* 117 = ipc */ 291 { 1, s(struct sys_fsync_args), 292 sys_fsync }, /* 118 = fsync */ 293 { 0, 0, 294 linux_sys_sigreturn }, /* 119 = sigreturn */ 295 { 0, 0, 296 sys_nosys }, /* 120 = unimplemented clone */ 297 #if !defined(_KERNEL) || defined(COMPAT_09) 298 { 2, s(struct compat_09_sys_setdomainname_args), 299 compat_09_sys_setdomainname }, /* 121 = setdomainname */ 300 #else 301 { 0, 0, 302 sys_nosys }, /* 121 = unimplemented compat_09_sys_setdomainname */ 303 #endif 304 { 1, s(struct linux_sys_uname_args), 305 linux_sys_uname }, /* 122 = uname */ 306 { 4, s(struct linux_sys_cacheflush_args), 307 linux_sys_cacheflush }, /* 123 = cacheflush */ 308 { 0, 0, 309 sys_nosys }, /* 124 = unimplemented adjtimex */ 310 { 3, s(struct sys_mprotect_args), 311 sys_mprotect }, /* 125 = mprotect */ 312 { 3, s(struct linux_sys_sigprocmask_args), 313 linux_sys_sigprocmask }, /* 126 = sigprocmask */ 314 { 0, 0, 315 sys_nosys }, /* 127 = unimplemented create_module */ 316 { 0, 0, 317 sys_nosys }, /* 128 = unimplemented init_module */ 318 { 0, 0, 319 sys_nosys }, /* 129 = unimplemented delete_module */ 320 { 0, 0, 321 sys_nosys }, /* 130 = unimplemented get_kernel_syms */ 322 { 0, 0, 323 sys_nosys }, /* 131 = unimplemented quotactl */ 324 { 1, s(struct linux_sys_getpgid_args), 325 linux_sys_getpgid }, /* 132 = getpgid */ 326 { 1, s(struct sys_fchdir_args), 327 sys_fchdir }, /* 133 = fchdir */ 328 { 0, 0, 329 sys_nosys }, /* 134 = unimplemented bdflush */ 330 { 0, 0, 331 sys_nosys }, /* 135 = unimplemented sysfs */ 332 { 1, s(struct linux_sys_personality_args), 333 linux_sys_personality }, /* 136 = personality */ 334 { 0, 0, 335 sys_nosys }, /* 137 = unimplemented afs_syscall */ 336 { 0, 0, 337 sys_nosys }, /* 138 = unimplemented setfsuid */ 338 { 0, 0, 339 sys_nosys }, /* 139 = unimplemented getfsuid */ 340 { 5, s(struct linux_sys_llseek_args), 341 linux_sys_llseek }, /* 140 = llseek */ 342 { 3, s(struct linux_sys_getdents_args), 343 linux_sys_getdents }, /* 141 = getdents */ 344 { 5, s(struct linux_sys_select_args), 345 linux_sys_select }, /* 142 = select */ 346 { 2, s(struct sys_flock_args), 347 sys_flock }, /* 143 = flock */ 348 { 3, s(struct linux_sys_msync_args), 349 linux_sys_msync }, /* 144 = msync */ 350 { 3, s(struct sys_readv_args), 351 sys_readv }, /* 145 = readv */ 352 { 3, s(struct sys_writev_args), 353 sys_writev }, /* 146 = writev */ 354 { 1, s(struct sys_getsid_args), 355 sys_getsid }, /* 147 = getsid */ 356 { 1, s(struct linux_sys_fdatasync_args), 357 linux_sys_fdatasync }, /* 148 = fdatasync */ 358 { 1, s(struct linux_sys___sysctl_args), 359 linux_sys___sysctl }, /* 149 = __sysctl */ 360 { 2, s(struct sys_mlock_args), 361 sys_mlock }, /* 150 = mlock */ 362 { 2, s(struct sys_munlock_args), 363 sys_munlock }, /* 151 = munlock */ 364 { 0, 0, 365 sys_nosys }, /* 152 = unimplemented mlockall */ 366 { 0, 0, 367 sys_nosys }, /* 153 = unimplemented munlockall */ 368 { 0, 0, 369 sys_nosys }, /* 154 = unimplemented sched_setparam */ 370 { 0, 0, 371 sys_nosys }, /* 155 = unimplemented sched_getparam */ 372 { 0, 0, 373 sys_nosys }, /* 156 = unimplemented sched_setscheduler */ 374 { 0, 0, 375 sys_nosys }, /* 157 = unimplemented sched_getscheduler */ 376 { 0, 0, 377 sys_nosys }, /* 158 = unimplemented sched_yield */ 378 { 0, 0, 379 sys_nosys }, /* 159 = unimplemented sched_get_priority_max */ 380 { 0, 0, 381 sys_nosys }, /* 160 = unimplemented sched_get_priority_min */ 382 { 0, 0, 383 sys_nosys }, /* 161 = unimplemented sched_rr_get_interval */ 384 { 2, s(struct sys_nanosleep_args), 385 sys_nanosleep }, /* 162 = nanosleep */ 386 { 4, s(struct linux_sys_mremap_args), 387 linux_sys_mremap }, /* 163 = mremap */ 388 { 0, 0, 389 sys_nosys }, /* 164 = unimplemented setresuid */ 390 { 0, 0, 391 sys_nosys }, /* 165 = unimplemented getresuid */ 392 { 0, 0, 393 sys_nosys }, /* 166 = unimplemented vm86 */ 394 { 0, 0, 395 sys_nosys }, /* 167 = unimplemented query_module */ 396 { 0, 0, 397 sys_nosys }, /* 168 = unimplemented poll */ 398 { 0, 0, 399 sys_nosys }, /* 169 = unimplemented nfsservctl */ 400 { 0, 0, 401 sys_nosys }, /* 170 = unimplemented setresgid */ 402 { 0, 0, 403 sys_nosys }, /* 171 = unimplemented setresgid */ 404 { 0, 0, 405 sys_nosys }, /* 172 = unimplemented prctl */ 406 { 0, 0, 407 linux_sys_rt_sigreturn }, /* 173 = rt_sigreturn */ 408 { 4, s(struct linux_sys_rt_sigaction_args), 409 linux_sys_rt_sigaction }, /* 174 = rt_sigaction */ 410 { 4, s(struct linux_sys_rt_sigprocmask_args), 411 linux_sys_rt_sigprocmask }, /* 175 = rt_sigprocmask */ 412 { 2, s(struct linux_sys_rt_sigpending_args), 413 linux_sys_rt_sigpending }, /* 176 = rt_sigpending */ 414 { 0, 0, 415 sys_nosys }, /* 177 = unimplemented rt_sigtimedwait */ 416 { 3, s(struct linux_sys_rt_queueinfo_args), 417 linux_sys_rt_queueinfo }, /* 178 = rt_queueinfo */ 418 { 2, s(struct linux_sys_rt_sigsuspend_args), 419 linux_sys_rt_sigsuspend }, /* 179 = rt_sigsuspend */ 420 { 0, 0, 421 sys_nosys }, /* 180 = unimplemented pread */ 422 { 0, 0, 423 sys_nosys }, /* 181 = unimplemented pwrite */ 424 { 3, s(struct linux_sys_lchown_args), 425 linux_sys_lchown }, /* 182 = lchown */ 426 { 0, 0, 427 sys_nosys }, /* 183 = unimplemented getcwd */ 428 { 0, 0, 429 sys_nosys }, /* 184 = unimplemented capget */ 430 { 0, 0, 431 sys_nosys }, /* 185 = unimplemented capset */ 432 { 0, 0, 433 sys_nosys }, /* 186 = unimplemented sigaltstack */ 434 }; 435 436