1 /* $OpenBSD: unistd.h,v 1.14 2024/05/18 05:20:22 guenther Exp $ */ 2 /* 3 * Copyright (c) 2015 Philip Guenther <guenther@openbsd.org> 4 * 5 * Permission to use, copy, modify, and distribute this software for any 6 * purpose with or without fee is hereby granted, provided that the above 7 * copyright notice and this permission notice appear in all copies. 8 * 9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 */ 17 18 #ifndef _LIBC_UNISTD_H_ 19 #define _LIBC_UNISTD_H_ 20 21 #include_next <unistd.h> 22 23 __BEGIN_HIDDEN_DECLS 24 /* shared between getpagesize(), sysconf(), and _csu_finish() */ 25 extern int _pagesize; 26 __END_HIDDEN_DECLS 27 28 /* the real syscall behind getcwd(3) and getwd(3) */ 29 int __getcwd(char *buf, size_t len); 30 31 PROTO_NORMAL(__getcwd); 32 PROTO_NORMAL(__tfork_thread); 33 PROTO_NORMAL(_exit); 34 PROTO_NORMAL(access); 35 PROTO_NORMAL(acct); 36 PROTO_DEPRECATED(alarm); 37 PROTO_DEPRECATED(brk); 38 PROTO_NORMAL(chdir); 39 PROTO_NORMAL(chown); 40 PROTO_NORMAL(chroot); 41 PROTO_CANCEL(close); 42 PROTO_CANCEL(closefrom); 43 PROTO_DEPRECATED(confstr); 44 PROTO_NORMAL(crypt); 45 PROTO_NORMAL(crypt_checkpass); 46 PROTO_NORMAL(crypt_newhash); 47 PROTO_NORMAL(dup); 48 PROTO_NORMAL(dup2); 49 PROTO_NORMAL(dup3); 50 PROTO_DEPRECATED(endusershell); 51 PROTO_NORMAL(execl); 52 PROTO_DEPRECATED(execle); 53 PROTO_DEPRECATED(execlp); 54 PROTO_DEPRECATED(execv); 55 PROTO_NORMAL(execve); 56 PROTO_NORMAL(execvp); 57 PROTO_NORMAL(execvpe); 58 PROTO_NORMAL(faccessat); 59 PROTO_NORMAL(fchdir); 60 PROTO_NORMAL(fchown); 61 PROTO_NORMAL(fchownat); 62 /*PROTO_CANCEL(fdatasync);*/ 63 PROTO_DEPRECATED(fflagstostr); 64 PROTO_WRAP(fork); 65 PROTO_NORMAL(fpathconf); 66 PROTO_CANCEL(fsync); 67 PROTO_NORMAL(ftruncate); 68 PROTO_NORMAL(getcwd); 69 PROTO_NORMAL(getdomainname); 70 PROTO_NORMAL(getdtablecount); 71 PROTO_DEPRECATED(getdtablesize); 72 PROTO_NORMAL(getegid); 73 PROTO_NORMAL(getentropy); 74 PROTO_NORMAL(geteuid); 75 PROTO_NORMAL(getgid); 76 PROTO_NORMAL(getgrouplist); 77 PROTO_NORMAL(getgroups); 78 PROTO_DEPRECATED(gethostid); 79 PROTO_NORMAL(gethostname); 80 PROTO_DEPRECATED(getlogin); 81 PROTO_NORMAL(getlogin_r); 82 PROTO_DEPRECATED(getmode); 83 PROTO_DEPRECATED(getopt); 84 PROTO_NORMAL(getpagesize); 85 PROTO_DEPRECATED(getpass); 86 PROTO_NORMAL(getpgid); 87 PROTO_NORMAL(getpgrp); 88 PROTO_NORMAL(getpid); 89 PROTO_NORMAL(getppid); 90 PROTO_NORMAL(getresgid); 91 PROTO_NORMAL(getresuid); 92 PROTO_NORMAL(getsid); 93 PROTO_NORMAL(getthrid); 94 PROTO_NORMAL(getthrname); 95 PROTO_NORMAL(getuid); 96 PROTO_DEPRECATED(getusershell); 97 PROTO_DEPRECATED(getwd); 98 PROTO_NORMAL(initgroups); 99 PROTO_NORMAL(isatty); 100 PROTO_NORMAL(issetugid); 101 PROTO_NORMAL(lchown); 102 PROTO_NORMAL(link); 103 PROTO_NORMAL(linkat); 104 /*PROTO_CANCEL(lockf);*/ 105 PROTO_NORMAL(lseek); 106 /*PROTO_DEPRECATED(mkdtemp); use declaration from stdlib.h */ 107 PROTO_NORMAL(mkstemp); 108 /*PROTO_DEPRECATED(mkstemps); use declaration from stdlib.h */ 109 /*PROTO_DEPRECATED(mktemp); use declaration from stdlib.h */ 110 PROTO_NORMAL(nfssvc); 111 PROTO_DEPRECATED(nice); 112 PROTO_NORMAL(pathconf); 113 PROTO_NORMAL(pathconfat); 114 /*PROTO_CANCEL(pause);*/ 115 PROTO_NORMAL(pipe); 116 PROTO_NORMAL(pipe2); 117 PROTO_NORMAL(pledge); 118 PROTO_CANCEL(pread); 119 PROTO_NORMAL(profil); 120 PROTO_CANCEL(pwrite); 121 PROTO_NORMAL(quotactl); 122 PROTO_DEPRECATED(rcmd); 123 PROTO_NORMAL(rcmd_af); 124 PROTO_NORMAL(rcmdsh); 125 PROTO_CANCEL(read); 126 PROTO_NORMAL(readlink); 127 PROTO_NORMAL(readlinkat); 128 PROTO_NORMAL(reboot); 129 PROTO_NORMAL(revoke); 130 PROTO_NORMAL(rmdir); 131 PROTO_DEPRECATED(rresvport); 132 PROTO_NORMAL(rresvport_af); 133 PROTO_DEPRECATED(ruserok); 134 PROTO_DEPRECATED(sbrk); 135 PROTO_DEPRECATED(setdomainname); 136 PROTO_NORMAL(setegid); 137 PROTO_NORMAL(seteuid); 138 PROTO_NORMAL(setgid); 139 PROTO_NORMAL(setgroups); 140 PROTO_DEPRECATED(sethostid); 141 PROTO_DEPRECATED(sethostname); 142 PROTO_NORMAL(setlogin); 143 PROTO_DEPRECATED(setmode); 144 PROTO_NORMAL(setpgid); 145 PROTO_DEPRECATED(setpgrp); 146 PROTO_NORMAL(setregid); 147 PROTO_NORMAL(setresgid); 148 PROTO_NORMAL(setresuid); 149 PROTO_NORMAL(setreuid); 150 PROTO_NORMAL(setsid); 151 PROTO_NORMAL(setthrname); 152 PROTO_NORMAL(setuid); 153 PROTO_DEPRECATED(setusershell); 154 /*PROTO_CANCEL(sleep);*/ 155 PROTO_DEPRECATED(strtofflags); 156 PROTO_DEPRECATED(swab); 157 PROTO_NORMAL(swapctl); 158 PROTO_NORMAL(symlink); 159 PROTO_NORMAL(symlinkat); 160 PROTO_NORMAL(sync); 161 PROTO_NORMAL(sysconf); 162 PROTO_DEPRECATED(tcgetpgrp); 163 PROTO_DEPRECATED(tcsetpgrp); 164 PROTO_NORMAL(truncate); 165 PROTO_NORMAL(ttyname); 166 PROTO_NORMAL(ttyname_r); 167 PROTO_DEPRECATED(ualarm); 168 PROTO_NORMAL(unlink); 169 PROTO_NORMAL(unlinkat); 170 PROTO_NORMAL(unveil); 171 PROTO_DEPRECATED(usleep); 172 PROTO_WRAP(vfork); 173 PROTO_CANCEL(write); 174 175 #endif /* !_LIBC_UNISTD_H_ */ 176