syscalls.master revision 1.267
11.267Spooka $NetBSD: syscalls.master,v 1.267 2014/03/14 00:52:08 pooka Exp $ 21.28Smycroft 31.22Scgd; @(#)syscalls.master 8.2 (Berkeley) 1/13/94 41.1Sglass 51.23Scgd; NetBSD system call name/number "master" file. 61.23Scgd; (See syscalls.conf to see what it is processed into.) 71.23Scgd; 81.23Scgd; Fields: number type [type-dependent ...] 91.1Sglass; number system call number, must be in order 101.190Smartin; type one of STD, OBSOL, UNIMPL, IGNORED, NODEF, NOARGS, or one of 111.24Smycroft; the compatibility options defined in syscalls.conf. 121.23Scgd; 131.191Spooka; Optional fields are specified after the type field 141.217Spooka; (NOTE! they *must* be specified in this order): 151.217Spooka; MODULAR:attempt to autoload system call if not present 161.245Spooka; RUMP: generate rump syscall entry point 171.108Sthorpej; 181.1Sglass; types: 191.1Sglass; STD always included 201.23Scgd; OBSOL obsolete, not included in system 211.190Smartin; IGNORED syscall is a null op, but always succeeds 221.24Smycroft; UNIMPL unimplemented, not included in system 231.92Schristos; EXCL implemented, but not included in system 241.23Scgd; NODEF included, but don't define the syscall number 251.23Scgd; NOARGS included, but don't define the syscall args structure 261.43Scgd; INDIR included, but don't define the syscall args structure, 271.43Scgd; and allow it to be "really" varargs. 281.245Spooka; NOERR included, syscall does not set errno 291.259Schristos; EXTERN implemented, but as 3rd party module 301.23Scgd; 311.227Spooka; arguments: 321.227Spooka; PAD argument not part of the C interface, used only for padding 331.227Spooka; 341.23Scgd; The compat options are defined in the syscalls.conf file, and the 351.23Scgd; compat option name is prefixed to the syscall name. Other than 361.23Scgd; that, they're like NODEF (for 'compat' options), or STD (for 371.23Scgd; 'libcompat' options). 381.23Scgd; 391.23Scgd; The type-dependent arguments are as follows: 401.23Scgd; For STD, NODEF, NOARGS, and compat syscalls: 411.221Spooka; { return_type|prefix|compat(optional)|basename(pseudo-proto); } [alias] 421.23Scgd; For other syscalls: 431.23Scgd; [comment] 441.23Scgd; 451.23Scgd; #ifdef's, etc. may be included, and are copied to the output files. 461.70Sthorpej; #include's are copied to the syscall names and switch definition files only. 471.77Sthorpej 481.223Sapb#include "opt_modular.h" 491.102Sbjh21#include "opt_ntp.h" 501.85Stron#include "opt_sysv.h" 511.70Sthorpej 521.23Scgd#include <sys/param.h> 531.23Scgd#include <sys/systm.h> 541.23Scgd#include <sys/signal.h> 551.249Schristos#include <sys/socket.h> 561.23Scgd#include <sys/mount.h> 571.204Stsutsui#include <sys/sched.h> 581.23Scgd#include <sys/syscallargs.h> 591.103Smycroft 601.103Smycroft%% 611.1Sglass 621.1Sglass; Reserved/unimplemented system calls in the range 0-150 inclusive 631.1Sglass; are reserved for use in future Berkeley releases. 641.1Sglass; Additional system calls implemented in vendor and other 651.1Sglass; redistributions should be placed in the reserved range at the end 661.1Sglass; of the current calls. 671.1Sglass 681.221Spooka0 INDIR { int|sys||syscall(int code, \ 691.179Sdsl ... register_t args[SYS_MAXSYSARGS]); } 701.221Spooka1 STD { void|sys||exit(int rval); } 711.221Spooka2 STD { int|sys||fork(void); } 721.221Spooka3 STD RUMP { ssize_t|sys||read(int fd, void *buf, size_t nbyte); } 731.221Spooka4 STD RUMP { ssize_t|sys||write(int fd, const void *buf, \ 741.46Scgd size_t nbyte); } 751.221Spooka5 STD RUMP { int|sys||open(const char *path, \ 761.60Schristos int flags, ... mode_t mode); } 771.221Spooka6 STD RUMP { int|sys||close(int fd); } 781.243Schristos7 COMPAT_50 MODULAR { int|sys||wait4(pid_t pid, int *status, \ 791.219Schristos int options, struct rusage50 *rusage); } 801.221Spooka8 COMPAT_43 MODULAR { int|sys||creat(const char *path, mode_t mode); } ocreat 811.221Spooka9 STD RUMP { int|sys||link(const char *path, const char *link); } 821.221Spooka10 STD RUMP { int|sys||unlink(const char *path); } 831.23Scgd11 OBSOL execv 841.221Spooka12 STD RUMP { int|sys||chdir(const char *path); } 851.221Spooka13 STD RUMP { int|sys||fchdir(int fd); } 861.242Spooka14 COMPAT_50 MODULAR RUMP { int|sys||mknod(const char *path, mode_t mode, \ 871.219Schristos uint32_t dev); } 881.221Spooka15 STD RUMP { int|sys||chmod(const char *path, mode_t mode); } 891.221Spooka16 STD RUMP { int|sys||chown(const char *path, uid_t uid, \ 901.46Scgd gid_t gid); } 911.221Spooka17 STD { int|sys||obreak(char *nsize); } break 921.221Spooka18 COMPAT_20 MODULAR { int|sys||getfsstat(struct statfs12 *buf, \ 931.139Schristos long bufsize, int flags); } 941.221Spooka19 COMPAT_43 MODULAR { long|sys||lseek(int fd, long offset, int whence); }\ 951.29Smycroft olseek 961.245Spooka20 NOERR RUMP { pid_t|sys||getpid_with_ppid(void); } getpid 971.221Spooka21 COMPAT_40 MODULAR { int|sys||mount(const char *type, const char *path, \ 981.46Scgd int flags, void *data); } 991.221Spooka22 STD RUMP { int|sys||unmount(const char *path, int flags); } 1001.236Spooka23 STD RUMP { int|sys||setuid(uid_t uid); } 1011.245Spooka24 NOERR RUMP { uid_t|sys||getuid_with_euid(void); } getuid 1021.245Spooka25 NOERR RUMP { uid_t|sys||geteuid(void); } 1031.221Spooka26 STD { int|sys||ptrace(int req, pid_t pid, void *addr, \ 1041.23Scgd int data); } 1051.222Spooka27 STD RUMP { ssize_t|sys||recvmsg(int s, struct msghdr *msg, \ 1061.28Smycroft int flags); } 1071.222Spooka28 STD RUMP { ssize_t|sys||sendmsg(int s, \ 1081.46Scgd const struct msghdr *msg, int flags); } 1091.222Spooka29 STD RUMP { ssize_t|sys||recvfrom(int s, void *buf, size_t len, \ 1101.46Scgd int flags, struct sockaddr *from, \ 1111.249Schristos socklen_t *fromlenaddr); } 1121.221Spooka30 STD RUMP { int|sys||accept(int s, struct sockaddr *name, \ 1131.249Schristos socklen_t *anamelen); } 1141.222Spooka31 STD RUMP { int|sys||getpeername(int fdes, struct sockaddr *asa, \ 1151.249Schristos socklen_t *alen); } 1161.222Spooka32 STD RUMP { int|sys||getsockname(int fdes, struct sockaddr *asa, \ 1171.249Schristos socklen_t *alen); } 1181.226Spooka33 STD RUMP { int|sys||access(const char *path, int flags); } 1191.221Spooka34 STD RUMP { int|sys||chflags(const char *path, u_long flags); } 1201.226Spooka35 STD RUMP { int|sys||fchflags(int fd, u_long flags); } 1211.245Spooka36 NOERR RUMP { void|sys||sync(void); } 1221.243Schristos37 STD { int|sys||kill(pid_t pid, int signum); } 1231.221Spooka38 COMPAT_43 MODULAR { int|sys||stat(const char *path, struct stat43 *ub); } \ 1241.60Schristos stat43 1251.245Spooka39 NOERR RUMP { pid_t|sys||getppid(void); } 1261.221Spooka40 COMPAT_43 MODULAR { int|sys||lstat(const char *path, \ 1271.60Schristos struct stat43 *ub); } lstat43 1281.226Spooka41 STD RUMP { int|sys||dup(int fd); } 1291.231Spooka42 STD RUMP { int|sys||pipe(void); } 1301.245Spooka43 NOERR RUMP { gid_t|sys||getegid(void); } 1311.221Spooka44 STD { int|sys||profil(char *samples, size_t size, \ 1321.30Scgd u_long offset, u_int scale); } 1331.265Spooka45 STD RUMP { int|sys||ktrace(const char *fname, int ops, \ 1341.243Schristos int facs, pid_t pid); } 1351.221Spooka46 COMPAT_13 MODULAR { int|sys||sigaction(int signum, \ 1361.82Smycroft const struct sigaction13 *nsa, \ 1371.82Smycroft struct sigaction13 *osa); } sigaction13 1381.245Spooka47 NOERR RUMP { gid_t|sys||getgid_with_egid(void); } getgid 1391.221Spooka48 COMPAT_13 MODULAR { int|sys||sigprocmask(int how, \ 1401.82Smycroft int mask); } sigprocmask13 1411.236Spooka49 STD RUMP { int|sys||__getlogin(char *namebuf, size_t namelen); } 1421.236Spooka50 STD RUMP { int|sys||__setlogin(const char *namebuf); } 1431.221Spooka51 STD { int|sys||acct(const char *path); } 1441.221Spooka52 COMPAT_13 MODULAR { int|sys||sigpending(void); } sigpending13 1451.221Spooka53 COMPAT_13 MODULAR { int|sys||sigaltstack( \ 1461.82Smycroft const struct sigaltstack13 *nss, \ 1471.82Smycroft struct sigaltstack13 *oss); } sigaltstack13 1481.221Spooka54 STD RUMP { int|sys||ioctl(int fd, \ 1491.61Schristos u_long com, ... void *data); } 1501.221Spooka55 COMPAT_12 MODULAR { int|sys||reboot(int opt); } oreboot 1511.226Spooka56 STD RUMP { int|sys||revoke(const char *path); } 1521.221Spooka57 STD RUMP { int|sys||symlink(const char *path, \ 1531.46Scgd const char *link); } 1541.221Spooka58 STD RUMP { ssize_t|sys||readlink(const char *path, char *buf, \ 1551.72Skleink size_t count); } 1561.221Spooka59 STD { int|sys||execve(const char *path, \ 1571.46Scgd char * const *argp, char * const *envp); } 1581.237Spooka60 STD RUMP { mode_t|sys||umask(mode_t newmask); } 1591.226Spooka61 STD RUMP { int|sys||chroot(const char *path); } 1601.221Spooka62 COMPAT_43 MODULAR { int|sys||fstat(int fd, struct stat43 *sb); } fstat43 1611.221Spooka63 COMPAT_43 MODULAR { int|sys||getkerninfo(int op, char *where, int *size, \ 1621.29Smycroft int arg); } ogetkerninfo 1631.221Spooka64 COMPAT_43 MODULAR { int|sys||getpagesize(void); } ogetpagesize 1641.221Spooka65 COMPAT_12 MODULAR { int|sys||msync(void *addr, size_t len); } 1651.67Sthorpej; XXX COMPAT_??? for 4.4BSD-compatible vfork(2)? 1661.221Spooka66 STD { int|sys||vfork(void); } 1671.23Scgd67 OBSOL vread 1681.23Scgd68 OBSOL vwrite 1691.221Spooka69 STD { int|sys||sbrk(intptr_t incr); } 1701.221Spooka70 STD { int|sys||sstk(int incr); } 1711.221Spooka71 COMPAT_43 MODULAR { int|sys||mmap(void *addr, size_t len, int prot, \ 1721.29Smycroft int flags, int fd, long pos); } ommap 1731.221Spooka72 STD { int|sys||ovadvise(int anom); } vadvise 1741.221Spooka73 STD { int|sys||munmap(void *addr, size_t len); } 1751.221Spooka74 STD { int|sys||mprotect(void *addr, size_t len, \ 1761.28Smycroft int prot); } 1771.221Spooka75 STD { int|sys||madvise(void *addr, size_t len, \ 1781.28Smycroft int behav); } 1791.23Scgd76 OBSOL vhangup 1801.23Scgd77 OBSOL vlimit 1811.221Spooka78 STD { int|sys||mincore(void *addr, size_t len, \ 1821.28Smycroft char *vec); } 1831.236Spooka79 STD RUMP { int|sys||getgroups(int gidsetsize, \ 1841.59Smycroft gid_t *gidset); } 1851.236Spooka80 STD RUMP { int|sys||setgroups(int gidsetsize, \ 1861.46Scgd const gid_t *gidset); } 1871.236Spooka81 STD RUMP { int|sys||getpgrp(void); } 1881.243Schristos82 STD RUMP { int|sys||setpgid(pid_t pid, pid_t pgid); } 1891.221Spooka83 COMPAT_50 MODULAR { int|sys||setitimer(int which, \ 1901.219Schristos const struct itimerval50 *itv, \ 1911.219Schristos struct itimerval50 *oitv); } 1921.221Spooka84 COMPAT_43 MODULAR { int|sys||wait(void); } owait 1931.221Spooka85 COMPAT_12 MODULAR { int|sys||swapon(const char *name); } oswapon 1941.221Spooka86 COMPAT_50 MODULAR { int|sys||getitimer(int which, \ 1951.219Schristos struct itimerval50 *itv); } 1961.221Spooka87 COMPAT_43 MODULAR { int|sys||gethostname(char *hostname, u_int len); } \ 1971.29Smycroft ogethostname 1981.221Spooka88 COMPAT_43 MODULAR { int|sys||sethostname(char *hostname, u_int len); } \ 1991.29Smycroft osethostname 2001.221Spooka89 COMPAT_43 MODULAR { int|sys||getdtablesize(void); } ogetdtablesize 2011.226Spooka90 STD RUMP { int|sys||dup2(int from, int to); } 2021.23Scgd91 UNIMPL getdopt 2031.226Spooka92 STD RUMP { int|sys||fcntl(int fd, int cmd, ... void *arg); } 2041.241Spooka93 COMPAT_50 MODULAR RUMP { int|sys||select(int nd, fd_set *in, fd_set *ou, \ 2051.219Schristos fd_set *ex, struct timeval50 *tv); } 2061.23Scgd94 UNIMPL setdopt 2071.221Spooka95 STD RUMP { int|sys||fsync(int fd); } 2081.221Spooka96 STD { int|sys||setpriority(int which, id_t who, int prio); } 2091.221Spooka97 COMPAT_30 MODULAR { int|sys||socket(int domain, int type, int protocol); } 2101.221Spooka98 STD RUMP { int|sys||connect(int s, const struct sockaddr *name, \ 2111.249Schristos socklen_t namelen); } 2121.221Spooka99 COMPAT_43 MODULAR { int|sys||accept(int s, void *name, \ 2131.249Schristos socklen_t *anamelen); } oaccept 2141.221Spooka100 STD { int|sys||getpriority(int which, id_t who); } 2151.221Spooka101 COMPAT_43 MODULAR { int|sys||send(int s, void *buf, int len, \ 2161.29Smycroft int flags); } osend 2171.221Spooka102 COMPAT_43 MODULAR { int|sys||recv(int s, void *buf, int len, \ 2181.29Smycroft int flags); } orecv 2191.221Spooka103 COMPAT_13 MODULAR { int|sys||sigreturn(struct sigcontext13 *sigcntxp); } \ 2201.83Smycroft sigreturn13 2211.221Spooka104 STD RUMP { int|sys||bind(int s, const struct sockaddr *name, \ 2221.249Schristos socklen_t namelen); } 2231.221Spooka105 STD RUMP { int|sys||setsockopt(int s, int level, int name, \ 2241.249Schristos const void *val, socklen_t valsize); } 2251.221Spooka106 STD RUMP { int|sys||listen(int s, int backlog); } 2261.23Scgd107 OBSOL vtimes 2271.221Spooka108 COMPAT_43 MODULAR { int|sys||sigvec(int signum, struct sigvec *nsv, \ 2281.29Smycroft struct sigvec *osv); } osigvec 2291.221Spooka109 COMPAT_43 MODULAR { int|sys||sigblock(int mask); } osigblock 2301.221Spooka110 COMPAT_43 MODULAR { int|sys||sigsetmask(int mask); } osigsetmask 2311.221Spooka111 COMPAT_13 MODULAR { int|sys||sigsuspend(int mask); } sigsuspend13 2321.221Spooka112 COMPAT_43 MODULAR { int|sys||sigstack(struct sigstack *nss, \ 2331.29Smycroft struct sigstack *oss); } osigstack 2341.221Spooka113 COMPAT_43 MODULAR { int|sys||recvmsg(int s, struct omsghdr *msg, \ 2351.29Smycroft int flags); } orecvmsg 2361.221Spooka114 COMPAT_43 MODULAR { int|sys||sendmsg(int s, void *msg, int flags); } \ 2371.29Smycroft osendmsg 2381.23Scgd115 OBSOL vtrace 2391.221Spooka116 COMPAT_50 MODULAR { int|sys||gettimeofday(struct timeval50 *tp, \ 2401.141Skleink void *tzp); } 2411.221Spooka117 COMPAT_50 MODULAR { int|sys||getrusage(int who, struct rusage50 *rusage); } 2421.221Spooka118 STD RUMP { int|sys||getsockopt(int s, int level, int name, \ 2431.249Schristos void *val, socklen_t *avalsize); } 2441.26Scgd119 OBSOL resuba 2451.226Spooka120 STD RUMP { ssize_t|sys||readv(int fd, \ 2461.58Smycroft const struct iovec *iovp, int iovcnt); } 2471.226Spooka121 STD RUMP { ssize_t|sys||writev(int fd, \ 2481.58Smycroft const struct iovec *iovp, int iovcnt); } 2491.221Spooka122 COMPAT_50 MODULAR { int|sys||settimeofday(const struct timeval50 *tv, \ 2501.141Skleink const void *tzp); } 2511.226Spooka123 STD RUMP { int|sys||fchown(int fd, uid_t uid, gid_t gid); } 2521.226Spooka124 STD RUMP { int|sys||fchmod(int fd, mode_t mode); } 2531.221Spooka125 COMPAT_43 MODULAR { int|sys||recvfrom(int s, void *buf, size_t len, \ 2541.249Schristos int flags, void *from, socklen_t *fromlenaddr); } \ 2551.29Smycroft orecvfrom 2561.236Spooka126 STD RUMP { int|sys||setreuid(uid_t ruid, uid_t euid); } 2571.236Spooka127 STD RUMP { int|sys||setregid(gid_t rgid, gid_t egid); } 2581.221Spooka128 STD RUMP { int|sys||rename(const char *from, const char *to); } 2591.221Spooka129 COMPAT_43 MODULAR { int|sys||truncate(const char *path, long length); } \ 2601.29Smycroft otruncate 2611.221Spooka130 COMPAT_43 MODULAR { int|sys||ftruncate(int fd, long length); } oftruncate 2621.226Spooka131 STD RUMP { int|sys||flock(int fd, int how); } 2631.221Spooka132 STD RUMP { int|sys||mkfifo(const char *path, mode_t mode); } 2641.222Spooka133 STD RUMP { ssize_t|sys||sendto(int s, const void *buf, \ 2651.46Scgd size_t len, int flags, const struct sockaddr *to, \ 2661.249Schristos socklen_t tolen); } 2671.222Spooka134 STD RUMP { int|sys||shutdown(int s, int how); } 2681.222Spooka135 STD RUMP { int|sys||socketpair(int domain, int type, \ 2691.28Smycroft int protocol, int *rsv); } 2701.221Spooka136 STD RUMP { int|sys||mkdir(const char *path, mode_t mode); } 2711.221Spooka137 STD RUMP { int|sys||rmdir(const char *path); } 2721.241Spooka138 COMPAT_50 MODULAR RUMP { int|sys||utimes(const char *path, \ 2731.219Schristos const struct timeval50 *tptr); } 2741.23Scgd139 OBSOL 4.2 sigreturn 2751.221Spooka140 COMPAT_50 MODULAR { int|sys||adjtime(const struct timeval50 *delta, \ 2761.219Schristos struct timeval50 *olddelta); } 2771.221Spooka141 COMPAT_43 MODULAR { int|sys||getpeername(int fdes, void *asa, \ 2781.249Schristos socklen_t *alen); } ogetpeername 2791.221Spooka142 COMPAT_43 MODULAR { int32_t|sys||gethostid(void); } ogethostid 2801.221Spooka143 COMPAT_43 MODULAR { int|sys||sethostid(int32_t hostid); } osethostid 2811.221Spooka144 COMPAT_43 MODULAR { int|sys||getrlimit(int which, \ 2821.58Smycroft struct orlimit *rlp); } ogetrlimit 2831.221Spooka145 COMPAT_43 MODULAR { int|sys||setrlimit(int which, \ 2841.58Smycroft const struct orlimit *rlp); } osetrlimit 2851.221Spooka146 COMPAT_43 MODULAR { int|sys||killpg(int pgid, int signum); } okillpg 2861.236Spooka147 STD RUMP { int|sys||setsid(void); } 2871.248Spooka148 COMPAT_50 MODULAR { int|sys||quotactl(const char *path, int cmd, \ 2881.167Schristos int uid, void *arg); } 2891.221Spooka149 COMPAT_43 MODULAR { int|sys||quota(void); } oquota 2901.221Spooka150 COMPAT_43 MODULAR { int|sys||getsockname(int fdec, void *asa, \ 2911.249Schristos socklen_t *alen); } ogetsockname 2921.1Sglass 2931.1Sglass; Syscalls 151-180 inclusive are reserved for vendor-specific 2941.1Sglass; system calls. (This includes various calls added for compatibity 2951.1Sglass; with other Unix variants.) 2961.1Sglass; Some of these calls are now supported by BSD... 2971.23Scgd151 UNIMPL 2981.23Scgd152 UNIMPL 2991.23Scgd153 UNIMPL 3001.23Scgd154 UNIMPL 3011.221Spooka155 STD MODULAR RUMP { int|sys||nfssvc(int flag, void *argp); } 3021.221Spooka156 COMPAT_43 MODULAR { int|sys||getdirentries(int fd, char *buf, \ 3031.29Smycroft u_int count, long *basep); } ogetdirentries 3041.221Spooka157 COMPAT_20 MODULAR { int|sys||statfs(const char *path, \ 3051.139Schristos struct statfs12 *buf); } 3061.221Spooka158 COMPAT_20 MODULAR { int|sys||fstatfs(int fd, struct statfs12 *buf); } 3071.23Scgd159 UNIMPL 3081.23Scgd160 UNIMPL 3091.221Spooka161 COMPAT_30 MODULAR { int|sys||getfh(const char *fname, \ 3101.155Smartin struct compat_30_fhandle *fhp); } 3111.221Spooka162 COMPAT_09 MODULAR { int|sys||getdomainname(char *domainname, int len); } \ 3121.29Smycroft ogetdomainname 3131.221Spooka163 COMPAT_09 MODULAR { int|sys||setdomainname(char *domainname, int len); } \ 3141.29Smycroft osetdomainname 3151.221Spooka164 COMPAT_09 MODULAR { int|sys||uname(struct outsname *name); } ouname 3161.221Spooka165 STD { int|sys||sysarch(int op, void *parms); } 3171.23Scgd166 UNIMPL 3181.23Scgd167 UNIMPL 3191.23Scgd168 UNIMPL 3201.23Scgd; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 3211.216Sad#if (defined(SYSVSEM) || !defined(_KERNEL_OPT)) && !defined(_LP64) 3221.221Spooka169 COMPAT_10 MODULAR { int|sys||semsys(int which, int a2, int a3, int a4, \ 3231.29Smycroft int a5); } osemsys 3241.9Scgd#else 3251.92Schristos169 EXCL 1.0 semsys 3261.9Scgd#endif 3271.23Scgd; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 3281.216Sad#if (defined(SYSVMSG) || !defined(_KERNEL_OPT)) && !defined(_LP64) 3291.221Spooka170 COMPAT_10 MODULAR { int|sys||msgsys(int which, int a2, int a3, int a4, \ 3301.29Smycroft int a5, int a6); } omsgsys 3311.9Scgd#else 3321.92Schristos170 EXCL 1.0 msgsys 3331.9Scgd#endif 3341.23Scgd; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 3351.216Sad#if (defined(SYSVSHM) || !defined(_KERNEL_OPT)) && !defined(_LP64) 3361.221Spooka171 COMPAT_10 MODULAR { int|sys||shmsys(int which, int a2, int a3, int a4); } \ 3371.29Smycroft oshmsys 3381.1Sglass#else 3391.92Schristos171 EXCL 1.0 shmsys 3401.1Sglass#endif 3411.23Scgd172 UNIMPL 3421.221Spooka173 STD RUMP { ssize_t|sys||pread(int fd, void *buf, \ 3431.227Spooka size_t nbyte, int PAD, off_t offset); } 3441.221Spooka174 STD RUMP { ssize_t|sys||pwrite(int fd, const void *buf, \ 3451.227Spooka size_t nbyte, int PAD, off_t offset); } 3461.102Sbjh21; For some reason, ntp_gettime doesn't want to raise SIGSYS when it's excluded. 3471.221Spooka175 COMPAT_30 { int|sys||ntp_gettime(struct ntptimeval30 *ntvp); } 3481.216Sad#if defined(NTP) || !defined(_KERNEL_OPT) 3491.221Spooka176 STD { int|sys||ntp_adjtime(struct timex *tp); } 3501.102Sbjh21#else 3511.102Sbjh21176 EXCL ntp_adjtime 3521.102Sbjh21#endif 3531.23Scgd177 UNIMPL 3541.23Scgd178 UNIMPL 3551.23Scgd179 UNIMPL 3561.23Scgd180 UNIMPL 3571.1Sglass 3581.1Sglass; Syscalls 180-199 are used by/reserved for BSD 3591.236Spooka181 STD RUMP { int|sys||setgid(gid_t gid); } 3601.236Spooka182 STD RUMP { int|sys||setegid(gid_t egid); } 3611.236Spooka183 STD RUMP { int|sys||seteuid(uid_t euid); } 3621.232Spooka184 STD MODULAR { int|sys||lfs_bmapv(fsid_t *fsidp, \ 3631.23Scgd struct block_info *blkiov, int blkcnt); } 3641.232Spooka185 STD MODULAR { int|sys||lfs_markv(fsid_t *fsidp, \ 3651.23Scgd struct block_info *blkiov, int blkcnt); } 3661.232Spooka186 STD MODULAR { int|sys||lfs_segclean(fsid_t *fsidp, u_long segment); } 3671.221Spooka187 COMPAT_50 MODULAR { int|sys||lfs_segwait(fsid_t *fsidp, \ 3681.219Schristos struct timeval50 *tv); } 3691.221Spooka188 COMPAT_12 MODULAR { int|sys||stat(const char *path, struct stat12 *ub); } \ 3701.60Schristos stat12 3711.221Spooka189 COMPAT_12 MODULAR { int|sys||fstat(int fd, struct stat12 *sb); } fstat12 3721.221Spooka190 COMPAT_12 MODULAR { int|sys||lstat(const char *path, \ 3731.60Schristos struct stat12 *ub); } lstat12 3741.234Snjoly191 STD RUMP { long|sys||pathconf(const char *path, int name); } 3751.234Snjoly192 STD RUMP { long|sys||fpathconf(int fd, int name); } 3761.23Scgd193 UNIMPL 3771.233Spooka194 STD RUMP { int|sys||getrlimit(int which, \ 3781.58Smycroft struct rlimit *rlp); } 3791.233Spooka195 STD RUMP { int|sys||setrlimit(int which, \ 3801.46Scgd const struct rlimit *rlp); } 3811.221Spooka196 COMPAT_12 MODULAR { int|sys||getdirentries(int fd, char *buf, \ 3821.28Smycroft u_int count, long *basep); } 3831.221Spooka197 STD { void *|sys||mmap(void *addr, size_t len, int prot, \ 3841.227Spooka int flags, int fd, long PAD, off_t pos); } 3851.221Spooka198 INDIR { quad_t|sys||__syscall(quad_t code, \ 3861.179Sdsl ... register_t args[SYS_MAXSYSARGS]); } 3871.227Spooka199 STD RUMP { off_t|sys||lseek(int fd, int PAD, off_t offset, \ 3881.23Scgd int whence); } 3891.227Spooka200 STD RUMP { int|sys||truncate(const char *path, int PAD, \ 3901.46Scgd off_t length); } 3911.227Spooka201 STD RUMP { int|sys||ftruncate(int fd, int PAD, off_t length); } 3921.221Spooka202 STD RUMP { int|sys||__sysctl(const int *name, u_int namelen, \ 3931.151Sdrochner void *old, size_t *oldlenp, const void *new, \ 3941.28Smycroft size_t newlen); } 3951.221Spooka203 STD { int|sys||mlock(const void *addr, size_t len); } 3961.221Spooka204 STD { int|sys||munlock(const void *addr, size_t len); } 3971.221Spooka205 STD { int|sys||undelete(const char *path); } 3981.241Spooka206 COMPAT_50 MODULAR RUMP { int|sys||futimes(int fd, \ 3991.219Schristos const struct timeval50 *tptr); } 4001.236Spooka207 STD RUMP { pid_t|sys||getpgid(pid_t pid); } 4011.226Spooka208 STD RUMP { int|sys||reboot(int opt, char *bootstr); } 4021.226Spooka209 STD RUMP { int|sys||poll(struct pollfd *fds, u_int nfds, \ 4031.35Smycroft int timeout); } 4041.11Scgd; 4051.11Scgd; Syscalls 210-219 are reserved for dynamically loaded syscalls 4061.11Scgd; 4071.259Schristos210 EXTERN MODULAR { int|sys||afssys(long id, long a1, long a2, \ 4081.259Schristos long a3, long a4, long a5, long a6); } 4091.212Sad211 UNIMPL 4101.212Sad212 UNIMPL 4111.212Sad213 UNIMPL 4121.212Sad214 UNIMPL 4131.212Sad215 UNIMPL 4141.212Sad216 UNIMPL 4151.212Sad217 UNIMPL 4161.212Sad218 UNIMPL 4171.212Sad219 UNIMPL 4181.49Skleink; System calls 220-300 are reserved for use by NetBSD 4191.216Sad#if defined(SYSVSEM) || !defined(_KERNEL_OPT) 4201.221Spooka220 COMPAT_14 MODULAR { int|sys||__semctl(int semid, int semnum, int cmd, \ 4211.97Sthorpej union __semun *arg); } 4221.221Spooka221 STD { int|sys||semget(key_t key, int nsems, int semflg); } 4231.221Spooka222 STD { int|sys||semop(int semid, struct sembuf *sops, \ 4241.74Skleink size_t nsops); } 4251.221Spooka223 STD { int|sys||semconfig(int flag); } 4261.23Scgd#else 4271.97Sthorpej220 EXCL compat_14_semctl 4281.92Schristos221 EXCL semget 4291.92Schristos222 EXCL semop 4301.92Schristos223 EXCL semconfig 4311.23Scgd#endif 4321.216Sad#if defined(SYSVMSG) || !defined(_KERNEL_OPT) 4331.221Spooka224 COMPAT_14 MODULAR { int|sys||msgctl(int msqid, int cmd, \ 4341.97Sthorpej struct msqid_ds14 *buf); } 4351.221Spooka225 STD { int|sys||msgget(key_t key, int msgflg); } 4361.221Spooka226 STD { int|sys||msgsnd(int msqid, const void *msgp, \ 4371.74Skleink size_t msgsz, int msgflg); } 4381.221Spooka227 STD { ssize_t|sys||msgrcv(int msqid, void *msgp, \ 4391.74Skleink size_t msgsz, long msgtyp, int msgflg); } 4401.23Scgd#else 4411.163Sad224 EXCL compat_14_msgctl 4421.163Sad225 EXCL msgget 4431.163Sad226 EXCL msgsnd 4441.163Sad227 EXCL msgrcv 4451.23Scgd#endif 4461.216Sad#if defined(SYSVSHM) || !defined(_KERNEL_OPT) 4471.221Spooka228 STD { void *|sys||shmat(int shmid, const void *shmaddr, \ 4481.44Scgd int shmflg); } 4491.221Spooka229 COMPAT_14 MODULAR { int|sys||shmctl(int shmid, int cmd, \ 4501.97Sthorpej struct shmid_ds14 *buf); } 4511.221Spooka230 STD { int|sys||shmdt(const void *shmaddr); } 4521.221Spooka231 STD { int|sys||shmget(key_t key, size_t size, int shmflg); } 4531.23Scgd#else 4541.92Schristos228 EXCL shmat 4551.97Sthorpej229 EXCL compat_14_shmctl 4561.92Schristos230 EXCL shmdt 4571.92Schristos231 EXCL shmget 4581.23Scgd#endif 4591.221Spooka232 COMPAT_50 MODULAR { int|sys||clock_gettime(clockid_t clock_id, \ 4601.219Schristos struct timespec50 *tp); } 4611.221Spooka233 COMPAT_50 MODULAR { int|sys||clock_settime(clockid_t clock_id, \ 4621.219Schristos const struct timespec50 *tp); } 4631.221Spooka234 COMPAT_50 MODULAR { int|sys||clock_getres(clockid_t clock_id, \ 4641.219Schristos struct timespec50 *tp); } 4651.267Spooka235 STD RUMP { int|sys||timer_create(clockid_t clock_id, \ 4661.118Sthorpej struct sigevent *evp, timer_t *timerid); } 4671.267Spooka236 STD RUMP { int|sys||timer_delete(timer_t timerid); } 4681.221Spooka237 COMPAT_50 MODULAR { int|sys||timer_settime(timer_t timerid, int flags, \ 4691.219Schristos const struct itimerspec50 *value, \ 4701.219Schristos struct itimerspec50 *ovalue); } 4711.221Spooka238 COMPAT_50 MODULAR { int|sys||timer_gettime(timer_t timerid, struct \ 4721.219Schristos itimerspec50 *value); } 4731.267Spooka239 STD RUMP { int|sys||timer_getoverrun(timer_t timerid); } 4741.54Sveego; 4751.54Sveego; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls 4761.54Sveego; 4771.221Spooka240 COMPAT_50 MODULAR { int|sys||nanosleep(const struct timespec50 *rqtp, \ 4781.219Schristos struct timespec50 *rmtp); } 4791.226Spooka241 STD RUMP { int|sys||fdatasync(int fd); } 4801.221Spooka242 STD { int|sys||mlockall(int flags); } 4811.221Spooka243 STD { int|sys||munlockall(void); } 4821.221Spooka244 COMPAT_50 MODULAR { int|sys||__sigtimedwait(const sigset_t *set, \ 4831.127Sjdolecek siginfo_t *info, \ 4841.219Schristos struct timespec50 *timeout); } 4851.240Schristos245 STD { int|sys||sigqueueinfo(pid_t pid, \ 4861.240Schristos const siginfo_t *info); } 4871.230Spooka246 STD RUMP { int|sys||modctl(int cmd, void *arg); } 4881.235Spooka247 STD MODULAR RUMP { int|sys||_ksem_init(unsigned int value, intptr_t *idp); } 4891.235Spooka248 STD MODULAR RUMP { int|sys||_ksem_open(const char *name, int oflag, \ 4901.214Sad mode_t mode, unsigned int value, intptr_t *idp); } 4911.235Spooka249 STD MODULAR RUMP { int|sys||_ksem_unlink(const char *name); } 4921.235Spooka250 STD MODULAR RUMP { int|sys||_ksem_close(intptr_t id); } 4931.235Spooka251 STD MODULAR RUMP { int|sys||_ksem_post(intptr_t id); } 4941.235Spooka252 STD MODULAR RUMP { int|sys||_ksem_wait(intptr_t id); } 4951.235Spooka253 STD MODULAR RUMP { int|sys||_ksem_trywait(intptr_t id); } 4961.235Spooka254 STD MODULAR RUMP { int|sys||_ksem_getvalue(intptr_t id, \ 4971.119Schristos unsigned int *value); } 4981.235Spooka255 STD MODULAR RUMP { int|sys||_ksem_destroy(intptr_t id); } 4991.258Sjoerg256 STD MODULAR RUMP { int|sys||_ksem_timedwait(intptr_t id, \ 5001.258Sjoerg const struct timespec *abstime); } 5011.228Srmind257 STD MODULAR { mqd_t|sys||mq_open(const char * name, int oflag, \ 5021.177Srmind mode_t mode, struct mq_attr *attr); } 5031.228Srmind258 STD MODULAR { int|sys||mq_close(mqd_t mqdes); } 5041.228Srmind259 STD MODULAR { int|sys||mq_unlink(const char *name); } 5051.228Srmind260 STD MODULAR { int|sys||mq_getattr(mqd_t mqdes, \ 5061.177Srmind struct mq_attr *mqstat); } 5071.228Srmind261 STD MODULAR { int|sys||mq_setattr(mqd_t mqdes, \ 5081.177Srmind const struct mq_attr *mqstat, \ 5091.177Srmind struct mq_attr *omqstat); } 5101.228Srmind262 STD MODULAR { int|sys||mq_notify(mqd_t mqdes, \ 5111.177Srmind const struct sigevent *notification); } 5121.228Srmind263 STD MODULAR { int|sys||mq_send(mqd_t mqdes, const char *msg_ptr, \ 5131.177Srmind size_t msg_len, unsigned msg_prio); } 5141.228Srmind264 STD MODULAR { ssize_t|sys||mq_receive(mqd_t mqdes, char *msg_ptr, \ 5151.177Srmind size_t msg_len, unsigned *msg_prio); } 5161.221Spooka265 COMPAT_50 MODULAR { int|sys||mq_timedsend(mqd_t mqdes, \ 5171.177Srmind const char *msg_ptr, size_t msg_len, \ 5181.177Srmind unsigned msg_prio, \ 5191.219Schristos const struct timespec50 *abs_timeout); } 5201.221Spooka266 COMPAT_50 MODULAR { ssize_t|sys||mq_timedreceive(mqd_t mqdes, \ 5211.177Srmind char *msg_ptr, size_t msg_len, unsigned *msg_prio, \ 5221.219Schristos const struct timespec50 *abs_timeout); } 5231.49Skleink267 UNIMPL 5241.49Skleink268 UNIMPL 5251.49Skleink269 UNIMPL 5261.221Spooka270 STD { int|sys||__posix_rename(const char *from, \ 5271.49Skleink const char *to); } 5281.221Spooka271 STD { int|sys||swapctl(int cmd, void *arg, int misc); } 5291.221Spooka272 COMPAT_30 MODULAR { int|sys||getdents(int fd, char *buf, size_t count); } 5301.221Spooka273 STD { int|sys||minherit(void *addr, size_t len, \ 5311.54Sveego int inherit); } 5321.221Spooka274 STD RUMP { int|sys||lchmod(const char *path, mode_t mode); } 5331.221Spooka275 STD RUMP { int|sys||lchown(const char *path, uid_t uid, \ 5341.56Senami gid_t gid); } 5351.241Spooka276 COMPAT_50 MODULAR RUMP { int|sys||lutimes(const char *path, \ 5361.219Schristos const struct timeval50 *tptr); } 5371.221Spooka277 STD { int|sys|13|msync(void *addr, size_t len, int flags); } 5381.221Spooka278 COMPAT_30 MODULAR { int|sys|13|stat(const char *path, struct stat13 *ub); } 5391.221Spooka279 COMPAT_30 MODULAR { int|sys|13|fstat(int fd, struct stat13 *sb); } 5401.221Spooka280 COMPAT_30 MODULAR { int|sys|13|lstat(const char *path, struct stat13 *ub); } 5411.221Spooka281 STD { int|sys|14|sigaltstack( \ 5421.82Smycroft const struct sigaltstack *nss, \ 5431.82Smycroft struct sigaltstack *oss); } 5441.221Spooka282 STD { int|sys|14|vfork(void); } 5451.221Spooka283 STD { int|sys||__posix_chown(const char *path, uid_t uid, \ 5461.69Skleink gid_t gid); } 5471.221Spooka284 STD { int|sys||__posix_fchown(int fd, uid_t uid, \ 5481.69Skleink gid_t gid); } 5491.221Spooka285 STD { int|sys||__posix_lchown(const char *path, uid_t uid, \ 5501.69Skleink gid_t gid); } 5511.236Spooka286 STD RUMP { pid_t|sys||getsid(pid_t pid); } 5521.221Spooka287 STD { pid_t|sys||__clone(int flags, void *stack); } 5531.265Spooka288 STD RUMP { int|sys||fktrace(int fd, int ops, \ 5541.243Schristos int facs, pid_t pid); } 5551.244Spooka289 STD RUMP { ssize_t|sys||preadv(int fd, \ 5561.79Sthorpej const struct iovec *iovp, int iovcnt, \ 5571.227Spooka int PAD, off_t offset); } 5581.244Spooka290 STD RUMP { ssize_t|sys||pwritev(int fd, \ 5591.79Sthorpej const struct iovec *iovp, int iovcnt, \ 5601.227Spooka int PAD, off_t offset); } 5611.221Spooka291 COMPAT_16 MODULAR { int|sys|14|sigaction(int signum, \ 5621.82Smycroft const struct sigaction *nsa, \ 5631.82Smycroft struct sigaction *osa); } 5641.221Spooka292 STD { int|sys|14|sigpending(sigset_t *set); } 5651.221Spooka293 STD { int|sys|14|sigprocmask(int how, \ 5661.82Smycroft const sigset_t *set, \ 5671.82Smycroft sigset_t *oset); } 5681.221Spooka294 STD { int|sys|14|sigsuspend(const sigset_t *set); } 5691.221Spooka295 COMPAT_16 MODULAR { int|sys|14|sigreturn(struct sigcontext *sigcntxp); } 5701.238Spooka296 STD RUMP { int|sys||__getcwd(char *bufp, size_t length); } 5711.226Spooka297 STD RUMP { int|sys||fchroot(int fd); } 5721.221Spooka298 COMPAT_30 MODULAR { int|sys||fhopen(const struct compat_30_fhandle *fhp, int flags); } 5731.221Spooka299 COMPAT_30 MODULAR { int|sys||fhstat(const struct compat_30_fhandle *fhp, \ 5741.152Schristos struct stat13 *sb); } 5751.221Spooka300 COMPAT_20 MODULAR { int|sys||fhstatfs(const struct compat_30_fhandle *fhp, \ 5761.139Schristos struct statfs12 *buf); } 5771.216Sad#if defined(SYSVSEM) || !defined(_KERNEL_OPT) 5781.221Spooka301 COMPAT_50 MODULAR { int|sys|13|__semctl(int semid, int semnum, int cmd, \ 5791.99Schristos ... union __semun *arg); } 5801.97Sthorpej#else 5811.99Schristos301 EXCL ____semctl13 5821.97Sthorpej#endif 5831.216Sad#if defined(SYSVMSG) || !defined(_KERNEL_OPT) 5841.221Spooka302 COMPAT_50 MODULAR { int|sys|13|msgctl(int msqid, int cmd, \ 5851.97Sthorpej struct msqid_ds *buf); } 5861.97Sthorpej#else 5871.97Sthorpej302 EXCL __msgctl13 5881.97Sthorpej#endif 5891.216Sad#if defined(SYSVSHM) || !defined(_KERNEL_OPT) 5901.221Spooka303 COMPAT_50 MODULAR { int|sys|13|shmctl(int shmid, int cmd, \ 5911.219Schristos struct shmid_ds13 *buf); } 5921.97Sthorpej#else 5931.97Sthorpej303 EXCL __shmctl13 5941.97Sthorpej#endif 5951.221Spooka304 STD RUMP { int|sys||lchflags(const char *path, u_long flags); } 5961.245Spooka305 NOERR RUMP { int|sys||issetugid(void); } 5971.266Spooka306 STD RUMP { int|sys||utrace(const char *label, void *addr, \ 5981.118Sthorpej size_t len); } 5991.221Spooka307 STD { int|sys||getcontext(struct __ucontext *ucp); } 6001.221Spooka308 STD { int|sys||setcontext(const struct __ucontext *ucp); } 6011.221Spooka309 STD { int|sys||_lwp_create(const struct __ucontext *ucp, \ 6021.118Sthorpej u_long flags, lwpid_t *new_lwp); } 6031.221Spooka310 STD { int|sys||_lwp_exit(void); } 6041.221Spooka311 STD { lwpid_t|sys||_lwp_self(void); } 6051.221Spooka312 STD { int|sys||_lwp_wait(lwpid_t wait_for, \ 6061.118Sthorpej lwpid_t *departed); } 6071.221Spooka313 STD { int|sys||_lwp_suspend(lwpid_t target); } 6081.221Spooka314 STD { int|sys||_lwp_continue(lwpid_t target); } 6091.221Spooka315 STD { int|sys||_lwp_wakeup(lwpid_t target); } 6101.221Spooka316 STD { void *|sys||_lwp_getprivate(void); } 6111.221Spooka317 STD { void|sys||_lwp_setprivate(void *ptr); } 6121.221Spooka318 STD { int|sys||_lwp_kill(lwpid_t target, int signo); } 6131.221Spooka319 STD { int|sys||_lwp_detach(lwpid_t target); } 6141.221Spooka320 COMPAT_50 MODULAR { int|sys||_lwp_park(const struct timespec50 *ts, \ 6151.175Sad lwpid_t unpark, const void *hint, \ 6161.175Sad const void *unparkhint); } 6171.221Spooka321 STD { int|sys||_lwp_unpark(lwpid_t target, const void *hint); } 6181.221Spooka322 STD { ssize_t|sys||_lwp_unpark_all(const lwpid_t *targets, \ 6191.164Sad size_t ntargets, const void *hint); } 6201.221Spooka323 STD { int|sys||_lwp_setname(lwpid_t target, \ 6211.178Sad const char *name); } 6221.221Spooka324 STD { int|sys||_lwp_getname(lwpid_t target, \ 6231.178Sad char *name, size_t len); } 6241.221Spooka325 STD { int|sys||_lwp_ctl(int features, \ 6251.180Sad struct lwpctl **address); } 6261.180Sad; Syscalls 326-339 reserved for LWP syscalls. 6271.107Snathanw326 UNIMPL 6281.107Snathanw327 UNIMPL 6291.107Snathanw328 UNIMPL 6301.107Snathanw329 UNIMPL 6311.256Smatt; SA system calls. 6321.257Smatt330 COMPAT_60 { int|sys||sa_register(void *new, void **old, \ 6331.257Smatt int flags, ssize_t stackinfo_offset); } 6341.256Smatt331 COMPAT_60 { int|sys||sa_stacks(int num, stack_t *stacks); } 6351.256Smatt332 COMPAT_60 { int|sys||sa_enable(void); } 6361.256Smatt333 COMPAT_60 { int|sys||sa_setconcurrency(int concurrency); } 6371.256Smatt334 COMPAT_60 { int|sys||sa_yield(void); } 6381.256Smatt335 COMPAT_60 { int|sys||sa_preempt(int sa_id); } 6391.209Swrstuden336 OBSOL sys_sa_unblockyield 6401.209Swrstuden; 6411.209Swrstuden; Syscalls 337-339 are reserved for other scheduler activation syscalls. 6421.209Swrstuden; 6431.107Snathanw337 UNIMPL 6441.107Snathanw338 UNIMPL 6451.107Snathanw339 UNIMPL 6461.221Spooka340 STD { int|sys||__sigaction_sigtramp(int signum, \ 6471.112Sthorpej const struct sigaction *nsa, \ 6481.112Sthorpej struct sigaction *osa, \ 6491.132Smatt const void *tramp, int vers); } 6501.221Spooka341 STD { int|sys||pmc_get_info(int ctr, int op, void *args); } 6511.221Spooka342 STD { int|sys||pmc_control(int ctr, int op, void *args); } 6521.221Spooka343 STD { int|sys||rasctl(void *addr, size_t len, int op); } 6531.224Spooka344 STD RUMP { int|sys||kqueue(void); } 6541.241Spooka345 COMPAT_50 MODULAR RUMP { int|sys||kevent(int fd, \ 6551.116Sjdolecek const struct kevent *changelist, size_t nchanges, \ 6561.116Sjdolecek struct kevent *eventlist, size_t nevents, \ 6571.219Schristos const struct timespec50 *timeout); } 6581.184Srmind 6591.184Srmind; Scheduling system calls. 6601.221Spooka346 STD { int|sys||_sched_setparam(pid_t pid, lwpid_t lid, \ 6611.188Syamt int policy, const struct sched_param *params); } 6621.221Spooka347 STD { int|sys||_sched_getparam(pid_t pid, lwpid_t lid, \ 6631.188Syamt int *policy, struct sched_param *params); } 6641.221Spooka348 STD { int|sys||_sched_setaffinity(pid_t pid, lwpid_t lid, \ 6651.202Schristos size_t size, const cpuset_t *cpuset); } 6661.221Spooka349 STD { int|sys||_sched_getaffinity(pid_t pid, lwpid_t lid, \ 6671.202Schristos size_t size, cpuset_t *cpuset); } 6681.221Spooka350 STD { int|sys||sched_yield(void); } 6691.184Srmind351 UNIMPL 6701.184Srmind352 UNIMPL 6711.184Srmind353 UNIMPL 6721.134Sthorpej 6731.226Spooka354 STD RUMP { int|sys||fsync_range(int fd, int flags, off_t start, \ 6741.134Sthorpej off_t length); } 6751.221Spooka355 STD { int|sys||uuidgen(struct uuid *store, int count); } 6761.226Spooka356 STD RUMP { int|sys||getvfsstat(struct statvfs *buf, \ 6771.139Schristos size_t bufsize, int flags); } 6781.221Spooka357 STD RUMP { int|sys||statvfs1(const char *path, \ 6791.139Schristos struct statvfs *buf, int flags); } 6801.226Spooka358 STD RUMP { int|sys||fstatvfs1(int fd, struct statvfs *buf, \ 6811.139Schristos int flags); } 6821.221Spooka359 COMPAT_30 MODULAR { int|sys||fhstatvfs1(const struct compat_30_fhandle *fhp, \ 6831.139Schristos struct statvfs *buf, int flags); } 6841.226Spooka360 STD RUMP { int|sys||extattrctl(const char *path, int cmd, \ 6851.143Sthorpej const char *filename, int attrnamespace, \ 6861.143Sthorpej const char *attrname); } 6871.226Spooka361 STD RUMP { int|sys||extattr_set_file(const char *path, \ 6881.143Sthorpej int attrnamespace, const char *attrname, \ 6891.143Sthorpej const void *data, size_t nbytes); } 6901.226Spooka362 STD RUMP { ssize_t|sys||extattr_get_file(const char *path, \ 6911.143Sthorpej int attrnamespace, const char *attrname, \ 6921.143Sthorpej void *data, size_t nbytes); } 6931.226Spooka363 STD RUMP { int|sys||extattr_delete_file(const char *path, \ 6941.143Sthorpej int attrnamespace, const char *attrname); } 6951.226Spooka364 STD RUMP { int|sys||extattr_set_fd(int fd, \ 6961.143Sthorpej int attrnamespace, const char *attrname, \ 6971.143Sthorpej const void *data, size_t nbytes); } 6981.226Spooka365 STD RUMP { ssize_t|sys||extattr_get_fd(int fd, \ 6991.143Sthorpej int attrnamespace, const char *attrname, \ 7001.143Sthorpej void *data, size_t nbytes); } 7011.226Spooka366 STD RUMP { int|sys||extattr_delete_fd(int fd, \ 7021.143Sthorpej int attrnamespace, const char *attrname); } 7031.226Spooka367 STD RUMP { int|sys||extattr_set_link(const char *path, \ 7041.143Sthorpej int attrnamespace, const char *attrname, \ 7051.143Sthorpej const void *data, size_t nbytes); } 7061.226Spooka368 STD RUMP { ssize_t|sys||extattr_get_link(const char *path, \ 7071.143Sthorpej int attrnamespace, const char *attrname, \ 7081.143Sthorpej void *data, size_t nbytes); } 7091.226Spooka369 STD RUMP { int|sys||extattr_delete_link(const char *path, \ 7101.143Sthorpej int attrnamespace, const char *attrname); } 7111.226Spooka370 STD RUMP { ssize_t|sys||extattr_list_fd(int fd, \ 7121.143Sthorpej int attrnamespace, void *data, size_t nbytes); } 7131.226Spooka371 STD RUMP { ssize_t|sys||extattr_list_file(const char *path, \ 7141.143Sthorpej int attrnamespace, void *data, size_t nbytes); } 7151.226Spooka372 STD RUMP { ssize_t|sys||extattr_list_link(const char *path, \ 7161.143Sthorpej int attrnamespace, void *data, size_t nbytes); } 7171.242Spooka373 COMPAT_50 MODULAR RUMP { int|sys||pselect(int nd, fd_set *in, fd_set *ou, \ 7181.219Schristos fd_set *ex, const struct timespec50 *ts, \ 7191.145Smatt const sigset_t *mask); } 7201.241Spooka374 COMPAT_50 MODULAR RUMP { int|sys||pollts(struct pollfd *fds, u_int nfds, \ 7211.219Schristos const struct timespec50 *ts, const sigset_t *mask); } 7221.226Spooka375 STD RUMP { int|sys||setxattr(const char *path, \ 7231.250Sdrochner const char *name, const void *value, size_t size, \ 7241.147Sthorpej int flags); } 7251.226Spooka376 STD RUMP { int|sys||lsetxattr(const char *path, \ 7261.250Sdrochner const char *name, const void *value, size_t size, \ 7271.147Sthorpej int flags); } 7281.226Spooka377 STD RUMP { int|sys||fsetxattr(int fd, \ 7291.250Sdrochner const char *name, const void *value, size_t size, \ 7301.147Sthorpej int flags); } 7311.226Spooka378 STD RUMP { int|sys||getxattr(const char *path, \ 7321.147Sthorpej const char *name, void *value, size_t size); } 7331.226Spooka379 STD RUMP { int|sys||lgetxattr(const char *path, \ 7341.147Sthorpej const char *name, void *value, size_t size); } 7351.226Spooka380 STD RUMP { int|sys||fgetxattr(int fd, \ 7361.147Sthorpej const char *name, void *value, size_t size); } 7371.226Spooka381 STD RUMP { int|sys||listxattr(const char *path, \ 7381.147Sthorpej char *list, size_t size); } 7391.226Spooka382 STD RUMP { int|sys||llistxattr(const char *path, \ 7401.147Sthorpej char *list, size_t size); } 7411.226Spooka383 STD RUMP { int|sys||flistxattr(int fd, \ 7421.147Sthorpej char *list, size_t size); } 7431.226Spooka384 STD RUMP { int|sys||removexattr(const char *path, \ 7441.147Sthorpej const char *name); } 7451.226Spooka385 STD RUMP { int|sys||lremovexattr(const char *path, \ 7461.147Sthorpej const char *name); } 7471.226Spooka386 STD RUMP { int|sys||fremovexattr(int fd, \ 7481.147Sthorpej const char *name); } 7491.241Spooka387 COMPAT_50 MODULAR RUMP { int|sys|30|stat(const char *path, struct stat30 *ub); } 7501.241Spooka388 COMPAT_50 MODULAR RUMP { int|sys|30|fstat(int fd, struct stat30 *sb); } 7511.241Spooka389 COMPAT_50 MODULAR RUMP { int|sys|30|lstat(const char *path, struct stat30 *ub); } 7521.226Spooka390 STD RUMP { int|sys|30|getdents(int fd, char *buf, size_t count); } 7531.190Smartin391 IGNORED old posix_fadvise 7541.221Spooka392 COMPAT_30 MODULAR { int|sys|30|fhstat(const struct compat_30_fhandle \ 7551.219Schristos *fhp, struct stat30 *sb); } 7561.221Spooka393 COMPAT_50 MODULAR { int|sys|30|ntp_gettime(struct ntptimeval50 *ntvp); } 7571.221Spooka394 STD RUMP { int|sys|30|socket(int domain, int type, int protocol); } 7581.221Spooka395 STD RUMP { int|sys|30|getfh(const char *fname, void *fhp, \ 7591.156Smartin size_t *fh_size); } 7601.229Spooka396 STD RUMP { int|sys|40|fhopen(const void *fhp, size_t fh_size,\ 7611.156Smartin int flags); } 7621.229Spooka397 STD RUMP { int|sys|40|fhstatvfs1(const void *fhp, \ 7631.156Smartin size_t fh_size, struct statvfs *buf, int flags); } 7641.242Spooka398 COMPAT_50 MODULAR RUMP { int|sys|40|fhstat(const void *fhp, \ 7651.219Schristos size_t fh_size, struct stat30 *sb); } 7661.169Srmind 7671.169Srmind; Asynchronous I/O system calls 7681.221Spooka399 STD MODULAR { int|sys||aio_cancel(int fildes, struct aiocb *aiocbp); } 7691.221Spooka400 STD MODULAR { int|sys||aio_error(const struct aiocb *aiocbp); } 7701.221Spooka401 STD MODULAR { int|sys||aio_fsync(int op, struct aiocb *aiocbp); } 7711.221Spooka402 STD MODULAR { int|sys||aio_read(struct aiocb *aiocbp); } 7721.221Spooka403 STD MODULAR { int|sys||aio_return(struct aiocb *aiocbp); } 7731.221Spooka404 COMPAT_50 MODULAR { int|sys||aio_suspend(const struct aiocb *const *list, \ 7741.219Schristos int nent, const struct timespec50 *timeout); } 7751.221Spooka405 STD MODULAR { int|sys||aio_write(struct aiocb *aiocbp); } 7761.221Spooka406 STD MODULAR { int|sys||lio_listio(int mode, struct aiocb *const *list, \ 7771.169Srmind int nent, struct sigevent *sig); } 7781.171Sjoerg 7791.170Sdsl407 UNIMPL 7801.170Sdsl408 UNIMPL 7811.170Sdsl409 UNIMPL 7821.170Sdsl 7831.225Spooka410 STD RUMP { int|sys|50|mount(const char *type, \ 7841.170Sdsl const char *path, int flags, void *data, \ 7851.170Sdsl size_t data_len); } 7861.221Spooka411 STD { void *|sys||mremap(void *old_address, size_t old_size, \ 7871.171Sjoerg void *new_address, size_t new_size, int flags); } 7881.184Srmind 7891.184Srmind; Processor-sets system calls 7901.221Spooka412 STD { int|sys||pset_create(psetid_t *psid); } 7911.221Spooka413 STD { int|sys||pset_destroy(psetid_t psid); } 7921.221Spooka414 STD { int|sys||pset_assign(psetid_t psid, cpuid_t cpuid, \ 7931.184Srmind psetid_t *opsid); } 7941.221Spooka415 STD { int|sys||_pset_bind(idtype_t idtype, id_t first_id, \ 7951.184Srmind id_t second_id, psetid_t psid, psetid_t *opsid); } 7961.245Spooka416 NOERR RUMP { int|sys|50|posix_fadvise(int fd, int PAD, \ 7971.187Smartin off_t offset, off_t len, int advice); } 7981.226Spooka417 STD RUMP { int|sys|50|select(int nd, fd_set *in, fd_set *ou, \ 7991.219Schristos fd_set *ex, struct timeval *tv); } 8001.267Spooka418 STD RUMP { int|sys|50|gettimeofday(struct timeval *tp, \ 8011.219Schristos void *tzp); } 8021.267Spooka419 STD RUMP { int|sys|50|settimeofday(const struct timeval *tv, \ 8031.219Schristos const void *tzp); } 8041.221Spooka420 STD RUMP { int|sys|50|utimes(const char *path, \ 8051.219Schristos const struct timeval *tptr); } 8061.267Spooka421 STD RUMP { int|sys|50|adjtime(const struct timeval *delta, \ 8071.219Schristos struct timeval *olddelta); } 8081.232Spooka422 STD MODULAR { int|sys|50|lfs_segwait(fsid_t *fsidp, \ 8091.219Schristos struct timeval *tv); } 8101.226Spooka423 STD RUMP { int|sys|50|futimes(int fd, \ 8111.219Schristos const struct timeval *tptr); } 8121.221Spooka424 STD RUMP { int|sys|50|lutimes(const char *path, \ 8131.219Schristos const struct timeval *tptr); } 8141.267Spooka425 STD RUMP { int|sys|50|setitimer(int which, \ 8151.219Schristos const struct itimerval *itv, \ 8161.219Schristos struct itimerval *oitv); } 8171.267Spooka426 STD RUMP { int|sys|50|getitimer(int which, \ 8181.219Schristos struct itimerval *itv); } 8191.267Spooka427 STD RUMP { int|sys|50|clock_gettime(clockid_t clock_id, \ 8201.219Schristos struct timespec *tp); } 8211.267Spooka428 STD RUMP { int|sys|50|clock_settime(clockid_t clock_id, \ 8221.219Schristos const struct timespec *tp); } 8231.267Spooka429 STD RUMP { int|sys|50|clock_getres(clockid_t clock_id, \ 8241.219Schristos struct timespec *tp); } 8251.267Spooka430 STD RUMP { int|sys|50|nanosleep(const struct timespec *rqtp, \ 8261.219Schristos struct timespec *rmtp); } 8271.221Spooka431 STD { int|sys|50|__sigtimedwait(const sigset_t *set, \ 8281.219Schristos siginfo_t *info, \ 8291.219Schristos struct timespec *timeout); } 8301.228Srmind432 STD MODULAR { int|sys|50|mq_timedsend(mqd_t mqdes, \ 8311.219Schristos const char *msg_ptr, size_t msg_len, \ 8321.219Schristos unsigned msg_prio, \ 8331.219Schristos const struct timespec *abs_timeout); } 8341.228Srmind433 STD MODULAR { ssize_t|sys|50|mq_timedreceive(mqd_t mqdes, \ 8351.219Schristos char *msg_ptr, size_t msg_len, unsigned *msg_prio, \ 8361.219Schristos const struct timespec *abs_timeout); } 8371.262Schristos434 COMPAT_60 MODULAR { int|sys||_lwp_park(const struct timespec *ts, \ 8381.219Schristos lwpid_t unpark, const void *hint, \ 8391.219Schristos const void *unparkhint); } 8401.226Spooka435 STD RUMP { int|sys|50|kevent(int fd, \ 8411.219Schristos const struct kevent *changelist, size_t nchanges, \ 8421.219Schristos struct kevent *eventlist, size_t nevents, \ 8431.219Schristos const struct timespec *timeout); } 8441.226Spooka436 STD RUMP { int|sys|50|pselect(int nd, fd_set *in, fd_set *ou, \ 8451.219Schristos fd_set *ex, const struct timespec *ts, \ 8461.219Schristos const sigset_t *mask); } 8471.226Spooka437 STD RUMP { int|sys|50|pollts(struct pollfd *fds, u_int nfds, \ 8481.219Schristos const struct timespec *ts, const sigset_t *mask); } 8491.221Spooka438 STD MODULAR { int|sys|50|aio_suspend( \ 8501.219Schristos const struct aiocb *const *list, \ 8511.219Schristos int nent, const struct timespec *timeout); } 8521.221Spooka439 STD RUMP { int|sys|50|stat(const char *path, struct stat *ub); } 8531.226Spooka440 STD RUMP { int|sys|50|fstat(int fd, struct stat *sb); } 8541.221Spooka441 STD RUMP { int|sys|50|lstat(const char *path, struct stat *ub); } 8551.219Schristos#if defined(SYSVSEM) || !defined(_KERNEL_OPT) 8561.221Spooka442 STD { int|sys|50|__semctl(int semid, int semnum, int cmd, \ 8571.219Schristos ... union __semun *arg); } 8581.219Schristos#else 8591.219Schristos442 EXCL ____semctl50 8601.219Schristos#endif 8611.219Schristos#if defined(SYSVSHM) || !defined(_KERNEL_OPT) 8621.221Spooka443 STD { int|sys|50|shmctl(int shmid, int cmd, \ 8631.219Schristos struct shmid_ds *buf); } 8641.219Schristos#else 8651.219Schristos443 EXCL ____shmctl50 8661.219Schristos#endif 8671.219Schristos#if defined(SYSVMSG) || !defined(_KERNEL_OPT) 8681.221Spooka444 STD { int|sys|50|msgctl(int msqid, int cmd, \ 8691.219Schristos struct msqid_ds *buf); } 8701.219Schristos#else 8711.219Schristos444 EXCL ____msgctl50 8721.219Schristos#endif 8731.221Spooka445 STD { int|sys|50|getrusage(int who, struct rusage *rusage); } 8741.267Spooka446 STD RUMP { int|sys|50|timer_settime(timer_t timerid, \ 8751.219Schristos int flags, const struct itimerspec *value, \ 8761.219Schristos struct itimerspec *ovalue); } 8771.267Spooka447 STD RUMP { int|sys|50|timer_gettime(timer_t timerid, struct \ 8781.219Schristos itimerspec *value); } 8791.219Schristos#if defined(NTP) || !defined(_KERNEL_OPT) 8801.221Spooka448 STD { int|sys|50|ntp_gettime(struct ntptimeval *ntvp); } 8811.219Schristos#else 8821.219Schristos448 EXCL ___ntp_gettime50 8831.219Schristos#endif 8841.243Schristos449 STD { int|sys|50|wait4(pid_t pid, int *status, \ 8851.219Schristos int options, struct rusage *rusage); } 8861.221Spooka450 STD RUMP { int|sys|50|mknod(const char *path, mode_t mode, \ 8871.219Schristos dev_t dev); } 8881.226Spooka451 STD RUMP { int|sys|50|fhstat(const void *fhp, \ 8891.219Schristos size_t fh_size, struct stat *sb); } 8901.253Sdholland; 452 only ever appeared in 5.99.x and can be reused after netbsd-7 8911.253Sdholland452 OBSOL 5.99 quotactl 8921.249Schristos453 STD RUMP { int|sys||pipe2(int *fildes, int flags); } 8931.249Schristos454 STD RUMP { int|sys||dup3(int from, int to, int flags); } 8941.249Schristos455 STD RUMP { int|sys||kqueue1(int flags); } 8951.249Schristos456 STD RUMP { int|sys||paccept(int s, struct sockaddr *name, \ 8961.249Schristos socklen_t *anamelen, const sigset_t *mask, \ 8971.249Schristos int flags); } 8981.251Smanu457 STD RUMP { int|sys||linkat(int fd1, const char *name1, \ 8991.251Smanu int fd2, const char *name2, int flags); } 9001.251Smanu458 STD RUMP { int|sys||renameat(int fromfd, const char *from, \ 9011.251Smanu int tofd, const char *to); } 9021.251Smanu459 STD RUMP { int|sys||mkfifoat(int fd, const char *path, \ 9031.251Smanu mode_t mode); } 9041.251Smanu460 STD RUMP { int|sys||mknodat(int fd, const char *path, \ 9051.264Snjoly mode_t mode, int PAD, dev_t dev); } 9061.251Smanu461 STD RUMP { int|sys||mkdirat(int fd, const char *path, \ 9071.251Smanu mode_t mode); } 9081.251Smanu462 STD RUMP { int|sys||faccessat(int fd, const char *path, \ 9091.251Smanu int amode, int flag); } 9101.251Smanu463 STD RUMP { int|sys||fchmodat(int fd, const char *path, \ 9111.251Smanu mode_t mode, int flag); } 9121.251Smanu464 STD RUMP { int|sys||fchownat(int fd, const char *path, \ 9131.251Smanu uid_t owner, gid_t group, int flag); } 9141.263Spooka465 STD { int|sys||fexecve(int fd, \ 9151.251Smanu char * const *argp, char * const *envp); } 9161.251Smanu466 STD RUMP { int|sys||fstatat(int fd, const char *path, \ 9171.251Smanu struct stat *buf, int flag); } 9181.251Smanu467 STD RUMP { int|sys||utimensat(int fd, const char *path, \ 9191.251Smanu const struct timespec *tptr, int flag); } 9201.251Smanu468 STD RUMP { int|sys||openat(int fd, const char *path, \ 9211.251Smanu int oflags, ... mode_t mode); } 9221.251Smanu469 STD RUMP { int|sys||readlinkat(int fd, const char *path, \ 9231.251Smanu char *buf, size_t bufsize); } 9241.251Smanu470 STD RUMP { int|sys||symlinkat(const char *path1, int fd, \ 9251.251Smanu const char *path2); } 9261.251Smanu471 STD RUMP { int|sys||unlinkat(int fd, const char *path, \ 9271.251Smanu int flag); } 9281.252Smanu472 STD RUMP { int|sys||futimens(int fd, \ 9291.252Smanu const struct timespec *tptr); } 9301.253Sdholland473 STD RUMP { int|sys||__quotactl(const char *path, \ 9311.253Sdholland struct quotactl_args *args); } 9321.254Smartin474 NOERR { int|sys||posix_spawn(pid_t *pid, const char *path, \ 9331.260Schristos const struct posix_spawn_file_actions *file_actions, \ 9341.260Schristos const struct posix_spawnattr *attrp, \ 9351.260Schristos char *const *argv, char *const *envp); } 9361.263Spooka475 STD RUMP { int|sys||recvmmsg(int s, struct mmsghdr *mmsg, \ 9371.260Schristos unsigned int vlen, unsigned int flags, \ 9381.260Schristos struct timespec *timeout); } 9391.263Spooka476 STD RUMP { int|sys||sendmmsg(int s, struct mmsghdr *mmsg, \ 9401.260Schristos unsigned int vlen, unsigned int flags); } 9411.267Spooka477 STD RUMP { int|sys||clock_nanosleep(clockid_t clock_id, \ 9421.261Schristos int flags, const struct timespec *rqtp, \ 9431.261Schristos struct timespec *rmtp); } 9441.262Schristos478 STD { int|sys|60|_lwp_park(clockid_t clock_id, int flags, \ 9451.262Schristos const struct timespec *ts, lwpid_t unpark, \ 9461.262Schristos const void *hint, const void *unparkhint); } 947