1 $DragonFly: src/sys/kern/syscalls.master,v 1.25 2005/07/30 20:29:40 joerg Exp $ 2 3; @(#)syscalls.master 8.2 (Berkeley) 1/13/94 4; $FreeBSD: src/sys/kern/syscalls.master,v 1.72.2.10 2002/07/12 08:22:46 alfred Exp $ 5; 6; System call name/number master file. 7; Processed to created init_sysent.c, syscalls.c and syscall.h. 8 9; Columns: number [MPSAFE] type nargs namespc name alt{name,tag,rtyp}/comments 10; number system call number, must be in order 11; MPSAFE optional field, specifies that syscall does not want the 12; BGL grabbed automatically (it is SMP safe). 13; type one of STD, OBSOL, UNIMPL, COMPAT, CPT_NOA, LIBCOMPAT, 14; NODEF, NOARGS, NOPROTO, NOIMPL 15; namespc one of POSIX, BSD, NOHIDE 16; name psuedo-prototype of syscall routine 17; If one of the following alts is different, then all appear: 18; altname name of system call if different 19; alttag name of args struct tag if different from [o]`name'"_args" 20; altrtyp return type if not int (bogus - syscalls always return int) 21; for UNIMPL/OBSOL, name continues with comments 22 23; types: 24; STD always included 25; COMPAT included on COMPAT #ifdef 26; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h 27; OBSOL obsolete, not included in system, only specifies name 28; UNIMPL not implemented, placeholder only 29 30; #ifdef's, etc. may be included, and are copied to the output files. 31 32#include <sys/param.h> 33#include <sys/sysent.h> 34#include <sys/sysproto.h> 35 36#ifdef COMPAT_43 37#include <emulation/43bsd/stat.h> 38#endif 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 STD NOHIDE { void sys_exit(int rval); } exit sys_exit_args void 482 STD POSIX { int fork(void); } 493 STD POSIX { ssize_t read(int fd, void *buf, size_t nbyte); } 504 STD 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 STD POSIX { int close(int fd); } 567 STD 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 STD 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 STD 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 STD POSIX { int setuid(uid_t uid); } 7724 MPSAFE STD POSIX { uid_t getuid(void); } 7825 MPSAFE STD POSIX { uid_t geteuid(void); } 7926 STD BSD { int ptrace(int req, pid_t pid, caddr_t addr, \ 80 int data); } 8127 STD BSD { int recvmsg(int s, struct msghdr *msg, int flags); } 8228 STD BSD { int sendmsg(int s, caddr_t msg, int flags); } 8329 STD BSD { int recvfrom(int s, caddr_t buf, size_t len, \ 84 int flags, caddr_t from, int *fromlenaddr); } 8530 STD BSD { int accept(int s, caddr_t name, int *anamelen); } 8631 STD BSD { int getpeername(int fdes, caddr_t asa, int *alen); } 8732 STD 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 STD POSIX { int kill(int pid, int signum); } 9338 COMPAT POSIX { int stat(char *path, struct ostat *ub); } 9439 STD 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 STD POSIX { gid_t getegid(void); } 9944 STD 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 OBSOL NOHIDE freebsd3_sigaction 10447 MPSAFE STD POSIX { gid_t getgid(void); } 10548 OBSOL NOHIDE freebsd3_sigprocmask 106; XXX note nonstandard (bogus) calling convention - the libc stub passes 107; us the mask, not a pointer to it, and we return the old mask as the 108; (int) return value. 10949 STD BSD { int getlogin(char *namebuf, u_int namelen); } 11050 STD BSD { int setlogin(char *namebuf); } 11151 STD BSD { int acct(char *path); } 11252 OBSOL NOHIDE freebsd3_sigpending 11353 STD BSD { int sigaltstack(stack_t *ss, stack_t *oss); } 11454 STD POSIX { int ioctl(int fd, u_long com, caddr_t data); } 11555 STD BSD { int reboot(int opt); } 11656 STD POSIX { int revoke(char *path); } 11757 STD POSIX { int symlink(char *path, char *link); } 11858 STD POSIX { int readlink(char *path, char *buf, int count); } 11959 STD POSIX { int execve(char *fname, char **argv, char **envv); } 12060 MPSAFE STD POSIX { int umask(int newmask); } umask umask_args int 12161 STD BSD { int chroot(char *path); } 12262 COMPAT POSIX { int fstat(int fd, struct ostat *sb); } 12363 COMPAT BSD { int getkerninfo(int op, char *where, size_t *size, \ 124 int arg); } getkerninfo getkerninfo_args int 12564 COMPAT BSD { int getpagesize(void); } \ 126 getpagesize getpagesize_args int 12765 STD BSD { int msync(void *addr, size_t len, int flags); } 12866 STD BSD { int vfork(void); } 12967 OBSOL NOHIDE vread 13068 OBSOL NOHIDE vwrite 13169 STD BSD { int sbrk(int incr); } 13270 STD BSD { int sstk(int incr); } 13371 COMPAT BSD { int mmap(void *addr, int len, int prot, \ 134 int flags, int fd, long pos); } 13572 STD BSD { int ovadvise(int anom); } vadvise ovadvise_args int 13673 STD BSD { int munmap(void *addr, size_t len); } 13774 STD BSD { int mprotect(const void *addr, size_t len, int prot); } 13875 STD BSD { int madvise(void *addr, size_t len, int behav); } 13976 OBSOL NOHIDE vhangup 14077 OBSOL NOHIDE vlimit 14178 STD BSD { int mincore(const void *addr, size_t len, \ 142 char *vec); } 14379 STD POSIX { int getgroups(u_int gidsetsize, gid_t *gidset); } 14480 STD POSIX { int setgroups(u_int gidsetsize, gid_t *gidset); } 14581 MPSAFE STD POSIX { int getpgrp(void); } 14682 STD POSIX { int setpgid(int pid, int pgid); } 14783 STD BSD { int setitimer(u_int which, struct itimerval *itv, \ 148 struct itimerval *oitv); } 14984 COMPAT BSD { int wait(void); } 15085 STD BSD { int swapon(char *name); } 15186 STD BSD { int getitimer(u_int which, struct itimerval *itv); } 15287 COMPAT BSD { int gethostname(char *hostname, u_int len); } \ 153 gethostname gethostname_args int 15488 COMPAT BSD { int sethostname(char *hostname, u_int len); } \ 155 sethostname sethostname_args int 15689 STD BSD { int getdtablesize(void); } 15790 STD POSIX { int dup2(u_int from, u_int to); } 15891 UNIMPL BSD getdopt 15992 STD POSIX { int fcntl(int fd, int cmd, long arg); } 160; XXX should be { int fcntl(int fd, int cmd, ...); } 161; but we're not ready for varargs. 162; XXX man page says `int arg' too. 16393 STD 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 STD BSD { int setpriority(int which, int who, int prio); } 16897 STD BSD { int socket(int domain, int type, int protocol); } 16998 STD BSD { int connect(int s, caddr_t name, int namelen); } 17099 CPT_NOA BSD { int accept(int s, caddr_t name, int *anamelen); } \ 171 accept accept_args int 172100 STD BSD { int getpriority(int which, int who); } 173101 COMPAT BSD { int send(int s, caddr_t buf, int len, int flags); } 174102 COMPAT BSD { int recv(int s, caddr_t buf, int len, int flags); } 175103 OBSOL NOHIDE freebsd3_sigreturn 176104 STD BSD { int bind(int s, caddr_t name, int namelen); } 177105 STD BSD { int setsockopt(int s, int level, int name, \ 178 caddr_t val, int valsize); } 179106 STD BSD { int listen(int s, int backlog); } 180107 OBSOL NOHIDE vtimes 181108 COMPAT BSD { int sigvec(int signum, struct sigvec *nsv, \ 182 struct sigvec *osv); } 183109 COMPAT BSD { int sigblock(int mask); } 184110 COMPAT BSD { int sigsetmask(int mask); } 185111 OBSOL NOHIDE freebsd3_sigsuspend 186; XXX note nonstandard (bogus) calling convention - the libc stub passes 187; us the mask, not a pointer to it. 188112 COMPAT BSD { int sigstack(struct sigstack *nss, \ 189 struct sigstack *oss); } 190113 COMPAT BSD { int recvmsg(int s, struct omsghdr *msg, int flags); } 191114 COMPAT BSD { int sendmsg(int s, caddr_t msg, int flags); } 192115 OBSOL NOHIDE vtrace 193116 MPSAFE STD BSD { int gettimeofday(struct timeval *tp, \ 194 struct timezone *tzp); } 195117 STD BSD { int getrusage(int who, struct rusage *rusage); } 196118 STD BSD { int getsockopt(int s, int level, int name, \ 197 caddr_t val, int *avalsize); } 198119 UNIMPL NOHIDE resuba (BSD/OS 2.x) 199120 STD BSD { int readv(int fd, struct iovec *iovp, u_int iovcnt); } 200121 STD BSD { int writev(int fd, struct iovec *iovp, \ 201 u_int iovcnt); } 202122 STD 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 CPT_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 STD BSD { int setreuid(int ruid, int euid); } 210127 STD 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 STD BSD { int flock(int fd, int how); } 215132 STD POSIX { int mkfifo(char *path, int mode); } 216133 STD BSD { int sendto(int s, caddr_t buf, size_t len, \ 217 int flags, caddr_t to, int tolen); } 218134 STD BSD { int shutdown(int s, int how); } 219135 STD 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 STD BSD { int adjtime(struct timeval *delta, \ 226 struct timeval *olddelta); } 227141 COMPAT BSD { int getpeername(int fdes, caddr_t asa, int *alen); } 228142 COMPAT BSD { long gethostid(void); } 229143 COMPAT BSD { int sethostid(long hostid); } 230144 COMPAT BSD { int getrlimit(u_int which, struct orlimit *rlp); } 231145 COMPAT BSD { int setrlimit(u_int which, struct orlimit *rlp); } 232146 COMPAT BSD { int killpg(int pgid, int signum); } 233147 STD POSIX { int setsid(void); } 234148 STD BSD { int quotactl(char *path, int cmd, int uid, \ 235 caddr_t arg); } 236149 COMPAT BSD { int quota(void); } 237150 CPT_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 NOIMPL 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 256; 161 is initialized by the NFS code, if present. 257161 STD BSD { int getfh(char *fname, struct fhandle *fhp); } 258162 STD BSD { int getdomainname(char *domainname, int len); } 259163 STD BSD { int setdomainname(char *domainname, int len); } 260164 STD BSD { int uname(struct utsname *name); } 261165 STD BSD { int sysarch(int op, char *parms); } 262166 STD BSD { int rtprio(int function, pid_t pid, \ 263 struct rtprio *rtp); } 264167 UNIMPL NOHIDE nosys 265168 UNIMPL NOHIDE nosys 266169 STD BSD { int semsys(int which, int a2, int a3, int a4, \ 267 int a5); } 268; XXX should be { int semsys(int which, ...); } 269170 STD BSD { int msgsys(int which, int a2, int a3, int a4, \ 270 int a5, int a6); } 271; XXX should be { int msgsys(int which, ...); } 272171 STD BSD { int shmsys(int which, int a2, int a3, int a4); } 273; XXX should be { int shmsys(int which, ...); } 274172 UNIMPL NOHIDE nosys 275173 STD POSIX { ssize_t pread(int fd, void *buf, size_t nbyte, \ 276 int pad, off_t offset); } 277174 STD POSIX { ssize_t pwrite(int fd, const void *buf, \ 278 size_t nbyte, int pad, off_t offset); } 279175 UNIMPL NOHIDE nosys 280176 STD BSD { int ntp_adjtime(struct timex *tp); } 281177 UNIMPL NOHIDE sfork (BSD/OS 2.x) 282178 UNIMPL NOHIDE getdescriptor (BSD/OS 2.x) 283179 UNIMPL NOHIDE setdescriptor (BSD/OS 2.x) 284180 UNIMPL NOHIDE nosys 285 286; Syscalls 181-199 are used by/reserved for BSD 287181 STD POSIX { int setgid(gid_t gid); } 288182 STD BSD { int setegid(gid_t egid); } 289183 STD BSD { int seteuid(uid_t euid); } 290184 UNIMPL BSD lfs_bmapv 291185 UNIMPL BSD lfs_markv 292186 UNIMPL BSD lfs_segclean 293187 UNIMPL BSD lfs_segwait 294188 STD POSIX { int stat(char *path, struct stat *ub); } 295189 STD POSIX { int fstat(int fd, struct stat *sb); } 296190 STD POSIX { int lstat(char *path, struct stat *ub); } 297191 STD POSIX { int pathconf(char *path, int name); } 298192 STD POSIX { int fpathconf(int fd, int name); } 299193 UNIMPL NOHIDE nosys 300194 STD BSD { int getrlimit(u_int which, \ 301 struct rlimit *rlp); } \ 302 getrlimit __getrlimit_args int 303195 STD BSD { int setrlimit(u_int which, \ 304 struct rlimit *rlp); } \ 305 setrlimit __setrlimit_args int 306196 STD BSD { int getdirentries(int fd, char *buf, u_int count, \ 307 long *basep); } 308197 STD BSD { caddr_t mmap(caddr_t addr, size_t len, int prot, \ 309 int flags, int fd, int pad, off_t pos); } 310198 STD NOHIDE { int nosys(void); } __syscall __syscall_args int 311199 STD POSIX { off_t lseek(int fd, int pad, off_t offset, \ 312 int whence); } 313200 STD BSD { int truncate(char *path, int pad, off_t length); } 314201 STD BSD { int ftruncate(int fd, int pad, off_t length); } 315202 STD BSD { int __sysctl(int *name, u_int namelen, void *old, \ 316 size_t *oldlenp, void *new, size_t newlen); } \ 317 __sysctl sysctl_args int 318; properly, __sysctl should be a NOHIDE, but making an exception 319; here allows to avoid one in libc/sys/Makefile.inc. 320203 STD BSD { int mlock(const void *addr, size_t len); } 321204 STD BSD { int munlock(const void *addr, size_t len); } 322205 STD BSD { int undelete(char *path); } 323206 STD BSD { int futimes(int fd, struct timeval *tptr); } 324207 STD BSD { int getpgid(pid_t pid); } 325208 UNIMPL NOHIDE newreboot (NetBSD) 326209 STD BSD { int poll(struct pollfd *fds, u_int nfds, \ 327 int timeout); } 328 329; 330; The following are reserved for loadable syscalls 331; 332; 210 is used by the Checkpoint Module 333210 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 334211 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 335212 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 336213 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 337214 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 338215 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 339216 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 340217 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 341218 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 342219 NODEF NOHIDE lkmnosys lkmnosys nosys_args int 343 344; 345; The following were introduced with NetBSD/4.4Lite-2 346; 347220 STD BSD { int __semctl(int semid, int semnum, int cmd, \ 348 union semun *arg); } 349221 STD BSD { int semget(key_t key, int nsems, int semflg); } 350222 STD BSD { int semop(int semid, struct sembuf *sops, \ 351 u_int nsops); } 352223 UNIMPL NOHIDE semconfig 353224 STD BSD { int msgctl(int msqid, int cmd, \ 354 struct msqid_ds *buf); } 355225 STD BSD { int msgget(key_t key, int msgflg); } 356226 STD BSD { int msgsnd(int msqid, void *msgp, size_t msgsz, \ 357 int msgflg); } 358227 STD BSD { int msgrcv(int msqid, void *msgp, size_t msgsz, \ 359 long msgtyp, int msgflg); } 360228 STD BSD { int shmat(int shmid, void *shmaddr, int shmflg); } 361229 STD BSD { int shmctl(int shmid, int cmd, \ 362 struct shmid_ds *buf); } 363230 STD BSD { int shmdt(void *shmaddr); } 364231 STD BSD { int shmget(key_t key, int size, int shmflg); } 365; 366232 STD POSIX { int clock_gettime(clockid_t clock_id, \ 367 struct timespec *tp); } 368233 STD POSIX { int clock_settime(clockid_t clock_id, \ 369 const struct timespec *tp); } 370234 STD POSIX { int clock_getres(clockid_t clock_id, \ 371 struct timespec *tp); } 372235 UNIMPL NOHIDE timer_create 373236 UNIMPL NOHIDE timer_delete 374237 UNIMPL NOHIDE timer_settime 375238 UNIMPL NOHIDE timer_gettime 376239 UNIMPL NOHIDE timer_getoverrun 377240 STD POSIX { int nanosleep(const struct timespec *rqtp, \ 378 struct timespec *rmtp); } 379241 UNIMPL NOHIDE nosys 380242 UNIMPL NOHIDE nosys 381243 UNIMPL NOHIDE nosys 382244 UNIMPL NOHIDE nosys 383245 UNIMPL NOHIDE nosys 384246 UNIMPL NOHIDE nosys 385247 UNIMPL NOHIDE nosys 386248 UNIMPL NOHIDE nosys 387249 UNIMPL NOHIDE nosys 388; syscall numbers initially used in OpenBSD 389250 STD BSD { int minherit(void *addr, size_t len, int inherit); } 390251 STD BSD { int rfork(int flags); } 391252 STD BSD { int openbsd_poll(struct pollfd *fds, u_int nfds, \ 392 int timeout); } 393253 STD BSD { int issetugid(void); } 394254 STD BSD { int lchown(char *path, int uid, int gid); } 395255 UNIMPL NOHIDE nosys 396256 UNIMPL NOHIDE nosys 397257 UNIMPL NOHIDE nosys 398258 UNIMPL NOHIDE nosys 399259 UNIMPL NOHIDE nosys 400260 UNIMPL NOHIDE nosys 401261 UNIMPL NOHIDE nosys 402262 UNIMPL NOHIDE nosys 403263 UNIMPL NOHIDE nosys 404264 UNIMPL NOHIDE nosys 405265 UNIMPL NOHIDE nosys 406266 UNIMPL NOHIDE nosys 407267 UNIMPL NOHIDE nosys 408268 UNIMPL NOHIDE nosys 409269 UNIMPL NOHIDE nosys 410270 UNIMPL NOHIDE nosys 411271 UNIMPL NOHIDE nosys 412272 STD BSD { int getdents(int fd, char *buf, size_t count); } 413273 UNIMPL NOHIDE nosys 414274 STD BSD { int lchmod(char *path, mode_t mode); } 415275 NOPROTO BSD { int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown lchown_args int 416276 STD BSD { int lutimes(char *path, struct timeval *tptr); } 417277 NOPROTO BSD { int msync(void *addr, size_t len, int flags); } netbsd_msync msync_args int 418278 OBSOL BSD { int nstat(char *path, struct nstat *ub); } 419279 OBSOL NOHIDE { int nfstat(int fd, struct nstat *sb); } 420280 OBSOL NOHIDE { int nlstat(char *path, struct nstat *ub); } 421281 UNIMPL NOHIDE nosys 422282 UNIMPL NOHIDE nosys 423283 UNIMPL NOHIDE nosys 424284 UNIMPL NOHIDE nosys 425285 UNIMPL NOHIDE nosys 426286 UNIMPL NOHIDE nosys 427287 UNIMPL NOHIDE nosys 428288 UNIMPL NOHIDE nosys 429289 UNIMPL NOHIDE nosys 430290 UNIMPL NOHIDE nosys 431291 UNIMPL NOHIDE nosys 432292 UNIMPL NOHIDE nosys 433293 UNIMPL NOHIDE nosys 434294 UNIMPL NOHIDE nosys 435295 UNIMPL NOHIDE nosys 436296 UNIMPL NOHIDE nosys 437; XXX 297 is 300 in NetBSD 438297 STD BSD { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } 439298 STD BSD { int fhopen(const struct fhandle *u_fhp, int flags); } 440299 STD BSD { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } 441; syscall numbers for FreeBSD 442300 STD BSD { int modnext(int modid); } 443301 STD BSD { int modstat(int modid, struct module_stat* stat); } 444302 STD BSD { int modfnext(int modid); } 445303 STD BSD { int modfind(const char *name); } 446304 STD BSD { int kldload(const char *file); } 447305 STD BSD { int kldunload(int fileid); } 448306 STD BSD { int kldfind(const char *file); } 449307 STD BSD { int kldnext(int fileid); } 450308 STD BSD { int kldstat(int fileid, struct kld_file_stat* stat); } 451309 STD BSD { int kldfirstmod(int fileid); } 452310 STD BSD { int getsid(pid_t pid); } 453311 STD BSD { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } 454312 STD BSD { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } 455313 OBSOL NOHIDE signanosleep 456314 STD BSD { int aio_return(struct aiocb *aiocbp); } 457315 STD BSD { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } 458316 STD BSD { int aio_cancel(int fd, struct aiocb *aiocbp); } 459317 STD BSD { int aio_error(struct aiocb *aiocbp); } 460318 STD BSD { int aio_read(struct aiocb *aiocbp); } 461319 STD BSD { int aio_write(struct aiocb *aiocbp); } 462320 STD BSD { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } 463321 STD BSD { int yield(void); } 464322 STD BSD { int thr_sleep(const struct timespec *timeout); } 465323 STD BSD { int thr_wakeup(pid_t pid); } 466324 STD BSD { int mlockall(int how); } 467325 STD BSD { int munlockall(void); } 468326 STD BSD { int __getcwd(u_char *buf, u_int buflen); } 469 470327 STD POSIX { int sched_setparam (pid_t pid, const struct sched_param *param); } 471328 STD POSIX { int sched_getparam (pid_t pid, struct sched_param *param); } 472 473329 STD POSIX { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } 474330 STD POSIX { int sched_getscheduler (pid_t pid); } 475 476331 STD POSIX { int sched_yield (void); } 477332 STD POSIX { int sched_get_priority_max (int policy); } 478333 STD POSIX { int sched_get_priority_min (int policy); } 479334 STD POSIX { int sched_rr_get_interval (pid_t pid, struct timespec *interval); } 480335 STD BSD { int utrace(const void *addr, size_t len); } 481336 OBSOL NOHIDE freebsd4_sendfile 482337 STD BSD { int kldsym(int fileid, int cmd, void *data); } 483338 STD BSD { int jail(struct jail *jail); } 484339 UNIMPL BSD pioctl 485340 MPSAFE STD POSIX { int sigprocmask(int how, const sigset_t *set, \ 486 sigset_t *oset); } 487341 STD POSIX { int sigsuspend(const sigset_t *sigmask); } 488342 STD POSIX { int sigaction(int sig, const struct sigaction *act, \ 489 struct sigaction *oact); } 490343 STD POSIX { int sigpending(sigset_t *set); } 491344 STD BSD { int sigreturn(ucontext_t *sigcntxp); } 492345 STD POSIX { int sigtimedwait(const sigset_t *set,\ 493 siginfo_t *info, const struct timespec *timeout); } 494346 STD POSIX { int sigwaitinfo(const sigset_t *set,\ 495 siginfo_t *info); } 496347 STD BSD { int __acl_get_file(const char *path, \ 497 acl_type_t type, struct acl *aclp); } 498348 STD BSD { int __acl_set_file(const char *path, \ 499 acl_type_t type, struct acl *aclp); } 500349 STD BSD { int __acl_get_fd(int filedes, acl_type_t type, \ 501 struct acl *aclp); } 502350 STD BSD { int __acl_set_fd(int filedes, acl_type_t type, \ 503 struct acl *aclp); } 504351 STD BSD { int __acl_delete_file(const char *path, \ 505 acl_type_t type); } 506352 STD BSD { int __acl_delete_fd(int filedes, acl_type_t type); } 507353 STD BSD { int __acl_aclcheck_file(const char *path, \ 508 acl_type_t type, struct acl *aclp); } 509354 STD 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 *attrname, char *arg); } 513356 STD BSD { int extattr_set_file(const char *path, \ 514 const char *attrname, struct iovec *iovp, \ 515 unsigned iovcnt); } 516357 STD BSD { int extattr_get_file(const char *path, \ 517 const char *attrname, struct iovec *iovp, \ 518 unsigned iovcnt); } 519358 STD BSD { int extattr_delete_file(const char *path, \ 520 const char *attrname); } 521359 STD BSD { int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } 522360 STD BSD { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } 523361 STD BSD { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } 524362 STD BSD { int kqueue(void); } 525363 STD BSD { int kevent(int fd, \ 526 const struct kevent *changelist, int nchanges, \ 527 struct kevent *eventlist, int nevents, \ 528 const struct timespec *timeout); } 529364 STD BSD { int sctp_peeloff(int sd, caddr_t name ); } 530; 365-392 used by FreeBSD-current 531365 UNIMPL NOHIDE nosys 532366 UNIMPL NOHIDE nosys 533367 UNIMPL NOHIDE nosys 534368 UNIMPL NOHIDE nosys 535369 UNIMPL NOHIDE nosys 536370 UNIMPL NOHIDE nosys 537371 UNIMPL NOHIDE nosys 538372 UNIMPL NOHIDE nosys 539373 UNIMPL NOHIDE nosys 540374 UNIMPL NOHIDE nosys 541375 UNIMPL NOHIDE nosys 542376 UNIMPL NOHIDE nosys 543377 UNIMPL NOHIDE nosys 544378 UNIMPL NOHIDE nosys 545379 UNIMPL NOHIDE nosys 546380 UNIMPL NOHIDE nosys 547381 UNIMPL NOHIDE nosys 548382 UNIMPL NOHIDE nosys 549383 UNIMPL NOHIDE nosys 550384 UNIMPL NOHIDE nosys 551385 UNIMPL NOHIDE nosys 552386 UNIMPL NOHIDE nosys 553387 UNIMPL NOHIDE nosys 554388 UNIMPL NOHIDE nosys 555389 UNIMPL NOHIDE nosys 556390 UNIMPL NOHIDE nosys 557391 UNIMPL NOHIDE nosys 558392 UNIMPL NOHIDE nosys 559393 STD BSD { int sendfile(int fd, int s, off_t offset, size_t nbytes, \ 560 struct sf_hdtr *hdtr, off_t *sbytes, int flags); } 561; 394-439 used by FreeBSD-current 562394 UNIMPL NOHIDE nosys 563395 UNIMPL NOHIDE nosys 564396 UNIMPL NOHIDE nosys 565397 UNIMPL NOHIDE nosys 566398 UNIMPL NOHIDE nosys 567399 UNIMPL NOHIDE nosys 568400 UNIMPL NOHIDE nosys 569401 UNIMPL NOHIDE nosys 570402 UNIMPL NOHIDE nosys 571403 UNIMPL NOHIDE nosys 572404 UNIMPL NOHIDE nosys 573405 UNIMPL NOHIDE nosys 574406 UNIMPL NOHIDE nosys 575407 UNIMPL NOHIDE nosys 576408 UNIMPL NOHIDE nosys 577409 UNIMPL NOHIDE nosys 578410 UNIMPL NOHIDE nosys 579411 UNIMPL NOHIDE nosys 580412 UNIMPL NOHIDE nosys 581413 UNIMPL NOHIDE nosys 582414 UNIMPL NOHIDE nosys 583415 UNIMPL NOHIDE nosys 584416 UNIMPL NOHIDE nosys 585417 UNIMPL NOHIDE nosys 586418 UNIMPL NOHIDE nosys 587419 UNIMPL NOHIDE nosys 588420 UNIMPL NOHIDE nosys 589421 UNIMPL NOHIDE nosys 590422 UNIMPL NOHIDE nosys 591423 UNIMPL NOHIDE nosys 592424 UNIMPL NOHIDE nosys 593425 UNIMPL NOHIDE nosys 594426 UNIMPL NOHIDE nosys 595427 UNIMPL NOHIDE nosys 596428 UNIMPL NOHIDE nosys 597429 UNIMPL NOHIDE nosys 598430 UNIMPL NOHIDE nosys 599431 UNIMPL NOHIDE nosys 600432 UNIMPL NOHIDE nosys 601433 UNIMPL NOHIDE nosys 602434 UNIMPL NOHIDE nosys 603435 UNIMPL NOHIDE nosys 604436 UNIMPL NOHIDE nosys 605437 UNIMPL NOHIDE nosys 606438 UNIMPL NOHIDE nosys 607439 UNIMPL NOHIDE nosys 608; 440-449 reserved for FreeBSD-5.x growth 609440 UNIMPL NOHIDE nosys 610441 UNIMPL NOHIDE nosys 611442 UNIMPL NOHIDE nosys 612443 UNIMPL NOHIDE nosys 613444 UNIMPL NOHIDE nosys 614445 UNIMPL NOHIDE nosys 615446 UNIMPL NOHIDE nosys 616447 UNIMPL NOHIDE nosys 617448 UNIMPL NOHIDE nosys 618449 UNIMPL NOHIDE nosys 619; 450 DragonFly system calls 620450 STD BSD { int varsym_set(int level, const char *name, const char *data); } 621451 STD BSD { int varsym_get(int mask, const char *wild, char *buf, int bufsize); } 622452 STD BSD { int varsym_list(int level, char *buf, int maxsize, int *marker); } 623453 STD BSD { int upc_register(struct upcall *upc, void *ctxfunc, void *func, void *data); } 624454 STD BSD { int upc_control(int cmd, int upcid, void *data); } 625455 STD BSD { int caps_sys_service(const char *name, uid_t uid, gid_t gid, int upcid, int flags); } 626456 STD BSD { int caps_sys_client(const char *name, uid_t uid, gid_t gid, int upcid, int flags); } 627457 STD BSD { int caps_sys_close(int portid); } 628458 STD BSD { off_t caps_sys_put(int portid, void *msg, int msgsize); } 629459 STD BSD { int caps_sys_reply(int portid, void *msg, int msgsize, off_t msgcid); } 630460 STD BSD { int caps_sys_get(int portid, void *msg, int maxsize, struct caps_msgid *msgid, struct caps_cred *ccr); } 631461 STD BSD { int caps_sys_wait(int portid, void *msg, int maxsize, struct caps_msgid *msgid, struct caps_cred *ccr); } 632462 STD BSD { int caps_sys_abort(int portid, off_t msgcid, int flags); } 633463 STD BSD { off_t caps_sys_getgen(int portid); } 634464 STD BSD { int caps_sys_setgen(int portid, off_t gen); } 635465 STD BSD { int exec_sys_register(void *entry); } 636466 STD BSD { int exec_sys_unregister(int id); } 637467 STD BSD { int sys_checkpoint(int type, int fd, pid_t pid, int retval); } 638468 STD BSD { int mountctl(const char *path, int op, int fd, const void *ctl, int ctllen, void *buf, int buflen); } 639469 STD BSD { int umtx_sleep(volatile const int *ptr, int value, int timeout); } 640470 STD BSD { int umtx_wakeup(volatile const int *ptr, int count); } 641471 STD BSD { int jail_attach(int jid); } 642472 STD BSD { int sys_set_tls_area(int which, struct tls_info *info, size_t infosize); } 643473 STD BSD { int sys_get_tls_area(int which, struct tls_info *info, size_t infosize); } 644474 STD BSD { int closefrom(int fd); } 645 646