syscalls.master revision 1.103 1 1.103 christos $NetBSD: syscalls.master,v 1.103 2023/07/29 15:04:29 christos Exp $
2 1.1 itohy
3 1.1 itohy ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
4 1.1 itohy
5 1.1 itohy ; NetBSD m68k COMPAT_LINUX system call name/number "master" file.
6 1.1 itohy ; (See syscalls.conf to see what it is processed into.)
7 1.1 itohy ;
8 1.1 itohy ; Fields: number type [type-dependent ...]
9 1.1 itohy ; number system call number, must be in order
10 1.1 itohy ; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
11 1.1 itohy ; the compatibility options defined in syscalls.conf.
12 1.1 itohy ;
13 1.1 itohy ; types:
14 1.1 itohy ; STD always included
15 1.1 itohy ; OBSOL obsolete, not included in system
16 1.1 itohy ; UNIMPL unimplemented, not included in system
17 1.1 itohy ; NODEF included, but don't define the syscall number
18 1.1 itohy ; NOARGS included, but don't define the syscall args structure
19 1.1 itohy ; INDIR included, but don't define the syscall args structure
20 1.1 itohy ; and allow it to be "really" varargs.
21 1.1 itohy ;
22 1.1 itohy ; The compat options are defined in the syscalls.conf file, and the
23 1.1 itohy ; compat option name is prefixed to the syscall name. Other than
24 1.1 itohy ; that, they're like NODEF (for 'compat' options), or STD (for
25 1.1 itohy ; 'libcompat' options).
26 1.1 itohy ;
27 1.1 itohy ; The type-dependent arguments are as follows:
28 1.1 itohy ; For STD, NODEF, NOARGS, and compat syscalls:
29 1.1 itohy ; { pseudo-proto } [alias]
30 1.1 itohy ; For other syscalls:
31 1.1 itohy ; [comment]
32 1.1 itohy ;
33 1.1 itohy ; #ifdef's, etc. may be included, and are copied to the output files.
34 1.1 itohy ; #include's are copied to the syscall names and switch definition files only.
35 1.1 itohy
36 1.34 mrg #if defined(_KERNEL_OPT)
37 1.1 itohy #include "opt_compat_netbsd.h"
38 1.1 itohy #include "opt_compat_43.h"
39 1.19 mycroft #endif
40 1.1 itohy
41 1.1 itohy #include <sys/param.h>
42 1.5 tron #include <sys/poll.h>
43 1.1 itohy #include <sys/systm.h>
44 1.1 itohy #include <sys/signal.h>
45 1.1 itohy #include <sys/mount.h>
46 1.62 tsutsui #include <sys/sched.h>
47 1.1 itohy #include <sys/syscallargs.h>
48 1.1 itohy
49 1.1 itohy #include <compat/linux/common/linux_types.h>
50 1.1 itohy #include <compat/linux/common/linux_signal.h>
51 1.1 itohy #include <compat/linux/common/linux_siginfo.h>
52 1.1 itohy #include <compat/linux/common/linux_machdep.h>
53 1.42 thorpej #include <compat/linux/common/linux_mmap.h>
54 1.1 itohy
55 1.1 itohy #include <compat/linux/linux_syscallargs.h>
56 1.1 itohy
57 1.20 mycroft %%
58 1.1 itohy
59 1.65 pooka 0 NOARGS { int|linux_sys||nosys(void); } syscall
60 1.69 chs 1 STD { int|linux_sys||exit(int rval); }
61 1.65 pooka 2 NOARGS { int|sys||fork(void); }
62 1.82 njoly 3 NOARGS { ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
63 1.82 njoly 4 NOARGS { ssize_t|sys||write(int fd, const void *buf, \
64 1.82 njoly size_t nbyte); }
65 1.65 pooka 5 STD { int|linux_sys||open(const char *path, int flags, \
66 1.79 njoly linux_umode_t mode); }
67 1.65 pooka 6 NOARGS { int|sys||close(int fd); }
68 1.65 pooka 7 STD { int|linux_sys||waitpid(int pid, int *status, \
69 1.1 itohy int options);}
70 1.79 njoly 8 STD { int|linux_sys||creat(const char *path, linux_umode_t mode); }
71 1.65 pooka 9 NOARGS { int|sys||link(const char *path, const char *link); }
72 1.65 pooka 10 STD { int|linux_sys||unlink(const char *path); }
73 1.65 pooka 11 NOARGS { int|sys||execve(const char *path, char **argp, \
74 1.1 itohy char **envp); }
75 1.65 pooka 12 NOARGS { int|sys||chdir(const char *path); }
76 1.65 pooka 13 STD { int|linux_sys||time(linux_time_t *t); }
77 1.79 njoly 14 STD { int|linux_sys||mknod(const char *path, linux_umode_t mode, \
78 1.84 njoly unsigned dev); }
79 1.65 pooka 15 NOARGS { int|sys||chmod(const char *path, int mode); }
80 1.1 itohy ;16 lchown on i386; chown on m68k.
81 1.65 pooka 16 STD { int|linux_sys||chown16(const char *path, \
82 1.59 njoly linux_uid16_t uid, linux_gid16_t gid); }
83 1.1 itohy 17 OBSOL break
84 1.1 itohy 18 OBSOL ostat
85 1.1 itohy #if !defined(_KERNEL) || defined(COMPAT_43)
86 1.65 pooka 19 NOARGS { long|compat_43_sys||lseek(int fd, long offset, \
87 1.1 itohy int whence); }
88 1.1 itohy #else
89 1.1 itohy 19 UNIMPL compat_43_sys_lseek
90 1.1 itohy #endif
91 1.65 pooka 20 NOARGS { pid_t|sys||getpid(void); }
92 1.1 itohy 21 UNIMPL mount
93 1.1 itohy 22 OBSOL umount
94 1.65 pooka 23 NOARGS linux_setuid16 { int|sys||setuid(uid_t uid); }
95 1.65 pooka 24 NOARGS linux_getuid16 { uid_t|sys||getuid(void); }
96 1.65 pooka 25 STD { int|linux_sys||stime(linux_time_t *t); }
97 1.65 pooka 26 STD { int|linux_sys||ptrace(int request, int pid, \
98 1.12 tron int addr, int data); }
99 1.65 pooka 27 STD { int|linux_sys||alarm(unsigned int secs); }
100 1.1 itohy 28 OBSOL ofstat
101 1.65 pooka 29 STD { int|linux_sys||pause(void); }
102 1.65 pooka 30 STD { int|linux_sys||utime(const char *path, \
103 1.1 itohy struct linux_utimbuf *times); }
104 1.1 itohy 31 OBSOL stty
105 1.1 itohy 32 OBSOL gtty
106 1.65 pooka 33 NOARGS { int|sys||access(const char *path, int flags); }
107 1.65 pooka 34 STD { int|linux_sys||nice(int incr); }
108 1.1 itohy 35 OBSOL ftime
109 1.65 pooka 36 NOARGS { int|sys||sync(void); }
110 1.65 pooka 37 STD { int|linux_sys||kill(int pid, int signum); }
111 1.65 pooka 38 NOARGS { int|sys||__posix_rename(const char *from, \
112 1.2 itohy const char *to); }
113 1.79 njoly 39 NOARGS { int|sys||mkdir(const char *path, linux_umode_t mode); }
114 1.65 pooka 40 NOARGS { int|sys||rmdir(const char *path); }
115 1.77 njoly 41 NOARGS { int|sys||dup(int fd); }
116 1.65 pooka 42 STD { int|linux_sys||pipe(int *pfds); }
117 1.65 pooka 43 STD { int|linux_sys||times(struct times *tms); }
118 1.1 itohy 44 OBSOL prof
119 1.65 pooka 45 STD { int|linux_sys||brk(char *nsize); }
120 1.65 pooka 46 NOARGS linux_setgid16 { int|sys||setgid(gid_t gid); }
121 1.65 pooka 47 NOARGS linux_getgid16 { gid_t|sys||getgid(void); }
122 1.65 pooka 48 STD { int|linux_sys||signal(int signum, \
123 1.1 itohy linux_handler_t handler); }
124 1.65 pooka 49 NOARGS linux_geteuid16 { uid_t|sys||geteuid(void); }
125 1.65 pooka 50 NOARGS linux_getegid16 { gid_t|sys||getegid(void); }
126 1.65 pooka 51 NOARGS { int|sys||acct(char *path); }
127 1.1 itohy 52 UNIMPL umount
128 1.1 itohy 53 OBSOL lock
129 1.65 pooka 54 STD { int|linux_sys||ioctl(int fd, u_long com, \
130 1.54 christos void *data); }
131 1.65 pooka 55 STD { int|linux_sys||fcntl(int fd, int cmd, void *arg); }
132 1.1 itohy 56 OBSOL mpx
133 1.65 pooka 57 NOARGS { int|sys||setpgid(int pid, int pgid); }
134 1.1 itohy 58 OBSOL ulimit
135 1.1 itohy 59 UNIMPL oldolduname
136 1.65 pooka 60 NOARGS { int|sys||umask(int newmask); }
137 1.65 pooka 61 NOARGS { int|sys||chroot(char *path); }
138 1.1 itohy 62 UNIMPL ustat
139 1.77 njoly 63 NOARGS { int|sys||dup2(int from, int to); }
140 1.65 pooka 64 NOARGS { pid_t|sys||getppid(void); }
141 1.65 pooka 65 NOARGS { int|sys||getpgrp(void); }
142 1.65 pooka 66 NOARGS { int|sys||setsid(void); }
143 1.65 pooka 67 STD { int|linux_sys||sigaction(int signum, \
144 1.1 itohy const struct linux_old_sigaction *nsa, \
145 1.1 itohy struct linux_old_sigaction *osa); }
146 1.65 pooka 68 STD { int|linux_sys||siggetmask(void); }
147 1.65 pooka 69 STD { int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
148 1.65 pooka 70 STD { int|linux_sys||setreuid16(linux_uid16_t ruid, \
149 1.59 njoly linux_uid16_t euid); }
150 1.65 pooka 71 STD { int|linux_sys||setregid16(linux_gid16_t rgid, \
151 1.59 njoly linux_gid16_t egid); }
152 1.65 pooka 72 STD { int|linux_sys||sigsuspend(void *restart, \
153 1.1 itohy int oldmask, int mask); }
154 1.65 pooka 73 STD { int|linux_sys||sigpending(linux_old_sigset_t *set); }
155 1.1 itohy #if !defined(_KERNEL) || defined(COMPAT_43)
156 1.65 pooka 74 NOARGS { int|compat_43_sys||sethostname(char *hostname, \
157 1.1 itohy u_int len);}
158 1.1 itohy #else
159 1.1 itohy 74 UNIMPL compat_43_sys_sethostname
160 1.1 itohy #endif
161 1.65 pooka 75 STD { int|linux_sys||setrlimit(u_int which, \
162 1.36 christos struct orlimit *rlp); }
163 1.65 pooka 76 STD { int|linux_sys||getrlimit(u_int which, \
164 1.36 christos struct orlimit *rlp); }
165 1.65 pooka 77 NOARGS { int|compat_50_sys||getrusage(int who, \
166 1.64 tsutsui struct rusage50 *rusage); }
167 1.65 pooka 78 STD { int|linux_sys||gettimeofday(struct timeval50 *tp, \
168 1.1 itohy struct timezone *tzp); }
169 1.65 pooka 79 STD { int|linux_sys||settimeofday(struct timeval50 *tp, \
170 1.1 itohy struct timezone *tzp); }
171 1.65 pooka 80 STD { int|linux_sys||getgroups16(int gidsetsize, \
172 1.59 njoly linux_gid16_t *gidset); }
173 1.65 pooka 81 STD { int|linux_sys||setgroups16(int gidsetsize, \
174 1.59 njoly linux_gid16_t *gidset); }
175 1.65 pooka 82 STD { int|linux_sys||oldselect(struct linux_oldselect *lsp); }
176 1.65 pooka 83 NOARGS { int|sys||symlink(const char *path, const char *to); }
177 1.1 itohy #if !defined(_KERNEL) || defined(COMPAT_43)
178 1.65 pooka 84 NOARGS { int|compat_43_sys||lstat(const char *path, \
179 1.1 itohy struct stat43 *up); } oolstat
180 1.1 itohy #else
181 1.1 itohy 84 UNIMPL compat_43_sys_lstat
182 1.1 itohy #endif
183 1.90 njoly 85 NOARGS { ssize_t|sys||readlink(const char *path, char *buf, \
184 1.1 itohy int count); }
185 1.47 joerg #ifdef EXEC_AOUT
186 1.65 pooka 86 STD { int|linux_sys||uselib(const char *path); }
187 1.47 joerg #else
188 1.47 joerg 86 UNIMPL sys_uselib
189 1.47 joerg #endif
190 1.65 pooka 87 STD { int|linux_sys||swapon(char *name); }
191 1.65 pooka 88 STD { int|linux_sys||reboot(int magic1, int magic2, \
192 1.14 erh int cmd, void *arg); }
193 1.65 pooka 89 STD { int|linux_sys||readdir(int fd, void *dent, \
194 1.1 itohy unsigned int count); }
195 1.65 pooka 90 STD { int|linux_sys||old_mmap(struct linux_oldmmap *lmp); }
196 1.88 njoly 91 NOARGS { int|sys||munmap(void *addr, size_t len); }
197 1.65 pooka 92 NOARGS { int|compat_43_sys||truncate(const char *path, \
198 1.2 itohy long length); }
199 1.1 itohy #if !defined(_KERNEL) || defined(COMPAT_43)
200 1.65 pooka 93 NOARGS { int|compat_43_sys||ftruncate(int fd, long length); }
201 1.1 itohy #else
202 1.1 itohy 93 UNIMPL compat_43_sys_ftruncate
203 1.1 itohy #endif
204 1.79 njoly 94 NOARGS { int|sys||fchmod(int fd, linux_umode_t mode); }
205 1.65 pooka 95 STD { int|linux_sys||fchown16(int fd, linux_uid16_t uid, \
206 1.59 njoly linux_gid16_t gid); }
207 1.65 pooka 96 STD { int|linux_sys||getpriority(int which, int who); }
208 1.65 pooka 97 NOARGS { int|sys||setpriority(int which, int who, int prio); }
209 1.65 pooka 98 NOARGS { int|sys||profil(void *samples, u_int size, \
210 1.1 itohy u_int offset, u_int scale); }
211 1.65 pooka 99 STD { int|linux_sys||statfs(const char *path, \
212 1.1 itohy struct linux_statfs *sp); }
213 1.65 pooka 100 STD { int|linux_sys||fstatfs(int fd, \
214 1.1 itohy struct linux_statfs *sp); }
215 1.1 itohy 101 UNIMPL ioperm
216 1.65 pooka 102 STD { int|linux_sys||socketcall(int what, void *args); }
217 1.1 itohy 103 UNIMPL syslog
218 1.72 christos 104 NOARGS { int|compat_50_sys||setitimer(int which, \
219 1.64 tsutsui struct itimerval50 *itv, \
220 1.64 tsutsui struct itimerval50 *oitv); }
221 1.72 christos 105 NOARGS { int|compat_50_sys||getitimer(int which, \
222 1.64 tsutsui struct itimerval50 *itv); }
223 1.65 pooka 106 STD { int|linux_sys||stat(const char *path, \
224 1.1 itohy struct linux_stat *sp); }
225 1.65 pooka 107 STD { int|linux_sys||lstat(const char *path, \
226 1.1 itohy struct linux_stat *sp); }
227 1.65 pooka 108 STD { int|linux_sys||fstat(int fd, struct linux_stat *sp); }
228 1.1 itohy 109 UNIMPL olduname
229 1.1 itohy 110 UNIMPL iopl
230 1.1 itohy 111 UNIMPL vhangup
231 1.1 itohy 112 UNIMPL idle
232 1.1 itohy 113 UNIMPL vm86old
233 1.65 pooka 114 STD { int|linux_sys||wait4(int pid, int *status, \
234 1.66 njoly int options, struct rusage50 *rusage); }
235 1.65 pooka 115 STD { int|linux_sys||swapoff(const char *path); }
236 1.65 pooka 116 STD { int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
237 1.65 pooka 117 STD { int|linux_sys||ipc(int what, int a1, int a2, int a3, \
238 1.54 christos void *ptr); }
239 1.65 pooka 118 NOARGS { int|sys||fsync(int fd); }
240 1.65 pooka 119 STD { int|linux_sys||sigreturn(void); }
241 1.69 chs 120 STD { int|linux_sys||clone(int flags, void *stack, \
242 1.69 chs void *parent_tidptr, void *tls, void *child_tidptr); }
243 1.65 pooka 121 STD { int|linux_sys||setdomainname(char *domainname, \
244 1.1 itohy int len); }
245 1.65 pooka 122 STD { int|linux_sys||uname(struct linux_utsname *up); }
246 1.65 pooka 123 STD { int|linux_sys||cacheflush(unsigned long addr, \
247 1.1 itohy int scope, int cache, unsigned long len); }
248 1.1 itohy 124 UNIMPL adjtimex
249 1.65 pooka 125 STD { int|linux_sys||mprotect(const void *start, \
250 1.37 christos unsigned long len, int prot); }
251 1.65 pooka 126 STD { int|linux_sys||sigprocmask(int how, \
252 1.1 itohy const linux_old_sigset_t *set, \
253 1.1 itohy linux_old_sigset_t *oset); }
254 1.1 itohy 127 UNIMPL create_module
255 1.1 itohy 128 UNIMPL init_module
256 1.1 itohy 129 UNIMPL delete_module
257 1.1 itohy 130 UNIMPL get_kernel_syms
258 1.1 itohy 131 UNIMPL quotactl
259 1.65 pooka 132 NOARGS { pid_t|sys||getpgid(pid_t pid); }
260 1.65 pooka 133 NOARGS { int|sys||fchdir(int fd); }
261 1.1 itohy 134 UNIMPL bdflush
262 1.1 itohy 135 UNIMPL sysfs
263 1.68 njoly 136 STD { int|linux_sys||personality(unsigned long per); }
264 1.1 itohy 137 UNIMPL afs_syscall
265 1.65 pooka 138 NOARGS linux_setfsuid16 { int|linux_sys||setfsuid(uid_t uid); }
266 1.65 pooka 139 NOARGS linux_setfsgid16 { int|linux_sys||setfsgid(gid_t gid); }
267 1.65 pooka 140 STD { int|linux_sys||llseek(int fd, u_int32_t ohigh, \
268 1.54 christos u_int32_t olow, void *res, int whence); }
269 1.65 pooka 141 STD { int|linux_sys||getdents(int fd, \
270 1.1 itohy struct linux_dirent *dent, unsigned int count); }
271 1.65 pooka 142 STD { int|linux_sys||select(int nfds, fd_set *readfds, \
272 1.1 itohy fd_set *writefds, fd_set *exceptfds, \
273 1.64 tsutsui struct timeval50 *timeout); }
274 1.65 pooka 143 NOARGS { int|sys||flock(int fd, int how); }
275 1.65 pooka 144 NOARGS { int|sys|13|msync(void *addr, size_t len, int flags); }
276 1.82 njoly 145 NOARGS { ssize_t|sys||readv(int fd, \
277 1.82 njoly const struct iovec *iovp, int iovcnt); }
278 1.82 njoly 146 NOARGS { ssize_t|sys||writev(int fd, \
279 1.82 njoly const struct iovec *iovp, int iovcnt); }
280 1.65 pooka 147 NOARGS { pid_t|sys||getsid(pid_t pid); }
281 1.65 pooka 148 STD { int|linux_sys||fdatasync(int fd); }
282 1.65 pooka 149 STD { int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
283 1.65 pooka 150 NOARGS { int|sys||mlock(void *addr, size_t len); }
284 1.65 pooka 151 NOARGS { int|sys||munlock(void *addr, size_t len); }
285 1.65 pooka 152 NOARGS { int|sys||mlockall(int flags); }
286 1.65 pooka 153 NOARGS { int|sys||munlockall(void); }
287 1.65 pooka 154 STD { int|linux_sys||sched_setparam(pid_t pid, \
288 1.9 tron const struct linux_sched_param *sp); }
289 1.65 pooka 155 STD { int|linux_sys||sched_getparam(pid_t pid, \
290 1.9 tron struct linux_sched_param *sp); }
291 1.65 pooka 156 STD { int|linux_sys||sched_setscheduler(pid_t pid, \
292 1.9 tron int policy, const struct linux_sched_param *sp); }
293 1.65 pooka 157 STD { int|linux_sys||sched_getscheduler(pid_t pid); }
294 1.65 pooka 158 STD { int|linux_sys||sched_yield(void); }
295 1.65 pooka 159 STD { int|linux_sys||sched_get_priority_max(int policy); }
296 1.65 pooka 160 STD { int|linux_sys||sched_get_priority_min(int policy); }
297 1.1 itohy 161 UNIMPL sched_rr_get_interval
298 1.65 pooka 162 STD { int|linux_sys||nanosleep( \
299 1.63 njoly const struct linux_timespec *rqtp, \
300 1.63 njoly struct linux_timespec *rmtp); }
301 1.65 pooka 163 STD { void *|linux_sys||mremap(void *old_address, \
302 1.1 itohy size_t old_size, size_t new_size, u_long flags); }
303 1.65 pooka 164 STD { int|linux_sys||setresuid16(linux_uid16_t ruid, \
304 1.59 njoly linux_uid16_t euid, linux_uid16_t suid); }
305 1.65 pooka 165 STD { int|linux_sys||getresuid16(linux_uid16_t *ruid, \
306 1.59 njoly linux_uid16_t *euid, linux_uid16_t *suid); }
307 1.1 itohy 166 UNIMPL vm86
308 1.1 itohy 167 UNIMPL query_module
309 1.65 pooka 168 NOARGS { int|sys||poll(struct pollfd *fds, u_int nfds, \
310 1.5 tron int timeout); }
311 1.1 itohy 169 UNIMPL nfsservctl
312 1.65 pooka 170 STD { int|linux_sys||setresgid16(linux_gid16_t rgid, \
313 1.59 njoly linux_gid16_t egid, linux_gid16_t sgid); }
314 1.65 pooka 171 STD { int|linux_sys||getresgid16(linux_gid16_t *rgid, \
315 1.59 njoly linux_gid16_t *egid, linux_gid16_t *sgid); }
316 1.1 itohy 172 UNIMPL prctl
317 1.65 pooka 173 STD { int|linux_sys||rt_sigreturn(void); }
318 1.65 pooka 174 STD { int|linux_sys||rt_sigaction(int signum, \
319 1.1 itohy const struct linux_sigaction *nsa, \
320 1.1 itohy struct linux_sigaction *osa, \
321 1.1 itohy size_t sigsetsize); }
322 1.65 pooka 175 STD { int|linux_sys||rt_sigprocmask(int how, \
323 1.1 itohy const linux_sigset_t *set, \
324 1.1 itohy linux_sigset_t *oset, \
325 1.1 itohy size_t sigsetsize); }
326 1.65 pooka 176 STD { int|linux_sys||rt_sigpending( \
327 1.1 itohy linux_sigset_t *set, \
328 1.1 itohy size_t sigsetsize); }
329 1.73 christos 177 STD { int|linux_sys||rt_sigtimedwait( \
330 1.73 christos const linux_sigset_t *set, \
331 1.73 christos linux_siginfo_t *info, \
332 1.73 christos const struct linux_timespec *timeout); }
333 1.65 pooka 178 STD { int|linux_sys||rt_queueinfo(int pid, int signum, \
334 1.67 njoly linux_siginfo_t *uinfo); }
335 1.65 pooka 179 STD { int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
336 1.1 itohy size_t sigsetsize); }
337 1.65 pooka 180 STD { int|linux_sys||pread(int fd, char *buf, \
338 1.83 njoly size_t nbyte, off_t offset); }
339 1.65 pooka 181 STD { int|linux_sys||pwrite(int fd, char *buf, \
340 1.83 njoly size_t nbyte, off_t offset); }
341 1.1 itohy ;182 chown on i386; lchown on m68k.
342 1.65 pooka 182 STD { int|linux_sys||lchown16(const char *path, \
343 1.59 njoly linux_uid16_t uid, linux_gid16_t gid); }
344 1.65 pooka 183 NOARGS { int|sys||__getcwd(char *bufp, size_t length); }
345 1.1 itohy 184 UNIMPL capget
346 1.1 itohy 185 UNIMPL capset
347 1.65 pooka 186 STD { int|linux_sys||sigaltstack( \
348 1.15 itohy const struct linux_sigaltstack *ss, \
349 1.15 itohy struct linux_sigaltstack *oss); }
350 1.7 thorpej 187 UNIMPL sendfile
351 1.7 thorpej 188 UNIMPL getpmsg
352 1.7 thorpej 189 UNIMPL putpmsg
353 1.65 pooka 190 NOARGS { int|sys|14|vfork(void); }
354 1.65 pooka 191 STD { int|linux_sys||ugetrlimit(int which, \
355 1.36 christos struct orlimit *rlp); }
356 1.56 dsl #define linux_sys_mmap2_args linux_sys_mmap_args
357 1.65 pooka 192 NOARGS { linux_off_t|linux_sys||mmap2(unsigned long addr, \
358 1.41 christos size_t len, int prot, int flags, int fd, \
359 1.41 christos linux_off_t offset); }
360 1.65 pooka 193 STD { int|linux_sys||truncate64(const char *path, \
361 1.35 christos off_t length); }
362 1.65 pooka 194 STD { int|linux_sys||ftruncate64(unsigned int fd, \
363 1.43 jdolecek off_t length); }
364 1.65 pooka 195 STD { int|linux_sys||stat64(const char *path, \
365 1.35 christos struct linux_stat64 *sp); }
366 1.65 pooka 196 STD { int|linux_sys||lstat64(const char *path, \
367 1.35 christos struct linux_stat64 *sp); }
368 1.65 pooka 197 STD { int|linux_sys||fstat64(int fd, \
369 1.35 christos struct linux_stat64 *sp); }
370 1.65 pooka 198 NOARGS { int|sys||__posix_chown(const char *path, uid_t uid, \
371 1.35 christos gid_t gid); }
372 1.65 pooka 199 NOARGS { uid_t|sys||getuid(void); }
373 1.65 pooka 200 NOARGS { gid_t|sys||getgid(void); }
374 1.65 pooka 201 NOARGS { uid_t|sys||geteuid(void); }
375 1.65 pooka 202 NOARGS { gid_t|sys||getegid(void); }
376 1.65 pooka 203 NOARGS { int|sys||setreuid(uid_t ruid, uid_t euid); }
377 1.65 pooka 204 NOARGS { int|sys||setregid(gid_t rgid, gid_t egid); }
378 1.86 njoly 205 NOARGS { int|sys||getgroups(int gidsetsize, gid_t *gidset); }
379 1.86 njoly 206 NOARGS { int|sys||setgroups(int gidsetsize, gid_t *gidset); }
380 1.65 pooka 207 NOARGS { int|sys||__posix_fchown(int fd, uid_t uid, \
381 1.35 christos gid_t gid); }
382 1.65 pooka 208 STD { int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
383 1.27 fvdl uid_t suid); }
384 1.65 pooka 209 STD { int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
385 1.27 fvdl uid_t *suid); }
386 1.65 pooka 210 STD { int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
387 1.27 fvdl gid_t sgid); }
388 1.65 pooka 211 STD { int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
389 1.27 fvdl gid_t *sgid); }
390 1.65 pooka 212 NOARGS { int|sys||__posix_lchown(const char *path, uid_t uid, \
391 1.35 christos gid_t gid); }
392 1.65 pooka 213 NOARGS { int|sys||setuid(uid_t uid); }
393 1.65 pooka 214 NOARGS { int|sys||setgid(gid_t gid); }
394 1.65 pooka 215 STD { int|linux_sys||setfsuid(uid_t uid); }
395 1.65 pooka 216 STD { int|linux_sys||setfsgid(gid_t gid); }
396 1.39 jdolecek 217 UNIMPL /* unused */
397 1.39 jdolecek 218 UNIMPL /* unused */
398 1.39 jdolecek 219 UNIMPL /* unused */
399 1.65 pooka 220 STD { int|linux_sys||getdents64(int fd, \
400 1.38 christos struct linux_dirent64 *dent, unsigned int count); }
401 1.69 chs 221 NOARGS { pid_t|linux_sys||gettid(void); }
402 1.69 chs 222 STD { int|linux_sys||tkill(int tid, int sig); }
403 1.65 pooka 223 STD { int|linux_sys||setxattr(char *path, char *name, \
404 1.45 fvdl void *value, size_t size, int flags); }
405 1.65 pooka 224 STD { int|linux_sys||lsetxattr(char *path, char *name, \
406 1.45 fvdl void *value, size_t size, int flags); }
407 1.65 pooka 225 STD { int|linux_sys||fsetxattr(int fd, char *name, \
408 1.45 fvdl void *value, size_t size, int flags); }
409 1.65 pooka 226 STD { ssize_t|linux_sys||getxattr(char *path, char *name, \
410 1.45 fvdl void *value, size_t size); }
411 1.65 pooka 227 STD { ssize_t|linux_sys||lgetxattr(char *path, char *name, \
412 1.45 fvdl void *value, size_t size); }
413 1.65 pooka 228 STD { ssize_t|linux_sys||fgetxattr(int fd, char *name, \
414 1.45 fvdl void *value, size_t size); }
415 1.65 pooka 229 STD { ssize_t|linux_sys||listxattr(char *path, char *list, \
416 1.45 fvdl size_t size); }
417 1.65 pooka 230 STD { ssize_t|linux_sys||llistxattr(char *path, char *list, \
418 1.45 fvdl size_t size); }
419 1.65 pooka 231 STD { ssize_t|linux_sys||flistxattr(int fd, char *list, \
420 1.45 fvdl size_t size); }
421 1.65 pooka 232 STD { int|linux_sys||removexattr(char *path, char *name); }
422 1.65 pooka 233 STD { int|linux_sys||lremovexattr(char *path, char *name); }
423 1.65 pooka 234 STD { int|linux_sys||fremovexattr(int fd, char *name); }
424 1.69 chs 235 STD { int|linux_sys||futex(int *uaddr, int op, int val, \
425 1.69 chs const struct linux_timespec *timeout, int *uaddr2, \
426 1.69 chs int val3); }
427 1.46 jmc 236 UNIMPL sendfile64
428 1.81 njoly 237 NOARGS { int|sys||mincore(void *addr, size_t len, char *vec); }
429 1.81 njoly 238 NOARGS { int|sys||madvise(void *addr, size_t len, int behav); }
430 1.80 njoly 239 STD { int|linux_sys||fcntl64(int fd, int cmd, void *arg); }
431 1.103 christos 240 STD { ssize_t|linux_sys||readahead(int fd, off_t offset, \
432 1.103 christos size_t count); }
433 1.46 jmc 241 UNIMPL io_setup
434 1.46 jmc 242 UNIMPL io_destroy
435 1.46 jmc 243 UNIMPL io_getevents
436 1.46 jmc 244 UNIMPL io_submit
437 1.46 jmc 245 UNIMPL io_cancel
438 1.85 njoly 246 STD { int|linux_sys||fadvise64(int fd, off_t offset, \
439 1.85 njoly size_t len, int advice); }
440 1.46 jmc 247 UNIMPL exit_group
441 1.46 jmc 248 UNIMPL lookup_dcookie
442 1.102 christos 249 STD { int|linux_sys||epoll_create(int size); }
443 1.102 christos 250 STD { int|linux_sys||epoll_ctl(int epfd, int op, int fd, \
444 1.102 christos struct linux_epoll_event *event); }
445 1.102 christos 251 STD { int|linux_sys||epoll_wait(int epfd, \
446 1.102 christos struct linux_epoll_event *events, int maxevents, \
447 1.102 christos int timeout); }
448 1.46 jmc 252 UNIMPL remap_file_pages
449 1.69 chs 253 STD { int|linux_sys||set_tid_address(int *tid); }
450 1.96 thorpej 254 STD { int|linux_sys||timer_create(clockid_t clockid, \
451 1.96 thorpej struct linux_sigevent *evp, timer_t *timerid); }
452 1.96 thorpej 255 STD { int|linux_sys||timer_settime(timer_t timerid, \
453 1.96 thorpej int flags, const struct linux_itimerspec *tim, \
454 1.96 thorpej struct linux_itimerspec *otim); }
455 1.96 thorpej 256 STD { int|linux_sys||timer_gettime(timer_t timerid, \
456 1.96 thorpej struct linux_itimerspec *tim); }
457 1.96 thorpej 257 NOARGS { int|sys||timer_getoverrun(timer_t timerid); }
458 1.96 thorpej 258 NOARGS { int|sys||timer_delete(timer_t timerid); }
459 1.65 pooka 259 STD { int|linux_sys||clock_settime(clockid_t which, \
460 1.46 jmc struct linux_timespec *tp); }
461 1.65 pooka 260 STD { int|linux_sys||clock_gettime(clockid_t which, \
462 1.46 jmc struct linux_timespec *tp); }
463 1.65 pooka 261 STD { int|linux_sys||clock_getres(clockid_t which, \
464 1.46 jmc struct linux_timespec *tp); }
465 1.65 pooka 262 STD { int|linux_sys||clock_nanosleep(clockid_t which, \
466 1.46 jmc int flags, struct linux_timespec *rqtp, \
467 1.46 jmc struct linux_timespec *rmtp); }
468 1.69 chs 263 STD { int|linux_sys||statfs64(const char *path, \
469 1.69 chs size_t sz, struct linux_statfs64 *sp); }
470 1.69 chs 264 STD { int|linux_sys||fstatfs64(int fd, \
471 1.69 chs size_t sz, struct linux_statfs64 *sp); }
472 1.69 chs 265 STD { int|linux_sys||tgkill(int tgid, int tid, int sig); }
473 1.87 njoly 266 NOARGS { int|compat_50_sys||utimes(const char *path, \
474 1.87 njoly const struct timeval50 *tptr); }
475 1.85 njoly 267 STD { int|linux_sys||fadvise64_64(int fd, off_t offset, \
476 1.85 njoly off_t len, int advice); }
477 1.69 chs 268 UNIMPL mbind
478 1.69 chs 269 UNIMPL get_mempolicy
479 1.69 chs 270 UNIMPL set_mempolicy
480 1.69 chs 271 UNIMPL mq_open
481 1.69 chs 272 UNIMPL mq_unlink
482 1.69 chs 273 UNIMPL mq_timedsend
483 1.69 chs 274 UNIMPL mq_timedreceive
484 1.69 chs 275 UNIMPL mq_notify
485 1.69 chs 276 UNIMPL mq_getsetattr
486 1.69 chs 277 UNIMPL waitid
487 1.69 chs 278 UNIMPL vserver
488 1.69 chs 279 UNIMPL add_key
489 1.69 chs 280 UNIMPL request_key
490 1.69 chs 281 UNIMPL keyctl
491 1.69 chs 282 UNIMPL ioprio_set
492 1.69 chs 283 UNIMPL ioprio_get
493 1.69 chs 284 UNIMPL inotify_init
494 1.69 chs 285 UNIMPL inotify_add_watch
495 1.69 chs 286 UNIMPL inotify_rm_watch
496 1.69 chs 287 UNIMPL migrate_pages
497 1.78 chs 288 STD { int|linux_sys||openat(int fd, const char *path, \
498 1.78 chs int flags, ... linux_umode_t mode); }
499 1.78 chs 289 NOARGS { int|sys||mkdirat(int fd, const char *path, \
500 1.78 chs linux_umode_t mode); }
501 1.78 chs 290 STD { int|linux_sys||mknodat(int fd, const char *path, \
502 1.78 chs linux_umode_t mode, unsigned dev); }
503 1.78 chs 291 STD { int|linux_sys||fchownat(int fd, const char *path, \
504 1.78 chs uid_t owner, gid_t group, int flag); }
505 1.69 chs 292 UNIMPL futimesat
506 1.78 chs 293 STD { int|linux_sys||fstatat64(int fd, const char *path, \
507 1.78 chs struct linux_stat64 *sp, int flag); }
508 1.78 chs 294 STD { int|linux_sys||unlinkat(int fd, const char *path, \
509 1.78 chs int flag); }
510 1.78 chs 295 NOARGS { int|sys||renameat(int fromfd, const char *from, \
511 1.78 chs int tofd, const char *to); }
512 1.78 chs 296 STD { int|linux_sys||linkat(int fd1, const char *name1, \
513 1.78 chs int fd2, const char *name2, int flags); }
514 1.78 chs 297 NOARGS { int|sys||symlinkat(const char *path1, int fd, \
515 1.78 chs const char *path2); }
516 1.90 njoly 298 NOARGS { ssize_t|sys||readlinkat(int fd, const char *path, \
517 1.78 chs char *buf, size_t bufsize); }
518 1.78 chs 299 STD { int|linux_sys||fchmodat(int fd, const char *path, \
519 1.78 chs linux_umode_t mode); }
520 1.78 chs 300 STD { int|linux_sys||faccessat(int fd, const char *path, \
521 1.78 chs int amode); }
522 1.91 manu 301 STD { int|linux_sys||pselect6(int nfds, fd_set *readfds, \
523 1.91 manu fd_set *writefds, fd_set *exceptfds, \
524 1.91 manu struct linux_timespec *timeout, \
525 1.91 manu linux_sized_sigset_t *ss); }
526 1.89 njoly 302 STD { int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
527 1.74 pooka struct linux_timespec *timeout, \
528 1.74 pooka linux_sigset_t *sigset); }
529 1.69 chs 303 UNIMPL unshare
530 1.95 thorpej ;
531 1.95 thorpej ; The NetBSD native robust list calls have different
532 1.95 thorpej ; argument names / types, but they are ABI-compatible
533 1.95 thorpej ; with Linux.
534 1.95 thorpej ;
535 1.95 thorpej 304 NOARGS { int|sys||__futex_set_robust_list(void *head, \
536 1.95 thorpej size_t len); }
537 1.95 thorpej 305 NOARGS { int|sys||__futex_get_robust_list(lwpid_t lwpid, \
538 1.95 thorpej void **headp, size_t *lenp); }
539 1.69 chs 306 UNIMPL splice
540 1.69 chs 307 UNIMPL sync_file_range
541 1.69 chs 308 UNIMPL tee
542 1.69 chs 309 UNIMPL vmsplice
543 1.69 chs 310 UNIMPL move_pages
544 1.69 chs 311 STD { int|linux_sys||sched_setaffinity(pid_t pid, \
545 1.69 chs unsigned int len, unsigned long *mask); }
546 1.69 chs 312 STD { int|linux_sys||sched_getaffinity(pid_t pid, \
547 1.69 chs unsigned int len, unsigned long *mask); }
548 1.69 chs 313 UNIMPL kexec_load
549 1.69 chs 314 UNIMPL getcpu
550 1.102 christos 315 STD { int|linux_sys||epoll_pwait(int epfd, \
551 1.102 christos struct linux_epoll_event *events, int maxevents, \
552 1.102 christos int timeout, const linux_sigset_t *sigmask); }
553 1.76 njoly 316 STD { int|linux_sys||utimensat(int fd, const char *path, \
554 1.76 njoly struct linux_timespec *times, int flag); }
555 1.69 chs 317 UNIMPL signalfd
556 1.97 thorpej 318 STD { int|linux_sys||timerfd_create(clockid_t clock_id, \
557 1.97 thorpej int flags); }
558 1.98 thorpej 319 STD { int|linux_sys||eventfd(unsigned int initval); }
559 1.94 jdolecek 320 STD { int|linux_sys||fallocate(int fd, int mode, \
560 1.94 jdolecek off_t offset, off_t len); }
561 1.97 thorpej 321 STD { int|linux_sys||timerfd_settime(int fd, int flags, \
562 1.97 thorpej const struct linux_itimerspec *tim, \
563 1.97 thorpej struct linux_itimerspec *otim); }
564 1.97 thorpej 322 STD { int|linux_sys||timerfd_gettime(int fd, \
565 1.97 thorpej struct linux_itimerspec *tim); }
566 1.69 chs 323 UNIMPL signalfd4
567 1.98 thorpej 324 STD { int|linux_sys||eventfd2(unsigned int initval, \
568 1.98 thorpej int flags); }
569 1.102 christos 325 STD { int|linux_sys||epoll_create1(int flags); }
570 1.70 he 326 STD { int|linux_sys||dup3(int from, int to, int flags); }
571 1.70 he 327 STD { int|linux_sys||pipe2(int *pfds, int flags); }
572 1.69 chs 328 UNIMPL inotify_init1
573 1.99 thorpej 329 STD { int|linux_sys||preadv(int fd, \
574 1.99 thorpej const struct iovec *iovp, int iovcnt, \
575 1.99 thorpej unsigned long off_lo, unsigned long off_hi); }
576 1.99 thorpej 330 STD { int|linux_sys||pwritev(int fd, \
577 1.99 thorpej const struct iovcnt *iovp, int iovcnt, \
578 1.99 thorpej unsigned long off_lo, unsigned long off_hi); }
579 1.69 chs 331 UNIMPL rt_tgsigqueueinfo
580 1.69 chs 332 UNIMPL perf_counter_open
581 1.69 chs 333 UNIMPL set_thread_area
582 1.69 chs 334 UNIMPL get_thread_area
583 1.69 chs 335 UNIMPL atomic_cmpxchg_32
584 1.69 chs 336 UNIMPL atomic_barrier
585 1.93 christos 337 UNIMPL fanotify_init
586 1.93 christos 338 UNIMPL fanotify_mark
587 1.101 ryo 339 STD { int|linux_sys||prlimit64(pid_t pid, int which, \
588 1.101 ryo struct rlimit *new_rlp, struct rlimit *old_rlp); }
589 1.93 christos 340 UNIMPL name_to_handle_at
590 1.93 christos 341 UNIMPL open_by_handle_at
591 1.93 christos 342 UNIMPL clock_adjtime
592 1.93 christos 343 UNIMPL syncfs
593 1.93 christos 344 UNIMPL setns
594 1.93 christos 345 UNIMPL process_vm_readv
595 1.93 christos 346 UNIMPL process_vm_writev
596 1.93 christos 347 UNIMPL kcmp
597 1.93 christos 348 UNIMPL finit_module
598 1.93 christos 349 UNIMPL sched_setattr
599 1.93 christos 350 UNIMPL sched_getattr
600 1.93 christos 351 UNIMPL renameat2
601 1.100 ryo 352 NOARGS { ssize_t|sys||getrandom(void *buf, size_t buflen, \
602 1.100 ryo unsigned int flags); }
603 1.93 christos 353 UNIMPL memfd_create
604 1.93 christos 354 UNIMPL bpf
605 1.93 christos 355 UNIMPL execveat
606 1.93 christos 356 UNIMPL socket
607 1.93 christos 357 UNIMPL socketpair
608 1.93 christos 358 UNIMPL bind
609 1.93 christos 359 UNIMPL connect
610 1.93 christos 360 UNIMPL listen
611 1.92 martin 361 STD { int|linux_sys||accept4(int s, \
612 1.92 martin struct osockaddr *name, \
613 1.92 martin int *anamelen, int flags); }
614 1.93 christos 362 UNIMPL getsockopt
615 1.93 christos 363 UNIMPL setsockopt
616 1.93 christos 364 UNIMPL getsockname
617 1.93 christos 365 UNIMPL getpeername
618 1.93 christos 366 UNIMPL sendto
619 1.93 christos 367 UNIMPL sendmsg
620 1.93 christos 368 UNIMPL recvfrom
621 1.93 christos 369 UNIMPL recvmsg
622 1.93 christos 370 UNIMPL shutdown
623 1.93 christos 371 STD { int|linux_sys||recvmmsg(int s, \
624 1.93 christos struct linux_mmsghdr *msgvec, unsigned int vlen, \
625 1.93 christos unsigned int flags, struct timespec *timeout); }
626 1.93 christos 372 STD { int|linux_sys||sendmmsg(int s, \
627 1.93 christos struct linux_mmsghdr *msgvec, unsigned int vlen, \
628 1.93 christos unsigned int flags); }
629 1.93 christos 373 UNIMPL userfaultfd
630 1.93 christos 374 UNIMPL membarrier
631 1.93 christos 375 UNIMPL mlock2
632 1.93 christos 376 UNIMPL copy_file_range
633 1.93 christos 377 UNIMPL preadv2
634 1.93 christos 378 UNIMPL pwritev2
635 1.103 christos 379 STD { int|linux_sys||statx(int fd, const char *path, \
636 1.103 christos int flag, unsigned int mask, \
637 1.103 christos struct linux_statx *sp); }
638 1.102 christos 380 UNIMPL
639 1.102 christos 381 UNIMPL
640 1.102 christos 382 UNIMPL
641 1.102 christos 383 UNIMPL
642 1.102 christos 384 UNIMPL
643 1.102 christos 385 UNIMPL
644 1.102 christos 386 UNIMPL
645 1.102 christos 387 UNIMPL
646 1.102 christos 388 UNIMPL
647 1.102 christos 389 UNIMPL
648 1.102 christos 390 UNIMPL
649 1.102 christos 391 UNIMPL
650 1.102 christos 392 UNIMPL
651 1.102 christos 393 UNIMPL
652 1.102 christos 394 UNIMPL
653 1.102 christos 395 UNIMPL
654 1.102 christos 396 UNIMPL
655 1.102 christos 397 UNIMPL
656 1.102 christos 398 UNIMPL
657 1.102 christos 399 UNIMPL
658 1.102 christos 400 UNIMPL
659 1.102 christos 401 UNIMPL
660 1.102 christos 402 UNIMPL
661 1.102 christos 403 UNIMPL
662 1.102 christos 404 UNIMPL
663 1.102 christos 405 UNIMPL
664 1.102 christos 406 UNIMPL
665 1.102 christos 407 UNIMPL
666 1.102 christos 408 UNIMPL
667 1.102 christos 409 UNIMPL
668 1.102 christos 410 UNIMPL
669 1.102 christos 411 UNIMPL
670 1.102 christos 412 UNIMPL
671 1.102 christos 413 UNIMPL
672 1.102 christos 414 UNIMPL
673 1.102 christos 415 UNIMPL
674 1.102 christos 416 UNIMPL
675 1.102 christos 417 UNIMPL
676 1.102 christos 418 UNIMPL
677 1.102 christos 419 UNIMPL
678 1.102 christos 420 UNIMPL
679 1.102 christos 421 UNIMPL
680 1.102 christos 422 UNIMPL
681 1.102 christos 423 UNIMPL
682 1.102 christos 424 UNIMPL
683 1.102 christos 425 UNIMPL
684 1.102 christos 426 UNIMPL
685 1.102 christos 427 UNIMPL
686 1.102 christos 428 UNIMPL
687 1.102 christos 429 UNIMPL
688 1.102 christos 430 UNIMPL
689 1.102 christos 431 UNIMPL
690 1.102 christos 432 UNIMPL
691 1.102 christos 433 UNIMPL
692 1.102 christos 434 UNIMPL
693 1.102 christos 435 UNIMPL
694 1.103 christos 436 STD { int|linux_sys||close_range(unsigned int first, \
695 1.103 christos unsigned int last, unsigned int flags); }
696 1.102 christos 437 UNIMPL
697 1.102 christos 438 UNIMPL
698 1.102 christos 439 UNIMPL
699 1.102 christos 440 UNIMPL
700 1.102 christos 441 STD { int|linux_sys||epoll_pwait2(int epfd, \
701 1.102 christos struct linux_epoll_event *events, int maxevents, \
702 1.102 christos const struct linux_timespec *timeout, \
703 1.102 christos const linux_sigset_t *sigmask); }
704