syscalls.master revision 1.48
1 $NetBSD: syscalls.master,v 1.48 2005/08/19 02:03:57 christos Exp $ 2 3; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 4 5; NetBSD COMPAT_FREEBSD system call name/number "master" file. 6; (See syscalls.conf to see what it is processed into.) 7; 8; Fields: number type [type-dependent ...] 9; number system call number, must be in order 10; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of 11; the compatibility options defined in syscalls.conf. 12; 13; types: 14; STD always included 15; OBSOL obsolete, not included in system 16; UNIMPL unimplemented, not included in system 17; NODEF included, but don't define the syscall number 18; NOARGS included, but don't define the syscall args structure 19; 20; The compat options are defined in the syscalls.conf file, and the 21; compat option name is prefixed to the syscall name. Other than 22; that, they're like NODEF (for 'compat' options), or STD (for 23; 'libcompat' options). 24; 25; The type-dependent arguments are as follows: 26; For STD, NODEF, NOARGS, and compat syscalls: 27; { pseudo-proto } [alias] 28; For other syscalls: 29; [comment] 30; 31; #ifdef's, etc. may be included, and are copied to the output files. 32; #include's are copied to the syscall names and switch definition files only. 33 34#if defined(_KERNEL_OPT) 35#include "opt_ktrace.h" 36#include "opt_nfsserver.h" 37#include "opt_ntp.h" 38#include "opt_sysv.h" 39#include "opt_compat_43.h" 40#include "opt_posix.h" 41 42#include "fs_lfs.h" 43#include "fs_nfs.h" 44#endif 45 46#include <sys/param.h> 47#include <sys/systm.h> 48#include <sys/signal.h> 49#include <sys/mount.h> 50#include <sys/sa.h> 51#include <sys/syscallargs.h> 52 53#include <compat/freebsd/freebsd_syscallargs.h> 54 55#include <machine/freebsd_machdep.h> 56 57%% 58 59; Reserved/unimplemented system calls in the range 0-150 inclusive 60; are reserved for use in future Berkeley releases. 61; Additional system calls implemented in vendor and other 62; redistributions should be placed in the reserved range at the end 63; of the current calls. 64 650 NOARGS { int sys_nosys(void); } syscall 661 NOARGS { int sys_exit(int rval); } 672 NOARGS { int sys_fork(void); } 683 NOARGS { int sys_read(int fd, char *buf, u_int nbyte); } 694 NOARGS { int sys_write(int fd, char *buf, u_int nbyte); } 705 STD { int freebsd_sys_open(const char *path, int flags, \ 71 int mode); } 726 NOARGS { int sys_close(int fd); } 737 NOARGS { int sys_wait4(int pid, int *status, int options, \ 74 struct rusage *rusage); } 758 STD { int compat_43_freebsd_sys_creat(const char *path, \ 76 int mode); } ocreat 779 STD { int freebsd_sys_link(const char *path, \ 78 const char *link); } 7910 STD { int freebsd_sys_unlink(const char *path); } 8011 OBSOL execv 8112 STD { int freebsd_sys_chdir(const char *path); } 8213 NOARGS { int sys_fchdir(int fd); } 8314 STD { int freebsd_sys_mknod(const char *path, int mode, \ 84 int dev); } 8515 STD { int freebsd_sys_chmod(const char *path, int mode); } 8616 STD { int freebsd_sys_chown(const char *path, int uid, \ 87 int gid); } 8817 NOARGS { int sys_obreak(char *nsize); } break 8918 NOARGS { int compat_20_sys_getfsstat(struct statfs12 *buf, \ 90 long bufsize, int flags); } 9119 NOARGS { long compat_43_sys_lseek(int fd, long offset, \ 92 int whence); } olseek 9320 NOARGS { pid_t sys_getpid_with_ppid(void); } 9421 STD { int freebsd_sys_mount(int type, const char *path, \ 95 int flags, caddr_t data); } 9622 STD { int freebsd_sys_unmount(const char *path, \ 97 int flags); } 9823 NOARGS { int sys_setuid(uid_t uid); } 9924 NOARGS { uid_t sys_getuid_with_euid(void); } 10025 NOARGS { uid_t sys_geteuid(void); } 10126 STD { int freebsd_sys_ptrace(int req, pid_t pid, \ 102 caddr_t addr, int data); } 10327 NOARGS { int sys_recvmsg(int s, struct msghdr *msg, \ 104 int flags); } 10528 NOARGS { int sys_sendmsg(int s, caddr_t msg, int flags); } 10629 NOARGS { int sys_recvfrom(int s, caddr_t buf, size_t len, \ 107 int flags, caddr_t from, int *fromlenaddr); } 10830 NOARGS { int sys_accept(int s, caddr_t name, int *anamelen); } 10931 NOARGS { int sys_getpeername(int fdes, caddr_t asa, \ 110 int *alen); } 11132 NOARGS { int sys_getsockname(int fdes, caddr_t asa, \ 112 int *alen); } 11333 STD { int freebsd_sys_access(const char *path, int flags); } 11434 STD { int freebsd_sys_chflags(const char *path, \ 115 int flags); } 11635 NOARGS { int sys_fchflags(int fd, int flags); } 11736 NOARGS { int sys_sync(void); } 11837 NOARGS { int sys_kill(int pid, int signum); } 11938 STD { int compat_43_freebsd_sys_stat(const char *path, \ 120 struct stat43 *ub); } stat43 12139 NOARGS { pid_t sys_getppid(void); } 12240 STD { int compat_43_freebsd_sys_lstat(const char *path, \ 123 struct stat43 *ub); } lstat43 12441 NOARGS { int sys_dup(u_int fd); } 12542 NOARGS { int sys_pipe(void); } 12643 NOARGS { gid_t sys_getegid(void); } 12744 NOARGS { int sys_profil(caddr_t samples, u_int size, \ 128 u_int offset, u_int scale); } 129#ifdef KTRACE 13045 NOARGS { int sys_ktrace(char *fname, int ops, int facs, \ 131 int pid); } 132#else 13345 EXCL ktrace 134#endif 13546 NOARGS { int compat_13_sys_sigaction(int signum, \ 136 const struct sigaction13 *nsa, \ 137 struct sigaction13 *osa); } 13847 NOARGS { gid_t sys_getgid_with_egid(void); } 13948 NOARGS { int compat_13_sys_sigprocmask(int how, \ 140 int mask); } 14149 NOARGS { int sys___getlogin(char *namebuf, u_int namelen); } 14250 NOARGS { int sys___setlogin(char *namebuf); } 14351 NOARGS { int sys_acct(char *path); } 14452 NOARGS { int compat_13_sys_sigpending(void); } 14553 NOARGS { int compat_13_sys_sigaltstack( \ 146 const struct sigaltstack13 *nss, \ 147 struct sigaltstack13 *oss); } 14854 STD { int freebsd_sys_ioctl(int fd, u_long com, \ 149 caddr_t data); } 15055 NOARGS { int sys_reboot(int opt); } oreboot 15156 STD { int freebsd_sys_revoke(const char *path); } 15257 STD { int freebsd_sys_symlink(const char *path, \ 153 const char *link); } 15458 STD { int freebsd_sys_readlink(const char *path, \ 155 char *buf, int count); } 15659 STD { int freebsd_sys_execve(const char *path, \ 157 char **argp, char **envp); } 15860 NOARGS { int sys_umask(int newmask); } 15961 STD { int freebsd_sys_chroot(const char *path); } 16062 NOARGS { int compat_43_sys_fstat(int fd, struct stat43 *sb); } \ 161 fstat43 16263 NOARGS { int compat_43_sys_getkerninfo(int op, char *where, \ 163 int *size, int arg); } ogetkerninfo 16464 NOARGS { int compat_43_sys_getpagesize(void); } ogetpagesize 16565 STD { int freebsd_sys_msync(caddr_t addr, size_t len, \ 166 int flags); } 16766 NOARGS { int sys_vfork(void); } 16867 OBSOL vread 16968 OBSOL vwrite 17069 NOARGS { int sys_sbrk(intptr_t incr); } 17170 NOARGS { int sys_sstk(int incr); } 17271 NOARGS { int compat_43_sys_mmap(caddr_t addr, size_t len, \ 173 int prot, int flags, int fd, long pos); } ommap 17472 NOARGS { int sys_ovadvise(int anom); } vadvise 17573 NOARGS { int sys_munmap(caddr_t addr, size_t len); } 17674 NOARGS { int sys_mprotect(caddr_t addr, size_t len, \ 177 int prot); } 17875 NOARGS { int sys_madvise(caddr_t addr, size_t len, \ 179 int behav); } 18076 OBSOL vhangup 18177 OBSOL vlimit 18278 NOARGS { int sys_mincore(caddr_t addr, size_t len, char *vec); } 18379 NOARGS { int sys_getgroups(u_int gidsetsize, gid_t *gidset); } 18480 NOARGS { int sys_setgroups(u_int gidsetsize, gid_t *gidset); } 18581 NOARGS { int sys_getpgrp(void); } 18682 NOARGS { int sys_setpgid(int pid, int pgid); } 18783 NOARGS { int sys_setitimer(u_int which, \ 188 struct itimerval *itv, struct itimerval *oitv); } 18984 NOARGS { int compat_43_sys_wait(void); } owait 19085 NOARGS { int compat_12_sys_swapon(char *name); } 19186 NOARGS { int sys_getitimer(u_int which, \ 192 struct itimerval *itv); } 19387 NOARGS { int compat_43_sys_gethostname(char *hostname, \ 194 u_int len); } ogethostname 19588 NOARGS { int compat_43_sys_sethostname(char *hostname, \ 196 u_int len); } osethostname 19789 NOARGS { int compat_43_sys_getdtablesize(void); } \ 198 ogetdtablesize 19990 NOARGS { int sys_dup2(u_int from, u_int to); } 20091 UNIMPL getdopt 20192 NOARGS { int sys_fcntl(int fd, int cmd, void *arg); } 20293 NOARGS { int sys_select(u_int nd, fd_set *in, fd_set *ou, \ 203 fd_set *ex, struct timeval *tv); } 20494 UNIMPL setdopt 20595 NOARGS { int sys_fsync(int fd); } 20696 NOARGS { int sys_setpriority(int which, int who, int prio); } 20797 NOARGS { int sys_socket(int domain, int type, int protocol); } 20898 NOARGS { int sys_connect(int s, caddr_t name, int namelen); } 20999 NOARGS { int compat_43_sys_accept(int s, caddr_t name, \ 210 int *anamelen); } oaccept 211100 NOARGS { int sys_getpriority(int which, int who); } 212101 NOARGS { int compat_43_sys_send(int s, caddr_t buf, int len, \ 213 int flags); } osend 214102 NOARGS { int compat_43_sys_recv(int s, caddr_t buf, int len, \ 215 int flags); } orecv 216103 STD { int freebsd_sys_sigreturn( \ 217 struct freebsd_sigcontext *scp); } 218104 NOARGS { int sys_bind(int s, caddr_t name, int namelen); } 219105 NOARGS { int sys_setsockopt(int s, int level, int name, \ 220 caddr_t val, int valsize); } 221106 NOARGS { int sys_listen(int s, int backlog); } 222107 OBSOL vtimes 223108 NOARGS { int compat_43_sys_sigvec(int signum, \ 224 struct sigvec *nsv, struct sigvec *osv); } osigvec 225109 NOARGS { int compat_43_sys_sigblock(int mask); } osigblock 226110 NOARGS { int compat_43_sys_sigsetmask(int mask); } osigsetmask 227111 NOARGS { int compat_13_sys_sigsuspend(int mask); } 228112 NOARGS { int compat_43_sys_sigstack(struct sigstack *nss, \ 229 struct sigstack *oss); } osigstack 230113 NOARGS { int compat_43_sys_recvmsg(int s, \ 231 struct omsghdr *msg, int flags); } orecvmsg 232114 NOARGS { int compat_43_sys_sendmsg(int s, caddr_t msg, \ 233 int flags); } osendmsg 234#ifdef TRACE 235115 NOARGS { int sys_vtrace(int request, int value); } 236#else 237115 OBSOL vtrace 238#endif 239116 NOARGS { int sys_gettimeofday(struct timeval *tp, \ 240 struct timezone *tzp); } 241117 NOARGS { int sys_getrusage(int who, struct rusage *rusage); } 242118 NOARGS { int sys_getsockopt(int s, int level, int name, \ 243 caddr_t val, int *avalsize); } 244119 OBSOL resuba 245120 NOARGS { int sys_readv(int fd, struct iovec *iovp, \ 246 u_int iovcnt); } 247121 NOARGS { int sys_writev(int fd, struct iovec *iovp, \ 248 u_int iovcnt); } 249122 NOARGS { int sys_settimeofday(struct timeval *tv, \ 250 struct timezone *tzp); } 251123 NOARGS { int sys_fchown(int fd, int uid, int gid); } 252124 NOARGS { int sys_fchmod(int fd, int mode); } 253125 NOARGS { int compat_43_sys_recvfrom(int s, caddr_t buf, \ 254 size_t len, int flags, caddr_t from, \ 255 int *fromlenaddr); } orecvfrom 256126 NOARGS { int sys_setreuid(int ruid, int euid); } 257127 NOARGS { int sys_setregid(int rgid, int egid); } 258128 STD { int freebsd_sys_rename(const char *from, \ 259 const char *to); } 260129 STD { int compat_43_freebsd_sys_truncate(const char *path, \ 261 long length); } otruncate 262130 NOARGS { int compat_43_sys_ftruncate(int fd, long length); } \ 263 oftruncate 264131 NOARGS { int sys_flock(int fd, int how); } 265132 STD { int freebsd_sys_mkfifo(const char *path, int mode); } 266133 NOARGS { int sys_sendto(int s, caddr_t buf, size_t len, \ 267 int flags, caddr_t to, int tolen); } 268134 NOARGS { int sys_shutdown(int s, int how); } 269135 NOARGS { int sys_socketpair(int domain, int type, \ 270 int protocol, int *rsv); } 271136 STD { int freebsd_sys_mkdir(const char *path, int mode); } 272137 STD { int freebsd_sys_rmdir(const char *path); } 273138 NOARGS { int sys_utimes(char *path, struct timeval *tptr); } 274139 OBSOL 4.2 sigreturn 275140 NOARGS { int sys_adjtime(struct timeval *delta, \ 276 struct timeval *olddelta); } 277141 NOARGS { int compat_43_sys_getpeername(int fdes, caddr_t asa, \ 278 int *alen); } ogetpeername 279142 NOARGS { int32_t compat_43_sys_gethostid(void); } ogethostid 280143 NOARGS { int compat_43_sys_sethostid(int32_t hostid); } \ 281 osethostid 282144 NOARGS { int compat_43_sys_getrlimit(u_int which, \ 283 struct orlimit *rlp); } ogetrlimit 284145 NOARGS { int compat_43_sys_setrlimit(u_int which, \ 285 struct orlimit *rlp); } osetrlimit 286146 NOARGS { int compat_43_sys_killpg(int pgid, int signum); } \ 287 okillpg 288147 NOARGS { int sys_setsid(void); } 289148 NOARGS { int sys_quotactl(char *path, int cmd, int uid, \ 290 caddr_t arg); } 291149 NOARGS { int compat_43_sys_quota(void); } oquota 292150 NOARGS { int compat_43_sys_getsockname(int fdec, caddr_t asa, \ 293 int *alen); } ogetsockname 294 295; Syscalls 151-180 inclusive are reserved for vendor-specific 296; system calls. (This includes various calls added for compatibity 297; with other Unix variants.) 298; Some of these calls are now supported by BSD... 299151 UNIMPL sem_lock 300152 UNIMPL sem_wakeup 301153 UNIMPL asyncdaemon 302154 UNIMPL 303#if defined(NFS) || defined(NFSSERVER) 304155 NOARGS { int sys_nfssvc(int flag, caddr_t argp); } 305#else 306155 UNIMPL nfssvc 307#endif 308156 NOARGS { int compat_43_sys_getdirentries(int fd, char *buf, \ 309 u_int count, long *basep); } ogetdirentries 310157 STD { int freebsd_sys_statfs(const char *path, \ 311 struct statfs12 *buf); } 312158 NOARGS { int compat_20_sys_fstatfs(int fd, \ 313 struct statfs12 *buf); } 314159 UNIMPL 315160 UNIMPL 316#ifdef NFS 317161 STD { int freebsd_sys_getfh(const char *fname, \ 318 fhandle_t *fhp); } 319#else 320161 UNIMPL getfh 321#endif 322162 NOARGS { int compat_09_sys_getdomainname(char *domainname, \ 323 int len); } 324163 NOARGS { int compat_09_sys_setdomainname(char *domainname, \ 325 int len); } 326164 NOARGS { int compat_09_sys_uname(struct outsname *name); } 327165 NOARGS { int sys_sysarch(int op, char *parms); } 328166 STD { int freebsd_sys_rtprio(int function, pid_t pid, \ 329 struct freebsd_rtprio *rtp); } 330167 UNIMPL 331168 UNIMPL 332; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 333#if defined(SYSVSEM) && !defined(_LP64) 334169 STD { int freebsd_sys_semsys(int which, int a2, int a3, \ 335 int a4, int a5); } 336#else 337169 UNIMPL 1.0 semsys 338#endif 339; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 340#if defined(SYSVMSG) && !defined(_LP64) 341170 STD { int freebsd_sys_msgsys(int which, int a2, int a3, \ 342 int a4, int a5, int a6); } 343#else 344170 UNIMPL 1.0 msgsys 345#endif 346; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 347#if defined(SYSVSHM) && !defined(_LP64) 348171 STD { int freebsd_sys_shmsys(int which, int a2, int a3, \ 349 int a4); } 350#else 351171 UNIMPL 1.0 shmsys 352#endif 353172 UNIMPL 354173 NOARGS { ssize_t sys_pread(int fd, void *buf, \ 355 size_t nbyte, int pad, off_t offset); } 356174 NOARGS { ssize_t sys_pwrite(int fd, const void *buf, \ 357 size_t nbyte, int pad, off_t offset); } 358175 UNIMPL 359#ifdef NTP 360176 STD { int freebsd_ntp_adjtime(struct freebsd_timex *tp); } 361#else 362176 EXCL ntp_adjtime 363#endif 364177 UNIMPL sfork 365178 UNIMPL getdescriptor 366179 UNIMPL setdescriptor 367180 UNIMPL 368 369; Syscalls 180-199 are used by/reserved for BSD 370181 NOARGS { int sys_setgid(gid_t gid); } 371182 NOARGS { int sys_setegid(gid_t egid); } 372183 NOARGS { int sys_seteuid(uid_t euid); } 373#ifdef LFS 374184 NOARGS { int sys_lfs_bmapv(fsid_t *fsidp, \ 375 struct block_info *blkiov, int blkcnt); } 376185 NOARGS { int sys_lfs_markv(fsid_t *fsidp, \ 377 struct block_info *blkiov, int blkcnt); } 378186 NOARGS { int sys_lfs_segclean(fsid_t *fsidp, u_long segment); } 379187 NOARGS { int sys_lfs_segwait(fsid_t *fsidp, struct timeval *tv); } 380#else 381184 UNIMPL 382185 UNIMPL 383186 UNIMPL 384187 UNIMPL 385#endif 386188 STD { int freebsd_sys_stat(const char *path, \ 387 struct stat12 *ub); } 388189 NOARGS { int compat_12_sys_fstat(int fd, \ 389 struct stat12 *sb); } 390190 STD { int freebsd_sys_lstat(const char *path, \ 391 struct stat12 *ub); } 392191 STD { int freebsd_sys_pathconf(const char *path, \ 393 int name); } 394192 NOARGS { int sys_fpathconf(int fd, int name); } 395193 UNIMPL 396194 NOARGS { int sys_getrlimit(u_int which, struct rlimit *rlp); } 397195 NOARGS { int sys_setrlimit(u_int which, struct rlimit *rlp); } 398196 NOARGS { int compat_12_sys_getdirentries(int fd, char *buf, \ 399 u_int count, long *basep); } 400197 STD { caddr_t freebsd_sys_mmap(caddr_t addr, size_t len, \ 401 int prot, int flags, int fd, long pad, off_t pos); } 402198 NOARGS { int sys_nosys(void); } __syscall 403199 NOARGS { off_t sys_lseek(int fd, int pad, off_t offset, \ 404 int whence); } 405200 STD { int freebsd_sys_truncate(const char *path, int pad, \ 406 off_t length); } 407201 NOARGS { int sys_ftruncate(int fd, int pad, off_t length); } 408202 STD { int freebsd_sys_sysctl(int *name, u_int namelen, \ 409 void *old, size_t *oldlenp, void *new, \ 410 size_t newlen); } 411203 NOARGS { int sys_mlock(caddr_t addr, size_t len); } 412204 NOARGS { int sys_munlock(caddr_t addr, size_t len); } 413#ifdef FREEBSD_BASED_ON_44LITE_R2 414205 STD { int freebsd_sys_undelete(char *path); } 415#else 416205 UNIMPL undelete 417#endif 418206 NOARGS { int sys_futimes(int fd, const struct timeval *tptr); } 419207 NOARGS { pid_t sys_getpgid(pid_t pid); } 420#if 0 421208 NOARGS { int sys_reboot(int opt, char *bootstr); } 422#else 423208 UNIMPL newreboot 424#endif 425209 NOARGS { int sys_poll(struct pollfd *fds, u_int nfds, \ 426 int timeout); } 427; 428; Syscalls 210-219 are reserved for dynamically loaded syscalls 429; 430210 UNIMPL 431211 UNIMPL 432212 UNIMPL 433213 UNIMPL 434214 UNIMPL 435215 UNIMPL 436216 UNIMPL 437217 UNIMPL 438218 UNIMPL 439219 UNIMPL 440; 441; Syscalls 220-239 are reserved for syscalls imported from NetBSD 442; 443#ifdef SYSVSEM 444220 NOARGS { int compat_14_sys___semctl(int semid, int semnum, \ 445 int cmd, union __semun *arg); } 446221 NOARGS { int sys_semget(key_t key, int nsems, int semflg); } 447222 NOARGS { int sys_semop(int semid, struct sembuf *sops, \ 448 u_int nsops); } 449223 NOARGS { int sys_semconfig(int flag); } 450#else 451220 UNIMPL semctl 452221 UNIMPL semget 453222 UNIMPL semop 454223 UNIMPL semconfig 455#endif 456#ifdef SYSVMSG 457224 NOARGS { int compat_14_sys_msgctl(int msqid, int cmd, \ 458 struct msqid14_ds *buf); } 459225 NOARGS { int sys_msgget(key_t key, int msgflg); } 460226 NOARGS { int sys_msgsnd(int msqid, void *msgp, size_t msgsz, \ 461 int msgflg); } 462227 NOARGS { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \ 463 long msgtyp, int msgflg); } 464#else 465224 UNIMPL msgctl 466225 UNIMPL msgget 467226 UNIMPL msgsnd 468227 UNIMPL msgrcv 469#endif 470#ifdef SYSVSHM 471228 NOARGS { int sys_shmat(int shmid, void *shmaddr, int shmflg); } 472229 NOARGS { int compat_14_sys_shmctl(int shmid, int cmd, \ 473 struct shmid_ds14 *buf); } 474230 NOARGS { int sys_shmdt(void *shmaddr); } 475231 NOARGS { int sys_shmget(key_t key, int size, int shmflg); } 476#else 477228 UNIMPL shmat 478229 UNIMPL shmctl 479230 UNIMPL shmdt 480231 UNIMPL shmget 481#endif 482; 483; XXXX 484232 NOARGS { int sys_clock_gettime(clockid_t clock_id, \ 485 struct timespec *tp); } 486233 NOARGS { int sys_clock_settime(clockid_t clock_id, \ 487 const struct timespec *tp); } 488234 NOARGS { int sys_clock_getres(clockid_t clock_id, \ 489 struct timespec *tp); } 490235 UNIMPL timer_create 491236 UNIMPL timer_delete 492237 UNIMPL timer_settime 493238 UNIMPL timer_gettime 494239 UNIMPL timer_getoverrun 495240 NOARGS { int sys_nanosleep(const struct timespec *rqtp, \ 496 struct timespec *rmtp); } 497241 UNIMPL 498242 UNIMPL 499243 UNIMPL 500244 UNIMPL 501245 UNIMPL 502246 UNIMPL 503247 UNIMPL 504248 UNIMPL 505249 UNIMPL 506; syscall numbers initially used in OpenBSD 507250 NOARGS { int sys_minherit(void *addr, size_t len, \ 508 int inherit); } 509251 STD { int freebsd_sys_rfork(int flags); } 510252 UNIMPL openbsd_poll 511253 NOARGS { int sys_issetugid(void); } 512254 STD { int freebsd_sys_lchown(const char *path, int uid, \ 513 int gid); } 514255 UNIMPL 515256 UNIMPL 516257 UNIMPL 517258 UNIMPL 518259 UNIMPL 519260 UNIMPL 520261 UNIMPL 521262 UNIMPL 522263 UNIMPL 523264 UNIMPL 524265 UNIMPL 525266 UNIMPL 526267 UNIMPL 527268 UNIMPL 528269 UNIMPL 529270 UNIMPL 530271 UNIMPL 531272 NOARGS { int compat_30_sys_getdents(int fd, char *buf, size_t count); } 532273 UNIMPL 533274 NOARGS { int sys_lchmod(const char *path, mode_t mode); } 534275 NOARGS { int sys_lchown(const char *path, uid_t uid, \ 535 gid_t gid); } netbsd_lchown 536276 NOARGS { int sys_lutimes(const char *path, \ 537 const struct timeval *tptr); } 538277 NOARGS { int sys___msync13(void *addr, size_t len, int flags); } 539278 NOARGS { int compat_30_sys___stat13(const char *path, struct stat30 *ub); } 540279 NOARGS { int compat_30_sys___fstat13(int fd, struct stat30 *sb); } 541280 NOARGS { int compat_30_sys___lstat13(const char *path, struct stat30 *ub);} 542281 UNIMPL 543282 UNIMPL 544283 UNIMPL 545284 UNIMPL 546285 UNIMPL 547286 UNIMPL 548287 UNIMPL 549288 UNIMPL 550289 UNIMPL 551290 UNIMPL 552291 UNIMPL 553292 UNIMPL 554293 UNIMPL 555294 UNIMPL 556295 UNIMPL 557296 UNIMPL 558297 NOARGS { int compat_20_sys_fhstatfs(const fhandle_t *fhp, \ 559 struct statfs12 *buf); } 560298 NOARGS { int sys_fhopen(const fhandle_t *fhp, int flags); } 561299 NOARGS { int sys_fhstat(const fhandle_t *fhp, \ 562 struct stat *sb); } 563; syscall numbers for FreeBSD 564300 UNIMPL modnext 565301 UNIMPL modstat 566302 UNIMPL modfnext 567303 UNIMPL modfind 568304 UNIMPL kldload 569305 UNIMPL kldunload 570306 UNIMPL kldfind 571307 UNIMPL kldnext 572308 UNIMPL kldstat 573309 UNIMPL kldfirstmod 574310 NOARGS { pid_t sys_getsid(pid_t pid); } 575311 UNIMPL setresuid 576312 UNIMPL setresgid 577313 UNIMPL signanosleep 578314 UNIMPL aio_return 579315 UNIMPL aio_suspend 580316 UNIMPL aio_cancel 581317 UNIMPL aio_error 582318 UNIMPL aio_read 583319 UNIMPL aio_write 584320 UNIMPL lio_listio 585321 NOARGS { void freebsd_sys_yield(void); } 586322 UNIMPL thr_sleep 587323 UNIMPL thr_wakeup 588324 NOARGS { int sys_mlockall(int flags); } 589325 NOARGS { int sys_munlockall(void); } 590326 NOARGS { int sys___getcwd(char *bufp, size_t length); } 591327 STD { int freebsd_sys_sched_setparam(pid_t pid, \ 592 const struct freebsd_sched_param *sp); } 593328 STD { int freebsd_sys_sched_getparam(pid_t pid, \ 594 struct freebsd_sched_param *sp); } 595329 STD { int freebsd_sys_sched_setscheduler(pid_t pid, \ 596 int policy, const struct sched_param *sp); } 597330 STD { int freebsd_sys_sched_getscheduler(pid_t pid); } 598331 STD { int freebsd_sys_sched_yield(void); } 599332 STD { int freebsd_sys_sched_get_priority_max(int policy); } 600333 STD { int freebsd_sys_sched_get_priority_min(int policy); } 601334 UNIMPL sched_rr_get_interval 602335 STD { int freebsd_sys_utrace(void *addr, size_t len); } 603336 UNIMPL sendfile 604337 UNIMPL kldsym 605338 UNIMPL jail 606339 UNIMPL pioctl 607340 NOARGS { int sys___sigprocmask14(int how, \ 608 const sigset_t *set, \ 609 sigset_t *oset); } 610341 NOARGS { int sys___sigsuspend14(const sigset_t *set); } 611342 STD { int freebsd_sys_sigaction4(int signum, \ 612 const struct freebsd_sigaction4 *nsa, \ 613 struct freebsd_sigaction4 *osa); } 614343 NOARGS { int sys___sigpending14(const sigset_t *set); } 615344 UNIMPL 4.0 sigreturn 616345 UNIMPL sigtimedwait 617346 UNIMPL sigwaitinfo 618347 UNIMPL __acl_get_file 619348 UNIMPL __acl_set_file 620349 UNIMPL __acl_get_fd 621350 UNIMPL __acl_set_fd 622351 UNIMPL __acl_delete_file 623352 UNIMPL __acl_delete_fd 624353 UNIMPL __acl_aclcheck_file 625354 UNIMPL __acl_aclcheck_fd 626355 UNIMPL extattrctl 627356 UNIMPL extattr_set_file 628357 UNIMPL extattr_get_file 629358 UNIMPL extattr_delete_file 630359 UNIMPL aio_waitcomplete 631360 UNIMPL getresuid 632361 UNIMPL getresgid 633362 UNIMPL kqueue 634363 UNIMPL kevent 635364 UNIMPL __cap_get_proc 636365 UNIMPL __cap_set_proc 637366 UNIMPL __cap_get_fd 638367 UNIMPL __cap_get_file 639368 UNIMPL __cap_set_fd 640369 UNIMPL __cap_set_file 641370 UNIMPL lkmressym 642371 UNIMPL extattr_set_fd 643372 UNIMPL extattr_get_fd 644373 UNIMPL extattr_delete_fd 645374 UNIMPL __setugid 646375 UNIMPL nfsclnt 647376 UNIMPL eaccess 648377 UNIMPL afs_syscall 649378 UNIMPL nmount 650379 UNIMPL kse_exit 651380 UNIMPL kse_wakeup 652381 UNIMPL kse_create 653382 UNIMPL kse_thr_interrupt 654383 UNIMPL kse_release 655384 UNIMPL __mac_get_proc 656385 UNIMPL __mac_set_proc 657386 UNIMPL __mac_get_fd 658387 UNIMPL __mac_get_file 659388 UNIMPL __mac_set_fd 660389 UNIMPL __mac_set_file 661390 UNIMPL kenv 662391 NOARGS { int sys_lchflags(const char *path, u_long flags); } 663392 NOARGS { int sys_uuidgen(struct uuid *store, int count); } 664393 UNIMPL sendfile 665394 UNIMPL mac_syscall 666395 UNIMPL getfsstat 667396 UNIMPL statfs 668397 UNIMPL fsstatfs 669398 UNIMPL fhstatfs 670399 UNIMPL nosys 671#if defined(P1003_1B_SEMAPHORE) || !defined(_KERNEL) 672400 NOARGS { int sys__ksem_close(semid_t id); } 673401 NOARGS { int sys__ksem_post(semid_t id); } 674402 NOARGS { int sys__ksem_wait(semid_t id); } 675403 NOARGS { int sys__ksem_trywait(semid_t id); } 676404 UNIMPL ksem_init 677405 UNIMPL ksem_open 678406 NOARGS { int sys__ksem_unlink(const char *name); } 679407 NOARGS { int sys__ksem_getvalue(semid_t id, \ 680 unsigned int *value); } 681408 NOARGS { int sys__ksem_destroy(semid_t id); } 682#else 683400 EXCL ksem_close 684401 EXCL ksem_post 685402 EXCL ksem_wait 686403 EXCL ksem_trywait 687404 EXCL ksem_init 688405 EXCL ksem_open 689406 EXCL ksem_unlink 690407 EXCL ksem_getvalue 691408 EXCL ksem_destroy 692#endif 693409 UNIMPL __mac_get_pid 694410 UNIMPL __mac_get_link 695411 UNIMPL __mac_set_link 696412 UNIMPL extattr_set_link 697413 UNIMPL extattr_get_link 698414 UNIMPL extattr_delete_link 699415 UNIMPL __mac_execve 700416 UNIMPL sigaction 701417 UNIMPL sigreturn 702418 UNIMPL __xstat 703419 UNIMPL __xfstat 704420 UNIMPL __xlstat 705421 UNIMPL getcontext 706422 UNIMPL setcontext 707423 UNIMPL swapcontext 708424 UNIMPL swapoff 709425 UNIMPL __acl_get_link 710426 UNIMPL __acl_set_link 711427 UNIMPL __acl_delete_link 712428 UNIMPL __acl_aclcheck_link 713429 UNIMPL sigwait 714430 UNIMPL thr_create 715431 UNIMPL thr_exit 716432 UNIMPL thr_self 717433 UNIMPL thr_kill 718434 UNIMPL _umtx_lock 719435 UNIMPL _umtx_unlock 720436 UNIMPL jail_attach 721437 UNIMPL extattr_list_fd 722438 UNIMPL extattr_list_file 723439 UNIMPL extattr_list_link 724