1 /* $NetBSD: sunos_sysent.c,v 1.58 2001/05/30 11:37:31 mrg 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.57 2000/12/09 07:10:36 mycroft Exp 8 */ 9 10 #if defined(_KERNEL_OPT) 11 #include "opt_nfsserver.h" 12 #include "opt_sysv.h" 13 #include "fs_nfs.h" 14 #endif 15 #include <sys/param.h> 16 #include <sys/systm.h> 17 #include <sys/signal.h> 18 #include <sys/mount.h> 19 #include <sys/poll.h> 20 #include <sys/syscallargs.h> 21 #include <compat/sunos/sunos.h> 22 #include <compat/sunos/sunos_syscallargs.h> 23 24 #define s(type) sizeof(type) 25 26 struct sysent sunos_sysent[] = { 27 { 0, 0, 0, 28 sys_nosys }, /* 0 = syscall */ 29 { 1, s(struct sys_exit_args), 0, 30 sys_exit }, /* 1 = exit */ 31 { 0, 0, 0, 32 sys_fork }, /* 2 = fork */ 33 { 3, s(struct sys_read_args), 0, 34 sys_read }, /* 3 = read */ 35 { 3, s(struct sys_write_args), 0, 36 sys_write }, /* 4 = write */ 37 { 3, s(struct sunos_sys_open_args), 0, 38 sunos_sys_open }, /* 5 = open */ 39 { 1, s(struct sys_close_args), 0, 40 sys_close }, /* 6 = close */ 41 { 4, s(struct sunos_sys_wait4_args), 0, 42 sunos_sys_wait4 }, /* 7 = wait4 */ 43 { 2, s(struct sunos_sys_creat_args), 0, 44 sunos_sys_creat }, /* 8 = creat */ 45 { 2, s(struct sys_link_args), 0, 46 sys_link }, /* 9 = link */ 47 { 1, s(struct sys_unlink_args), 0, 48 sys_unlink }, /* 10 = unlink */ 49 { 2, s(struct sunos_sys_execv_args), 0, 50 sunos_sys_execv }, /* 11 = execv */ 51 { 1, s(struct sys_chdir_args), 0, 52 sys_chdir }, /* 12 = chdir */ 53 { 0, 0, 0, 54 sys_nosys }, /* 13 = obsolete old_time */ 55 { 3, s(struct sunos_sys_mknod_args), 0, 56 sunos_sys_mknod }, /* 14 = mknod */ 57 { 2, s(struct sys_chmod_args), 0, 58 sys_chmod }, /* 15 = chmod */ 59 { 3, s(struct sys_chown_args), 0, 60 sys_chown }, /* 16 = chown */ 61 { 1, s(struct sys_obreak_args), 0, 62 sys_obreak }, /* 17 = break */ 63 { 0, 0, 0, 64 sys_nosys }, /* 18 = obsolete old_stat */ 65 { 3, s(struct compat_43_sys_lseek_args), 0, 66 compat_43_sys_lseek }, /* 19 = lseek */ 67 { 0, 0, 0, 68 sys_getpid_with_ppid }, /* 20 = getpid_with_ppid */ 69 { 0, 0, 0, 70 sys_nosys }, /* 21 = obsolete sunos_old_mount */ 71 { 0, 0, 0, 72 sys_nosys }, /* 22 = unimplemented System V umount */ 73 { 1, s(struct sys_setuid_args), 0, 74 sys_setuid }, /* 23 = setuid */ 75 { 0, 0, 0, 76 sys_getuid_with_euid }, /* 24 = getuid_with_euid */ 77 { 1, s(struct sunos_sys_stime_args), 0, 78 sunos_sys_stime }, /* 25 = stime */ 79 { 5, s(struct sunos_sys_ptrace_args), 0, 80 sunos_sys_ptrace }, /* 26 = ptrace */ 81 { 0, 0, 0, 82 sys_nosys }, /* 27 = unimplemented old_sunos_alarm */ 83 { 0, 0, 0, 84 sys_nosys }, /* 28 = unimplemented old_sunos_fstat */ 85 { 0, 0, 0, 86 sys_nosys }, /* 29 = unimplemented old_sunos_pause */ 87 { 0, 0, 0, 88 sys_nosys }, /* 30 = unimplemented old_sunos_utime */ 89 { 0, 0, 0, 90 sys_nosys }, /* 31 = unimplemented old_sunos_stty */ 91 { 0, 0, 0, 92 sys_nosys }, /* 32 = unimplemented old_sunos_gtty */ 93 { 2, s(struct sunos_sys_access_args), 0, 94 sunos_sys_access }, /* 33 = access */ 95 { 0, 0, 0, 96 sys_nosys }, /* 34 = unimplemented old_sunos_nice */ 97 { 0, 0, 0, 98 sys_nosys }, /* 35 = unimplemented old_sunos_ftime */ 99 { 0, 0, 0, 100 sys_sync }, /* 36 = sync */ 101 { 2, s(struct sys_kill_args), 0, 102 sys_kill }, /* 37 = kill */ 103 { 2, s(struct sunos_sys_stat_args), 0, 104 sunos_sys_stat }, /* 38 = stat */ 105 { 0, 0, 0, 106 sys_nosys }, /* 39 = unimplemented sunos_setpgrp */ 107 { 2, s(struct sunos_sys_lstat_args), 0, 108 sunos_sys_lstat }, /* 40 = lstat */ 109 { 1, s(struct sys_dup_args), 0, 110 sys_dup }, /* 41 = dup */ 111 { 0, 0, 0, 112 sys_pipe }, /* 42 = pipe */ 113 { 0, 0, 0, 114 sys_nosys }, /* 43 = unimplemented sunos_times */ 115 { 4, s(struct sys_profil_args), 0, 116 sys_profil }, /* 44 = profil */ 117 { 0, 0, 0, 118 sys_nosys }, /* 45 = unimplemented */ 119 { 1, s(struct sys_setgid_args), 0, 120 sys_setgid }, /* 46 = setgid */ 121 { 0, 0, 0, 122 sys_getgid_with_egid }, /* 47 = getgid_with_egid */ 123 { 0, 0, 0, 124 sys_nosys }, /* 48 = unimplemented sunos_ssig */ 125 { 0, 0, 0, 126 sys_nosys }, /* 49 = unimplemented reserved for USG */ 127 { 0, 0, 0, 128 sys_nosys }, /* 50 = unimplemented reserved for USG */ 129 { 1, s(struct sys_acct_args), 0, 130 sys_acct }, /* 51 = acct */ 131 { 0, 0, 0, 132 sys_nosys }, /* 52 = unimplemented */ 133 { 4, s(struct sunos_sys_mctl_args), 0, 134 sunos_sys_mctl }, /* 53 = mctl */ 135 { 3, s(struct sunos_sys_ioctl_args), 0, 136 sunos_sys_ioctl }, /* 54 = ioctl */ 137 { 2, s(struct sunos_sys_reboot_args), 0, 138 sunos_sys_reboot }, /* 55 = reboot */ 139 { 0, 0, 0, 140 sys_nosys }, /* 56 = obsolete sunos_owait3 */ 141 { 2, s(struct sys_symlink_args), 0, 142 sys_symlink }, /* 57 = symlink */ 143 { 3, s(struct sys_readlink_args), 0, 144 sys_readlink }, /* 58 = readlink */ 145 { 3, s(struct sunos_sys_execve_args), 0, 146 sunos_sys_execve }, /* 59 = execve */ 147 { 1, s(struct sys_umask_args), 0, 148 sys_umask }, /* 60 = umask */ 149 { 1, s(struct sys_chroot_args), 0, 150 sys_chroot }, /* 61 = chroot */ 151 { 2, s(struct compat_43_sys_fstat_args), 0, 152 compat_43_sys_fstat }, /* 62 = fstat */ 153 { 0, 0, 0, 154 sys_nosys }, /* 63 = unimplemented */ 155 { 0, 0, 0, 156 compat_43_sys_getpagesize }, /* 64 = getpagesize */ 157 { 3, s(struct sunos_sys_omsync_args), 0, 158 sunos_sys_omsync }, /* 65 = omsync */ 159 { 0, 0, 0, 160 sys_vfork }, /* 66 = vfork */ 161 { 0, 0, 0, 162 sys_nosys }, /* 67 = obsolete vread */ 163 { 0, 0, 0, 164 sys_nosys }, /* 68 = obsolete vwrite */ 165 { 1, s(struct sys_sbrk_args), 0, 166 sys_sbrk }, /* 69 = sbrk */ 167 { 1, s(struct sys_sstk_args), 0, 168 sys_sstk }, /* 70 = sstk */ 169 { 6, s(struct sunos_sys_mmap_args), 0, 170 sunos_sys_mmap }, /* 71 = mmap */ 171 { 1, s(struct sys_ovadvise_args), 0, 172 sys_ovadvise }, /* 72 = vadvise */ 173 { 2, s(struct sys_munmap_args), 0, 174 sys_munmap }, /* 73 = munmap */ 175 { 3, s(struct sys_mprotect_args), 0, 176 sys_mprotect }, /* 74 = mprotect */ 177 { 3, s(struct sys_madvise_args), 0, 178 sys_madvise }, /* 75 = madvise */ 179 { 0, 0, 0, 180 sunos_sys_vhangup }, /* 76 = vhangup */ 181 { 0, 0, 0, 182 sys_nosys }, /* 77 = unimplemented vlimit */ 183 { 3, s(struct sys_mincore_args), 0, 184 sys_mincore }, /* 78 = mincore */ 185 { 2, s(struct sys_getgroups_args), 0, 186 sys_getgroups }, /* 79 = getgroups */ 187 { 2, s(struct sys_setgroups_args), 0, 188 sys_setgroups }, /* 80 = setgroups */ 189 { 0, 0, 0, 190 sys_getpgrp }, /* 81 = getpgrp */ 191 { 2, s(struct sunos_sys_setpgrp_args), 0, 192 sunos_sys_setpgrp }, /* 82 = setpgrp */ 193 { 3, s(struct sys_setitimer_args), 0, 194 sys_setitimer }, /* 83 = setitimer */ 195 { 0, 0, 0, 196 sys_nosys }, /* 84 = unimplemented { int sunos_sys_wait ( void ) ; } */ 197 { 1, s(struct compat_12_sys_swapon_args), 0, 198 compat_12_sys_swapon }, /* 85 = swapon */ 199 { 2, s(struct sys_getitimer_args), 0, 200 sys_getitimer }, /* 86 = getitimer */ 201 { 2, s(struct compat_43_sys_gethostname_args), 0, 202 compat_43_sys_gethostname }, /* 87 = gethostname */ 203 { 2, s(struct compat_43_sys_sethostname_args), 0, 204 compat_43_sys_sethostname }, /* 88 = sethostname */ 205 { 0, 0, 0, 206 compat_43_sys_getdtablesize }, /* 89 = getdtablesize */ 207 { 2, s(struct sys_dup2_args), 0, 208 sys_dup2 }, /* 90 = dup2 */ 209 { 0, 0, 0, 210 sys_nosys }, /* 91 = unimplemented getdopt */ 211 { 3, s(struct sunos_sys_fcntl_args), 0, 212 sunos_sys_fcntl }, /* 92 = fcntl */ 213 { 5, s(struct sys_select_args), 0, 214 sys_select }, /* 93 = select */ 215 { 0, 0, 0, 216 sys_nosys }, /* 94 = unimplemented setdopt */ 217 { 1, s(struct sys_fsync_args), 0, 218 sys_fsync }, /* 95 = fsync */ 219 { 3, s(struct sys_setpriority_args), 0, 220 sys_setpriority }, /* 96 = setpriority */ 221 { 3, s(struct sys_socket_args), 0, 222 sys_socket }, /* 97 = socket */ 223 { 3, s(struct sys_connect_args), 0, 224 sys_connect }, /* 98 = connect */ 225 { 3, s(struct compat_43_sys_accept_args), 0, 226 compat_43_sys_accept }, /* 99 = accept */ 227 { 2, s(struct sys_getpriority_args), 0, 228 sys_getpriority }, /* 100 = getpriority */ 229 { 4, s(struct compat_43_sys_send_args), 0, 230 compat_43_sys_send }, /* 101 = send */ 231 { 4, s(struct compat_43_sys_recv_args), 0, 232 compat_43_sys_recv }, /* 102 = recv */ 233 { 0, 0, 0, 234 sys_nosys }, /* 103 = unimplemented old socketaddr */ 235 { 3, s(struct sys_bind_args), 0, 236 sys_bind }, /* 104 = bind */ 237 { 5, s(struct sunos_sys_setsockopt_args), 0, 238 sunos_sys_setsockopt }, /* 105 = setsockopt */ 239 { 2, s(struct sys_listen_args), 0, 240 sys_listen }, /* 106 = listen */ 241 { 0, 0, 0, 242 sys_nosys }, /* 107 = unimplemented vtimes */ 243 { 3, s(struct sunos_sys_sigvec_args), 0, 244 sunos_sys_sigvec }, /* 108 = sigvec */ 245 { 1, s(struct compat_43_sys_sigblock_args), 0, 246 compat_43_sys_sigblock }, /* 109 = sigblock */ 247 { 1, s(struct compat_43_sys_sigsetmask_args), 0, 248 compat_43_sys_sigsetmask }, /* 110 = sigsetmask */ 249 { 1, s(struct sunos_sys_sigsuspend_args), 0, 250 sunos_sys_sigsuspend }, /* 111 = sigsuspend */ 251 { 2, s(struct compat_43_sys_sigstack_args), 0, 252 compat_43_sys_sigstack }, /* 112 = sigstack */ 253 { 3, s(struct compat_43_sys_recvmsg_args), 0, 254 compat_43_sys_recvmsg }, /* 113 = recvmsg */ 255 { 3, s(struct compat_43_sys_sendmsg_args), 0, 256 compat_43_sys_sendmsg }, /* 114 = sendmsg */ 257 { 0, 0, 0, 258 sys_nosys }, /* 115 = obsolete vtrace */ 259 { 2, s(struct sys_gettimeofday_args), 0, 260 sys_gettimeofday }, /* 116 = gettimeofday */ 261 { 2, s(struct sys_getrusage_args), 0, 262 sys_getrusage }, /* 117 = getrusage */ 263 { 5, s(struct sys_getsockopt_args), 0, 264 sys_getsockopt }, /* 118 = getsockopt */ 265 { 0, 0, 0, 266 sys_nosys }, /* 119 = unimplemented */ 267 { 3, s(struct sys_readv_args), 0, 268 sys_readv }, /* 120 = readv */ 269 { 3, s(struct sys_writev_args), 0, 270 sys_writev }, /* 121 = writev */ 271 { 2, s(struct sys_settimeofday_args), 0, 272 sys_settimeofday }, /* 122 = settimeofday */ 273 { 3, s(struct sys_fchown_args), 0, 274 sys_fchown }, /* 123 = fchown */ 275 { 2, s(struct sys_fchmod_args), 0, 276 sys_fchmod }, /* 124 = fchmod */ 277 { 6, s(struct compat_43_sys_recvfrom_args), 0, 278 compat_43_sys_recvfrom }, /* 125 = recvfrom */ 279 { 2, s(struct sys_setreuid_args), 0, 280 sys_setreuid }, /* 126 = setreuid */ 281 { 2, s(struct sys_setregid_args), 0, 282 sys_setregid }, /* 127 = setregid */ 283 { 2, s(struct sys_rename_args), 0, 284 sys_rename }, /* 128 = rename */ 285 { 2, s(struct compat_43_sys_truncate_args), 0, 286 compat_43_sys_truncate }, /* 129 = truncate */ 287 { 2, s(struct compat_43_sys_ftruncate_args), 0, 288 compat_43_sys_ftruncate }, /* 130 = ftruncate */ 289 { 2, s(struct sys_flock_args), 0, 290 sys_flock }, /* 131 = flock */ 291 { 0, 0, 0, 292 sys_nosys }, /* 132 = unimplemented */ 293 { 6, s(struct sys_sendto_args), 0, 294 sys_sendto }, /* 133 = sendto */ 295 { 2, s(struct sys_shutdown_args), 0, 296 sys_shutdown }, /* 134 = shutdown */ 297 { 4, s(struct sys_socketpair_args), 0, 298 sys_socketpair }, /* 135 = socketpair */ 299 { 2, s(struct sys_mkdir_args), 0, 300 sys_mkdir }, /* 136 = mkdir */ 301 { 1, s(struct sys_rmdir_args), 0, 302 sys_rmdir }, /* 137 = rmdir */ 303 { 2, s(struct sys_utimes_args), 0, 304 sys_utimes }, /* 138 = utimes */ 305 { 1, s(struct sunos_sys_sigreturn_args), 0, 306 sunos_sys_sigreturn }, /* 139 = sigreturn */ 307 { 2, s(struct sys_adjtime_args), 0, 308 sys_adjtime }, /* 140 = adjtime */ 309 { 3, s(struct compat_43_sys_getpeername_args), 0, 310 compat_43_sys_getpeername }, /* 141 = getpeername */ 311 { 0, 0, 0, 312 compat_43_sys_gethostid }, /* 142 = gethostid */ 313 { 0, 0, 0, 314 sys_nosys }, /* 143 = unimplemented old sethostid */ 315 { 2, s(struct sunos_sys_getrlimit_args), 0, 316 sunos_sys_getrlimit }, /* 144 = getrlimit */ 317 { 2, s(struct sunos_sys_setrlimit_args), 0, 318 sunos_sys_setrlimit }, /* 145 = setrlimit */ 319 { 2, s(struct compat_43_sys_killpg_args), 0, 320 compat_43_sys_killpg }, /* 146 = killpg */ 321 { 0, 0, 0, 322 sys_nosys }, /* 147 = unimplemented */ 323 { 0, 0, 0, 324 sys_nosys }, /* 148 = unimplemented */ 325 { 0, 0, 0, 326 sys_nosys }, /* 149 = unimplemented */ 327 { 3, s(struct compat_43_sys_getsockname_args), 0, 328 compat_43_sys_getsockname }, /* 150 = getsockname */ 329 { 0, 0, 0, 330 sys_nosys }, /* 151 = unimplemented getmsg */ 331 { 0, 0, 0, 332 sys_nosys }, /* 152 = unimplemented putmsg */ 333 { 3, s(struct sys_poll_args), 0, 334 sys_poll }, /* 153 = poll */ 335 { 0, 0, 0, 336 sys_nosys }, /* 154 = unimplemented */ 337 #ifdef NFSSERVER 338 { 1, s(struct sunos_sys_nfssvc_args), 0, 339 sunos_sys_nfssvc }, /* 155 = nfssvc */ 340 #else 341 { 0, 0, 0, 342 sys_nosys }, /* 155 = unimplemented */ 343 #endif 344 { 4, s(struct compat_12_sys_getdirentries_args), 0, 345 compat_12_sys_getdirentries }, /* 156 = getdirentries */ 346 { 2, s(struct sunos_sys_statfs_args), 0, 347 sunos_sys_statfs }, /* 157 = statfs */ 348 { 2, s(struct sunos_sys_fstatfs_args), 0, 349 sunos_sys_fstatfs }, /* 158 = fstatfs */ 350 { 1, s(struct sunos_sys_unmount_args), 0, 351 sunos_sys_unmount }, /* 159 = unmount */ 352 #ifdef NFS 353 { 0, 0, 0, 354 async_daemon }, /* 160 = async_daemon */ 355 { 2, s(struct sys_getfh_args), 0, 356 sys_getfh }, /* 161 = getfh */ 357 #else 358 { 0, 0, 0, 359 sys_nosys }, /* 160 = unimplemented */ 360 { 0, 0, 0, 361 sys_nosys }, /* 161 = unimplemented */ 362 #endif 363 { 2, s(struct compat_09_sys_getdomainname_args), 0, 364 compat_09_sys_getdomainname }, /* 162 = getdomainname */ 365 { 2, s(struct compat_09_sys_setdomainname_args), 0, 366 compat_09_sys_setdomainname }, /* 163 = setdomainname */ 367 { 0, 0, 0, 368 sys_nosys }, /* 164 = unimplemented rtschedule */ 369 { 4, s(struct sunos_sys_quotactl_args), 0, 370 sunos_sys_quotactl }, /* 165 = quotactl */ 371 { 2, s(struct sunos_sys_exportfs_args), 0, 372 sunos_sys_exportfs }, /* 166 = exportfs */ 373 { 4, s(struct sunos_sys_mount_args), 0, 374 sunos_sys_mount }, /* 167 = mount */ 375 { 2, s(struct sunos_sys_ustat_args), 0, 376 sunos_sys_ustat }, /* 168 = ustat */ 377 #ifdef SYSVSEM 378 { 5, s(struct compat_10_sys_semsys_args), 0, 379 compat_10_sys_semsys }, /* 169 = semsys */ 380 #else 381 { 0, 0, 0, 382 sys_nosys }, /* 169 = unimplemented semsys */ 383 #endif 384 #ifdef SYSVMSG 385 { 6, s(struct compat_10_sys_msgsys_args), 0, 386 compat_10_sys_msgsys }, /* 170 = msgsys */ 387 #else 388 { 0, 0, 0, 389 sys_nosys }, /* 170 = unimplemented msgsys */ 390 #endif 391 #ifdef SYSVSHM 392 { 4, s(struct compat_10_sys_shmsys_args), 0, 393 compat_10_sys_shmsys }, /* 171 = shmsys */ 394 #else 395 { 0, 0, 0, 396 sys_nosys }, /* 171 = unimplemented shmsys */ 397 #endif 398 { 1, s(struct sunos_sys_auditsys_args), 0, 399 sunos_sys_auditsys }, /* 172 = auditsys */ 400 { 0, 0, 0, 401 sys_nosys }, /* 173 = unimplemented rfssys */ 402 { 3, s(struct sunos_sys_getdents_args), 0, 403 sunos_sys_getdents }, /* 174 = getdents */ 404 { 0, 0, 0, 405 sys_setsid }, /* 175 = setsid */ 406 { 1, s(struct sys_fchdir_args), 0, 407 sys_fchdir }, /* 176 = fchdir */ 408 { 1, s(struct sys_fchroot_args), 0, 409 sys_fchroot }, /* 177 = fchroot */ 410 { 0, 0, 0, 411 sys_nosys }, /* 178 = unimplemented vpixsys */ 412 { 0, 0, 0, 413 sys_nosys }, /* 179 = unimplemented aioread */ 414 { 0, 0, 0, 415 sys_nosys }, /* 180 = unimplemented aiowrite */ 416 { 0, 0, 0, 417 sys_nosys }, /* 181 = unimplemented aiowait */ 418 { 0, 0, 0, 419 sys_nosys }, /* 182 = unimplemented aiocancel */ 420 { 1, s(struct sunos_sys_sigpending_args), 0, 421 sunos_sys_sigpending }, /* 183 = sigpending */ 422 { 0, 0, 0, 423 sys_nosys }, /* 184 = unimplemented */ 424 { 2, s(struct sys_setpgid_args), 0, 425 sys_setpgid }, /* 185 = setpgid */ 426 { 2, s(struct sys_pathconf_args), 0, 427 sys_pathconf }, /* 186 = pathconf */ 428 { 2, s(struct sys_fpathconf_args), 0, 429 sys_fpathconf }, /* 187 = fpathconf */ 430 { 1, s(struct sunos_sys_sysconf_args), 0, 431 sunos_sys_sysconf }, /* 188 = sysconf */ 432 { 1, s(struct sunos_sys_uname_args), 0, 433 sunos_sys_uname }, /* 189 = uname */ 434 }; 435 436