syscalls.master revision 1.48
1 $NetBSD: syscalls.master,v 1.48 2006/06/26 21:23:57 mrg Exp $ 2 3; from: NetBSD: syscalls.master,v 1.81 1998/07/05 08:49:50 jonathan Exp 4; @(#)syscalls.master 8.2 (Berkeley) 1/13/94 5 6; NetBSD system call name/number "master" file. 7; (See syscalls.conf to see what it is processed into.) 8; 9; Fields: number type [type-dependent ...] 10; number system call number, must be in order 11; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of 12; the compatibility options defined in syscalls.conf. 13; 14; types: 15; STD always included 16; OBSOL obsolete, not included in system 17; UNIMPL unimplemented, not included in system 18; EXCL implemented, but not included in system 19; NODEF included, but don't define the syscall number 20; NOARGS included, but don't define the syscall args structure 21; INDIR included, but don't define the syscall args structure, 22; and allow it to be "really" varargs. 23; 24; The compat options are defined in the syscalls.conf file, and the 25; compat option name is prefixed to the syscall name. Other than 26; that, they're like NODEF (for 'compat' options), or STD (for 27; 'libcompat' options). 28; 29; The type-dependent arguments are as follows: 30; For STD, NODEF, NOARGS, and compat syscalls: 31; { pseudo-proto } [alias] 32; For other syscalls: 33; [comment] 34; 35; #ifdef's, etc. may be included, and are copied to the output files. 36; #include's are copied to the syscall names and switch definition files only. 37 38#if defined(_KERNEL_OPT) 39#include "opt_ktrace.h" 40#include "opt_nfsserver.h" 41#include "opt_compat_netbsd.h" 42#include "opt_ntp.h" 43#include "opt_sysv.h" 44#include "opt_compat_43.h" 45#include "opt_posix.h" 46 47#include "fs_lfs.h" 48#include "fs_nfs.h" 49#endif 50 51#include <sys/param.h> 52#include <sys/systm.h> 53#include <sys/signal.h> 54#include <sys/mount.h> 55#include <sys/sa.h> 56#include <sys/syscallargs.h> 57 58#include <compat/netbsd32/netbsd32.h> 59#include <compat/netbsd32/netbsd32_syscallargs.h> 60 61%% 62 63; Reserved/unimplemented system calls in the range 0-150 inclusive 64; are reserved for use in future Berkeley releases. 65; Additional system calls implemented in vendor and other 66; redistributions should be placed in the reserved range at the end 67; of the current calls. 68 690 INDIR { int sys_syscall(int number, ...); } 701 STD { void netbsd32_exit(int rval); } 712 NOARGS { int sys_fork(void); } 723 STD { netbsd32_ssize_t netbsd32_read(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte); } 734 STD { netbsd32_ssize_t netbsd32_write(int fd, const netbsd32_voidp buf, netbsd32_size_t nbyte); } 745 STD { int netbsd32_open(const netbsd32_charp path, int flags, ... mode_t mode); } 756 STD { int netbsd32_close(int fd); } 767 STD { int netbsd32_wait4(int pid, netbsd32_intp status, int options, netbsd32_rusagep_t rusage); } 778 COMPAT_43 { int netbsd32_ocreat(const netbsd32_charp path, mode_t mode); } 789 STD { int netbsd32_link(const netbsd32_charp path, const netbsd32_charp link); } 7910 STD { int netbsd32_unlink(const netbsd32_charp path); } 8011 OBSOL execv 8112 STD { int netbsd32_chdir(const netbsd32_charp path); } 8213 STD { int netbsd32_fchdir(int fd); } 8314 STD { int netbsd32_mknod(const netbsd32_charp path, mode_t mode, dev_t dev); } 8415 STD { int netbsd32_chmod(const netbsd32_charp path, mode_t mode); } 8516 STD { int netbsd32_chown(const netbsd32_charp path, uid_t uid, gid_t gid); } 8617 STD { int netbsd32_break(netbsd32_charp nsize); } 8718 COMPAT_20 { int netbsd32_getfsstat(netbsd32_statfsp_t buf, netbsd32_long bufsize, int flags); } 8819 COMPAT_43 { netbsd32_long netbsd32_olseek(int fd, netbsd32_long offset, int whence); } 8920 NOARGS MPSAFE { pid_t sys_getpid(void); } 9021 STD { int netbsd32_mount(const netbsd32_charp type, const netbsd32_charp path, int flags, netbsd32_voidp data); } 9122 STD { int netbsd32_unmount(const netbsd32_charp path, int flags); } 9223 STD { int netbsd32_setuid(uid_t uid); } 9324 NOARGS { uid_t sys_getuid(void); } 9425 NOARGS { uid_t sys_geteuid(void); } 9526 STD { int netbsd32_ptrace(int req, pid_t pid, netbsd32_caddr_t addr, int data); } 9627 STD { netbsd32_ssize_t netbsd32_recvmsg(int s, netbsd32_msghdrp_t msg, int flags); } 9728 STD { netbsd32_ssize_t netbsd32_sendmsg(int s, const netbsd32_msghdrp_t msg, int flags); } 9829 STD { netbsd32_ssize_t netbsd32_recvfrom(int s, netbsd32_voidp buf, netbsd32_size_t len, int flags, netbsd32_sockaddrp_t from, netbsd32_intp fromlenaddr); } 9930 STD { int netbsd32_accept(int s, netbsd32_sockaddrp_t name, netbsd32_intp anamelen); } 10031 STD { int netbsd32_getpeername(int fdes, netbsd32_sockaddrp_t asa, netbsd32_intp alen); } 10132 STD { int netbsd32_getsockname(int fdes, netbsd32_sockaddrp_t asa, netbsd32_intp alen); } 10233 STD { int netbsd32_access(const netbsd32_charp path, int flags); } 10334 STD { int netbsd32_chflags(const netbsd32_charp path, netbsd32_u_long flags); } 10435 STD { int netbsd32_fchflags(int fd, netbsd32_u_long flags); } 10536 NOARGS { void sys_sync(void); } 10637 STD { int netbsd32_kill(int pid, int signum); } 10738 COMPAT_43 { int netbsd32_stat43(const netbsd32_charp path, netbsd32_stat43p_t ub); } 10839 NOARGS { pid_t sys_getppid(void); } 10940 COMPAT_43 { int netbsd32_lstat43(const netbsd32_charp path, netbsd32_stat43p_t ub); } 11041 STD { int netbsd32_dup(int fd); } 11142 NOARGS { int sys_pipe(void); } 11243 NOARGS { gid_t sys_getegid(void); } 11344 STD { int netbsd32_profil(netbsd32_caddr_t samples, netbsd32_size_t size, netbsd32_u_long offset, u_int scale); } 114#if defined(KTRACE) || !defined(_KERNEL) 11545 STD { int netbsd32_ktrace(const netbsd32_charp fname, int ops, int facs, int pid); } 116#else 11745 EXCL netbsd32_ktrace 118#endif 11946 STD { int netbsd32_sigaction(int signum, const netbsd32_sigactionp_t nsa, netbsd32_sigactionp_t osa); } 12047 NOARGS { gid_t sys_getgid(void); } 12148 COMPAT_13 { int netbsd32_sigprocmask(int how, \ 122 int mask); } sigprocmask13 12349 STD { int netbsd32___getlogin(netbsd32_charp namebuf, u_int namelen); } 12450 STD { int netbsd32_setlogin(const netbsd32_charp namebuf); } 12551 STD { int netbsd32_acct(const netbsd32_charp path); } 12652 COMPAT_13 { int sys_sigpending(void); } sigpending13 12753 COMPAT_13 { int netbsd32_sigaltstack13(const netbsd32_sigaltstack13p_t nss, netbsd32_sigaltstack13p_t oss); } 12854 STD { int netbsd32_ioctl(int fd, netbsd32_u_long com, ... netbsd32_voidp data); } 12955 COMPAT_12 { int netbsd32_reboot(int opt); } 13056 STD { int netbsd32_revoke(const netbsd32_charp path); } 13157 STD { int netbsd32_symlink(const netbsd32_charp path, const netbsd32_charp link); } 13258 STD { int netbsd32_readlink(const netbsd32_charp path, netbsd32_charp buf, netbsd32_size_t count); } 13359 STD { int netbsd32_execve(const netbsd32_charp path, netbsd32_charpp argp, netbsd32_charpp envp); } 13460 STD { mode_t netbsd32_umask(mode_t newmask); } 13561 STD { int netbsd32_chroot(const netbsd32_charp path); } 13662 COMPAT_43 { int netbsd32_fstat43(int fd, netbsd32_stat43p_t sb); } 13763 COMPAT_43 { int netbsd32_ogetkerninfo(int op, netbsd32_charp where, netbsd32_intp size, int arg); } 13864 COMPAT_43 { int sys_getpagesize(void); } ogetpagesize 13965 COMPAT_12 { int netbsd32_msync(netbsd32_caddr_t addr, netbsd32_size_t len); } 140; XXX COMPAT_??? for 4.4BSD-compatible vfork(2)? 14166 NOARGS { int sys_vfork(void); } 14267 OBSOL vread 14368 OBSOL vwrite 14469 STD { int netbsd32_sbrk(netbsd32_intptr_t incr); } 14570 STD { int netbsd32_sstk(int incr); } 14671 COMPAT_43 { int netbsd32_ommap(netbsd32_caddr_t addr, netbsd32_size_t len, int prot, int flags, int fd, netbsd32_long pos); } 14772 STD { int netbsd32_ovadvise(int anom); } vadvise 14873 STD { int netbsd32_munmap(netbsd32_voidp addr, netbsd32_size_t len); } 14974 STD { int netbsd32_mprotect(netbsd32_voidp addr, netbsd32_size_t len, int prot); } 15075 STD { int netbsd32_madvise(netbsd32_voidp addr, netbsd32_size_t len, int behav); } 15176 OBSOL vhangup 15277 OBSOL vlimit 15378 STD { int netbsd32_mincore(netbsd32_caddr_t addr, netbsd32_size_t len, netbsd32_charp vec); } 15479 STD { int netbsd32_getgroups(int gidsetsize, netbsd32_gid_tp gidset); } 15580 STD { int netbsd32_setgroups(int gidsetsize, const netbsd32_gid_tp gidset); } 15681 NOARGS { int sys_getpgrp(void); } 15782 STD { int netbsd32_setpgid(int pid, int pgid); } 15883 STD { int netbsd32_setitimer(int which, const netbsd32_itimervalp_t itv, netbsd32_itimervalp_t oitv); } 15984 COMPAT_43 { int sys_wait(void); } owait 16085 COMPAT_12 { int netbsd32_oswapon(const netbsd32_charp name); } 16186 STD { int netbsd32_getitimer(int which, netbsd32_itimervalp_t itv); } 16287 COMPAT_43 { int netbsd32_ogethostname(netbsd32_charp hostname, u_int len); } 16388 COMPAT_43 { int netbsd32_osethostname(netbsd32_charp hostname, u_int len); } 16489 COMPAT_43 { int sys_getdtablesize(void); } ogetdtablesize 16590 STD { int netbsd32_dup2(int from, int to); } 16691 UNIMPL getdopt 16792 STD { int netbsd32_fcntl(int fd, int cmd, ... netbsd32_voidp arg); } 16893 STD { int netbsd32_select(int nd, netbsd32_fd_setp_t in, netbsd32_fd_setp_t ou, netbsd32_fd_setp_t ex, netbsd32_timevalp_t tv); } 16994 UNIMPL setdopt 17095 STD { int netbsd32_fsync(int fd); } 17196 STD { int netbsd32_setpriority(int which, int who, int prio); } 17297 COMPAT_30 { int netbsd32_socket(int domain, int type, int protocol); } 17398 STD { int netbsd32_connect(int s, const netbsd32_sockaddrp_t name, int namelen); } 17499 COMPAT_43 { int netbsd32_oaccept(int s, netbsd32_caddr_t name, netbsd32_intp anamelen); } 175100 STD { int netbsd32_getpriority(int which, int who); } 176101 COMPAT_43 { int netbsd32_osend(int s, netbsd32_caddr_t buf, int len, int flags); } 177102 COMPAT_43 { int netbsd32_orecv(int s, netbsd32_caddr_t buf, int len, int flags); } 178103 COMPAT_13 { int netbsd32_sigreturn(netbsd32_sigcontextp_t sigcntxp); } sigreturn13 179104 STD { int netbsd32_bind(int s, const netbsd32_sockaddrp_t name, int namelen); } 180105 STD { int netbsd32_setsockopt(int s, int level, int name, const netbsd32_voidp val, int valsize); } 181106 STD { int netbsd32_listen(int s, int backlog); } 182107 OBSOL vtimes 183108 COMPAT_43 { int netbsd32_osigvec(int signum, netbsd32_sigvecp_t nsv, netbsd32_sigvecp_t osv); } 184#if defined(COMPAT_43) || defined(COMPAT_SUNOS) 185109 COMPAT_43 { int netbsd32_sigblock(int mask); } 186110 COMPAT_43 { int netbsd32_sigsetmask(int mask); } 187#else 188109 OBSOL sigblock 189110 OBSOL sigsetmask 190#endif 191111 COMPAT_13 { int netbsd32_sigsuspend(int mask); } sigsuspend13 192112 COMPAT_43 { int netbsd32_osigstack(netbsd32_sigstackp_t nss, netbsd32_sigstackp_t oss); } 193113 COMPAT_43 { int netbsd32_orecvmsg(int s, netbsd32_omsghdrp_t msg, int flags); } 194114 COMPAT_43 { int netbsd32_osendmsg(int s, netbsd32_caddr_t msg, int flags); } 195115 OBSOL vtrace 196116 STD { int netbsd32_gettimeofday(netbsd32_timevalp_t tp, netbsd32_timezonep_t tzp); } 197117 STD { int netbsd32_getrusage(int who, netbsd32_rusagep_t rusage); } 198118 STD { int netbsd32_getsockopt(int s, int level, int name, netbsd32_voidp val, netbsd32_intp avalsize); } 199119 OBSOL resuba 200120 STD { netbsd32_ssize_t netbsd32_readv(int fd, const netbsd32_iovecp_t iovp, int iovcnt); } 201121 STD { netbsd32_ssize_t netbsd32_writev(int fd, const netbsd32_iovecp_t iovp, int iovcnt); } 202122 STD { int netbsd32_settimeofday(const netbsd32_timevalp_t tv, const netbsd32_timezonep_t tzp); } 203123 STD { int netbsd32_fchown(int fd, uid_t uid, gid_t gid); } 204124 STD { int netbsd32_fchmod(int fd, mode_t mode); } 205125 COMPAT_43 { int netbsd32_orecvfrom(int s, netbsd32_caddr_t buf, netbsd32_size_t len, int flags, netbsd32_caddr_t from, netbsd32_intp fromlenaddr); } 206126 STD { int netbsd32_setreuid(uid_t ruid, uid_t euid); } 207127 STD { int netbsd32_setregid(gid_t rgid, gid_t egid); } 208128 STD { int netbsd32_rename(const netbsd32_charp from, const netbsd32_charp to); } 209129 COMPAT_43 { int netbsd32_otruncate(const netbsd32_charp path, netbsd32_long length); } 210130 COMPAT_43 { int netbsd32_oftruncate(int fd, netbsd32_long length); } 211131 STD { int netbsd32_flock(int fd, int how); } 212132 STD { int netbsd32_mkfifo(const netbsd32_charp path, mode_t mode); } 213133 STD { netbsd32_ssize_t netbsd32_sendto(int s, const netbsd32_voidp buf, netbsd32_size_t len, int flags, const netbsd32_sockaddrp_t to, int tolen); } 214134 STD { int netbsd32_shutdown(int s, int how); } 215135 STD { int netbsd32_socketpair(int domain, int type, int protocol, netbsd32_intp rsv); } 216136 STD { int netbsd32_mkdir(const netbsd32_charp path, mode_t mode); } 217137 STD { int netbsd32_rmdir(const netbsd32_charp path); } 218138 STD { int netbsd32_utimes(const netbsd32_charp path, const netbsd32_timevalp_t tptr); } 219139 OBSOL 4.2 sigreturn 220140 STD { int netbsd32_adjtime(const netbsd32_timevalp_t delta, netbsd32_timevalp_t olddelta); } 221141 COMPAT_43 { int netbsd32_ogetpeername(int fdes, netbsd32_caddr_t asa, netbsd32_intp alen); } 222142 COMPAT_43 { int32_t sys_gethostid(void); } ogethostid 223#if defined(COMPAT_43) || defined(COMPAT_SUNOS) 224143 COMPAT_43 { int netbsd32_sethostid(int32_t hostid); } 225#else 226143 OBSOL sethostid 227#endif 228144 COMPAT_43 { int netbsd32_ogetrlimit(int which, netbsd32_orlimitp_t rlp); } 229145 COMPAT_43 { int netbsd32_osetrlimit(int which, const netbsd32_orlimitp_t rlp); } 230#if defined(COMPAT_43) || defined(COMPAT_SUNOS) 231146 COMPAT_43 { int netbsd32_killpg(int pgid, int signum); } 232#else 233146 OBSOL killpg 234#endif 235147 NOARGS { int sys_setsid(void); } 236148 STD { int netbsd32_quotactl(const netbsd32_charp path, int cmd, int uid, netbsd32_caddr_t arg); } 237149 COMPAT_43 { int sys_quota(void); } oquota 238150 COMPAT_43 { int netbsd32_ogetsockname(int fdec, netbsd32_caddr_t asa, netbsd32_intp alen); } 239 240; Syscalls 151-180 inclusive are reserved for vendor-specific 241; system calls. (This includes various calls added for compatibity 242; with other Unix variants.) 243; Some of these calls are now supported by BSD... 244151 UNIMPL 245152 UNIMPL 246153 UNIMPL 247154 UNIMPL 248#if defined(NFS) || defined(NFSSERVER) || !defined(_KERNEL) 249155 STD { int netbsd32_nfssvc(int flag, netbsd32_voidp argp); } 250#else 251155 EXCL netbsd32_nfssvc 252#endif 253156 COMPAT_43 { int netbsd32_ogetdirentries(int fd, netbsd32_charp buf, u_int count, netbsd32_longp basep); } 254157 COMPAT_20 { int netbsd32_statfs(const netbsd32_charp path, netbsd32_statfsp_t buf); } 255158 COMPAT_20 { int netbsd32_fstatfs(int fd, netbsd32_statfsp_t buf); } 256159 UNIMPL 257160 UNIMPL 258#if defined(NFS) || defined(NFSSERVER) || !defined(_KERNEL) 259161 STD { int netbsd32_getfh(const netbsd32_charp fname, netbsd32_fhandlep_t fhp); } 260#else 261161 EXCL netbsd32_getfh 262#endif 263162 COMPAT_09 { int netbsd32_ogetdomainname(netbsd32_charp domainname, int len); } 264163 COMPAT_09 { int netbsd32_osetdomainname(netbsd32_charp domainname, int len); } 265164 COMPAT_09 { int netbsd32_uname(netbsd32_outsnamep_t name); } 266165 STD { int netbsd32_sysarch(int op, netbsd32_voidp parms); } 267166 UNIMPL 268167 UNIMPL 269168 UNIMPL 270#if defined(SYSVSEM) || !defined(_KERNEL) 271169 COMPAT_10 { int netbsd32_sys_semsys(int which, int a2, int a3, int a4, int a5); } osemsys 272#else 273169 EXCL netbsd32_sys_semsys 274#endif 275#if defined(SYSVMSG) || !defined(_KERNEL) 276170 COMPAT_10 { int netbsd32_sys_msgsys(int which, int a2, int a3, int a4, int a5, int a6); } omsgsys 277#else 278170 EXCL netbsd32_sys_msgsys 279#endif 280#if defined(SYSVSHM) || !defined(_KERNEL) 281171 COMPAT_10 { int netbsd32_sys_shmsys(int which, int a2, int a3, int a4); } oshmsys 282#else 283171 EXCL netbsd32_sys_shmsys 284#endif 285172 UNIMPL 286173 STD { netbsd32_ssize_t netbsd32_pread(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte, int pad, off_t offset); } 287174 STD { netbsd32_ssize_t netbsd32_pwrite(int fd, const netbsd32_voidp buf, netbsd32_size_t nbyte, int pad, off_t offset); } 288175 COMPAT_30 { int netbsd32_ntp_gettime(netbsd32_ntptimevalp_t ntvp); } 289176 STD { int netbsd32_ntp_adjtime(netbsd32_timexp_t tp); } 290177 UNIMPL 291178 UNIMPL 292179 UNIMPL 293180 UNIMPL 294 295; Syscalls 180-199 are used by/reserved for BSD 296181 STD { int netbsd32_setgid(gid_t gid); } 297182 STD { int netbsd32_setegid(gid_t egid); } 298183 STD { int netbsd32_seteuid(uid_t euid); } 299#if defined(LFS) || !defined(_KERNEL) 300184 STD { int netbsd32_sys_lfs_bmapv(netbsd32_fsid_tp_t fsidp, netbsd32_block_infop_t blkiov, int blkcnt); } 301185 STD { int netbsd32_sys_lfs_markv(netbsd32_fsid_tp_t fsidp, netbsd32_block_infop_t blkiov, int blkcnt); } 302186 STD { int netbsd32_sys_lfs_segclean(netbsd32_fsid_tp_t fsidp, netbsd32_u_long segment); } 303187 STD { int netbsd32_sys_lfs_segwait(netbsd32_fsid_tp_t fsidp, netbsd32_timevalp_t tv); } 304#else 305184 EXCL netbsd32_sys_lfs_bmapv 306185 EXCL netbsd32_sys_lfs_markv 307186 EXCL netbsd32_sys_lfs_segclean 308187 EXCL netbsd32_sys_lfs_segwait 309#endif 310188 COMPAT_12 { int netbsd32_stat12(const netbsd32_charp path, netbsd32_stat12p_t ub); } 311189 COMPAT_12 { int netbsd32_fstat12(int fd, netbsd32_stat12p_t sb); } 312190 COMPAT_12 { int netbsd32_lstat12(const netbsd32_charp path, netbsd32_stat12p_t ub); } 313191 STD { netbsd32_long netbsd32_pathconf(const netbsd32_charp path, int name); } 314192 STD { netbsd32_long netbsd32_fpathconf(int fd, int name); } 315193 UNIMPL 316194 STD { int netbsd32_getrlimit(int which, netbsd32_rlimitp_t rlp); } 317195 STD { int netbsd32_setrlimit(int which, const netbsd32_rlimitp_t rlp); } 318196 COMPAT_12 { int netbsd32_getdirentries(int fd, netbsd32_charp buf, u_int count, netbsd32_longp basep); } 319197 STD { netbsd32_voidp netbsd32_mmap(netbsd32_voidp addr, netbsd32_size_t len, int prot, int flags, int fd, netbsd32_long pad, off_t pos); } 320198 INDIR { quad_t sys___syscall(quad_t num, ...); } 321199 STD { off_t netbsd32_lseek(int fd, int pad, off_t offset, int whence); } 322200 STD { int netbsd32_truncate(const netbsd32_charp path, int pad, off_t length); } 323201 STD { int netbsd32_ftruncate(int fd, int pad, off_t length); } 324202 STD { int netbsd32___sysctl(netbsd32_intp name, u_int namelen, netbsd32_voidp old, netbsd32_size_tp oldlenp, netbsd32_voidp new, netbsd32_size_t newlen); } 325203 STD { int netbsd32_mlock(const netbsd32_voidp addr, netbsd32_size_t len); } 326204 STD { int netbsd32_munlock(const netbsd32_voidp addr, netbsd32_size_t len); } 327205 STD { int netbsd32_undelete(const netbsd32_charp path); } 328206 STD { int netbsd32_futimes(int fd, const netbsd32_timevalp_t tptr); } 329207 STD { int netbsd32_getpgid(pid_t pid); } 330208 STD { int netbsd32_reboot(int opt, netbsd32_charp bootstr); } 331209 STD { int netbsd32_poll(netbsd32_pollfdp_t fds, u_int nfds, int timeout); } 332; 333; Syscalls 210-219 are reserved for dynamically loaded syscalls 334; 335#if defined(LKM) || !defined(_KERNEL) 336210 NODEF { int sys_lkmnosys(void); } 337211 NODEF { int sys_lkmnosys(void); } 338212 NODEF { int sys_lkmnosys(void); } 339213 NODEF { int sys_lkmnosys(void); } 340214 NODEF { int sys_lkmnosys(void); } 341215 NODEF { int sys_lkmnosys(void); } 342216 NODEF { int sys_lkmnosys(void); } 343217 NODEF { int sys_lkmnosys(void); } 344218 NODEF { int sys_lkmnosys(void); } 345219 NODEF { int sys_lkmnosys(void); } 346#else /* !LKM || !_KERNEL */ 347210 EXCL lkmnosys 348211 EXCL lkmnosys 349212 EXCL lkmnosys 350213 EXCL lkmnosys 351214 EXCL lkmnosys 352215 EXCL lkmnosys 353216 EXCL lkmnosys 354217 EXCL lkmnosys 355218 EXCL lkmnosys 356219 EXCL lkmnosys 357#endif /* !LKM || !_KERNEL */ 358; System calls 220-300 are reserved for use by NetBSD 359#if defined(SYSVSEM) || !defined(_KERNEL) 360220 COMPAT_14 { int netbsd32___semctl(int semid, int semnum, int cmd, netbsd32_semunu_t arg); } 361221 STD { int netbsd32_semget(netbsd32_key_t key, int nsems, int semflg); } 362222 STD { int netbsd32_semop(int semid, netbsd32_sembufp_t sops, netbsd32_size_t nsops); } 363223 STD { int netbsd32_semconfig(int flag); } 364#else 365220 EXCL compat_14_netbsd32_semctl 366221 EXCL netbsd32_semget 367222 EXCL netbsd32_semop 368223 EXCL netbsd32_semconfig 369#endif 370#if defined(SYSVMSG) || !defined(_KERNEL) 371224 COMPAT_14 { int netbsd32_msgctl(int msqid, int cmd, netbsd32_msqid_dsp_t buf); } 372225 STD { int netbsd32_msgget(netbsd32_key_t key, int msgflg); } 373226 STD { int netbsd32_msgsnd(int msqid, const netbsd32_voidp msgp, netbsd32_size_t msgsz, int msgflg); } 374227 STD { netbsd32_ssize_t netbsd32_msgrcv(int msqid, netbsd32_voidp msgp, netbsd32_size_t msgsz, netbsd32_long msgtyp, int msgflg); } 375#else 376224 EXCL compat_14_netbsd32_msgctl 377225 EXCL netbsd32_msgget 378226 EXCL netbsd32_msgsnd 379227 EXCL netbsd32_msgrcv 380#endif 381#if defined(SYSVSHM) || !defined(_KERNEL) 382228 STD { netbsd32_voidp netbsd32_shmat(int shmid, const netbsd32_voidp shmaddr, int shmflg); } 383229 COMPAT_14 { int netbsd32_shmctl(int shmid, int cmd, netbsd32_shmid_dsp_t buf); } 384230 STD { int netbsd32_shmdt(const netbsd32_voidp shmaddr); } 385231 STD { int netbsd32_shmget(netbsd32_key_t key, netbsd32_size_t size, int shmflg); } 386#else 387228 EXCL netbsd32_shmat 388229 EXCL compat_14_netbsd32_shmctl 389230 EXCL netbsd32_shmdt 390231 EXCL netbsd32_shmget 391#endif 392232 STD { int netbsd32_clock_gettime(netbsd32_clockid_t clock_id, netbsd32_timespecp_t tp); } 393233 STD { int netbsd32_clock_settime(netbsd32_clockid_t clock_id, const netbsd32_timespecp_t tp); } 394234 STD { int netbsd32_clock_getres(netbsd32_clockid_t clock_id, netbsd32_timespecp_t tp); } 395235 STD { int netbsd32_timer_create(netbsd32_clockid_t clock_id, netbsd32_sigeventp_t evp, \ 396 netbsd32_timerp_t timerid); } 397236 STD { int netbsd32_timer_delete(netbsd32_timer_t timerid); } 398237 STD { int netbsd32_timer_settime(netbsd32_timer_t timerid, int flags, \ 399 const netbsd32_itimerspecp_t value, \ 400 netbsd32_itimerspecp_t ovalue); } 401238 STD { int netbsd32_timer_gettime(netbsd32_timer_t timerid, netbsd32_itimerspecp_t value); } 402239 STD { int netbsd32_timer_getoverrun(netbsd32_timer_t timerid); } 403; 404; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls 405; 406240 STD { int netbsd32_nanosleep(const netbsd32_timespecp_t rqtp, netbsd32_timespecp_t rmtp); } 407241 STD { int netbsd32_fdatasync(int fd); } 408242 STD { int netbsd32_mlockall(int flags); } 409243 NOARGS { int sys_munlockall(void); } 410244 STD { int netbsd32___sigtimedwait(const netbsd32_sigsetp_t set, \ 411 netbsd32_siginfop_t info, \ 412 netbsd32_timespecp_t timeout); } 413245 UNIMPL 414246 UNIMPL 415#if defined(P1003_1B_SEMAPHORE) || (!defined(_KERNEL) && defined(_LIBC)) 416247 STD { int netbsd32__ksem_init(unsigned int value, netbsd32_semidp_t idp); } 417248 STD { int netbsd32__ksem_open(const netbsd32_charp name, int oflag, \ 418 mode_t mode, unsigned int value, netbsd32_semidp_t idp); } 419249 STD { int netbsd32__ksem_unlink(const netbsd32_charp name); } 420250 STD { int netbsd32__ksem_close(netbsd32_semid_t id); } 421251 STD { int netbsd32__ksem_post(netbsd32_semid_t id); } 422252 STD { int netbsd32__ksem_wait(netbsd32_semid_t id); } 423253 STD { int netbsd32__ksem_trywait(netbsd32_semid_t id); } 424254 STD { int netbsd32__ksem_getvalue(netbsd32_semid_t id, \ 425 netbsd32_intp value); } 426255 STD { int netbsd32__ksem_destroy(netbsd32_semid_t id); } 427256 UNIMPL sys__ksem_timedwait 428#else 429247 EXCL sys__ksem_init 430248 EXCL sys__ksem_open 431249 EXCL sys__ksem_unlink 432250 EXCL sys__ksem_close 433251 EXCL sys__ksem_post 434252 EXCL sys__ksem_wait 435253 EXCL sys__ksem_trywait 436254 EXCL sys__ksem_getvalue 437255 EXCL sys__ksem_destroy 438256 UNIMPL sys__ksem_timedwait 439#endif 440257 UNIMPL 441258 UNIMPL 442259 UNIMPL 443260 UNIMPL 444261 UNIMPL 445262 UNIMPL 446263 UNIMPL 447264 UNIMPL 448265 UNIMPL 449266 UNIMPL 450267 UNIMPL 451268 UNIMPL 452269 UNIMPL 453270 STD { int netbsd32___posix_rename(const netbsd32_charp from, const netbsd32_charp to); } 454271 STD { int netbsd32_swapctl(int cmd, netbsd32_voidp arg, int misc); } 455272 STD { int netbsd32_getdents(int fd, netbsd32_charp buf, netbsd32_size_t count); } 456273 STD { int netbsd32_minherit(netbsd32_voidp addr, netbsd32_size_t len, int inherit); } 457274 STD { int netbsd32_lchmod(const netbsd32_charp path, mode_t mode); } 458275 STD { int netbsd32_lchown(const netbsd32_charp path, uid_t uid, gid_t gid); } 459276 STD { int netbsd32_lutimes(const netbsd32_charp path, const netbsd32_timevalp_t tptr); } 460277 STD { int netbsd32___msync13(netbsd32_voidp addr, netbsd32_size_t len, int flags); } 461278 STD { int netbsd32___stat13(const netbsd32_charp path, netbsd32_stat13p_t ub); } 462279 STD { int netbsd32___fstat13(int fd, netbsd32_stat13p_t sb); } 463280 STD { int netbsd32___lstat13(const netbsd32_charp path, netbsd32_stat13p_t ub); } 464281 STD { int netbsd32___sigaltstack14(const netbsd32_sigaltstackp_t nss, netbsd32_sigaltstackp_t oss); } 465282 NOARGS { int sys___vfork14(void); } 466283 STD { int netbsd32___posix_chown(const netbsd32_charp path, uid_t uid, gid_t gid); } 467284 STD { int netbsd32___posix_fchown(int fd, uid_t uid, gid_t gid); } 468285 STD { int netbsd32___posix_lchown(const netbsd32_charp path, uid_t uid, gid_t gid); } 469286 STD { pid_t netbsd32_getsid(pid_t pid); } 470287 STD { int netbsd32___clone(int flags, netbsd32_voidp stack); } 471#if defined(KTRACE) || !defined(_KERNEL) 472288 STD { int netbsd32_fktrace(const int fd, int ops, int facs, int pid); } 473#else 474288 EXCL netbsd32_fktrace 475#endif 476289 STD { netbsd32_ssize_t netbsd32_preadv(int fd, const netbsd32_iovecp_t iovp, int iovcnt, int pad, off_t offset); } 477290 STD { netbsd32_ssize_t netbsd32_pwritev(int fd, const netbsd32_iovecp_t iovp, int iovcnt, int pad, off_t offset); } 478291 STD { int netbsd32___sigaction14(int signum, \ 479 const netbsd32_sigactionp_t nsa, \ 480 netbsd32_sigactionp_t osa); } 481292 STD { int netbsd32___sigpending14(netbsd32_sigsetp_t set); } 482293 STD { int netbsd32___sigprocmask14(int how, \ 483 const netbsd32_sigsetp_t set, \ 484 netbsd32_sigsetp_t oset); } 485294 STD { int netbsd32___sigsuspend14(const netbsd32_sigsetp_t set); } 486295 COMPAT_16 { int netbsd32___sigreturn14(netbsd32_sigcontextp_t sigcntxp); } 487296 STD { int netbsd32___getcwd(netbsd32_charp bufp, netbsd32_size_t length); } 488297 STD { int netbsd32_fchroot(int fd); } 489298 STD { int netbsd32_fhopen(const netbsd32_fhandlep_t fhp, \ 490 int flags); } 491299 COMPAT_30 { int netbsd32_fhstat(const netbsd32_fhandlep_t fhp, \ 492 netbsd32_stat13p_t sb); } 493300 COMPAT_20 { int netbsd32_fhstatfs(netbsd32_fhandlep_t fhp, \ 494 netbsd32_statp_t buf); } 495#if defined(SYSVSEM) || !defined(_KERNEL) 496301 STD { int netbsd32___semctl14(int semid, int semnum, int cmd, \ 497 ... netbsd32_semunp_t arg); } 498#else 499301 EXCL __semctl14 500#endif 501#if defined(SYSVMSG) || !defined(_KERNEL) 502302 STD { int netbsd32___msgctl13(int msqid, int cmd, \ 503 netbsd32_msqid_dsp_t buf); } 504#else 505302 EXCL __msgctl13 506#endif 507#if defined(SYSVSHM) || !defined(_KERNEL) 508303 STD { int netbsd32___shmctl13(int shmid, int cmd, \ 509 netbsd32_shmid_dsp_t buf); } 510#else 511303 EXCL __shmctl13 512#endif 513304 STD { int netbsd32_lchflags(const netbsd32_charp path, netbsd32_u_long flags); } 514305 STD { int sys_issetugid(void); } 515306 STD { int netbsd32_utrace(const netbsd32_charp label, netbsd32_voidp addr, \ 516 netbsd32_size_t len); } 517; 518; Syscalls 307 and 308 are reserved for getcontext and setcontext 519; 520307 STD { int netbsd32_getcontext(netbsd32_ucontextp ucp); } 521308 STD { int netbsd32_setcontext(netbsd32_ucontextp ucp, \ 522 uint32_t flags, netbsd32_lwpidp new_lwp); } 523; 524; Syscalls 309-339 are reserved for LWP and scheduler activation syscalls. 525; 526309 STD { int netbsd32__lwp_create(const netbsd32_ucontextp ucp, \ 527 netbsd32_u_long flags, netbsd32_lwpidp new_lwp); } 528310 NOARGS { int sys__lwp_exit(void); } 529311 NOARGS { lwpid_t sys__lwp_self(void); } 530312 STD { int netbsd32__lwp_wait(lwpid_t wait_for, \ 531 netbsd32_lwpidp departed); } 532313 STD { int netbsd32__lwp_suspend(lwpid_t target); } 533314 STD { int netbsd32__lwp_continue(lwpid_t target); } 534315 STD { int netbsd32__lwp_wakeup(lwpid_t target); } 535316 NOARGS { void *sys__lwp_getprivate(void); } 536317 STD { void netbsd32__lwp_setprivate(netbsd32_voidp ptr); } 537318 UNIMPL 538319 UNIMPL 539320 UNIMPL 540321 UNIMPL 541322 UNIMPL 542323 UNIMPL 543324 UNIMPL 544325 UNIMPL 545326 UNIMPL 546327 UNIMPL 547328 UNIMPL 548329 UNIMPL 549330 STD { int netbsd32_sa_register(netbsd32_sa_upcall_t new, \ 550 netbsd32_sa_upcallp_t old, int flags, \ 551 netbsd32_ssize_t stackinfo_offset); } 552331 STD { int netbsd32_sa_stacks(int num, netbsd32_stackp_t stacks); } 553332 NOARGS { int sys_sa_enable(void); } 554333 STD { int netbsd32_sa_setconcurrency(int concurrency); } 555334 NOARGS { int sys_sa_yield(void); } 556335 STD { int netbsd32_sa_preempt(int sa_id); } 557336 OBSOL sys_sa_unblockyield 558337 UNIMPL 559338 UNIMPL 560339 UNIMPL 561340 STD { int netbsd32___sigaction_sigtramp(int signum, \ 562 const netbsd32_sigactionp_t nsa, \ 563 netbsd32_sigactionp_t osa, \ 564 netbsd32_voidp tramp, int vers); } 565341 UNIMPL 566342 UNIMPL 567343 STD { int netbsd32_rasctl(netbsd32_caddr_t addr, netbsd32_size_t len, \ 568 int op); } 569344 NOARGS { int sys_kqueue(void); } 570345 STD { int netbsd32_kevent(int fd, \ 571 netbsd32_keventp_t changelist, netbsd32_size_t nchanges, \ 572 netbsd32_keventp_t eventlist, netbsd32_size_t nevents, \ 573 netbsd32_timespecp_t timeout); } 574346 UNIMPL 575347 UNIMPL 576348 UNIMPL 577349 UNIMPL 578350 UNIMPL 579351 UNIMPL 580352 UNIMPL 581353 UNIMPL 582354 STD { int netbsd32_fsync_range(int fd, int flags, off_t start, \ 583 off_t length); } 584355 STD { int netbsd32_uuidgen(netbsd32_uuidp_t store, int count); } 585356 STD { int netbsd32_getvfsstat(netbsd32_statvfsp_t buf, \ 586 netbsd32_size_t bufsize, int flags); } 587357 STD { int netbsd32_statvfs1(const netbsd32_charp path, \ 588 netbsd32_statvfsp_t buf, int flags); } 589358 STD { int netbsd32_fstatvfs1(int fd, netbsd32_statvfsp_t buf, \ 590 int flags); } 591359 STD { int netbsd32_fhstatvfs1(const netbsd32_fhandlep_t fhp, \ 592 netbsd32_statvfsp_t buf, int flags); } 593360 STD { int netbsd32_extattrctl(const netbsd32_charp path, \ 594 int cmd, const netbsd32_charp filename, int attrnamespace, \ 595 const netbsd32_charp attrname); } 596361 STD { int netbsd32_extattr_set_file(const netbsd32_charp path, \ 597 int attrnamespace, const netbsd32_charp attrname, \ 598 const netbsd32_voidp data, netbsd32_size_t nbytes); } 599362 STD { int netbsd32_extattr_get_file(const netbsd32_charp path, \ 600 int attrnamespace, const netbsd32_charp attrname, \ 601 netbsd32_voidp data, netbsd32_size_t nbytes); } 602363 STD { int netbsd32_extattr_delete_file(const netbsd32_charp path, \ 603 int attrnamespace, const netbsd32_charp attrname); } 604364 STD { int netbsd32_extattr_set_fd(int fd, \ 605 int attrnamespace, const netbsd32_charp attrname, \ 606 const netbsd32_voidp data, netbsd32_size_t nbytes); } 607365 STD { int netbsd32_extattr_get_fd(int fd, \ 608 int attrnamespace, const netbsd32_charp attrname, \ 609 netbsd32_voidp data, netbsd32_size_t nbytes); } 610366 STD { int netbsd32_extattr_delete_fd(int fd, \ 611 int attrnamespace, const netbsd32_charp attrname); } 612367 STD { int netbsd32_extattr_set_link(const netbsd32_charp path, \ 613 int attrnamespace, const netbsd32_charp attrname, \ 614 const netbsd32_voidp data, netbsd32_size_t nbytes); } 615368 STD { int netbsd32_extattr_get_link(const netbsd32_charp path, \ 616 int attrnamespace, const netbsd32_charp attrname, \ 617 netbsd32_voidp data, netbsd32_size_t nbytes); } 618369 STD { int netbsd32_extattr_delete_link(const netbsd32_charp path, \ 619 int attrnamespace, const netbsd32_charp attrname); } 620370 STD { int netbsd32_extattr_list_fd(int fd, \ 621 int attrnamespace, netbsd32_voidp data, \ 622 netbsd32_size_t nbytes); } 623371 STD { int netbsd32_extattr_list_file(const netbsd32_charp path, \ 624 int attrnamespace, netbsd32_voidp data, \ 625 netbsd32_size_t nbytes); } 626372 STD { int netbsd32_extattr_list_link(const netbsd32_charp path, \ 627 int attrnamespace, netbsd32_voidp data, \ 628 netbsd32_size_t nbytes); } 629373 STD { int netbsd32_pselect(int nd, netbsd32_fd_setp_t in, \ 630 netbsd32_fd_setp_t ou, netbsd32_fd_setp_t ex, \ 631 const netbsd32_timespecp_t ts, const netbsd32_sigsetp_t mask); } 632374 STD { int netbsd32_pollts(netbsd32_pollfdp_t fds, u_int nfds, \ 633 const netbsd32_timespecp_t ts, const netbsd32_sigsetp_t mask); } 634375 STD { int netbsd32_setxattr(const netbsd32_charp path, \ 635 const netbsd32_charp name, netbsd32_voidp value, \ 636 netbsd32_size_t size, int flags); } 637376 STD { int netbsd32_lsetxattr(const netbsd32_charp path, \ 638 const netbsd32_charp name, netbsd32_voidp value, \ 639 netbsd32_size_t size, int flags); } 640377 STD { int netbsd32_fsetxattr(int fd, \ 641 const netbsd32_charp name, netbsd32_voidp value, \ 642 netbsd32_size_t size, int flags); } 643378 STD { int netbsd32_getxattr(const netbsd32_charp path, \ 644 const netbsd32_charp name, netbsd32_voidp value, \ 645 netbsd32_size_t size); } 646379 STD { int netbsd32_lgetxattr(const netbsd32_charp path, \ 647 const netbsd32_charp name, netbsd32_voidp value, \ 648 netbsd32_size_t size); } 649380 STD { int netbsd32_fgetxattr(int fd, \ 650 const netbsd32_charp name, netbsd32_voidp value, \ 651 netbsd32_size_t size); } 652381 STD { int netbsd32_listxattr(const netbsd32_charp path, \ 653 netbsd32_charp list, netbsd32_size_t size); } 654382 STD { int netbsd32_llistxattr(const netbsd32_charp path, \ 655 netbsd32_charp list, netbsd32_size_t size); } 656383 STD { int netbsd32_flistxattr(int fd, \ 657 netbsd32_charp list, netbsd32_size_t size); } 658384 STD { int netbsd32_removexattr(const netbsd32_charp path, \ 659 const netbsd32_charp name); } 660385 STD { int netbsd32_lremovexattr(const netbsd32_charp path, \ 661 const netbsd32_charp name); } 662386 STD { int netbsd32_fremovexattr(int fd, \ 663 const netbsd32_charp name); } 664387 STD { int netbsd32_sys___stat30(const netbsd32_charp path, \ 665 netbsd32_statp_t ub); } 666388 STD { int netbsd32_sys___fstat30(int fd, \ 667 netbsd32_statp_t sb); } 668389 STD { int netbsd32_sys___lstat30( \ 669 const netbsd32_charp path, netbsd32_statp_t ub); } 670390 STD { int netbsd32_sys___getdents30(int fd, \ 671 netbsd32_charp buf, netbsd32_size_t count); } 672391 NOARGS { int sys_posix_fadvise(int fd, off_t offset, \ 673 off_t len, int advice); } 674392 STD { int netbsd32_sys___fhstat30( \ 675 const netbsd32_fhandlep_t fhp, \ 676 netbsd32_statp_t sb); } 677393 STD { int netbsd32_ntp_gettime(netbsd32_ntptimevalp_t ntvp); } 678394 STD { int netbsd32_sys___socket30(int domain, int type, int protocol); } 679