1 $FreeBSD$ 2; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 3; 4; System call name/number master file. 5; Processed to created init_sysent.c, syscalls.c and syscall.h. 6 7; Columns: number [M]type nargs namespc name alt{name,tag,rtyp}/comments 8; number system call number, must be in order 9; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA, 10; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL, 11; [M]NOSTD, [M]COMPAT4 12; namespc one of POSIX, BSD, NOHIDE 13; name psuedo-prototype of syscall routine 14; If one of the following alts is different, then all appear: 15; altname name of system call if different 16; alttag name of args struct tag if different from [o]`name'"_args" 17; altrtyp return type if not int (bogus - syscalls always return int) 18; for UNIMPL/OBSOL, name continues with comments 19 20; types: 21; [M] e.g. like MSTD -- means the system call is MP-safe. If no 22; M prefix is used, the syscall wrapper will obtain the Giant 23; lock for the syscall. 24; STD always included 25; COMPAT included on COMPAT #ifdef 26; COMPAT4 included on COMPAT4 #ifdef (FreeBSD 4 compat) 27; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h 28; OBSOL obsolete, not included in system, only specifies name 29; UNIMPL not implemented, placeholder only 30; NOSTD implemented but as a lkm that can be statically 31; compiled in sysent entry will be filled with lkmsys 32; so the SYSCALL_MODULE macro works 33 34; #ifdef's, etc. may be included, and are copied to the output files. 35 36#include <sys/param.h> 37#include <sys/sysent.h> 38#include <sys/sysproto.h> 39 40; Reserved/unimplemented system calls in the range 0-150 inclusive 41; are reserved for use in future Berkeley releases. 42; Additional system calls implemented in vendor and other 43; redistributions should be placed in the reserved range at the end 44; of the current calls. 45 460 STD NOHIDE { int nosys(void); } syscall nosys_args int 471 MSTD NOHIDE { void sys_exit(int rval); } exit sys_exit_args void 482 MSTD POSIX { int fork(void); } 493 MSTD POSIX { ssize_t read(int fd, void *buf, size_t nbyte); } 504 MSTD POSIX { ssize_t write(int fd, const void *buf, size_t nbyte); } 515 STD POSIX { int open(char *path, int flags, int mode); } 52; XXX should be { int open(const char *path, int flags, ...); } 53; but we're not ready for `const' or varargs. 54; XXX man page says `mode_t mode'. 556 MSTD POSIX { int close(int fd); } 567 MSTD BSD { int wait4(int pid, int *status, int options, \ 57 struct rusage *rusage); } wait4 wait_args int 588 COMPAT BSD { int creat(char *path, int mode); } 599 STD POSIX { int link(char *path, char *link); } 6010 STD POSIX { int unlink(char *path); } 6111 OBSOL NOHIDE execv 6212 STD POSIX { int chdir(char *path); } 6313 STD BSD { int fchdir(int fd); } 6414 STD POSIX { int mknod(char *path, int mode, int dev); } 6515 STD POSIX { int chmod(char *path, int mode); } 6616 STD POSIX { int chown(char *path, int uid, int gid); } 6717 MSTD BSD { int obreak(char *nsize); } break obreak_args int 6818 STD BSD { int getfsstat(struct statfs *buf, long bufsize, \ 69 int flags); } 7019 COMPAT POSIX { long lseek(int fd, long offset, int whence); } 7120 MSTD POSIX { pid_t getpid(void); } 7221 STD BSD { int mount(char *type, char *path, int flags, \ 73 caddr_t data); } 74; XXX `path' should have type `const char *' but we're not ready for that. 7522 STD BSD { int unmount(char *path, int flags); } 7623 MSTD POSIX { int setuid(uid_t uid); } 7724 MSTD POSIX { uid_t getuid(void); } 7825 MSTD POSIX { uid_t geteuid(void); } 7926 STD BSD { int ptrace(int req, pid_t pid, caddr_t addr, \ 80 int data); } 8127 MSTD BSD { int recvmsg(int s, struct msghdr *msg, int flags); } 8228 MSTD BSD { int sendmsg(int s, caddr_t msg, int flags); } 8329 MSTD BSD { int recvfrom(int s, caddr_t buf, size_t len, \ 84 int flags, caddr_t from, int *fromlenaddr); } 8530 MSTD BSD { int accept(int s, caddr_t name, int *anamelen); } 8631 MSTD BSD { int getpeername(int fdes, caddr_t asa, int *alen); } 8732 MSTD BSD { int getsockname(int fdes, caddr_t asa, int *alen); } 8833 STD POSIX { int access(char *path, int flags); } 8934 STD BSD { int chflags(char *path, int flags); } 9035 STD BSD { int fchflags(int fd, int flags); } 9136 STD BSD { int sync(void); } 9237 MSTD POSIX { int kill(int pid, int signum); } 9338 COMPAT POSIX { int stat(char *path, struct ostat *ub); } 9439 MSTD POSIX { pid_t getppid(void); } 9540 COMPAT POSIX { int lstat(char *path, struct ostat *ub); } 9641 STD POSIX { int dup(u_int fd); } 9742 STD POSIX { int pipe(void); } 9843 MSTD POSIX { gid_t getegid(void); } 9944 MSTD BSD { int profil(caddr_t samples, size_t size, \ 100 size_t offset, u_int scale); } 10145 STD BSD { int ktrace(const char *fname, int ops, int facs, \ 102 int pid); } 10346 MCOMPAT POSIX { int sigaction(int signum, struct osigaction *nsa, \ 104 struct osigaction *osa); } 10547 MSTD POSIX { gid_t getgid(void); } 10648 MCOMPAT POSIX { int sigprocmask(int how, osigset_t mask); } 107; XXX note nonstandard (bogus) calling convention - the libc stub passes 108; us the mask, not a pointer to it, and we return the old mask as the 109; (int) return value. 11049 MSTD BSD { int getlogin(char *namebuf, u_int namelen); } 11150 MSTD BSD { int setlogin(char *namebuf); } 11251 MSTD BSD { int acct(char *path); } 11352 MCOMPAT POSIX { int sigpending(void); } 11453 MSTD BSD { int sigaltstack(stack_t *ss, stack_t *oss); } 11554 MSTD POSIX { int ioctl(int fd, u_long com, caddr_t data); } 11655 MSTD BSD { int reboot(int opt); } 11756 STD POSIX { int revoke(char *path); } 11857 STD POSIX { int symlink(char *path, char *link); } 11958 STD POSIX { int readlink(char *path, char *buf, int count); } 12059 MSTD POSIX { int execve(char *fname, char **argv, char **envv); } 12160 MSTD POSIX { int umask(int newmask); } umask umask_args int 12261 STD BSD { int chroot(char *path); } 12362 MCOMPAT POSIX { int fstat(int fd, struct ostat *sb); } 12463 MCOMPAT BSD { int getkerninfo(int op, char *where, size_t *size, \ 125 int arg); } getkerninfo getkerninfo_args int 12664 MCOMPAT BSD { int getpagesize(void); } \ 127 getpagesize getpagesize_args int 12865 STD BSD { int msync(void *addr, size_t len, int flags); } 12966 MSTD BSD { int vfork(void); } 13067 OBSOL NOHIDE vread 13168 OBSOL NOHIDE vwrite 13269 MSTD BSD { int sbrk(int incr); } 13370 MSTD BSD { int sstk(int incr); } 13471 MCOMPAT BSD { int mmap(void *addr, int len, int prot, \ 135 int flags, int fd, long pos); } 13672 MSTD BSD { int ovadvise(int anom); } vadvise ovadvise_args int 13773 MSTD BSD { int munmap(void *addr, size_t len); } 13874 MSTD BSD { int mprotect(const void *addr, size_t len, int prot); } 13975 MSTD BSD { int madvise(void *addr, size_t len, int behav); } 14076 OBSOL NOHIDE vhangup 14177 OBSOL NOHIDE vlimit 14278 MSTD BSD { int mincore(const void *addr, size_t len, \ 143 char *vec); } 14479 MSTD POSIX { int getgroups(u_int gidsetsize, gid_t *gidset); } 14580 MSTD POSIX { int setgroups(u_int gidsetsize, gid_t *gidset); } 14681 MSTD POSIX { int getpgrp(void); } 14782 MSTD POSIX { int setpgid(int pid, int pgid); } 14883 MSTD BSD { int setitimer(u_int which, struct itimerval *itv, \ 149 struct itimerval *oitv); } 15084 MCOMPAT BSD { int wait(void); } 15185 MSTD BSD { int swapon(char *name); } 15286 MSTD BSD { int getitimer(u_int which, struct itimerval *itv); } 15387 MCOMPAT BSD { int gethostname(char *hostname, u_int len); } \ 154 gethostname gethostname_args int 15588 MCOMPAT BSD { int sethostname(char *hostname, u_int len); } \ 156 sethostname sethostname_args int 15789 MSTD BSD { int getdtablesize(void); } 15890 MSTD POSIX { int dup2(u_int from, u_int to); } 15991 UNIMPL BSD getdopt 16092 MSTD POSIX { int fcntl(int fd, int cmd, long arg); } 161; XXX should be { int fcntl(int fd, int cmd, ...); } 162; but we're not ready for varargs. 16393 MSTD BSD { int select(int nd, fd_set *in, fd_set *ou, \ 164 fd_set *ex, struct timeval *tv); } 16594 UNIMPL BSD setdopt 16695 STD POSIX { int fsync(int fd); } 16796 MSTD BSD { int setpriority(int which, int who, int prio); } 16897 MSTD BSD { int socket(int domain, int type, int protocol); } 16998 MSTD BSD { int connect(int s, caddr_t name, int namelen); } 17099 MCPT_NOA BSD { int accept(int s, caddr_t name, int *anamelen); } \ 171 accept accept_args int 172100 MSTD BSD { int getpriority(int which, int who); } 173101 MCOMPAT BSD { int send(int s, caddr_t buf, int len, int flags); } 174102 MCOMPAT BSD { int recv(int s, caddr_t buf, int len, int flags); } 175103 MSTD BSD { int osigreturn(struct osigcontext *sigcntxp); } 176104 MSTD BSD { int bind(int s, caddr_t name, int namelen); } 177105 MSTD BSD { int setsockopt(int s, int level, int name, \ 178 caddr_t val, int valsize); } 179106 MSTD BSD { int listen(int s, int backlog); } 180107 OBSOL NOHIDE vtimes 181108 MCOMPAT BSD { int sigvec(int signum, struct sigvec *nsv, \ 182 struct sigvec *osv); } 183109 MCOMPAT BSD { int sigblock(int mask); } 184110 MCOMPAT BSD { int sigsetmask(int mask); } 185111 MCOMPAT POSIX { int sigsuspend(osigset_t mask); } 186; XXX note nonstandard (bogus) calling convention - the libc stub passes 187; us the mask, not a pointer to it. 188112 MCOMPAT BSD { int sigstack(struct sigstack *nss, \ 189 struct sigstack *oss); } 190113 MCOMPAT BSD { int recvmsg(int s, struct omsghdr *msg, int flags); } 191114 MCOMPAT BSD { int sendmsg(int s, caddr_t msg, int flags); } 192115 OBSOL NOHIDE vtrace 193116 MSTD BSD { int gettimeofday(struct timeval *tp, \ 194 struct timezone *tzp); } 195117 MSTD BSD { int getrusage(int who, struct rusage *rusage); } 196118 MSTD BSD { int getsockopt(int s, int level, int name, \ 197 caddr_t val, int *avalsize); } 198119 UNIMPL NOHIDE resuba (BSD/OS 2.x) 199120 MSTD BSD { int readv(int fd, struct iovec *iovp, u_int iovcnt); } 200121 MSTD BSD { int writev(int fd, struct iovec *iovp, \ 201 u_int iovcnt); } 202122 MSTD BSD { int settimeofday(struct timeval *tv, \ 203 struct timezone *tzp); } 204123 STD BSD { int fchown(int fd, int uid, int gid); } 205124 STD BSD { int fchmod(int fd, int mode); } 206125 MCPT_NOA BSD { int recvfrom(int s, caddr_t buf, size_t len, \ 207 int flags, caddr_t from, int *fromlenaddr); } \ 208 recvfrom recvfrom_args int 209126 MSTD BSD { int setreuid(int ruid, int euid); } 210127 MSTD BSD { int setregid(int rgid, int egid); } 211128 STD POSIX { int rename(char *from, char *to); } 212129 COMPAT BSD { int truncate(char *path, long length); } 213130 COMPAT BSD { int ftruncate(int fd, long length); } 214131 MSTD BSD { int flock(int fd, int how); } 215132 STD POSIX { int mkfifo(char *path, int mode); } 216133 MSTD BSD { int sendto(int s, caddr_t buf, size_t len, \ 217 int flags, caddr_t to, int tolen); } 218134 MSTD BSD { int shutdown(int s, int how); } 219135 MSTD BSD { int socketpair(int domain, int type, int protocol, \ 220 int *rsv); } 221136 STD POSIX { int mkdir(char *path, int mode); } 222137 STD POSIX { int rmdir(char *path); } 223138 STD BSD { int utimes(char *path, struct timeval *tptr); } 224139 OBSOL NOHIDE 4.2 sigreturn 225140 MSTD BSD { int adjtime(struct timeval *delta, \ 226 struct timeval *olddelta); } 227141 MCOMPAT BSD { int getpeername(int fdes, caddr_t asa, int *alen); } 228142 MCOMPAT BSD { long gethostid(void); } 229143 MCOMPAT BSD { int sethostid(long hostid); } 230144 MCOMPAT BSD { int getrlimit(u_int which, struct orlimit *rlp); } 231145 MCOMPAT BSD { int setrlimit(u_int which, struct orlimit *rlp); } 232146 MCOMPAT BSD { int killpg(int pgid, int signum); } 233147 MSTD POSIX { int setsid(void); } 234148 STD BSD { int quotactl(char *path, int cmd, int uid, \ 235 caddr_t arg); } 236149 MCOMPAT BSD { int quota(void); } 237150 MCPT_NOA BSD { int getsockname(int fdec, caddr_t asa, int *alen); }\ 238 getsockname getsockname_args int 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 NOHIDE sem_lock (BSD/OS 2.x) 245152 UNIMPL NOHIDE sem_wakeup (BSD/OS 2.x) 246153 UNIMPL NOHIDE asyncdaemon (BSD/OS 2.x) 247154 UNIMPL NOHIDE nosys 248; 155 is initialized by the NFS code, if present. 249155 MNOIMPL BSD { int nfssvc(int flag, caddr_t argp); } 250156 COMPAT BSD { int getdirentries(int fd, char *buf, u_int count, \ 251 long *basep); } 252157 STD BSD { int statfs(char *path, struct statfs *buf); } 253158 STD BSD { int fstatfs(int fd, struct statfs *buf); } 254159 UNIMPL NOHIDE nosys 255160 UNIMPL NOHIDE nosys 256161 STD BSD { int getfh(char *fname, struct fhandle *fhp); } 257162 MSTD BSD { int getdomainname(char *domainname, int len); } 258163 MSTD BSD { int setdomainname(char *domainname, int len); } 259164 MSTD BSD { int uname(struct utsname *name); } 260165 STD BSD { int sysarch(int op, char *parms); } 261166 MSTD BSD { int rtprio(int function, pid_t pid, \ 262 struct rtprio *rtp); } 263167 UNIMPL NOHIDE nosys 264168 UNIMPL NOHIDE nosys 265; 169 is initialized by the SYSVSEM code if present or loaded 266169 MNOSTD BSD { int semsys(int which, int a2, int a3, int a4, \ 267 int a5); } 268; 169 is initialized by the SYSVMSG code if present or loaded 269; XXX should be { int semsys(int which, ...); } 270170 MNOSTD BSD { int msgsys(int which, int a2, int a3, int a4, \ 271 int a5, int a6); } 272; 169 is initialized by the SYSVSHM code if present or loaded 273; XXX should be { int msgsys(int which, ...); } 274171 MNOSTD BSD { int shmsys(int which, int a2, int a3, int a4); } 275; XXX should be { int shmsys(int which, ...); } 276172 UNIMPL NOHIDE nosys 277173 MSTD POSIX { ssize_t pread(int fd, void *buf, size_t nbyte, \ 278 int pad, off_t offset); } 279174 MSTD POSIX { ssize_t pwrite(int fd, const void *buf, \ 280 size_t nbyte, int pad, off_t offset); } 281175 UNIMPL NOHIDE nosys 282176 MSTD BSD { int ntp_adjtime(struct timex *tp); } 283177 UNIMPL NOHIDE sfork (BSD/OS 2.x) 284178 UNIMPL NOHIDE getdescriptor (BSD/OS 2.x) 285179 UNIMPL NOHIDE setdescriptor (BSD/OS 2.x) 286180 UNIMPL NOHIDE nosys 287 288; Syscalls 181-199 are used by/reserved for BSD 289181 MSTD POSIX { int setgid(gid_t gid); } 290182 MSTD BSD { int setegid(gid_t egid); } 291183 MSTD BSD { int seteuid(uid_t euid); } 292184 UNIMPL BSD lfs_bmapv 293185 UNIMPL BSD lfs_markv 294186 UNIMPL BSD lfs_segclean 295187 UNIMPL BSD lfs_segwait 296188 STD POSIX { int stat(char *path, struct stat *ub); } 297189 MSTD POSIX { int fstat(int fd, struct stat *sb); } 298190 STD POSIX { int lstat(char *path, struct stat *ub); } 299191 STD POSIX { int pathconf(char *path, int name); } 300192 MSTD POSIX { int fpathconf(int fd, int name); } 301193 UNIMPL NOHIDE nosys 302194 MSTD BSD { int getrlimit(u_int which, \ 303 struct rlimit *rlp); } \ 304 getrlimit __getrlimit_args int 305195 MSTD BSD { int setrlimit(u_int which, \ 306 struct rlimit *rlp); } \ 307 setrlimit __setrlimit_args int 308196 STD BSD { int getdirentries(int fd, char *buf, u_int count, \ 309 long *basep); } 310197 MSTD BSD { caddr_t mmap(caddr_t addr, size_t len, int prot, \ 311 int flags, int fd, int pad, off_t pos); } 312198 STD NOHIDE { int nosys(void); } __syscall __syscall_args int 313199 STD POSIX { off_t lseek(int fd, int pad, off_t offset, \ 314 int whence); } 315200 STD BSD { int truncate(char *path, int pad, off_t length); } 316201 STD BSD { int ftruncate(int fd, int pad, off_t length); } 317202 MSTD BSD { int __sysctl(int *name, u_int namelen, void *old, \ 318 size_t *oldlenp, void *new, size_t newlen); } \ 319 __sysctl sysctl_args int 320; properly, __sysctl should be a NOHIDE, but making an exception 321; here allows to avoid one in libc/sys/Makefile.inc. 322203 MSTD BSD { int mlock(const void *addr, size_t len); } 323204 MSTD BSD { int munlock(const void *addr, size_t len); } 324205 STD BSD { int undelete(char *path); } 325206 STD BSD { int futimes(int fd, struct timeval *tptr); } 326207 MSTD BSD { int getpgid(pid_t pid); } 327208 UNIMPL NOHIDE newreboot (NetBSD) 328209 MSTD BSD { int poll(struct pollfd *fds, u_int nfds, \ 329 int timeout); } 330 331; 332; The following are reserved for loadable syscalls 333; 334210 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 335211 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 336212 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 337213 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 338214 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 339215 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 340216 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 341217 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 342218 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 343219 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 344 345; 346; The following were introduced with NetBSD/4.4Lite-2 347; They are initialized by thier respective modules/sysinits 348220 MNOSTD BSD { int __semctl(int semid, int semnum, int cmd, \ 349 union semun *arg); } 350221 MNOSTD BSD { int semget(key_t key, int nsems, int semflg); } 351222 MNOSTD BSD { int semop(int semid, struct sembuf *sops, \ 352 u_int nsops); } 353223 UNIMPL NOHIDE semconfig 354224 MNOSTD BSD { int msgctl(int msqid, int cmd, \ 355 struct msqid_ds *buf); } 356225 MNOSTD BSD { int msgget(key_t key, int msgflg); } 357226 MNOSTD BSD { int msgsnd(int msqid, void *msgp, size_t msgsz, \ 358 int msgflg); } 359227 MNOSTD BSD { int msgrcv(int msqid, void *msgp, size_t msgsz, \ 360 long msgtyp, int msgflg); } 361228 MNOSTD BSD { int shmat(int shmid, void *shmaddr, int shmflg); } 362229 MNOSTD BSD { int shmctl(int shmid, int cmd, \ 363 struct shmid_ds *buf); } 364230 MNOSTD BSD { int shmdt(void *shmaddr); } 365231 MNOSTD BSD { int shmget(key_t key, int size, int shmflg); } 366; 367232 MSTD POSIX { int clock_gettime(clockid_t clock_id, \ 368 struct timespec *tp); } 369233 MSTD POSIX { int clock_settime(clockid_t clock_id, \ 370 const struct timespec *tp); } 371234 MSTD POSIX { int clock_getres(clockid_t clock_id, \ 372 struct timespec *tp); } 373235 UNIMPL NOHIDE timer_create 374236 UNIMPL NOHIDE timer_delete 375237 UNIMPL NOHIDE timer_settime 376238 UNIMPL NOHIDE timer_gettime 377239 UNIMPL NOHIDE timer_getoverrun 378240 MSTD POSIX { int nanosleep(const struct timespec *rqtp, \ 379 struct timespec *rmtp); } 380241 UNIMPL NOHIDE nosys 381242 UNIMPL NOHIDE nosys 382243 UNIMPL NOHIDE nosys 383244 UNIMPL NOHIDE nosys 384245 UNIMPL NOHIDE nosys 385246 UNIMPL NOHIDE nosys 386247 UNIMPL NOHIDE nosys 387248 UNIMPL NOHIDE nosys 388249 UNIMPL NOHIDE nosys 389; syscall numbers initially used in OpenBSD 390250 MSTD BSD { int minherit(void *addr, size_t len, int inherit); } 391251 MSTD BSD { int rfork(int flags); } 392252 MSTD BSD { int openbsd_poll(struct pollfd *fds, u_int nfds, \ 393 int timeout); } 394253 STD BSD { int issetugid(void); } 395254 STD BSD { int lchown(char *path, int uid, int gid); } 396255 UNIMPL NOHIDE nosys 397256 UNIMPL NOHIDE nosys 398257 UNIMPL NOHIDE nosys 399258 UNIMPL NOHIDE nosys 400259 UNIMPL NOHIDE nosys 401260 UNIMPL NOHIDE nosys 402261 UNIMPL NOHIDE nosys 403262 UNIMPL NOHIDE nosys 404263 UNIMPL NOHIDE nosys 405264 UNIMPL NOHIDE nosys 406265 UNIMPL NOHIDE nosys 407266 UNIMPL NOHIDE nosys 408267 UNIMPL NOHIDE nosys 409268 UNIMPL NOHIDE nosys 410269 UNIMPL NOHIDE nosys 411270 UNIMPL NOHIDE nosys 412271 UNIMPL NOHIDE nosys 413272 STD BSD { int getdents(int fd, char *buf, size_t count); } 414273 UNIMPL NOHIDE nosys 415274 STD BSD { int lchmod(char *path, mode_t mode); } 416275 NOPROTO BSD { int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown lchown_args int 417276 STD BSD { int lutimes(char *path, struct timeval *tptr); } 418277 MNOPROTO BSD { int msync(void *addr, size_t len, int flags); } netbsd_msync msync_args int 419278 STD BSD { int nstat(char *path, struct nstat *ub); } 420279 MSTD BSD { int nfstat(int fd, struct nstat *sb); } 421280 STD BSD { int nlstat(char *path, struct nstat *ub); } 422281 UNIMPL NOHIDE nosys 423282 UNIMPL NOHIDE nosys 424283 UNIMPL NOHIDE nosys 425284 UNIMPL NOHIDE nosys 426285 UNIMPL NOHIDE nosys 427286 UNIMPL NOHIDE nosys 428287 UNIMPL NOHIDE nosys 429288 UNIMPL NOHIDE nosys 430289 UNIMPL NOHIDE nosys 431290 UNIMPL NOHIDE nosys 432291 UNIMPL NOHIDE nosys 433292 UNIMPL NOHIDE nosys 434293 UNIMPL NOHIDE nosys 435294 UNIMPL NOHIDE nosys 436295 UNIMPL NOHIDE nosys 437296 UNIMPL NOHIDE nosys 438; XXX 297 is 300 in NetBSD 439297 STD BSD { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } 440298 STD BSD { int fhopen(const struct fhandle *u_fhp, int flags); } 441299 STD BSD { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } 442; syscall numbers for FreeBSD 443300 MSTD BSD { int modnext(int modid); } 444301 MSTD BSD { int modstat(int modid, struct module_stat* stat); } 445302 MSTD BSD { int modfnext(int modid); } 446303 MSTD BSD { int modfind(const char *name); } 447304 MSTD BSD { int kldload(const char *file); } 448305 MSTD BSD { int kldunload(int fileid); } 449306 MSTD BSD { int kldfind(const char *file); } 450307 MSTD BSD { int kldnext(int fileid); } 451308 MSTD BSD { int kldstat(int fileid, struct kld_file_stat* stat); } 452309 MSTD BSD { int kldfirstmod(int fileid); } 453310 MSTD BSD { int getsid(pid_t pid); } 454311 MSTD BSD { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } 455312 MSTD BSD { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } 456313 OBSOL NOHIDE signanosleep 457314 NOSTD BSD { int aio_return(struct aiocb *aiocbp); } 458315 NOSTD BSD { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } 459316 NOSTD BSD { int aio_cancel(int fd, struct aiocb *aiocbp); } 460317 NOSTD BSD { int aio_error(struct aiocb *aiocbp); } 461318 NOSTD BSD { int aio_read(struct aiocb *aiocbp); } 462319 NOSTD BSD { int aio_write(struct aiocb *aiocbp); } 463320 NOSTD BSD { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } 464321 MSTD BSD { int yield(void); } 465322 OBSOL NOHIDE thr_sleep 466323 OBSOL NOHIDE thr_wakeup 467324 MSTD BSD { int mlockall(int how); } 468325 MSTD BSD { int munlockall(void); } 469326 STD BSD { int __getcwd(u_char *buf, u_int buflen); } 470 471327 MSTD POSIX { int sched_setparam (pid_t pid, const struct sched_param *param); } 472328 MSTD POSIX { int sched_getparam (pid_t pid, struct sched_param *param); } 473 474329 MSTD POSIX { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } 475330 MSTD POSIX { int sched_getscheduler (pid_t pid); } 476 477331 MSTD POSIX { int sched_yield (void); } 478332 MSTD POSIX { int sched_get_priority_max (int policy); } 479333 MSTD POSIX { int sched_get_priority_min (int policy); } 480334 MSTD POSIX { int sched_rr_get_interval (pid_t pid, struct timespec *interval); } 481335 STD BSD { int utrace(const void *addr, size_t len); } 482336 MCOMPAT4 BSD { int sendfile(int fd, int s, off_t offset, size_t nbytes, \ 483 struct sf_hdtr *hdtr, off_t *sbytes, int flags); } 484337 STD BSD { int kldsym(int fileid, int cmd, void *data); } 485338 MSTD BSD { int jail(struct jail *jail); } 486339 UNIMPL BSD pioctl 487340 MSTD POSIX { int sigprocmask(int how, const sigset_t *set, \ 488 sigset_t *oset); } 489341 MSTD POSIX { int sigsuspend(const sigset_t *sigmask); } 490342 MSTD POSIX { int sigaction(int sig, const struct sigaction *act, \ 491 struct sigaction *oact); } 492343 MSTD POSIX { int sigpending(sigset_t *set); } 493344 MSTD BSD { int sigreturn(const struct __ucontext *sigcntxp); } 494345 UNIMPL NOHIDE sigtimedwait 495346 UNIMPL NOHIDE sigwaitinfo 496347 MSTD BSD { int __acl_get_file(const char *path, \ 497 acl_type_t type, struct acl *aclp); } 498348 MSTD BSD { int __acl_set_file(const char *path, \ 499 acl_type_t type, struct acl *aclp); } 500349 MSTD BSD { int __acl_get_fd(int filedes, acl_type_t type, \ 501 struct acl *aclp); } 502350 MSTD BSD { int __acl_set_fd(int filedes, acl_type_t type, \ 503 struct acl *aclp); } 504351 MSTD BSD { int __acl_delete_file(const char *path, \ 505 acl_type_t type); } 506352 MSTD BSD { int __acl_delete_fd(int filedes, acl_type_t type); } 507353 MSTD BSD { int __acl_aclcheck_file(const char *path, \ 508 acl_type_t type, struct acl *aclp); } 509354 MSTD BSD { int __acl_aclcheck_fd(int filedes, acl_type_t type, \ 510 struct acl *aclp); } 511355 STD BSD { int extattrctl(const char *path, int cmd, \ 512 const char *filename, int attrnamespace, \ 513 const char *attrname); } 514356 STD BSD { int extattr_set_file(const char *path, \ 515 int attrnamespace, const char *attrname, \ 516 void *data, size_t nbytes); } 517357 STD BSD { ssize_t extattr_get_file(const char *path, \ 518 int attrnamespace, const char *attrname, \ 519 void *data, size_t nbytes); } 520358 STD BSD { int extattr_delete_file(const char *path, \ 521 int attrnamespace, const char *attrname); } 522359 NOSTD BSD { int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } 523360 MSTD BSD { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } 524361 MSTD BSD { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } 525362 MSTD BSD { int kqueue(void); } 526363 MSTD BSD { int kevent(int fd, \ 527 const struct kevent *changelist, int nchanges, \ 528 struct kevent *eventlist, int nevents, \ 529 const struct timespec *timeout); } 530364 UNIMPL BSD __cap_get_proc 531365 UNIMPL BSD __cap_set_proc 532366 UNIMPL BSD __cap_get_fd 533367 UNIMPL BSD __cap_get_file 534368 UNIMPL BSD __cap_set_fd 535369 UNIMPL BSD __cap_set_file 536370 NODEF NOHIDE lkmressys lkmressys nosys_args int 537371 STD BSD { int extattr_set_fd(int fd, int attrnamespace, \ 538 const char *attrname, void *data, \ 539 size_t nbytes); } 540372 STD BSD { ssize_t extattr_get_fd(int fd, int attrnamespace, \ 541 const char *attrname, void *data, size_t nbytes); } 542373 STD BSD { int extattr_delete_fd(int fd, int attrnamespace, \ 543 const char *attrname); } 544374 MSTD BSD { int __setugid(int flag); } 545375 NOIMPL BSD { int nfsclnt(int flag, caddr_t argp); } 546376 STD BSD { int eaccess(char *path, int flags); } 547377 UNIMPL BSD afs_syscall 548378 STD BSD { int nmount(struct iovec *iovp, unsigned int iovcnt, \ 549 int flags); } 550379 STD BSD { int kse_exit(void); } 551380 STD BSD { int kse_wakeup(void); } 552381 STD BSD { int kse_new(struct kse_mailbox * mbx, \ 553 int new_grp_flag); } 554382 STD BSD { int thread_wakeup(struct thread_mailbox *tmbx); } 555383 MSTD BSD { int kse_yield(void); } 556384 MSTD BSD { int __mac_get_proc(struct mac *mac_p); } 557385 MSTD BSD { int __mac_set_proc(struct mac *mac_p); } 558386 MSTD BSD { int __mac_get_fd(int fd, struct mac *mac_p); } 559387 MSTD BSD { int __mac_get_file(const char *path_p, \ 560 struct mac *mac_p); } 561388 MSTD BSD { int __mac_set_fd(int fd, struct mac *mac_p); } 562389 MSTD BSD { int __mac_set_file(const char *path_p, \ 563 struct mac *mac_p); } 564390 STD BSD { int kenv(int what, const char *name, char *value, \ 565 int len); } 566391 STD BSD { int lchflags(const char *path, int flags); } 567392 STD BSD { int uuidgen(struct uuid *store, int count); } 568393 MSTD BSD { int sendfile(int fd, int s, off_t offset, size_t nbytes, \ 569 struct sf_hdtr *hdtr, off_t *sbytes, int flags); } 570394 MSTD BSD { int mac_syscall(const char *policy, int call, \ 571 void *arg); } 572