1; $OpenBSD: syscalls.master,v 1.143 2014/07/10 08:55:35 deraadt Exp $ 2; $NetBSD: syscalls.master,v 1.32 1996/04/23 10:24:21 mycroft Exp $ 3 4; @(#)syscalls.master 8.2 (Berkeley) 1/13/94 5 6; OpenBSD system call name/number "master" file. 7; (See syscalls.conf to see what it is processed into.) 8; 9; Fields: number type [type-dependent ...] 10; number system call number, must be in order 11; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of 12; the compatibility options defined in syscalls.conf. 13; 14; types: 15; STD always included 16; OBSOL obsolete, not included in system 17; UNIMPL unimplemented, not included in system 18; NODEF included, but don't define the syscall number 19; NOARGS included, but don't define the syscall args structure 20; INDIR included, but don't define the syscall args structure, 21; and allow it to be "really" varargs. 22; 23; The compat options are defined in the syscalls.conf file, and the 24; compat option name is prefixed to the syscall name. Other than 25; that, they're like NODEF (for 'compat' options), or STD (for 26; 'libcompat' options). 27; 28; The type-dependent arguments are as follows: 29; For STD, NODEF, NOARGS, and compat syscalls: 30; { pseudo-proto } [alias] 31; For other syscalls: 32; [comment] 33; 34; #ifdef's, etc. may be included, and are copied to the output files. 35; #include's are copied to the syscall switch definition file only. 36 37#include <sys/param.h> 38#include <sys/systm.h> 39#include <sys/signal.h> 40#include <sys/mount.h> 41#include <sys/syscallargs.h> 42#include <sys/poll.h> 43#include <sys/event.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 NOLOCK { int sys_getentropy(void *buf, size_t nbyte); } 618 STD { int sys___tfork(const struct __tfork *param, \ 62 size_t psize); } 639 STD { int sys_link(const char *path, const char *link); } 6410 STD { int sys_unlink(const char *path); } 6511 STD { pid_t sys_wait4(pid_t pid, int *status, \ 66 int options, struct rusage *rusage); } 6712 STD { int sys_chdir(const char *path); } 6813 STD { int sys_fchdir(int fd); } 6914 STD { int sys_mknod(const char *path, mode_t mode, \ 70 dev_t dev); } 7115 STD { int sys_chmod(const char *path, mode_t mode); } 7216 STD { int sys_chown(const char *path, uid_t uid, \ 73 gid_t gid); } 7417 STD { int sys_obreak(char *nsize); } break 7518 STD { int sys_getdtablecount(void); } 7619 STD { int sys_getrusage(int who, \ 77 struct rusage *rusage); } 7820 STD NOLOCK { 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 NOLOCK { uid_t sys_getuid(void); } 8425 STD NOLOCK { uid_t sys_geteuid(void); } 85#ifdef PTRACE 8626 STD { int sys_ptrace(int req, pid_t pid, caddr_t addr, \ 87 int data); } 88#else 8926 UNIMPL ptrace 90#endif 9127 STD { ssize_t sys_recvmsg(int s, struct msghdr *msg, \ 92 int flags); } 9328 STD { ssize_t sys_sendmsg(int s, \ 94 const struct msghdr *msg, int flags); } 9529 STD { ssize_t sys_recvfrom(int s, void *buf, size_t len, \ 96 int flags, struct sockaddr *from, \ 97 socklen_t *fromlenaddr); } 9830 STD { int sys_accept(int s, struct sockaddr *name, \ 99 socklen_t *anamelen); } 10031 STD { int sys_getpeername(int fdes, struct sockaddr *asa, \ 101 socklen_t *alen); } 10232 STD { int sys_getsockname(int fdes, struct sockaddr *asa, \ 103 socklen_t *alen); } 10433 STD { int sys_access(const char *path, int flags); } 10534 STD { int sys_chflags(const char *path, u_int flags); } 10635 STD { int sys_fchflags(int fd, u_int flags); } 10736 STD { void sys_sync(void); } 10837 STD { int sys_kill(int pid, int signum); } 10938 STD { int sys_stat(const char *path, struct stat *ub); } 11039 STD { pid_t sys_getppid(void); } 11140 STD { int sys_lstat(const char *path, struct stat *ub); } 11241 STD { int sys_dup(int fd); } 11342 STD { int sys_fstatat(int fd, const char *path, \ 114 struct stat *buf, int flag); } 11543 STD NOLOCK { gid_t sys_getegid(void); } 11644 STD { int sys_profil(caddr_t samples, size_t size, \ 117 u_long offset, u_int scale); } 118#ifdef KTRACE 11945 STD { int sys_ktrace(const char *fname, int ops, \ 120 int facs, pid_t pid); } 121#else 12245 UNIMPL ktrace 123#endif 12446 STD { int sys_sigaction(int signum, \ 125 const struct sigaction *nsa, \ 126 struct sigaction *osa); } 12747 STD NOLOCK { gid_t sys_getgid(void); } 12848 STD { int sys_sigprocmask(int how, sigset_t mask); } 12949 STD { int sys_getlogin(char *namebuf, u_int namelen); } 13050 STD { int sys_setlogin(const char *namebuf); } 131#ifdef ACCOUNTING 13251 STD { int sys_acct(const char *path); } 133#else 13451 UNIMPL acct 135#endif 13652 STD { int sys_sigpending(void); } 13753 STD { int sys_fstat(int fd, struct stat *sb); } 13854 STD { int sys_ioctl(int fd, \ 139 u_long com, ... void *data); } 14055 STD { int sys_reboot(int opt); } 14156 STD { int sys_revoke(const char *path); } 14257 STD { int sys_symlink(const char *path, \ 143 const char *link); } 14458 STD { int sys_readlink(const char *path, char *buf, \ 145 size_t count); } 14659 STD { int sys_execve(const char *path, \ 147 char * const *argp, char * const *envp); } 14860 STD { mode_t sys_umask(mode_t newmask); } 14961 STD { int sys_chroot(const char *path); } 15062 STD { int sys_getfsstat(struct statfs *buf, size_t bufsize, \ 151 int flags); } 15263 STD { int sys_statfs(const char *path, \ 153 struct statfs *buf); } 15464 STD { int sys_fstatfs(int fd, struct statfs *buf); } 15565 STD { int sys_fhstatfs(const fhandle_t *fhp, \ 156 struct statfs *buf); } 15766 STD { int sys_vfork(void); } 15867 STD NOLOCK { int sys_gettimeofday(struct timeval *tp, \ 159 struct timezone *tzp); } 16068 STD { int sys_settimeofday(const struct timeval *tv, \ 161 const struct timezone *tzp); } 16269 STD { int sys_setitimer(int which, \ 163 const struct itimerval *itv, \ 164 struct itimerval *oitv); } 16570 STD { int sys_getitimer(int which, \ 166 struct itimerval *itv); } 16771 STD { int sys_select(int nd, fd_set *in, fd_set *ou, \ 168 fd_set *ex, struct timeval *tv); } 16972 STD { int sys_kevent(int fd, \ 170 const struct kevent *changelist, int nchanges, \ 171 struct kevent *eventlist, int nevents, \ 172 const struct timespec *timeout); } 17373 STD { int sys_munmap(void *addr, size_t len); } 17474 STD { int sys_mprotect(void *addr, size_t len, \ 175 int prot); } 17675 STD { int sys_madvise(void *addr, size_t len, \ 177 int behav); } 17876 STD { int sys_utimes(const char *path, \ 179 const struct timeval *tptr); } 18077 STD { int sys_futimes(int fd, \ 181 const struct timeval *tptr); } 18278 STD { int sys_mincore(void *addr, size_t len, \ 183 char *vec); } 18479 STD NOLOCK { int sys_getgroups(int gidsetsize, \ 185 gid_t *gidset); } 18680 STD { int sys_setgroups(int gidsetsize, \ 187 const gid_t *gidset); } 18881 STD { int sys_getpgrp(void); } 18982 STD { int sys_setpgid(pid_t pid, int pgid); } 19083 STD { int sys_sendsyslog(const void *buf, size_t nbyte); } 19184 STD { int sys_utimensat(int fd, const char *path, \ 192 const struct timespec *times, int flag); } 19385 STD { int sys_futimens(int fd, \ 194 const struct timespec *times); } 19586 OBSOL t32_getitimer 19687 STD NOLOCK { int sys_clock_gettime(clockid_t clock_id, \ 197 struct timespec *tp); } 19888 STD { int sys_clock_settime(clockid_t clock_id, \ 199 const struct timespec *tp); } 20089 STD NOLOCK { int sys_clock_getres(clockid_t clock_id, \ 201 struct timespec *tp); } 20290 STD { int sys_dup2(int from, int to); } 20391 STD { int sys_nanosleep(const struct timespec *rqtp, \ 204 struct timespec *rmtp); } 20592 STD { int sys_fcntl(int fd, int cmd, ... void *arg); } 20693 OBSOL t32_select 20794 STD { int sys___thrsleep(const volatile void *ident, \ 208 clockid_t clock_id, const struct timespec *tp, \ 209 void *lock, const int *abort); } 21095 STD { int sys_fsync(int fd); } 21196 STD { int sys_setpriority(int which, id_t who, int prio); } 21297 STD { int sys_socket(int domain, int type, int protocol); } 21398 STD { int sys_connect(int s, const struct sockaddr *name, \ 214 socklen_t namelen); } 21599 STD { int sys_getdents(int fd, void *buf, size_t buflen); } 216100 STD { int sys_getpriority(int which, id_t who); } 217101 OBSOL osend 218102 OBSOL orecv 219103 STD { int sys_sigreturn(struct sigcontext *sigcntxp); } 220104 STD { int sys_bind(int s, const struct sockaddr *name, \ 221 socklen_t namelen); } 222105 STD { int sys_setsockopt(int s, int level, int name, \ 223 const void *val, socklen_t valsize); } 224106 STD { int sys_listen(int s, int backlog); } 225107 OBSOL vtimes 226108 OBSOL osigvec 227109 STD { int sys_ppoll(struct pollfd *fds, \ 228 u_int nfds, const struct timespec *ts, \ 229 const sigset_t *mask); } 230110 STD { int sys_pselect(int nd, fd_set *in, fd_set *ou, \ 231 fd_set *ex, const struct timespec *ts, \ 232 const sigset_t *mask); } 233111 STD { int sys_sigsuspend(int mask); } 234112 OBSOL osigstack 235113 OBSOL orecvmsg 236114 OBSOL osendmsg 237115 OBSOL vtrace 238116 OBSOL t32_gettimeofday 239117 OBSOL t32_getrusage 240118 STD { int sys_getsockopt(int s, int level, int name, \ 241 void *val, socklen_t *avalsize); } 242119 OBSOL resuba 243120 STD { ssize_t sys_readv(int fd, \ 244 const struct iovec *iovp, int iovcnt); } 245121 STD { ssize_t sys_writev(int fd, \ 246 const struct iovec *iovp, int iovcnt); } 247122 OBSOL t32_settimeofday 248123 STD { int sys_fchown(int fd, uid_t uid, gid_t gid); } 249124 STD { int sys_fchmod(int fd, mode_t mode); } 250125 OBSOL orecvfrom 251126 STD { int sys_setreuid(uid_t ruid, uid_t euid); } 252127 STD { int sys_setregid(gid_t rgid, gid_t egid); } 253128 STD { int sys_rename(const char *from, const char *to); } 254129 OBSOL otruncate 255130 OBSOL oftruncate 256131 STD { int sys_flock(int fd, int how); } 257132 STD { int sys_mkfifo(const char *path, mode_t mode); } 258133 STD { ssize_t sys_sendto(int s, const void *buf, \ 259 size_t len, int flags, const struct sockaddr *to, \ 260 socklen_t tolen); } 261134 STD { int sys_shutdown(int s, int how); } 262135 STD { int sys_socketpair(int domain, int type, \ 263 int protocol, int *rsv); } 264136 STD { int sys_mkdir(const char *path, mode_t mode); } 265137 STD { int sys_rmdir(const char *path); } 266138 OBSOL t32_utimes 267139 OBSOL 4.2 sigreturn 268140 STD { int sys_adjtime(const struct timeval *delta, \ 269 struct timeval *olddelta); } 270141 OBSOL ogetpeername 271142 OBSOL ogethostid 272143 OBSOL osethostid 273144 OBSOL ogetrlimit 274145 OBSOL osetrlimit 275146 OBSOL okillpg 276147 STD { int sys_setsid(void); } 277148 STD { int sys_quotactl(const char *path, int cmd, \ 278 int uid, char *arg); } 279149 OBSOL oquota 280150 OBSOL ogetsockname 281 282; Syscalls 151-180 inclusive are reserved for vendor-specific 283; system calls. (This includes various calls added for compatibility 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(NFSCLIENT) || defined(NFSSERVER) 291155 STD { int sys_nfssvc(int flag, void *argp); } 292#else 293155 UNIMPL 294#endif 295156 OBSOL ogetdirentries 296157 OBSOL statfs25 297158 OBSOL fstatfs25 298159 UNIMPL 299160 UNIMPL 300161 STD { int sys_getfh(const char *fname, fhandle_t *fhp); } 301162 OBSOL ogetdomainname 302163 OBSOL osetdomainname 303164 UNIMPL ouname 304165 STD { int sys_sysarch(int op, void *parms); } 305166 UNIMPL 306167 UNIMPL 307168 UNIMPL 308169 OBSOL semsys10 309170 OBSOL msgsys10 310171 OBSOL shmsys10 311172 UNIMPL 312173 STD { ssize_t sys_pread(int fd, void *buf, \ 313 size_t nbyte, int pad, off_t offset); } 314174 STD { ssize_t sys_pwrite(int fd, const void *buf, \ 315 size_t nbyte, int pad, off_t offset); } 316175 UNIMPL ntp_gettime 317176 UNIMPL ntp_adjtime 318177 UNIMPL 319178 UNIMPL 320179 UNIMPL 321180 UNIMPL 322 323; Syscalls 181-199 are used by/reserved for BSD 324181 STD { int sys_setgid(gid_t gid); } 325182 STD { int sys_setegid(gid_t egid); } 326183 STD { int sys_seteuid(uid_t euid); } 327184 OBSOL lfs_bmapv 328185 OBSOL lfs_markv 329186 OBSOL lfs_segclean 330187 OBSOL lfs_segwait 331188 OBSOL stat35 332189 OBSOL fstat35 333190 OBSOL lstat35 334191 STD { long sys_pathconf(const char *path, int name); } 335192 STD { long sys_fpathconf(int fd, int name); } 336193 STD { int sys_swapctl(int cmd, const void *arg, int misc); } 337194 STD { int sys_getrlimit(int which, \ 338 struct rlimit *rlp); } 339195 STD { int sys_setrlimit(int which, \ 340 const struct rlimit *rlp); } 341196 OBSOL ogetdirentries48 342197 STD { void *sys_mmap(void *addr, size_t len, int prot, \ 343 int flags, int fd, long pad, off_t pos); } 344198 INDIR { quad_t sys___syscall(quad_t num, ...); } 345199 STD { off_t sys_lseek(int fd, int pad, off_t offset, \ 346 int whence); } 347200 STD { int sys_truncate(const char *path, int pad, \ 348 off_t length); } 349201 STD { int sys_ftruncate(int fd, int pad, off_t length); } 350202 STD { int sys___sysctl(const int *name, u_int namelen, \ 351 void *old, size_t *oldlenp, void *new, \ 352 size_t newlen); } 353203 STD { int sys_mlock(const void *addr, size_t len); } 354204 STD { int sys_munlock(const void *addr, size_t len); } 355205 UNIMPL sys_undelete 356206 OBSOL t32_futimes 357207 STD { pid_t sys_getpgid(pid_t pid); } 358208 OBSOL nnpfspioctl 359209 STD { int sys_utrace(const char *label, const void *addr, \ 360 size_t len); } 361; 362; Syscalls 210-219 are reserved for dynamically loaded syscalls 363; 364#ifdef LKM 365210 NODEF { int sys_lkmnosys(void); } 366211 NODEF { int sys_lkmnosys(void); } 367212 NODEF { int sys_lkmnosys(void); } 368213 NODEF { int sys_lkmnosys(void); } 369214 NODEF { int sys_lkmnosys(void); } 370215 NODEF { int sys_lkmnosys(void); } 371216 NODEF { int sys_lkmnosys(void); } 372217 NODEF { int sys_lkmnosys(void); } 373218 NODEF { int sys_lkmnosys(void); } 374219 NODEF { int sys_lkmnosys(void); } 375#else /* !LKM */ 376210 UNIMPL 377211 UNIMPL 378212 UNIMPL 379213 UNIMPL 380214 UNIMPL 381215 UNIMPL 382216 UNIMPL 383217 UNIMPL 384218 UNIMPL 385219 UNIMPL 386#endif /* !LKM */ 387; System calls 220-240 are reserved for use by OpenBSD 388#ifdef SYSVSEM 389220 UNIMPL 390221 STD { int sys_semget(key_t key, int nsems, int semflg); } 391#else 392220 UNIMPL semctl 393221 UNIMPL semget 394#endif 395222 OBSOL semop35 396223 OBSOL semconfig35 397#ifdef SYSVMSG 398224 UNIMPL 399225 STD { int sys_msgget(key_t key, int msgflg); } 400226 STD { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, \ 401 int msgflg); } 402227 STD { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \ 403 long msgtyp, int msgflg); } 404#else 405224 UNIMPL msgctl 406225 UNIMPL msgget 407226 UNIMPL msgsnd 408227 UNIMPL msgrcv 409#endif 410#ifdef SYSVSHM 411228 STD { void *sys_shmat(int shmid, const void *shmaddr, \ 412 int shmflg); } 413229 UNIMPL 414230 STD { int sys_shmdt(const void *shmaddr); } 415#else 416228 UNIMPL shmat 417229 UNIMPL shmctl 418230 UNIMPL shmdt 419#endif 420231 OBSOL shmget35 421232 OBSOL t32_clock_gettime 422233 OBSOL t32_clock_settime 423234 OBSOL t32_clock_getres 424235 UNIMPL timer_create 425236 UNIMPL timer_delete 426237 UNIMPL timer_settime 427238 UNIMPL timer_gettime 428239 UNIMPL timer_getoverrun 429; 430; System calls 240-249 are reserved for other IEEE Std1003.1b syscalls 431; 432240 OBSOL t32_nanosleep 433241 UNIMPL 434242 UNIMPL 435243 UNIMPL 436244 UNIMPL 437245 UNIMPL 438246 UNIMPL 439247 UNIMPL 440248 UNIMPL 441249 UNIMPL 442250 STD { int sys_minherit(void *addr, size_t len, \ 443 int inherit); } 444251 OBSOL rfork 445252 STD { int sys_poll(struct pollfd *fds, \ 446 u_int nfds, int timeout); } 447253 STD NOLOCK { int sys_issetugid(void); } 448254 STD { int sys_lchown(const char *path, uid_t uid, gid_t gid); } 449255 STD { pid_t sys_getsid(pid_t pid); } 450256 STD { int sys_msync(void *addr, size_t len, int flags); } 451257 OBSOL semctl35 452258 OBSOL shmctl35 453259 OBSOL msgctl35 454260 UNIMPL 455261 UNIMPL 456262 UNIMPL 457263 STD { int sys_pipe(int *fdp); } 458264 STD { int sys_fhopen(const fhandle_t *fhp, int flags); } 459265 UNIMPL 460266 UNIMPL 461267 STD { ssize_t sys_preadv(int fd, \ 462 const struct iovec *iovp, int iovcnt, \ 463 int pad, off_t offset); } 464268 STD { ssize_t sys_pwritev(int fd, \ 465 const struct iovec *iovp, int iovcnt, \ 466 int pad, off_t offset); } 467269 STD { int sys_kqueue(void); } 468270 OBSOL t32_kevent 469271 STD { int sys_mlockall(int flags); } 470272 STD { int sys_munlockall(void); } 471273 UNIMPL sys_getpeereid 472274 UNIMPL sys_extattrctl 473275 UNIMPL sys_extattr_set_file 474276 UNIMPL sys_extattr_get_file 475277 UNIMPL sys_extattr_delete_file 476278 UNIMPL sys_extattr_set_fd 477279 UNIMPL sys_extattr_get_fd 478280 UNIMPL sys_extattr_delete_fd 479281 STD NOLOCK { int sys_getresuid(uid_t *ruid, uid_t *euid, \ 480 uid_t *suid); } 481282 STD { int sys_setresuid(uid_t ruid, uid_t euid, \ 482 uid_t suid); } 483283 STD NOLOCK { int sys_getresgid(gid_t *rgid, gid_t *egid, \ 484 gid_t *sgid); } 485284 STD { int sys_setresgid(gid_t rgid, gid_t egid, \ 486 gid_t sgid); } 487285 OBSOL sys_omquery 488286 STD { void *sys_mquery(void *addr, size_t len, int prot, \ 489 int flags, int fd, long pad, off_t pos); } 490287 STD { int sys_closefrom(int fd); } 491288 STD { int sys_sigaltstack(const struct sigaltstack *nss, \ 492 struct sigaltstack *oss); } 493#ifdef SYSVSHM 494289 STD { int sys_shmget(key_t key, size_t size, int shmflg); } 495#else 496289 UNIMPL shmget 497#endif 498#ifdef SYSVSEM 499290 STD { int sys_semop(int semid, struct sembuf *sops, \ 500 size_t nsops); } 501#else 502290 UNIMPL semop 503#endif 504291 OBSOL t32_stat 505292 OBSOL t32_fstat 506293 OBSOL t32_lstat 507294 STD { int sys_fhstat(const fhandle_t *fhp, \ 508 struct stat *sb); } 509#ifdef SYSVSEM 510295 STD { int sys___semctl(int semid, int semnum, int cmd, \ 511 union semun *arg); } 512#else 513295 UNIMPL 514#endif 515#ifdef SYSVSHM 516296 STD { int sys_shmctl(int shmid, int cmd, \ 517 struct shmid_ds *buf); } 518#else 519296 UNIMPL 520#endif 521#ifdef SYSVMSG 522297 STD { int sys_msgctl(int msqid, int cmd, \ 523 struct msqid_ds *buf); } 524#else 525297 UNIMPL 526#endif 527298 STD NOLOCK { int sys_sched_yield(void); } 528299 STD NOLOCK { pid_t sys_getthrid(void); } 529300 OBSOL t32___thrsleep 530301 STD { int sys___thrwakeup(const volatile void *ident, \ 531 int n); } 532302 STD { void sys___threxit(pid_t *notdead); } 533303 STD { int sys___thrsigdivert(sigset_t sigmask, \ 534 siginfo_t *info, const struct timespec *timeout); } 535304 STD { int sys___getcwd(char *buf, size_t len); } 536305 STD { int sys_adjfreq(const int64_t *freq, \ 537 int64_t *oldfreq); } 538306 OBSOL getfsstat53 539307 OBSOL statfs53 540308 OBSOL fstatfs53 541309 OBSOL fhstatfs53 542310 STD { int sys_setrtable(int rtableid); } 543311 STD { int sys_getrtable(void); } 544312 OBSOL t32_getdirentries 545313 STD { int sys_faccessat(int fd, const char *path, \ 546 int amode, int flag); } 547314 STD { int sys_fchmodat(int fd, const char *path, \ 548 mode_t mode, int flag); } 549315 STD { int sys_fchownat(int fd, const char *path, \ 550 uid_t uid, gid_t gid, int flag); } 551316 OBSOL t32_fstatat 552317 STD { int sys_linkat(int fd1, const char *path1, int fd2, \ 553 const char *path2, int flag); } 554318 STD { int sys_mkdirat(int fd, const char *path, \ 555 mode_t mode); } 556319 STD { int sys_mkfifoat(int fd, const char *path, \ 557 mode_t mode); } 558320 STD { int sys_mknodat(int fd, const char *path, \ 559 mode_t mode, dev_t dev); } 560321 STD { int sys_openat(int fd, const char *path, int flags, \ 561 ... mode_t mode); } 562322 STD { ssize_t sys_readlinkat(int fd, const char *path, \ 563 char *buf, size_t count); } 564323 STD { int sys_renameat(int fromfd, const char *from, \ 565 int tofd, const char *to); } 566324 STD { int sys_symlinkat(const char *path, int fd, \ 567 const char *link); } 568325 STD { int sys_unlinkat(int fd, const char *path, \ 569 int flag); } 570326 OBSOL t32_utimensat 571327 OBSOL t32_futimens 572328 OBSOL __tfork51 573329 STD NOLOCK { void sys___set_tcb(void *tcb); } 574330 STD NOLOCK { void *sys___get_tcb(void); } 575