syscalls.master revision 1.70
1 $NetBSD: syscalls.master,v 1.70 1998/02/19 00:52:14 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 "fs_lfs.h" 37#include "fs_nfs.h" 38 39#include <sys/param.h> 40#include <sys/systm.h> 41#include <sys/signal.h> 42#include <sys/mount.h> 43#include <sys/syscallargs.h> 44 45; Reserved/unimplemented system calls in the range 0-150 inclusive 46; are reserved for use in future Berkeley releases. 47; Additional system calls implemented in vendor and other 48; redistributions should be placed in the reserved range at the end 49; of the current calls. 50 510 INDIR { int sys_syscall(int number, ...); } 521 STD { void sys_exit(int rval); } 532 STD { int sys_fork(void); } 543 STD { ssize_t sys_read(int fd, void *buf, size_t nbyte); } 554 STD { ssize_t sys_write(int fd, const void *buf, \ 56 size_t nbyte); } 575 STD { int sys_open(const char *path, \ 58 int flags, ... mode_t mode); } 596 STD { int sys_close(int fd); } 607 STD { int sys_wait4(int pid, int *status, int options, \ 61 struct rusage *rusage); } 628 COMPAT_43 { int sys_creat(const char *path, mode_t mode); } ocreat 639 STD { int sys_link(const char *path, const char *link); } 6410 STD { int sys_unlink(const char *path); } 6511 OBSOL execv 6612 STD { int sys_chdir(const char *path); } 6713 STD { int sys_fchdir(int fd); } 6814 STD { int sys_mknod(const char *path, mode_t mode, \ 69 dev_t dev); } 7015 STD { int sys_chmod(const char *path, mode_t mode); } 7116 STD { int sys_chown(const char *path, uid_t uid, \ 72 gid_t gid); } 7317 STD { int sys_obreak(char *nsize); } break 7418 STD { int sys_getfsstat(struct statfs *buf, long bufsize, \ 75 int flags); } 7619 COMPAT_43 { long sys_lseek(int fd, long offset, int whence); } \ 77 olseek 7820 STD { pid_t sys_getpid(void); } 7921 STD { int sys_mount(const char *type, const char *path, \ 80 int flags, void *data); } 8122 STD { int sys_unmount(const char *path, int flags); } 8223 STD { int sys_setuid(uid_t uid); } 8324 STD { uid_t sys_getuid(void); } 8425 STD { uid_t sys_geteuid(void); } 8526 STD { int sys_ptrace(int req, pid_t pid, caddr_t addr, \ 86 int data); } 8727 STD { ssize_t sys_recvmsg(int s, struct msghdr *msg, \ 88 int flags); } 8928 STD { ssize_t sys_sendmsg(int s, \ 90 const struct msghdr *msg, int flags); } 9129 STD { ssize_t sys_recvfrom(int s, void *buf, size_t len, \ 92 int flags, struct sockaddr *from, \ 93 int *fromlenaddr); } 9430 STD { int sys_accept(int s, struct sockaddr *name, \ 95 int *anamelen); } 9631 STD { int sys_getpeername(int fdes, struct sockaddr *asa, \ 97 int *alen); } 9832 STD { int sys_getsockname(int fdes, struct sockaddr *asa, \ 99 int *alen); } 10033 STD { int sys_access(const char *path, int flags); } 10134 STD { int sys_chflags(const char *path, u_long flags); } 10235 STD { int sys_fchflags(int fd, u_long flags); } 10336 STD { void sys_sync(void); } 10437 STD { int sys_kill(int pid, int signum); } 10538 COMPAT_43 { int sys_stat(const char *path, struct stat43 *ub); } \ 106 stat43 10739 STD { pid_t sys_getppid(void); } 10840 COMPAT_43 { int sys_lstat(const char *path, \ 109 struct stat43 *ub); } lstat43 11041 STD { int sys_dup(int fd); } 11142 STD { int sys_pipe(void); } 11243 STD { gid_t sys_getegid(void); } 11344 STD { int sys_profil(caddr_t samples, size_t size, \ 114 u_long offset, u_int scale); } 115#ifdef KTRACE 11645 STD { int sys_ktrace(const char *fname, int ops, \ 117 int facs, int pid); } 118#else 11945 UNIMPL ktrace 120#endif 12146 STD { int sys_sigaction(int signum, \ 122 const struct sigaction *nsa, \ 123 struct sigaction *osa); } 12447 STD { gid_t sys_getgid(void); } 12548 STD { int sys_sigprocmask(int how, sigset_t mask); } 12649 STD { int sys___getlogin(char *namebuf, u_int namelen); } 12750 STD { int sys_setlogin(const char *namebuf); } 12851 STD { int sys_acct(const char *path); } 12952 STD { int sys_sigpending(void); } 13053 COMPAT_13 { int sys_sigaltstack(const struct sigaltstack13 \ 131 *nss, struct sigaltstack13 *oss); } sigaltstack13 13254 STD { int sys_ioctl(int fd, \ 133 u_long com, ... void *data); } 13455 COMPAT_12 { int sys_reboot(int opt); } oreboot 13556 STD { int sys_revoke(const char *path); } 13657 STD { int sys_symlink(const char *path, \ 137 const char *link); } 13858 STD { int sys_readlink(const char *path, char *buf, \ 139 int count); } 14059 STD { int sys_execve(const char *path, \ 141 char * const *argp, char * const *envp); } 14260 STD { mode_t sys_umask(mode_t newmask); } 14361 STD { int sys_chroot(const char *path); } 14462 COMPAT_43 { int sys_fstat(int fd, struct stat43 *sb); } fstat43 14563 COMPAT_43 { int sys_getkerninfo(int op, char *where, int *size, \ 146 int arg); } ogetkerninfo 14764 COMPAT_43 { int sys_getpagesize(void); } ogetpagesize 14865 COMPAT_12 { int sys_msync(caddr_t addr, size_t len); } 149; XXX COMPAT_??? for 4.4BSD-compatible vfork(2)? 15066 STD { int sys_vfork(void); } 15167 OBSOL vread 15268 OBSOL vwrite 15369 STD { int sys_sbrk(int incr); } 15470 STD { int sys_sstk(int incr); } 15571 COMPAT_43 { int sys_mmap(caddr_t addr, size_t len, int prot, \ 156 int flags, int fd, long pos); } ommap 15772 STD { int sys_ovadvise(int anom); } vadvise 15873 STD { int sys_munmap(void *addr, size_t len); } 15974 STD { int sys_mprotect(void *addr, size_t len, \ 160 int prot); } 16175 STD { int sys_madvise(void *addr, size_t len, \ 162 int behav); } 16376 OBSOL vhangup 16477 OBSOL vlimit 16578 STD { int sys_mincore(caddr_t addr, size_t len, \ 166 char *vec); } 16779 STD { int sys_getgroups(int gidsetsize, \ 168 gid_t *gidset); } 16980 STD { int sys_setgroups(int gidsetsize, \ 170 const gid_t *gidset); } 17181 STD { int sys_getpgrp(void); } 17282 STD { int sys_setpgid(int pid, int pgid); } 17383 STD { int sys_setitimer(int which, \ 174 const struct itimerval *itv, \ 175 struct itimerval *oitv); } 17684 COMPAT_43 { int sys_wait(void); } owait 17785 COMPAT_12 { int sys_swapon(const char *name); } oswapon 17886 STD { int sys_getitimer(int which, \ 179 struct itimerval *itv); } 18087 COMPAT_43 { int sys_gethostname(char *hostname, u_int len); } \ 181 ogethostname 18288 COMPAT_43 { int sys_sethostname(char *hostname, u_int len); } \ 183 osethostname 18489 COMPAT_43 { int sys_getdtablesize(void); } ogetdtablesize 18590 STD { int sys_dup2(int from, int to); } 18691 UNIMPL getdopt 18792 STD { int sys_fcntl(int fd, int cmd, ... void *arg); } 18893 STD { int sys_select(int nd, fd_set *in, fd_set *ou, \ 189 fd_set *ex, struct timeval *tv); } 19094 UNIMPL setdopt 19195 STD { int sys_fsync(int fd); } 19296 STD { int sys_setpriority(int which, int who, int prio); } 19397 STD { int sys_socket(int domain, int type, int protocol); } 19498 STD { int sys_connect(int s, const struct sockaddr *name, \ 195 int namelen); } 19699 COMPAT_43 { int sys_accept(int s, caddr_t name, \ 197 int *anamelen); } oaccept 198100 STD { int sys_getpriority(int which, int who); } 199101 COMPAT_43 { int sys_send(int s, caddr_t buf, int len, \ 200 int flags); } osend 201102 COMPAT_43 { int sys_recv(int s, caddr_t buf, int len, \ 202 int flags); } orecv 203103 STD { int sys_sigreturn(struct sigcontext *sigcntxp); } 204104 STD { int sys_bind(int s, const struct sockaddr *name, \ 205 int namelen); } 206105 STD { int sys_setsockopt(int s, int level, int name, \ 207 const void *val, int valsize); } 208106 STD { int sys_listen(int s, int backlog); } 209107 OBSOL vtimes 210108 COMPAT_43 { int sys_sigvec(int signum, struct sigvec *nsv, \ 211 struct sigvec *osv); } osigvec 212109 COMPAT_43 { int sys_sigblock(int mask); } osigblock 213110 COMPAT_43 { int sys_sigsetmask(int mask); } osigsetmask 214111 STD { int sys_sigsuspend(int mask); } 215112 COMPAT_43 { int sys_sigstack(struct sigstack *nss, \ 216 struct sigstack *oss); } osigstack 217113 COMPAT_43 { int sys_recvmsg(int s, struct omsghdr *msg, \ 218 int flags); } orecvmsg 219114 COMPAT_43 { int sys_sendmsg(int s, caddr_t msg, int flags); } \ 220 osendmsg 221#ifdef TRACE 222115 STD { int sys_vtrace(int request, int value); } 223#else 224115 OBSOL vtrace 225#endif 226116 STD { int sys_gettimeofday(struct timeval *tp, \ 227 struct timezone *tzp); } 228117 STD { int sys_getrusage(int who, struct rusage *rusage); } 229118 STD { int sys_getsockopt(int s, int level, int name, \ 230 void *val, int *avalsize); } 231119 OBSOL resuba 232120 STD { ssize_t sys_readv(int fd, \ 233 const struct iovec *iovp, int iovcnt); } 234121 STD { ssize_t sys_writev(int fd, \ 235 const struct iovec *iovp, int iovcnt); } 236122 STD { int sys_settimeofday(const struct timeval *tv, \ 237 const struct timezone *tzp); } 238123 STD { int sys_fchown(int fd, uid_t uid, gid_t gid); } 239124 STD { int sys_fchmod(int fd, mode_t mode); } 240125 COMPAT_43 { int sys_recvfrom(int s, caddr_t buf, size_t len, \ 241 int flags, caddr_t from, int *fromlenaddr); } \ 242 orecvfrom 243126 STD { int sys_setreuid(uid_t ruid, uid_t euid); } 244127 STD { int sys_setregid(gid_t rgid, gid_t egid); } 245128 STD { int sys_rename(const char *from, const char *to); } 246129 COMPAT_43 { int sys_truncate(const char *path, long length); } \ 247 otruncate 248130 COMPAT_43 { int sys_ftruncate(int fd, long length); } oftruncate 249131 STD { int sys_flock(int fd, int how); } 250132 STD { int sys_mkfifo(const char *path, mode_t mode); } 251133 STD { ssize_t sys_sendto(int s, const void *buf, \ 252 size_t len, int flags, const struct sockaddr *to, \ 253 int tolen); } 254134 STD { int sys_shutdown(int s, int how); } 255135 STD { int sys_socketpair(int domain, int type, \ 256 int protocol, int *rsv); } 257136 STD { int sys_mkdir(const char *path, mode_t mode); } 258137 STD { int sys_rmdir(const char *path); } 259138 STD { int sys_utimes(const char *path, \ 260 const struct timeval *tptr); } 261139 OBSOL 4.2 sigreturn 262140 STD { int sys_adjtime(const struct timeval *delta, \ 263 struct timeval *olddelta); } 264141 COMPAT_43 { int sys_getpeername(int fdes, caddr_t asa, \ 265 int *alen); } ogetpeername 266142 COMPAT_43 { int32_t sys_gethostid(void); } ogethostid 267143 COMPAT_43 { int sys_sethostid(int32_t hostid); } osethostid 268144 COMPAT_43 { int sys_getrlimit(int which, \ 269 struct orlimit *rlp); } ogetrlimit 270145 COMPAT_43 { int sys_setrlimit(int which, \ 271 const struct orlimit *rlp); } osetrlimit 272146 COMPAT_43 { int sys_killpg(int pgid, int signum); } okillpg 273147 STD { int sys_setsid(void); } 274148 STD { int sys_quotactl(const char *path, int cmd, \ 275 int uid, caddr_t arg); } 276149 COMPAT_43 { int sys_quota(void); } oquota 277150 COMPAT_43 { int sys_getsockname(int fdec, caddr_t asa, \ 278 int *alen); } ogetsockname 279 280; Syscalls 151-180 inclusive are reserved for vendor-specific 281; system calls. (This includes various calls added for compatibity 282; with other Unix variants.) 283; Some of these calls are now supported by BSD... 284151 UNIMPL 285152 UNIMPL 286153 UNIMPL 287154 UNIMPL 288#if defined(NFS) || defined(NFSSERVER) 289155 STD { int sys_nfssvc(int flag, void *argp); } 290#else 291155 UNIMPL 292#endif 293156 COMPAT_43 { int sys_getdirentries(int fd, char *buf, \ 294 u_int count, long *basep); } ogetdirentries 295157 STD { int sys_statfs(const char *path, \ 296 struct statfs *buf); } 297158 STD { int sys_fstatfs(int fd, struct statfs *buf); } 298159 UNIMPL 299160 UNIMPL 300#if defined(NFS) || defined(NFSSERVER) 301161 STD { int sys_getfh(const char *fname, fhandle_t *fhp); } 302#else 303161 UNIMPL getfh 304#endif 305162 COMPAT_09 { int sys_getdomainname(char *domainname, int len); } \ 306 ogetdomainname 307163 COMPAT_09 { int sys_setdomainname(char *domainname, int len); } \ 308 osetdomainname 309164 COMPAT_09 { int sys_uname(struct outsname *name); } ouname 310165 STD { int sys_sysarch(int op, char *parms); } 311166 UNIMPL 312167 UNIMPL 313168 UNIMPL 314; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 315#if defined(SYSVSEM) && !defined(alpha) 316169 COMPAT_10 { int sys_semsys(int which, int a2, int a3, int a4, \ 317 int a5); } osemsys 318#else 319169 UNIMPL 1.0 semsys 320#endif 321; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 322#if defined(SYSVMSG) && !defined(alpha) 323170 COMPAT_10 { int sys_msgsys(int which, int a2, int a3, int a4, \ 324 int a5, int a6); } omsgsys 325#else 326170 UNIMPL 1.0 msgsys 327#endif 328; XXX more generally, never on machines where sizeof(void *) != sizeof(int) 329#if defined(SYSVSHM) && !defined(alpha) 330171 COMPAT_10 { int sys_shmsys(int which, int a2, int a3, int a4); } \ 331 oshmsys 332#else 333171 UNIMPL 1.0 shmsys 334#endif 335172 UNIMPL 336173 UNIMPL 337174 UNIMPL 338175 STD { int sys_ntp_gettime(struct ntptimeval *ntvp); } 339176 STD { int sys_ntp_adjtime(struct timex *tp); } 340177 UNIMPL 341178 UNIMPL 342179 UNIMPL 343180 UNIMPL 344 345; Syscalls 180-199 are used by/reserved for BSD 346181 STD { int sys_setgid(gid_t gid); } 347182 STD { int sys_setegid(gid_t egid); } 348183 STD { int sys_seteuid(uid_t euid); } 349#ifdef LFS 350184 STD { int lfs_bmapv(fsid_t *fsidp, \ 351 struct block_info *blkiov, int blkcnt); } 352185 STD { int lfs_markv(fsid_t *fsidp, \ 353 struct block_info *blkiov, int blkcnt); } 354186 STD { int lfs_segclean(fsid_t *fsidp, u_long segment); } 355187 STD { int lfs_segwait(fsid_t *fsidp, struct timeval *tv); } 356#else 357184 UNIMPL 358185 UNIMPL 359186 UNIMPL 360187 UNIMPL 361#endif 362188 COMPAT_12 { int sys_stat(const char *path, struct stat12 *ub); } \ 363 stat12 364189 COMPAT_12 { int sys_fstat(int fd, struct stat12 *sb); } fstat12 365190 COMPAT_12 { int sys_lstat(const char *path, \ 366 struct stat12 *ub); } lstat12 367191 STD { long sys_pathconf(const char *path, int name); } 368192 STD { long sys_fpathconf(int fd, int name); } 369193 UNIMPL 370194 STD { int sys_getrlimit(int which, \ 371 struct rlimit *rlp); } 372195 STD { int sys_setrlimit(int which, \ 373 const struct rlimit *rlp); } 374196 COMPAT_12 { int sys_getdirentries(int fd, char *buf, \ 375 u_int count, long *basep); } 376197 STD { void *sys_mmap(void *addr, size_t len, int prot, \ 377 int flags, int fd, long pad, off_t pos); } 378198 INDIR { quad_t sys___syscall(quad_t num, ...); } 379199 STD { off_t sys_lseek(int fd, int pad, off_t offset, \ 380 int whence); } 381200 STD { int sys_truncate(const char *path, int pad, \ 382 off_t length); } 383201 STD { int sys_ftruncate(int fd, int pad, off_t length); } 384202 STD { int sys___sysctl(int *name, u_int namelen, \ 385 void *old, size_t *oldlenp, void *new, \ 386 size_t newlen); } 387203 STD { int sys_mlock(void *addr, size_t len); } 388204 STD { int sys_munlock(void *addr, size_t len); } 389205 STD { int sys_undelete(const char *path); } 390206 STD { int sys_futimes(int fd, \ 391 const struct timeval *tptr); } 392207 STD { int sys_getpgid(pid_t pid); } 393208 STD { int sys_reboot(int opt, char *bootstr); } 394209 STD { int sys_poll(struct pollfd *fds, u_int nfds, \ 395 int timeout); } 396; 397; Syscalls 210-219 are reserved for dynamically loaded syscalls 398; 399#ifdef LKM 400210 NODEF { int sys_lkmnosys(void); } 401211 NODEF { int sys_lkmnosys(void); } 402212 NODEF { int sys_lkmnosys(void); } 403213 NODEF { int sys_lkmnosys(void); } 404214 NODEF { int sys_lkmnosys(void); } 405215 NODEF { int sys_lkmnosys(void); } 406216 NODEF { int sys_lkmnosys(void); } 407217 NODEF { int sys_lkmnosys(void); } 408218 NODEF { int sys_lkmnosys(void); } 409219 NODEF { int sys_lkmnosys(void); } 410#else /* !LKM */ 411210 UNIMPL 412211 UNIMPL 413212 UNIMPL 414213 UNIMPL 415214 UNIMPL 416215 UNIMPL 417216 UNIMPL 418217 UNIMPL 419218 UNIMPL 420219 UNIMPL 421#endif /* !LKM */ 422; System calls 220-300 are reserved for use by NetBSD 423#ifdef SYSVSEM 424220 STD { int sys___semctl(int semid, int semnum, int cmd, \ 425 union semun *arg); } 426221 STD { int sys_semget(key_t key, int nsems, int semflg); } 427222 STD { int sys_semop(int semid, struct sembuf *sops, \ 428 u_int nsops); } 429223 STD { int sys_semconfig(int flag); } 430#else 431220 UNIMPL semctl 432221 UNIMPL semget 433222 UNIMPL semop 434223 UNIMPL semconfig 435#endif 436#ifdef SYSVMSG 437224 STD { int sys_msgctl(int msqid, int cmd, \ 438 struct msqid_ds *buf); } 439225 STD { int sys_msgget(key_t key, int msgflg); } 440226 STD { int sys_msgsnd(int msqid, void *msgp, size_t msgsz, \ 441 int msgflg); } 442227 STD { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \ 443 long msgtyp, int msgflg); } 444#else 445224 UNIMPL msgctl 446225 UNIMPL msgget 447226 UNIMPL msgsnd 448227 UNIMPL msgrcv 449#endif 450#ifdef SYSVSHM 451228 STD { void *sys_shmat(int shmid, void *shmaddr, \ 452 int shmflg); } 453229 STD { int sys_shmctl(int shmid, int cmd, \ 454 struct shmid_ds *buf); } 455230 STD { int sys_shmdt(void *shmaddr); } 456231 STD { int sys_shmget(key_t key, int size, int shmflg); } 457#else 458228 UNIMPL shmat 459229 UNIMPL shmctl 460230 UNIMPL shmdt 461231 UNIMPL shmget 462#endif 463232 STD { int sys_clock_gettime(clockid_t clock_id, \ 464 struct timespec *tp); } 465233 STD { int sys_clock_settime(clockid_t clock_id, \ 466 const struct timespec *tp); } 467234 STD { int sys_clock_getres(clockid_t clock_id, \ 468 struct timespec *tp); } 469235 UNIMPL timer_create 470236 UNIMPL timer_delete 471237 UNIMPL timer_settime 472238 UNIMPL timer_gettime 473239 UNIMPL timer_getoverrun 474; 475; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls 476; 477240 STD { int sys_nanosleep(const struct timespec *rqtp, \ 478 struct timespec *rmtp); } 479241 UNIMPL 480242 UNIMPL 481243 UNIMPL 482244 UNIMPL 483245 UNIMPL 484246 UNIMPL 485247 UNIMPL 486248 UNIMPL 487249 UNIMPL 488250 UNIMPL 489251 UNIMPL 490252 UNIMPL 491253 UNIMPL 492254 UNIMPL 493255 UNIMPL 494256 UNIMPL 495257 UNIMPL 496258 UNIMPL 497259 UNIMPL 498260 UNIMPL 499261 UNIMPL 500262 UNIMPL 501263 UNIMPL 502264 UNIMPL 503265 UNIMPL 504266 UNIMPL 505267 UNIMPL 506268 UNIMPL 507269 UNIMPL 508270 STD { int sys___posix_rename(const char *from, \ 509 const char *to); } 510271 STD { int sys_swapctl(int cmd, const void *arg, int misc); } 511272 STD { int sys_getdents(int fd, char *buf, size_t count); } 512273 STD { int sys_minherit(void *addr, size_t len, \ 513 int inherit); } 514274 STD { int sys_lchmod(const char *path, mode_t mode); } 515275 STD { int sys_lchown(const char *path, uid_t uid, \ 516 gid_t gid); } 517276 STD { int sys_lutimes(const char *path, \ 518 const struct timeval *tptr); } 519277 STD { int sys___msync13(void *addr, size_t len, int flags); } 520278 STD { int sys___stat13(const char *path, struct stat *ub); } 521279 STD { int sys___fstat13(int fd, struct stat *sb); } 522280 STD { int sys___lstat13(const char *path, struct stat *ub); } 523281 STD { int sys___sigaltstack14(const struct sigaltstack \ 524 *nss, struct sigaltstack *oss); } 525282 STD { int sys___vfork14(void); } 526283 STD { int sys___posix_chown(const char *path, uid_t uid, \ 527 gid_t gid); } 528284 STD { int sys___posix_fchown(int fd, uid_t uid, \ 529 gid_t gid); } 530285 STD { int sys___posix_lchown(const char *path, uid_t uid, \ 531 gid_t gid); } 532286 STD { pid_t sys_getsid(pid_t pid); } 533