syscalls.master revision 49428
149428Sjkh $Id: syscalls.master,v 1.60 1999/08/04 20:04:25 jkh Exp $ 21817Sdg; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 31817Sdg; 41541Srgrimes; System call name/number master file. 51541Srgrimes; Processed to created init_sysent.c, syscalls.c and syscall.h. 61541Srgrimes 710905Sbde; Columns: number type nargs namespc name alt{name,tag,rtyp}/comments 81541Srgrimes; number system call number, must be in order 91541Srgrimes; type one of STD, OBSOL, UNIMPL, COMPAT 102696Swollman; namespc one of POSIX, BSD, NOHIDE 1111294Sswallace; name psuedo-prototype of syscall routine 1210905Sbde; If one of the following alts is different, then all appear: 131541Srgrimes; altname name of system call if different 1410905Sbde; alttag name of args struct tag if different from [o]`name'"_args" 1510905Sbde; altrtyp return type if not int (bogus - syscalls always return int) 161541Srgrimes; for UNIMPL/OBSOL, name continues with comments 171541Srgrimes 181541Srgrimes; types: 191541Srgrimes; STD always included 201541Srgrimes; COMPAT included on COMPAT #ifdef 211541Srgrimes; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h 221541Srgrimes; OBSOL obsolete, not included in system, only specifies name 231541Srgrimes; UNIMPL not implemented, placeholder only 241541Srgrimes 251541Srgrimes; #ifdef's, etc. may be included, and are copied to the output files. 261541Srgrimes 2711294Sswallace#include <sys/param.h> 2811294Sswallace#include <sys/sysent.h> 2911294Sswallace#include <sys/sysproto.h> 3011294Sswallace 311541Srgrimes; Reserved/unimplemented system calls in the range 0-150 inclusive 321541Srgrimes; are reserved for use in future Berkeley releases. 331541Srgrimes; Additional system calls implemented in vendor and other 341541Srgrimes; redistributions should be placed in the reserved range at the end 351541Srgrimes; of the current calls. 361541Srgrimes 3711294Sswallace0 STD NOHIDE { int nosys(void); } syscall nosys_args int 3811294Sswallace1 STD NOHIDE { void exit(int rval); } exit rexit_args void 3911294Sswallace2 STD POSIX { int fork(void); } 4038515Sdfr3 STD POSIX { ssize_t read(int fd, void *buf, size_t nbyte); } 4138515Sdfr4 STD POSIX { ssize_t write(int fd, const void *buf, size_t nbyte); } 4211294Sswallace5 STD POSIX { int open(char *path, int flags, int mode); } 4312216Sbde; XXX should be { int open(const char *path, int flags, ...); } 4412216Sbde; but we're not ready for `const' or varargs. 4512216Sbde; XXX man page says `mode_t mode'. 4611294Sswallace6 STD POSIX { int close(int fd); } 4711294Sswallace7 STD BSD { int wait4(int pid, int *status, int options, \ 4811294Sswallace struct rusage *rusage); } wait4 wait_args int 4911294Sswallace8 COMPAT BSD { int creat(char *path, int mode); } 5011294Sswallace9 STD POSIX { int link(char *path, char *link); } 5111294Sswallace10 STD POSIX { int unlink(char *path); } 5211294Sswallace11 OBSOL NOHIDE execv 5311294Sswallace12 STD POSIX { int chdir(char *path); } 5411294Sswallace13 STD BSD { int fchdir(int fd); } 5511294Sswallace14 STD POSIX { int mknod(char *path, int mode, int dev); } 5611294Sswallace15 STD POSIX { int chmod(char *path, int mode); } 5711294Sswallace16 STD POSIX { int chown(char *path, int uid, int gid); } 5811294Sswallace17 STD BSD { int obreak(char *nsize); } break obreak_args int 5911294Sswallace18 STD BSD { int getfsstat(struct statfs *buf, long bufsize, \ 6011294Sswallace int flags); } 6111294Sswallace19 COMPAT POSIX { long lseek(int fd, long offset, int whence); } 6211294Sswallace20 STD POSIX { pid_t getpid(void); } 6322521Sdyson21 STD BSD { int mount(char *type, char *path, int flags, \ 6411294Sswallace caddr_t data); } 6512216Sbde; XXX 4.4lite2 uses `char *type' but we're not ready for that. 6612216Sbde; XXX `path' should have type `const char *' but we're not ready for that. 6711294Sswallace22 STD BSD { int unmount(char *path, int flags); } 6811294Sswallace23 STD POSIX { int setuid(uid_t uid); } 6911294Sswallace24 STD POSIX { uid_t getuid(void); } 7011294Sswallace25 STD POSIX { uid_t geteuid(void); } 7111294Sswallace26 STD BSD { int ptrace(int req, pid_t pid, caddr_t addr, \ 7211294Sswallace int data); } 7311294Sswallace27 STD BSD { int recvmsg(int s, struct msghdr *msg, int flags); } 7411294Sswallace28 STD BSD { int sendmsg(int s, caddr_t msg, int flags); } 7511294Sswallace29 STD BSD { int recvfrom(int s, caddr_t buf, size_t len, \ 7611294Sswallace int flags, caddr_t from, int *fromlenaddr); } 7711294Sswallace30 STD BSD { int accept(int s, caddr_t name, int *anamelen); } 7811294Sswallace31 STD BSD { int getpeername(int fdes, caddr_t asa, int *alen); } 7911294Sswallace32 STD BSD { int getsockname(int fdes, caddr_t asa, int *alen); } 8011294Sswallace33 STD POSIX { int access(char *path, int flags); } 8111294Sswallace34 STD BSD { int chflags(char *path, int flags); } 8211294Sswallace35 STD BSD { int fchflags(int fd, int flags); } 8311294Sswallace36 STD BSD { int sync(void); } 8411294Sswallace37 STD POSIX { int kill(int pid, int signum); } 8511294Sswallace38 COMPAT POSIX { int stat(char *path, struct ostat *ub); } 8611294Sswallace39 STD POSIX { pid_t getppid(void); } 8711294Sswallace40 COMPAT POSIX { int lstat(char *path, struct ostat *ub); } 8811294Sswallace41 STD POSIX { int dup(u_int fd); } 8911294Sswallace42 STD POSIX { int pipe(void); } 9011294Sswallace43 STD POSIX { gid_t getegid(void); } 9138515Sdfr44 STD BSD { int profil(caddr_t samples, size_t size, \ 9238515Sdfr size_t offset, u_int scale); } 9347103Sbde45 STD BSD { int ktrace(const char *fname, int ops, int facs, \ 9411294Sswallace int pid); } 9511294Sswallace46 STD POSIX { int sigaction(int signum, struct sigaction *nsa, \ 9611294Sswallace struct sigaction *osa); } 9711294Sswallace47 STD POSIX { gid_t getgid(void); } 9811294Sswallace48 STD POSIX { int sigprocmask(int how, sigset_t mask); } 9921776Sbde; XXX note nonstandard (bogus) calling convention - the libc stub passes 10021776Sbde; us the mask, not a pointer to it, and we return the old mask as the 10121776Sbde; (int) return value. 10211294Sswallace49 STD BSD { int getlogin(char *namebuf, u_int namelen); } 10311294Sswallace50 STD BSD { int setlogin(char *namebuf); } 10411294Sswallace51 STD BSD { int acct(char *path); } 10511294Sswallace52 STD POSIX { int sigpending(void); } 10611294Sswallace53 STD BSD { int sigaltstack(struct sigaltstack *nss, \ 10711294Sswallace struct sigaltstack *oss); } 10811294Sswallace54 STD POSIX { int ioctl(int fd, u_long com, caddr_t data); } 10911294Sswallace55 STD BSD { int reboot(int opt); } 11011294Sswallace56 STD POSIX { int revoke(char *path); } 11111294Sswallace57 STD POSIX { int symlink(char *path, char *link); } 11211294Sswallace58 STD POSIX { int readlink(char *path, char *buf, int count); } 11311294Sswallace59 STD POSIX { int execve(char *fname, char **argv, char **envv); } 11422521Sdyson60 STD POSIX { int umask(int newmask); } umask umask_args int 11511294Sswallace61 STD BSD { int chroot(char *path); } 11611294Sswallace62 COMPAT POSIX { int fstat(int fd, struct ostat *sb); } 11738515Sdfr63 COMPAT BSD { int getkerninfo(int op, char *where, size_t *size, \ 11811294Sswallace int arg); } getkerninfo getkerninfo_args int 11911294Sswallace64 COMPAT BSD { int getpagesize(void); } \ 12011294Sswallace getpagesize getpagesize_args int 12132166Salex65 STD BSD { int msync(void *addr, size_t len, int flags); } 12214219Speter66 STD BSD { int vfork(void); } 12311294Sswallace67 OBSOL NOHIDE vread 12411294Sswallace68 OBSOL NOHIDE vwrite 12511294Sswallace69 STD BSD { int sbrk(int incr); } 12611294Sswallace70 STD BSD { int sstk(int incr); } 12732166Salex71 COMPAT BSD { int mmap(void *addr, int len, int prot, \ 12811294Sswallace int flags, int fd, long pos); } 12911294Sswallace72 STD BSD { int ovadvise(int anom); } vadvise ovadvise_args int 13032166Salex73 STD BSD { int munmap(void *addr, size_t len); } 13132166Salex74 STD BSD { int mprotect(const void *addr, size_t len, int prot); } 13232166Salex75 STD BSD { int madvise(void *addr, size_t len, int behav); } 13311294Sswallace76 OBSOL NOHIDE vhangup 13411294Sswallace77 OBSOL NOHIDE vlimit 13533040Sbde78 STD BSD { int mincore(const void *addr, size_t len, \ 13633040Sbde char *vec); } 13711294Sswallace79 STD POSIX { int getgroups(u_int gidsetsize, gid_t *gidset); } 13811294Sswallace80 STD POSIX { int setgroups(u_int gidsetsize, gid_t *gidset); } 13911294Sswallace81 STD POSIX { int getpgrp(void); } 14011294Sswallace82 STD POSIX { int setpgid(int pid, int pgid); } 14111294Sswallace83 STD BSD { int setitimer(u_int which, struct itimerval *itv, \ 14211294Sswallace struct itimerval *oitv); } 14311330Sswallace84 COMPAT BSD { int wait(void); } 14411294Sswallace85 STD BSD { int swapon(char *name); } 14511294Sswallace86 STD BSD { int getitimer(u_int which, struct itimerval *itv); } 14611294Sswallace87 COMPAT BSD { int gethostname(char *hostname, u_int len); } \ 14711294Sswallace gethostname gethostname_args int 14811294Sswallace88 COMPAT BSD { int sethostname(char *hostname, u_int len); } \ 14911294Sswallace sethostname sethostname_args int 15011294Sswallace89 STD BSD { int getdtablesize(void); } 15111294Sswallace90 STD POSIX { int dup2(u_int from, u_int to); } 15211294Sswallace91 UNIMPL BSD getdopt 15336735Sdfr92 STD POSIX { int fcntl(int fd, int cmd, long arg); } 15412216Sbde; XXX should be { int fcntl(int fd, int cmd, ...); } 15512216Sbde; but we're not ready for varargs. 15612216Sbde; XXX man page says `int arg' too. 15717702Ssmpatel93 STD BSD { int select(int nd, fd_set *in, fd_set *ou, \ 15811294Sswallace fd_set *ex, struct timeval *tv); } 15911294Sswallace94 UNIMPL BSD setdopt 16011294Sswallace95 STD POSIX { int fsync(int fd); } 16111294Sswallace96 STD BSD { int setpriority(int which, int who, int prio); } 16211294Sswallace97 STD BSD { int socket(int domain, int type, int protocol); } 16311294Sswallace98 STD BSD { int connect(int s, caddr_t name, int namelen); } 16411330Sswallace99 CPT_NOA BSD { int accept(int s, caddr_t name, int *anamelen); } \ 16511294Sswallace accept accept_args int 16611294Sswallace100 STD BSD { int getpriority(int which, int who); } 16711294Sswallace101 COMPAT BSD { int send(int s, caddr_t buf, int len, int flags); } 16811294Sswallace102 COMPAT BSD { int recv(int s, caddr_t buf, int len, int flags); } 16911294Sswallace103 STD BSD { int sigreturn(struct sigcontext *sigcntxp); } 17011294Sswallace104 STD BSD { int bind(int s, caddr_t name, int namelen); } 17111294Sswallace105 STD BSD { int setsockopt(int s, int level, int name, \ 17211294Sswallace caddr_t val, int valsize); } 17311294Sswallace106 STD BSD { int listen(int s, int backlog); } 17411294Sswallace107 OBSOL NOHIDE vtimes 17511294Sswallace108 COMPAT BSD { int sigvec(int signum, struct sigvec *nsv, \ 17611294Sswallace struct sigvec *osv); } 17711294Sswallace109 COMPAT BSD { int sigblock(int mask); } 17811294Sswallace110 COMPAT BSD { int sigsetmask(int mask); } 17921776Sbde111 STD POSIX { int sigsuspend(sigset_t mask); } 18021776Sbde; XXX note nonstandard (bogus) calling convention - the libc stub passes 18121776Sbde; us the mask, not a pointer to it. 18211294Sswallace112 COMPAT BSD { int sigstack(struct sigstack *nss, \ 18311294Sswallace struct sigstack *oss); } 18411294Sswallace113 COMPAT BSD { int recvmsg(int s, struct omsghdr *msg, int flags); } 18511294Sswallace114 COMPAT BSD { int sendmsg(int s, caddr_t msg, int flags); } 18611294Sswallace115 OBSOL NOHIDE vtrace 18711294Sswallace116 STD BSD { int gettimeofday(struct timeval *tp, \ 18811294Sswallace struct timezone *tzp); } 18911294Sswallace117 STD BSD { int getrusage(int who, struct rusage *rusage); } 19011294Sswallace118 STD BSD { int getsockopt(int s, int level, int name, \ 19111294Sswallace caddr_t val, int *avalsize); } 19214215Speter119 UNIMPL NOHIDE resuba (BSD/OS 2.x) 19311294Sswallace120 STD BSD { int readv(int fd, struct iovec *iovp, u_int iovcnt); } 19411294Sswallace121 STD BSD { int writev(int fd, struct iovec *iovp, \ 19511294Sswallace u_int iovcnt); } 19611294Sswallace122 STD BSD { int settimeofday(struct timeval *tv, \ 19711294Sswallace struct timezone *tzp); } 19811294Sswallace123 STD BSD { int fchown(int fd, int uid, int gid); } 19911294Sswallace124 STD BSD { int fchmod(int fd, int mode); } 20011330Sswallace125 CPT_NOA BSD { int recvfrom(int s, caddr_t buf, size_t len, \ 20111294Sswallace int flags, caddr_t from, int *fromlenaddr); } \ 20211294Sswallace recvfrom recvfrom_args int 20311294Sswallace126 STD BSD { int setreuid(int ruid, int euid); } 20411294Sswallace127 STD BSD { int setregid(int rgid, int egid); } 20511294Sswallace128 STD POSIX { int rename(char *from, char *to); } 20611294Sswallace129 COMPAT BSD { int truncate(char *path, long length); } 20711294Sswallace130 COMPAT BSD { int ftruncate(int fd, long length); } 20811294Sswallace131 STD BSD { int flock(int fd, int how); } 20911294Sswallace132 STD POSIX { int mkfifo(char *path, int mode); } 21011294Sswallace133 STD BSD { int sendto(int s, caddr_t buf, size_t len, \ 21111294Sswallace int flags, caddr_t to, int tolen); } 21211294Sswallace134 STD BSD { int shutdown(int s, int how); } 21311294Sswallace135 STD BSD { int socketpair(int domain, int type, int protocol, \ 21411294Sswallace int *rsv); } 21511294Sswallace136 STD POSIX { int mkdir(char *path, int mode); } 21611294Sswallace137 STD POSIX { int rmdir(char *path); } 21711294Sswallace138 STD BSD { int utimes(char *path, struct timeval *tptr); } 21811294Sswallace139 OBSOL NOHIDE 4.2 sigreturn 21911294Sswallace140 STD BSD { int adjtime(struct timeval *delta, \ 22011294Sswallace struct timeval *olddelta); } 22111294Sswallace141 COMPAT BSD { int getpeername(int fdes, caddr_t asa, int *alen); } 22211294Sswallace142 COMPAT BSD { long gethostid(void); } 22311294Sswallace143 COMPAT BSD { int sethostid(long hostid); } 22411294Sswallace144 COMPAT BSD { int getrlimit(u_int which, struct ogetrlimit *rlp); } 22511294Sswallace145 COMPAT BSD { int setrlimit(u_int which, struct ogetrlimit *rlp); } 22611294Sswallace146 COMPAT BSD { int killpg(int pgid, int signum); } 22711294Sswallace147 STD POSIX { int setsid(void); } 22811294Sswallace148 STD BSD { int quotactl(char *path, int cmd, int uid, \ 22911294Sswallace caddr_t arg); } 23011294Sswallace149 COMPAT BSD { int quota(void); } 23111330Sswallace150 CPT_NOA BSD { int getsockname(int fdec, caddr_t asa, int *alen); }\ 23211330Sswallace getsockname getsockname_args int 2331541Srgrimes 2341541Srgrimes; Syscalls 151-180 inclusive are reserved for vendor-specific 2351541Srgrimes; system calls. (This includes various calls added for compatibity 2361541Srgrimes; with other Unix variants.) 2371541Srgrimes; Some of these calls are now supported by BSD... 23814215Speter151 UNIMPL NOHIDE sem_lock (BSD/OS 2.x) 23914215Speter152 UNIMPL NOHIDE sem_wakeup (BSD/OS 2.x) 24014215Speter153 UNIMPL NOHIDE asyncdaemon (BSD/OS 2.x) 24111294Sswallace154 UNIMPL NOHIDE nosys 24230740Sphk; 155 is initialized by the NFS code, if present. 24330740Sphk155 NOIMPL BSD { int nfssvc(int flag, caddr_t argp); } 24411294Sswallace156 COMPAT BSD { int getdirentries(int fd, char *buf, u_int count, \ 24511294Sswallace long *basep); } 24611294Sswallace157 STD BSD { int statfs(char *path, struct statfs *buf); } 24711294Sswallace158 STD BSD { int fstatfs(int fd, struct statfs *buf); } 24811294Sswallace159 UNIMPL NOHIDE nosys 24911294Sswallace160 UNIMPL NOHIDE nosys 25030740Sphk; 161 is initialized by the NFS code, if present. 25130740Sphk161 NOIMPL BSD { int getfh(char *fname, struct fhandle *fhp); } 25211294Sswallace162 STD BSD { int getdomainname(char *domainname, int len); } 25311294Sswallace163 STD BSD { int setdomainname(char *domainname, int len); } 25412216Sbde164 STD BSD { int uname(struct utsname *name); } 25511294Sswallace165 STD BSD { int sysarch(int op, char *parms); } 25611294Sswallace166 STD BSD { int rtprio(int function, pid_t pid, \ 25711294Sswallace struct rtprio *rtp); } 25811294Sswallace167 UNIMPL NOHIDE nosys 25911294Sswallace168 UNIMPL NOHIDE nosys 26011294Sswallace169 STD BSD { int semsys(int which, int a2, int a3, int a4, \ 26111294Sswallace int a5); } 26212216Sbde; XXX should be { int semsys(int which, ...); } 26311294Sswallace170 STD BSD { int msgsys(int which, int a2, int a3, int a4, \ 26411294Sswallace int a5, int a6); } 26512216Sbde; XXX should be { int msgsys(int which, ...); } 26611294Sswallace171 STD BSD { int shmsys(int which, int a2, int a3, int a4); } 26712216Sbde; XXX should be { int shmsys(int which, ...); } 26811294Sswallace172 UNIMPL NOHIDE nosys 26945311Sdt173 STD POSIX { ssize_t pread(int fd, void *buf, size_t nbyte, \ 27045311Sdt int pad, off_t offset); } 27145311Sdt174 STD POSIX { ssize_t pwrite(int fd, const void *buf, \ 27245311Sdt size_t nbyte, int pad, off_t offset); } 27311294Sswallace175 UNIMPL NOHIDE nosys 27411294Sswallace176 STD BSD { int ntp_adjtime(struct timex *tp); } 27514215Speter177 UNIMPL NOHIDE sfork (BSD/OS 2.x) 27614215Speter178 UNIMPL NOHIDE getdescriptor (BSD/OS 2.x) 27714215Speter179 UNIMPL NOHIDE setdescriptor (BSD/OS 2.x) 27849428Sjkh180 UNIMPL NOHIDE nosys 2791541Srgrimes 28049428Sjkh; Syscalls 181-199 are used by/reserved for BSD 28111294Sswallace181 STD POSIX { int setgid(gid_t gid); } 28211294Sswallace182 STD BSD { int setegid(gid_t egid); } 28311294Sswallace183 STD BSD { int seteuid(uid_t euid); } 28432889Sphk184 UNIMPL BSD lfs_bmapv 28532889Sphk185 UNIMPL BSD lfs_markv 28632889Sphk186 UNIMPL BSD lfs_segclean 28732889Sphk187 UNIMPL BSD lfs_segwait 28811294Sswallace188 STD POSIX { int stat(char *path, struct stat *ub); } 28911294Sswallace189 STD POSIX { int fstat(int fd, struct stat *sb); } 29011294Sswallace190 STD POSIX { int lstat(char *path, struct stat *ub); } 29111294Sswallace191 STD POSIX { int pathconf(char *path, int name); } 29211294Sswallace192 STD POSIX { int fpathconf(int fd, int name); } 29311294Sswallace193 UNIMPL NOHIDE nosys 29411294Sswallace194 STD BSD { int getrlimit(u_int which, \ 29511330Sswallace struct orlimit *rlp); } \ 29611294Sswallace getrlimit __getrlimit_args int 29711294Sswallace195 STD BSD { int setrlimit(u_int which, \ 29811330Sswallace struct orlimit *rlp); } \ 29911294Sswallace setrlimit __setrlimit_args int 30011294Sswallace196 STD BSD { int getdirentries(int fd, char *buf, u_int count, \ 30111294Sswallace long *basep); } 30211294Sswallace197 STD BSD { caddr_t mmap(caddr_t addr, size_t len, int prot, \ 30311294Sswallace int flags, int fd, long pad, off_t pos); } 30411294Sswallace198 STD NOHIDE { int nosys(void); } __syscall __syscall_args int 30511294Sswallace199 STD POSIX { off_t lseek(int fd, int pad, off_t offset, \ 30611294Sswallace int whence); } 30711294Sswallace200 STD BSD { int truncate(char *path, int pad, off_t length); } 30811294Sswallace201 STD BSD { int ftruncate(int fd, int pad, off_t length); } 30911294Sswallace202 STD BSD { int __sysctl(int *name, u_int namelen, void *old, \ 31011294Sswallace size_t *oldlenp, void *new, size_t newlen); } \ 31111294Sswallace __sysctl sysctl_args int 3122696Swollman; properly, __sysctl should be a NOHIDE, but making an exception 3132696Swollman; here allows to avoid one in libc/sys/Makefile.inc. 31432166Salex203 STD BSD { int mlock(const void *addr, size_t len); } 31532166Salex204 STD BSD { int munlock(const void *addr, size_t len); } 31635938Sdyson205 STD BSD { int undelete(char *path); } 31735938Sdyson206 STD BSD { int futimes(int fd, struct timeval *tptr); } 31828399Speter207 STD BSD { int getpgid(pid_t pid); } 31925581Speter208 UNIMPL NOHIDE newreboot (NetBSD) 32029348Speter209 STD BSD { int poll(struct pollfd *fds, u_int nfds, \ 32129348Speter int timeout); } 3222124Sdg 3232124Sdg; 3242124Sdg; The following are reserved for loadable syscalls 3252124Sdg; 32611294Sswallace210 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 32711294Sswallace211 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 32811294Sswallace212 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 32911294Sswallace213 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 33011294Sswallace214 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 33111294Sswallace215 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 33211294Sswallace216 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 33311294Sswallace217 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 33411294Sswallace218 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 33511294Sswallace219 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 33612864Speter 33712864Speter; 33814215Speter; The following were introduced with NetBSD/4.4Lite-2 33912864Speter; 34012864Speter220 STD BSD { int __semctl(int semid, int semnum, int cmd, \ 34112864Speter union semun *arg); } 34212864Speter221 STD BSD { int semget(key_t key, int nsems, int semflg); } 34312864Speter222 STD BSD { int semop(int semid, struct sembuf *sops, \ 34412864Speter u_int nsops); } 34512864Speter223 STD BSD { int semconfig(int flag); } 34612864Speter224 STD BSD { int msgctl(int msqid, int cmd, \ 34712864Speter struct msqid_ds *buf); } 34812864Speter225 STD BSD { int msgget(key_t key, int msgflg); } 34912864Speter226 STD BSD { int msgsnd(int msqid, void *msgp, size_t msgsz, \ 35012864Speter int msgflg); } 35112864Speter227 STD BSD { int msgrcv(int msqid, void *msgp, size_t msgsz, \ 35212864Speter long msgtyp, int msgflg); } 35312864Speter228 STD BSD { int shmat(int shmid, void *shmaddr, int shmflg); } 35412864Speter229 STD BSD { int shmctl(int shmid, int cmd, \ 35512864Speter struct shmid_ds *buf); } 35612864Speter230 STD BSD { int shmdt(void *shmaddr); } 35712864Speter231 STD BSD { int shmget(key_t key, int size, int shmflg); } 35814219Speter; 35925580Speter232 STD POSIX { int clock_gettime(clockid_t clock_id, \ 36025580Speter struct timespec *tp); } 36125580Speter233 STD POSIX { int clock_settime(clockid_t clock_id, \ 36225580Speter const struct timespec *tp); } 36325580Speter234 STD POSIX { int clock_getres(clockid_t clock_id, \ 36425580Speter struct timespec *tp); } 36525580Speter235 UNIMPL NOHIDE timer_create 36625580Speter236 UNIMPL NOHIDE timer_delete 36725580Speter237 UNIMPL NOHIDE timer_settime 36825580Speter238 UNIMPL NOHIDE timer_gettime 36925580Speter239 UNIMPL NOHIDE timer_getoverrun 37025580Speter240 STD POSIX { int nanosleep(const struct timespec *rqtp, \ 37125580Speter struct timespec *rmtp); } 37214219Speter241 UNIMPL NOHIDE nosys 37314219Speter242 UNIMPL NOHIDE nosys 37414219Speter243 UNIMPL NOHIDE nosys 37514219Speter244 UNIMPL NOHIDE nosys 37614219Speter245 UNIMPL NOHIDE nosys 37714219Speter246 UNIMPL NOHIDE nosys 37814219Speter247 UNIMPL NOHIDE nosys 37914219Speter248 UNIMPL NOHIDE nosys 38014219Speter249 UNIMPL NOHIDE nosys 38114219Speter; syscall numbers initially used in OpenBSD 38232166Salex250 STD BSD { int minherit(void *addr, size_t len, int inherit); } 38314219Speter251 STD BSD { int rfork(int flags); } 38429348Speter252 STD BSD { int openbsd_poll(struct pollfd *fds, u_int nfds, \ 38529348Speter int timeout); } 38624451Speter253 STD BSD { int issetugid(void); } 38724439Speter254 STD BSD { int lchown(char *path, int uid, int gid); } 38825537Sdfr255 UNIMPL NOHIDE nosys 38925537Sdfr256 UNIMPL NOHIDE nosys 39025537Sdfr257 UNIMPL NOHIDE nosys 39125537Sdfr258 UNIMPL NOHIDE nosys 39225537Sdfr259 UNIMPL NOHIDE nosys 39325537Sdfr260 UNIMPL NOHIDE nosys 39425537Sdfr261 UNIMPL NOHIDE nosys 39525537Sdfr262 UNIMPL NOHIDE nosys 39625537Sdfr263 UNIMPL NOHIDE nosys 39725537Sdfr264 UNIMPL NOHIDE nosys 39825537Sdfr265 UNIMPL NOHIDE nosys 39925537Sdfr266 UNIMPL NOHIDE nosys 40025537Sdfr267 UNIMPL NOHIDE nosys 40125537Sdfr268 UNIMPL NOHIDE nosys 40225537Sdfr269 UNIMPL NOHIDE nosys 40325537Sdfr270 UNIMPL NOHIDE nosys 40425537Sdfr271 UNIMPL NOHIDE nosys 40535938Sdyson272 STD BSD { int getdents(int fd, char *buf, size_t count); } 40625537Sdfr273 UNIMPL NOHIDE nosys 40735938Sdyson274 STD BSD { int lchmod(char *path, mode_t mode); } 40835938Sdyson275 NOPROTO BSD { int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown netbsd_lchown int 40935938Sdyson276 STD BSD { int lutimes(char *path, struct timeval *tptr); } 41035938Sdyson277 NOPROTO BSD { int msync(void *addr, size_t len, int flags); } netbsd_msync netbsd_msync int 41135938Sdyson278 STD BSD { int nstat(char *path, struct nstat *ub); } 41235938Sdyson279 STD BSD { int nfstat(int fd, struct nstat *sb); } 41335938Sdyson280 STD BSD { int nlstat(char *path, struct nstat *ub); } 41425537Sdfr281 UNIMPL NOHIDE nosys 41525537Sdfr282 UNIMPL NOHIDE nosys 41625537Sdfr283 UNIMPL NOHIDE nosys 41725537Sdfr284 UNIMPL NOHIDE nosys 41825537Sdfr285 UNIMPL NOHIDE nosys 41925537Sdfr286 UNIMPL NOHIDE nosys 42025537Sdfr287 UNIMPL NOHIDE nosys 42125537Sdfr288 UNIMPL NOHIDE nosys 42225537Sdfr289 UNIMPL NOHIDE nosys 42325537Sdfr290 UNIMPL NOHIDE nosys 42425537Sdfr291 UNIMPL NOHIDE nosys 42525537Sdfr292 UNIMPL NOHIDE nosys 42625537Sdfr293 UNIMPL NOHIDE nosys 42725537Sdfr294 UNIMPL NOHIDE nosys 42825537Sdfr295 UNIMPL NOHIDE nosys 42925537Sdfr296 UNIMPL NOHIDE nosys 43025537Sdfr297 UNIMPL NOHIDE nosys 43125537Sdfr298 UNIMPL NOHIDE nosys 43225537Sdfr299 UNIMPL NOHIDE nosys 43325537Sdfr; syscall numbers for FreeBSD 43425537Sdfr300 STD BSD { int modnext(int modid); } 43525537Sdfr301 STD BSD { int modstat(int modid, struct module_stat* stat); } 43625537Sdfr302 STD BSD { int modfnext(int modid); } 43725537Sdfr303 STD BSD { int modfind(char *name); } 43825537Sdfr304 STD BSD { int kldload(const char *file); } 43925537Sdfr305 STD BSD { int kldunload(int fileid); } 44025537Sdfr306 STD BSD { int kldfind(const char *file); } 44125537Sdfr307 STD BSD { int kldnext(int fileid); } 44225537Sdfr308 STD BSD { int kldstat(int fileid, struct kld_file_stat* stat); } 44325537Sdfr309 STD BSD { int kldfirstmod(int fileid); } 44428399Speter310 STD BSD { int getsid(pid_t pid); } 44525580Speter311 UNIMPL NOHIDE setresuid 44625580Speter312 UNIMPL NOHIDE setresgid 44736033Speter313 OBSOL NOHIDE signanosleep 44826671Sdyson314 STD BSD { int aio_return(struct aiocb *aiocbp); } 44926671Sdyson315 STD BSD { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } 45026671Sdyson316 STD BSD { int aio_cancel(int fd, struct aiocb *aiocbp); } 45126671Sdyson317 STD BSD { int aio_error(struct aiocb *aiocbp); } 45226671Sdyson318 STD BSD { int aio_read(struct aiocb *aiocbp); } 45326671Sdyson319 STD BSD { int aio_write(struct aiocb *aiocbp); } 45426671Sdyson320 STD BSD { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } 45526671Sdyson321 STD BSD { int yield(void); } 45626671Sdyson322 STD BSD { int thr_sleep(const struct timespec *timeout); } 45726671Sdyson323 STD BSD { int thr_wakeup(pid_t pid); } 45826671Sdyson324 STD BSD { int mlockall(int how); } 45926671Sdyson325 STD BSD { int munlockall(void); } 46029391Sphk326 STD BSD { int __getcwd(u_char *buf, u_int buflen); } 46134925Sdufault 46234925Sdufault327 STD POSIX { int sched_setparam (pid_t pid, const struct sched_param *param); } 46334925Sdufault328 STD POSIX { int sched_getparam (pid_t pid, struct sched_param *param); } 46434925Sdufault 46534925Sdufault329 STD POSIX { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } 46634925Sdufault330 STD POSIX { int sched_getscheduler (pid_t pid); } 46734925Sdufault 46834925Sdufault331 STD POSIX { int sched_yield (void); } 46934925Sdufault332 STD POSIX { int sched_get_priority_max (int policy); } 47034925Sdufault333 STD POSIX { int sched_get_priority_min (int policy); } 47134925Sdufault334 STD POSIX { int sched_rr_get_interval (pid_t pid, struct timespec *interval); } 47247103Sbde335 STD BSD { int utrace(const void *addr, size_t len); } 47340931Sdg336 STD BSD { int sendfile(int fd, int s, off_t offset, size_t nbytes, \ 47440931Sdg struct sf_hdtr *hdtr, off_t *sbytes, int flags); } 47541088Speter337 STD BSD { int kldsym(int fileid, int cmd, void *data); } 47646154Sphk338 STD BSD { int jail(struct jail *jail); } 47749420Sjkh339 UNIMPL BSD pioctl 478