syscalls.master revision 1.77
1 $NetBSD: syscalls.master,v 1.77 1998/06/25 21:16:03 thorpej Exp $ 2 3; @(#)syscalls.master 8.2 (Berkeley) 1/13/94 4 5; NetBSD 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; INDIR included, but don't define the syscall args structure, 20; and allow it to be "really" varargs. 21; 22; The compat options are defined in the syscalls.conf file, and the 23; compat option name is prefixed to the syscall name. Other than 24; that, they're like NODEF (for 'compat' options), or STD (for 25; 'libcompat' options). 26; 27; The type-dependent arguments are as follows: 28; For STD, NODEF, NOARGS, and compat syscalls: 29; { pseudo-proto } [alias] 30; For other syscalls: 31; [comment] 32; 33; #ifdef's, etc. may be included, and are copied to the output files. 34; #include's are copied to the syscall names and switch definition files only. 35 36#include "opt_ktrace.h" 37 38#include "fs_lfs.h" 39#include "fs_nfs.h" 40 41#include <sys/param.h> 42#include <sys/systm.h> 43#include <sys/signal.h> 44#include <sys/mount.h> 45#include <sys/syscallargs.h> 46 47; Reserved/unimplemented system calls in the range 0-150 inclusive 48; are reserved for use in future Berkeley releases. 49; Additional system calls implemented in vendor and other 50; redistributions should be placed in the reserved range at the end 51; of the current calls. 52 530 INDIR { int sys_syscall(int number, ...); } 541 STD { void sys_exit(int rval); } 552 STD { int sys_fork(void); } 563 STD { ssize_t sys_read(int fd, void *buf, size_t nbyte); } 574 STD { ssize_t sys_write(int fd, const void *buf, \ 58 size_t nbyte); } 595 STD { int sys_open(const char *path, \ 60 int flags, ... mode_t mode); } 616 STD { int sys_close(int fd); } 627 STD { int sys_wait4(int pid, int *status, int options, \ 63 struct rusage *rusage); } 648 COMPAT_43 { int sys_creat(const char *path, mode_t mode); } ocreat 659 STD { int sys_link(const char *path, const char *link); } 6610 STD { int sys_unlink(const char *path); } 6711 OBSOL execv 6812 STD { int sys_chdir(const char *path); } 6913 STD { int sys_fchdir(int fd); } 7014 STD { int sys_mknod(const char *path, mode_t mode, \ 71 dev_t dev); } 7215 STD { int sys_chmod(const char *path, mode_t mode); } 7316 STD { int sys_chown(const char *path, uid_t uid, \ 74 gid_t gid); } 7517 STD { int sys_obreak(char *nsize); } break 7618 STD { int sys_getfsstat(struct statfs *buf, long bufsize, \ 77 int flags); } 7819 COMPAT_43 { long sys_lseek(int fd, long offset, int whence); } \ 79 olseek 8020 STD { pid_t sys_getpid(void); } 8121 STD { int sys_mount(const char *type, const char *path, \ 82 int flags, void *data); } 8322 STD { int sys_unmount(const char *path, int flags); } 8423 STD { int sys_setuid(uid_t uid); } 8524 STD { uid_t sys_getuid(void); } 8625 STD { uid_t sys_geteuid(void); } 8726 STD { int sys_ptrace(int req, pid_t pid, caddr_t addr, \ 88 int data); } 8927 STD { ssize_t sys_recvmsg(int s, struct msghdr *msg, \ 90 int flags); } 9128 STD { ssize_t sys_sendmsg(int s, \ 92 const struct msghdr *msg, int flags); } 9329 STD { ssize_t sys_recvfrom(int s, void *buf, size_t len, \ 94 int flags, struct sockaddr *from, \ 95 int *fromlenaddr); } 9630 STD { int sys_accept(int s, struct sockaddr *name, \ 97 int *anamelen); } 9831 STD { int sys_getpeername(int fdes, struct sockaddr *asa, \ 99 int *alen); } 10032 STD { int sys_getsockname(int fdes, struct sockaddr *asa, \ 101 int *alen); } 10233 STD { int sys_access(const char *path, int flags); } 10334 STD { int sys_chflags(const char *path, u_long flags); } 10435 STD { int sys_fchflags(int fd, u_long flags); } 10536 STD { void sys_sync(void); } 10637 STD { int sys_kill(int pid, int signum); } 10738 COMPAT_43 { int sys_stat(const char *path, struct stat43 *ub); } \ 108 stat43 10939 STD { pid_t sys_getppid(void); } 11040 COMPAT_43 { int sys_lstat(const char *path, \ 111 struct stat43 *ub); } lstat43 11241 STD { int sys_dup(int fd); } 11342 STD { int sys_pipe(void); } 11443 STD { gid_t sys_getegid(void); } 11544 STD { int sys_profil(caddr_t samples, size_t size, \ 116 u_long offset, u_int scale); } 117#ifdef KTRACE 11845 STD { int sys_ktrace(const char *fname, int ops, \ 119 int facs, int pid); } 120#else 12145 UNIMPL ktrace 122#endif 12346 STD { int sys_sigaction(int signum, \ 124 const struct sigaction *nsa, \ 125 struct sigaction *osa); } 12647 STD { gid_t sys_getgid(void); } 12748 STD { int sys_sigprocmask(int how, sigset_t mask); } 12849 STD { int sys___getlogin(char *namebuf, u_int namelen); } 12950 STD { int sys_setlogin(const char *namebuf); } 13051 STD { int sys_acct(const char *path); } 13152 STD { int sys_sigpending(void); } 13253 COMPAT_13 { int sys_sigaltstack(const struct sigaltstack13 \ 133 *nss, struct sigaltstack13 *oss); } sigaltstack13 13454 STD { int sys_ioctl(int fd, \ 135 u_long com, ... void *data); } 13655 COMPAT_12 { int sys_reboot(int opt); } oreboot 13756 STD { int sys_revoke(const char *path); } 13857 STD { int sys_symlink(const char *path, \ 139 const char *link); } 14058 STD { int sys_readlink(const char *path, char *buf, \ 141 size_t count); } 14259 STD { int sys_execve(const char *path, \ 143 char * const *argp, char * const *envp); } 14460 STD { mode_t sys_umask(mode_t newmask); } 14561 STD { int sys_chroot(const char *path); } 14662 COMPAT_43 { int sys_fstat(int fd, struct stat43 *sb); } fstat43 14763 COMPAT_43 { int sys_getkerninfo(int op, char *where, int *size, \ 148 int arg); } ogetkerninfo 14964 COMPAT_43 { int sys_getpagesize(void); } ogetpagesize 15065 COMPAT_12 { int sys_msync(caddr_t addr, size_t len); } 151; XXX COMPAT_??? for 4.4BSD-compatible vfork(2)? 15266 STD { int sys_vfork(void); } 15367 OBSOL vread 15468 OBSOL vwrite 15569 STD { int sys_sbrk(int incr); } 15670 STD { int sys_sstk(int incr); } 15771 COMPAT_43 { int sys_mmap(caddr_t addr, size_t len, int prot, \ 158 int flags, int fd, long pos); } ommap 15972 STD { int sys_ovadvise(int anom); } vadvise 16073 STD { int sys_munmap(void *addr, size_t len); } 16174 STD { int sys_mprotect(void *addr, size_t len, \ 162 int prot); } 16375 STD { int sys_madvise(void *addr, size_t len, \ 164 int behav); } 16576 OBSOL vhangup 16677 OBSOL vlimit 16778 STD { int sys_mincore(caddr_t addr, size_t len, \ 168 char *vec); } 16979 STD { int sys_getgroups(int gidsetsize, \ 170 gid_t *gidset); } 17180 STD { int sys_setgroups(int gidsetsize, \ 172 const gid_t *gidset); } 17381 STD { int sys_getpgrp(void); } 17482 STD { int sys_setpgid(int pid, int pgid); } 17583 STD { int sys_setitimer(int which, \ 176 const struct itimerval *itv, \ 177 struct itimerval *oitv); } 17884 COMPAT_43 { int sys_wait(void); } owait 17985 COMPAT_12 { int sys_swapon(const char *name); } oswapon 18086 STD { int sys_getitimer(int which, \ 181 struct itimerval *itv); } 18287 COMPAT_43 { int sys_gethostname(char *hostname, u_int len); } \ 183 ogethostname 18488 COMPAT_43 { int sys_sethostname(char *hostname, u_int len); } \ 185 osethostname 18689 COMPAT_43 { int sys_getdtablesize(void); } ogetdtablesize 18790 STD { int sys_dup2(int from, int to); } 18891 UNIMPL getdopt 18992 STD { int sys_fcntl(int fd, int cmd, ... void *arg); } 19093 STD { int sys_select(int nd, fd_set *in, fd_set *ou, \ 191 fd_set *ex, struct timeval *tv); } 19294 UNIMPL setdopt 19395 STD { int sys_fsync(int fd); } 19496 STD { int sys_setpriority(int which, int who, int prio); } 19597 STD { int sys_socket(int domain, int type, int protocol); } 19698 STD { int sys_connect(int s, const struct sockaddr *name, \ 197 int namelen); } 19899 COMPAT_43 { int sys_accept(int s, caddr_t name, \ 199 int *anamelen); } oaccept 200100 STD { int sys_getpriority(int which, int who); } 201101 COMPAT_43 { int sys_send(int s, caddr_t buf, int len, \ 202 int flags); } osend 203102 COMPAT_43 { int sys_recv(int s, caddr_t buf, int len, \ 204 int flags); } orecv 205103 STD { int sys_sigreturn(struct sigcontext *sigcntxp); } 206104 STD { int sys_bind(int s, const struct sockaddr *name, \ 207 int namelen); } 208105 STD { int sys_setsockopt(int s, int level, int name, \ 209 const void *val, int valsize); } 210106 STD { int sys_listen(int s, int backlog); } 211107 OBSOL vtimes 212108 COMPAT_43 { int sys_sigvec(int signum, struct sigvec *nsv, \ 213 struct sigvec *osv); } osigvec 214109 COMPAT_43 { int sys_sigblock(int mask); } osigblock 215110 COMPAT_43 { int sys_sigsetmask(int mask); } osigsetmask 216111 STD { int sys_sigsuspend(int mask); } 217112 COMPAT_43 { int sys_sigstack(struct sigstack *nss, \ 218 struct sigstack *oss); } osigstack 219113 COMPAT_43 { int sys_recvmsg(int s, struct omsghdr *msg, \ 220 int flags); } orecvmsg 221114 COMPAT_43 { int sys_sendmsg(int s, caddr_t msg, int flags); } \ 222 osendmsg 223#ifdef TRACE 224115 STD { int sys_vtrace(int request, int value); } 225#else 226115 OBSOL vtrace 227#endif 228116 STD { int sys_gettimeofday(struct timeval *tp, \ 229 struct timezone *tzp); } 230117 STD { int sys_getrusage(int who, struct rusage *rusage); } 231118 STD { int sys_getsockopt(int s, int level, int name, \ 232 void *val, int *avalsize); } 233119 OBSOL resuba 234120 STD { ssize_t sys_readv(int fd, \ 235 const struct iovec *iovp, int iovcnt); } 236121 STD { ssize_t sys_writev(int fd, \ 237 const struct iovec *iovp, int iovcnt); } 238122 STD { int sys_settimeofday(const struct timeval *tv, \ 239 const struct timezone *tzp); } 240123 STD { int sys_fchown(int fd, uid_t uid, gid_t gid); } 241124 STD { int sys_fchmod(int fd, mode_t mode); } 242125 COMPAT_43 { int sys_recvfrom(int s, caddr_t buf, size_t len, \ 243 int flags, caddr_t from, int *fromlenaddr); } \ 244 orecvfrom 245126 STD { int sys_setreuid(uid_t ruid, uid_t euid); } 246127 STD { int sys_setregid(gid_t rgid, gid_t egid); } 247128 STD { int sys_rename(const char *from, const char *to); } 248129 COMPAT_43 { int sys_truncate(const char *path, long length); } \ 249 otruncate 250130 COMPAT_43 { int sys_ftruncate(int fd, long length); } oftruncate 251131 STD { int sys_flock(int fd, int how); } 252132 STD { int sys_mkfifo(const char *path, mode_t mode); } 253133 STD { ssize_t sys_sendto(int s, const void *buf, \ 254 size_t len, int flags, const struct sockaddr *to, \ 255 int tolen); } 256134 STD { int sys_shutdown(int s, int how); } 257135 STD { int sys_socketpair(int domain, int type, \ 258 int protocol, int *rsv); } 259136 STD { int sys_mkdir(const char *path, mode_t mode); } 260137 STD { int sys_rmdir(const char *path); } 261138 STD { int sys_utimes(const char *path, \ 262 const struct timeval *tptr); } 263139 OBSOL 4.2 sigreturn 264140 STD { int sys_adjtime(const struct timeval *delta, \ 265 struct timeval *olddelta); } 266141 COMPAT_43 { int sys_getpeername(int fdes, caddr_t asa, \ 267 int *alen); } ogetpeername 268142 COMPAT_43 { int32_t sys_gethostid(void); } ogethostid 269143 COMPAT_43 { int sys_sethostid(int32_t hostid); } osethostid 270144 COMPAT_43 { int sys_getrlimit(int which, \ 271 struct orlimit *rlp); } ogetrlimit 272145 COMPAT_43 { int sys_setrlimit(int which, \ 273 const struct orlimit *rlp); } osetrlimit 274146 COMPAT_43 { int sys_killpg(int pgid, int signum); } okillpg 275147 STD { int sys_setsid(void); } 276148 STD { int sys_quotactl(const char *path, int cmd, \ 277 int uid, caddr_t arg); } 278149 COMPAT_43 { int sys_quota(void); } oquota 279150 COMPAT_43 { int sys_getsockname(int fdec, caddr_t asa, \ 280 int *alen); } ogetsockname 281 282; Syscalls 151-180 inclusive are reserved for vendor-specific 283; system calls. (This includes various calls added for compatibity 284; with other Unix variants.) 285; Some of these calls are now supported by BSD... 286151 UNIMPL 287152 UNIMPL 288153 UNIMPL 289154 UNIMPL 290#if defined(NFS) || defined(NFSSERVER) 291155 STD { int sys_nfssvc(int flag, void *argp); } 292#else 293155 UNIMPL 294#endif 295156 COMPAT_43 { int sys_getdirentries(int fd, char *buf, \ 296 u_int count, long *basep); } ogetdirentries 297157 STD { int sys_statfs(const char *path, \ 298 struct statfs *buf); } 299158 STD { int sys_fstatfs(int fd, struct statfs *buf); } 300159 UNIMPL 301160 UNIMPL 302#if defined(NFS) || defined(NFSSERVER) 303161 STD { int sys_getfh(const char *fname, fhandle_t *fhp); } 304#else 305161 UNIMPL getfh 306#endif 307162 COMPAT_09 { int sys_getdomainname(char *domainname, int len); } \ 308 ogetdomainname 309163 COMPAT_09 { int sys_setdomainname(char *domainname, int len); } \ 310 osetdomainname 311164 COMPAT_09 { int sys_uname(struct outsname *name); } ouname 312165 STD { int sys_sysarch(int op, void *parms); } 313166 UNIMPL 314167 UNIMPL 315168 UNIMPL 316; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 317#if defined(SYSVSEM) && !defined(alpha) 318169 COMPAT_10 { int sys_semsys(int which, int a2, int a3, int a4, \ 319 int a5); } osemsys 320#else 321169 UNIMPL 1.0 semsys 322#endif 323; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 324#if defined(SYSVMSG) && !defined(alpha) 325170 COMPAT_10 { int sys_msgsys(int which, int a2, int a3, int a4, \ 326 int a5, int a6); } omsgsys 327#else 328170 UNIMPL 1.0 msgsys 329#endif 330; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 331#if defined(SYSVSHM) && !defined(alpha) 332171 COMPAT_10 { int sys_shmsys(int which, int a2, int a3, int a4); } \ 333 oshmsys 334#else 335171 UNIMPL 1.0 shmsys 336#endif 337172 UNIMPL 338173 UNIMPL 339174 UNIMPL 340175 STD { int sys_ntp_gettime(struct ntptimeval *ntvp); } 341176 STD { int sys_ntp_adjtime(struct timex *tp); } 342177 UNIMPL 343178 UNIMPL 344179 UNIMPL 345180 UNIMPL 346 347; Syscalls 180-199 are used by/reserved for BSD 348181 STD { int sys_setgid(gid_t gid); } 349182 STD { int sys_setegid(gid_t egid); } 350183 STD { int sys_seteuid(uid_t euid); } 351#ifdef LFS 352184 STD { int lfs_bmapv(fsid_t *fsidp, \ 353 struct block_info *blkiov, int blkcnt); } 354185 STD { int lfs_markv(fsid_t *fsidp, \ 355 struct block_info *blkiov, int blkcnt); } 356186 STD { int lfs_segclean(fsid_t *fsidp, u_long segment); } 357187 STD { int lfs_segwait(fsid_t *fsidp, struct timeval *tv); } 358#else 359184 UNIMPL 360185 UNIMPL 361186 UNIMPL 362187 UNIMPL 363#endif 364188 COMPAT_12 { int sys_stat(const char *path, struct stat12 *ub); } \ 365 stat12 366189 COMPAT_12 { int sys_fstat(int fd, struct stat12 *sb); } fstat12 367190 COMPAT_12 { int sys_lstat(const char *path, \ 368 struct stat12 *ub); } lstat12 369191 STD { long sys_pathconf(const char *path, int name); } 370192 STD { long sys_fpathconf(int fd, int name); } 371193 UNIMPL 372194 STD { int sys_getrlimit(int which, \ 373 struct rlimit *rlp); } 374195 STD { int sys_setrlimit(int which, \ 375 const struct rlimit *rlp); } 376196 COMPAT_12 { int sys_getdirentries(int fd, char *buf, \ 377 u_int count, long *basep); } 378197 STD { void *sys_mmap(void *addr, size_t len, int prot, \ 379 int flags, int fd, long pad, off_t pos); } 380198 INDIR { quad_t sys___syscall(quad_t num, ...); } 381199 STD { off_t sys_lseek(int fd, int pad, off_t offset, \ 382 int whence); } 383200 STD { int sys_truncate(const char *path, int pad, \ 384 off_t length); } 385201 STD { int sys_ftruncate(int fd, int pad, off_t length); } 386202 STD { int sys___sysctl(int *name, u_int namelen, \ 387 void *old, size_t *oldlenp, void *new, \ 388 size_t newlen); } 389203 STD { int sys_mlock(const void *addr, size_t len); } 390204 STD { int sys_munlock(const void *addr, size_t len); } 391205 STD { int sys_undelete(const char *path); } 392206 STD { int sys_futimes(int fd, \ 393 const struct timeval *tptr); } 394207 STD { int sys_getpgid(pid_t pid); } 395208 STD { int sys_reboot(int opt, char *bootstr); } 396209 STD { int sys_poll(struct pollfd *fds, u_int nfds, \ 397 int timeout); } 398; 399; Syscalls 210-219 are reserved for dynamically loaded syscalls 400; 401#ifdef LKM 402210 NODEF { int sys_lkmnosys(void); } 403211 NODEF { int sys_lkmnosys(void); } 404212 NODEF { int sys_lkmnosys(void); } 405213 NODEF { int sys_lkmnosys(void); } 406214 NODEF { int sys_lkmnosys(void); } 407215 NODEF { int sys_lkmnosys(void); } 408216 NODEF { int sys_lkmnosys(void); } 409217 NODEF { int sys_lkmnosys(void); } 410218 NODEF { int sys_lkmnosys(void); } 411219 NODEF { int sys_lkmnosys(void); } 412#else /* !LKM */ 413210 UNIMPL 414211 UNIMPL 415212 UNIMPL 416213 UNIMPL 417214 UNIMPL 418215 UNIMPL 419216 UNIMPL 420217 UNIMPL 421218 UNIMPL 422219 UNIMPL 423#endif /* !LKM */ 424; System calls 220-300 are reserved for use by NetBSD 425#ifdef SYSVSEM 426220 STD { int sys___semctl(int semid, int semnum, int cmd, \ 427 union semun *arg); } 428221 STD { int sys_semget(key_t key, int nsems, int semflg); } 429222 STD { int sys_semop(int semid, struct sembuf *sops, \ 430 size_t nsops); } 431223 STD { int sys_semconfig(int flag); } 432#else 433220 UNIMPL semctl 434221 UNIMPL semget 435222 UNIMPL semop 436223 UNIMPL semconfig 437#endif 438#ifdef SYSVMSG 439224 STD { int sys_msgctl(int msqid, int cmd, \ 440 struct msqid_ds *buf); } 441225 STD { int sys_msgget(key_t key, int msgflg); } 442226 STD { int sys_msgsnd(int msqid, const void *msgp, \ 443 size_t msgsz, int msgflg); } 444227 STD { ssize_t sys_msgrcv(int msqid, void *msgp, \ 445 size_t msgsz, long msgtyp, int msgflg); } 446#else 447224 UNIMPL msgctl 448225 UNIMPL msgget 449226 UNIMPL msgsnd 450227 UNIMPL msgrcv 451#endif 452#ifdef SYSVSHM 453228 STD { void *sys_shmat(int shmid, const void *shmaddr, \ 454 int shmflg); } 455229 STD { int sys_shmctl(int shmid, int cmd, \ 456 struct shmid_ds *buf); } 457230 STD { int sys_shmdt(const void *shmaddr); } 458231 STD { int sys_shmget(key_t key, size_t size, int shmflg); } 459#else 460228 UNIMPL shmat 461229 UNIMPL shmctl 462230 UNIMPL shmdt 463231 UNIMPL shmget 464#endif 465232 STD { int sys_clock_gettime(clockid_t clock_id, \ 466 struct timespec *tp); } 467233 STD { int sys_clock_settime(clockid_t clock_id, \ 468 const struct timespec *tp); } 469234 STD { int sys_clock_getres(clockid_t clock_id, \ 470 struct timespec *tp); } 471235 UNIMPL timer_create 472236 UNIMPL timer_delete 473237 UNIMPL timer_settime 474238 UNIMPL timer_gettime 475239 UNIMPL timer_getoverrun 476; 477; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls 478; 479240 STD { int sys_nanosleep(const struct timespec *rqtp, \ 480 struct timespec *rmtp); } 481241 STD { int sys_fdatasync(int fd); } 482242 UNIMPL 483243 UNIMPL 484244 UNIMPL 485245 UNIMPL 486246 UNIMPL 487247 UNIMPL 488248 UNIMPL 489249 UNIMPL 490250 UNIMPL 491251 UNIMPL 492252 UNIMPL 493253 UNIMPL 494254 UNIMPL 495255 UNIMPL 496256 UNIMPL 497257 UNIMPL 498258 UNIMPL 499259 UNIMPL 500260 UNIMPL 501261 UNIMPL 502262 UNIMPL 503263 UNIMPL 504264 UNIMPL 505265 UNIMPL 506266 UNIMPL 507267 UNIMPL 508268 UNIMPL 509269 UNIMPL 510270 STD { int sys___posix_rename(const char *from, \ 511 const char *to); } 512271 STD { int sys_swapctl(int cmd, const void *arg, int misc); } 513272 STD { int sys_getdents(int fd, char *buf, size_t count); } 514273 STD { int sys_minherit(void *addr, size_t len, \ 515 int inherit); } 516274 STD { int sys_lchmod(const char *path, mode_t mode); } 517275 STD { int sys_lchown(const char *path, uid_t uid, \ 518 gid_t gid); } 519276 STD { int sys_lutimes(const char *path, \ 520 const struct timeval *tptr); } 521277 STD { int sys___msync13(void *addr, size_t len, int flags); } 522278 STD { int sys___stat13(const char *path, struct stat *ub); } 523279 STD { int sys___fstat13(int fd, struct stat *sb); } 524280 STD { int sys___lstat13(const char *path, struct stat *ub); } 525281 STD { int sys___sigaltstack14(const struct sigaltstack \ 526 *nss, struct sigaltstack *oss); } 527282 STD { int sys___vfork14(void); } 528283 STD { int sys___posix_chown(const char *path, uid_t uid, \ 529 gid_t gid); } 530284 STD { int sys___posix_fchown(int fd, uid_t uid, \ 531 gid_t gid); } 532285 STD { int sys___posix_lchown(const char *path, uid_t uid, \ 533 gid_t gid); } 534286 STD { pid_t sys_getsid(pid_t pid); } 535287 UNIMPL 536#ifdef KTRACE 537288 STD { int sys_fktrace(const int fd, int ops, \ 538 int facs, int pid); } 539#else 540288 UNIMPL 541#endif 542