syscalls.master revision 1.67 1 1.67 ryo $NetBSD: syscalls.master,v 1.67 2021/12/02 04:29:48 ryo Exp $
2 1.1 manu
3 1.1 manu ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
4 1.1 manu
5 1.1 manu ; NetBSD amd64 COMPAT_LINUX system call name/number "master" file.
6 1.1 manu ; (See syscalls.conf to see what it is processed into.)
7 1.1 manu ;
8 1.1 manu ; Fields: number type [type-dependent ...]
9 1.1 manu ; number system call number, must be in order
10 1.1 manu ; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
11 1.1 manu ; the compatibility options defined in syscalls.conf.
12 1.1 manu ;
13 1.1 manu ; types:
14 1.1 manu ; STD always included
15 1.1 manu ; OBSOL obsolete, not included in system
16 1.1 manu ; UNIMPL unimplemented, not included in system
17 1.1 manu ; NODEF included, but don't define the syscall number
18 1.1 manu ; NOARGS included, but don't define the syscall args structure
19 1.1 manu ; INDIR included, but don't define the syscall args structure
20 1.1 manu ; and allow it to be "really" varargs.
21 1.1 manu ;
22 1.1 manu ; The compat options are defined in the syscalls.conf file, and the
23 1.1 manu ; compat option name is prefixed to the syscall name. Other than
24 1.1 manu ; that, they're like NODEF (for 'compat' options), or STD (for
25 1.1 manu ; 'libcompat' options).
26 1.1 manu ;
27 1.1 manu ; The type-dependent arguments are as follows:
28 1.1 manu ; For STD, NODEF, NOARGS, and compat syscalls:
29 1.1 manu ; { pseudo-proto } [alias]
30 1.1 manu ; For other syscalls:
31 1.1 manu ; [comment]
32 1.1 manu ;
33 1.1 manu ; #ifdef's, etc. may be included, and are copied to the output files.
34 1.1 manu ; #include's are copied to the syscall names and switch definition files only.
35 1.1 manu
36 1.1 manu #if defined(_KERNEL_OPT)
37 1.10 manu #include "opt_sysv.h"
38 1.1 manu #include "opt_compat_43.h"
39 1.27 christos #include "opt_compat_netbsd.h"
40 1.1 manu #endif
41 1.1 manu
42 1.27 christos
43 1.1 manu #include <sys/param.h>
44 1.1 manu #include <sys/poll.h>
45 1.1 manu #include <sys/systm.h>
46 1.1 manu #include <sys/signal.h>
47 1.1 manu #include <sys/mount.h>
48 1.1 manu #include <sys/syscallargs.h>
49 1.27 christos #include <sys/time.h>
50 1.27 christos
51 1.27 christos #include <compat/sys/time.h>
52 1.1 manu
53 1.1 manu #include <compat/linux/common/linux_types.h>
54 1.1 manu #include <compat/linux/common/linux_mmap.h>
55 1.10 manu #include <compat/linux/common/linux_ipc.h>
56 1.20 dsl #include <compat/linux/common/linux_msg.h>
57 1.10 manu #include <compat/linux/common/linux_sem.h>
58 1.20 dsl #include <compat/linux/common/linux_shm.h>
59 1.1 manu #include <compat/linux/common/linux_signal.h>
60 1.1 manu #include <compat/linux/common/linux_siginfo.h>
61 1.1 manu #include <compat/linux/common/linux_machdep.h>
62 1.1 manu
63 1.1 manu #include <compat/linux/linux_syscallargs.h>
64 1.1 manu
65 1.1 manu %%
66 1.1 manu
67 1.47 njoly 0 NOARGS { ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
68 1.47 njoly 1 NOARGS { ssize_t|sys||write(int fd, const void *buf, \
69 1.55 njoly size_t nbyte); }
70 1.28 pooka 2 STD { int|linux_sys||open(const char *path, int flags, \
71 1.45 chs linux_umode_t mode); }
72 1.28 pooka 3 NOARGS { int|sys||close(int fd); }
73 1.28 pooka 4 STD { int|linux_sys||stat64(const char *path, \
74 1.33 njoly struct linux_stat64 *sp); }
75 1.28 pooka 5 STD { int|linux_sys||fstat64(int fd, \
76 1.33 njoly struct linux_stat64 *sp); }
77 1.28 pooka 6 STD { int|linux_sys||lstat64(const char *path, \
78 1.33 njoly struct linux_stat64 *sp); }
79 1.28 pooka 7 NOARGS { int|sys||poll(struct pollfd *fds, u_int nfds, \
80 1.1 manu int timeout); }
81 1.28 pooka 8 NOARGS { long|compat_43_sys||lseek(int fd, long offset, \
82 1.1 manu int whence); }
83 1.28 pooka 9 NOARGS { linux_off_t|linux_sys||mmap(unsigned long addr, \
84 1.1 manu size_t len, int prot, int flags, int fd, \
85 1.1 manu linux_off_t offset); }
86 1.28 pooka 10 STD { int|linux_sys||mprotect(const void *start, \
87 1.1 manu unsigned long len, int prot); }
88 1.52 njoly 11 NOARGS { int|sys||munmap(void *addr, size_t len); }
89 1.28 pooka 12 STD { int|linux_sys||brk(char *nsize); }
90 1.28 pooka 13 STD { int|linux_sys||rt_sigaction(int signum, \
91 1.1 manu const struct linux_sigaction *nsa, \
92 1.1 manu struct linux_sigaction *osa, \
93 1.1 manu size_t sigsetsize); }
94 1.28 pooka 14 STD { int|linux_sys||rt_sigprocmask(int how, \
95 1.1 manu const linux_sigset_t *set, \
96 1.1 manu linux_sigset_t *oset, \
97 1.1 manu size_t sigsetsize); }
98 1.28 pooka 15 NOARGS { int|linux_sys||rt_sigreturn(void); }
99 1.28 pooka 16 STD { int|linux_sys||ioctl(int fd, u_long com, \
100 1.17 christos void *data); }
101 1.28 pooka 17 STD { int|linux_sys||pread(int fd, char *buf, \
102 1.48 njoly size_t nbyte, off_t offset); }
103 1.28 pooka 18 STD { int|linux_sys||pwrite(int fd, char *buf, \
104 1.48 njoly size_t nbyte, off_t offset); }
105 1.47 njoly 19 NOARGS { ssize_t|sys||readv(int fd, \
106 1.47 njoly const struct iovec *iovp, int iovcnt); }
107 1.47 njoly 20 NOARGS { ssize_t|sys||writev(int fd, \
108 1.47 njoly const struct iovec *iovp, int iovcnt); }
109 1.28 pooka 21 NOARGS { int|sys||access(const char *path, int flags); }
110 1.28 pooka 22 STD { int|linux_sys||pipe(int *pfds); }
111 1.28 pooka 23 STD { int|linux_sys||select(int nfds, fd_set *readfds, \
112 1.1 manu fd_set *writefds, fd_set *exceptfds, \
113 1.29 njoly struct timeval50 *timeout); }
114 1.28 pooka 24 STD { int|linux_sys||sched_yield(void); }
115 1.28 pooka 25 STD { void *|linux_sys||mremap(void *old_address, \
116 1.1 manu size_t old_size, size_t new_size, u_long flags); }
117 1.28 pooka 26 NOARGS { int|sys|13|msync(void *addr, size_t len, int flags); }
118 1.28 pooka 27 NOARGS { int|sys||mincore(void *addr, size_t len, char *vec); }
119 1.28 pooka 28 NOARGS { int|sys||madvise(void *addr, size_t len, int behav); }
120 1.10 manu #ifdef SYSVSHM
121 1.28 pooka 29 NOARGS { int|linux_sys||shmget(key_t key, size_t size, \
122 1.13 manu int shmflg); }
123 1.28 pooka 30 NOARGS { int|sys||shmat(int shmid, void *shmaddr, int shmflg); }
124 1.28 pooka 31 NOARGS { int|linux_sys||shmctl(int shmid, int cmd, \
125 1.10 manu struct linux_shmid_ds *buf); }
126 1.10 manu #else
127 1.1 manu 29 UNIMPL shmget
128 1.1 manu 30 UNIMPL shmat
129 1.1 manu 31 UNIMPL shmctl
130 1.10 manu #endif
131 1.44 njoly 32 NOARGS { int|sys||dup(int fd); }
132 1.44 njoly 33 NOARGS { int|sys||dup2(int from, int to); }
133 1.28 pooka 34 STD { int|linux_sys||pause(void); }
134 1.28 pooka 35 STD { int|linux_sys||nanosleep( \
135 1.25 njoly const struct linux_timespec *rqtp, \
136 1.25 njoly struct linux_timespec *rmtp); }
137 1.38 christos 36 NOARGS { int|compat_50_sys||getitimer(int which, \
138 1.27 christos struct itimerval50 *itv); }
139 1.28 pooka 37 STD { int|linux_sys||alarm(unsigned int secs); }
140 1.38 christos 38 NOARGS { int|compat_50_sys||setitimer(int which, \
141 1.27 christos struct itimerval50 *itv, \
142 1.27 christos struct itimerval50 *oitv); }
143 1.35 chs 39 STD { pid_t|sys||getpid(void); }
144 1.1 manu 40 UNIMPL sendfile
145 1.28 pooka 41 STD { int|linux_sys||socket(int domain, \
146 1.1 manu int type, int protocol); }
147 1.28 pooka 42 STD { int|linux_sys||connect(int s, \
148 1.1 manu const struct osockaddr *name, \
149 1.1 manu unsigned int namelen); }
150 1.28 pooka 43 STD { int|linux_sys||accept(int s, struct osockaddr *name, \
151 1.1 manu int *anamelen); } oaccept
152 1.28 pooka 44 STD { ssize_t|linux_sys||sendto(int s, void *msg, int len, \
153 1.1 manu int flags, struct osockaddr *to, int tolen); }
154 1.28 pooka 45 STD { ssize_t|linux_sys||recvfrom(int s, void *buf, \
155 1.1 manu size_t len, int flags, struct osockaddr *from, \
156 1.1 manu unsigned int *fromlenaddr); }
157 1.28 pooka 46 STD { int|linux_sys||sendmsg(int s, \
158 1.32 njoly const struct linux_msghdr *msg, int flags); }
159 1.28 pooka 47 STD { ssize_t|linux_sys||recvmsg(int s, \
160 1.32 njoly struct linux_msghdr *msg, int flags); }
161 1.28 pooka 48 NOARGS { int|sys||shutdown(int s, int how); }
162 1.28 pooka 49 STD { int|linux_sys||bind(int s, \
163 1.1 manu const struct osockaddr *name, \
164 1.1 manu unsigned int namelen); }
165 1.28 pooka 50 NOARGS { int|sys||listen(int s, int backlog); }
166 1.28 pooka 51 STD { int|linux_sys||getsockname(int fdec, void *asa, \
167 1.1 manu int *alen); }
168 1.28 pooka 52 STD { int|linux_sys||getpeername(int fdes, \
169 1.1 manu struct sockaddr *asa, unsigned int *alen); }
170 1.28 pooka 53 STD { int|linux_sys||socketpair(int domain, int type, \
171 1.1 manu int protocol, int *rsv); }
172 1.28 pooka 54 STD { int|linux_sys||setsockopt(int s, int level, \
173 1.1 manu int optname, void *optval, int optlen); }
174 1.28 pooka 55 STD { int|linux_sys||getsockopt(int s, int level, \
175 1.1 manu int optname, void *optval, int *optlen); }
176 1.28 pooka 56 STD { int|linux_sys||clone(int flags, void *stack, \
177 1.35 chs void *parent_tidptr, void *child_tidptr, void *tls); }
178 1.39 christos 57 NOARGS { int|sys||fork(void); }
179 1.28 pooka 58 NOARGS { int|sys|14|vfork(void); }
180 1.28 pooka 59 NOARGS { int|sys||execve(const char *path, char **argp, \
181 1.1 manu char **envp); }
182 1.35 chs 60 STD { int|linux_sys||exit(int rval); }
183 1.28 pooka 61 STD { int|linux_sys||wait4(int pid, int *status, \
184 1.30 njoly int options, struct rusage50 *rusage); }
185 1.28 pooka 62 STD { int|linux_sys||kill(int pid, int signum); }
186 1.28 pooka 63 STD { int|linux_sys||uname(struct linux_utsname *up); }
187 1.10 manu #ifdef SYSVSEM
188 1.28 pooka 64 NOARGS { int|sys||semget(key_t key, int nsems, int semflg); }
189 1.28 pooka 65 NOARGS { int|sys||semop(int semid, struct sembuf *sops, \
190 1.10 manu size_t nsops); }
191 1.28 pooka 66 STD { int|linux_sys||semctl(int semid, int semnum, \
192 1.10 manu int cmd, union linux_semun arg); }
193 1.10 manu #else
194 1.1 manu 64 UNIMPL semget
195 1.1 manu 65 UNIMPL semop
196 1.1 manu 66 UNIMPL semctl
197 1.10 manu #endif
198 1.10 manu #ifdef SYSVSHM
199 1.28 pooka 67 NOARGS { int|sys||shmdt(const void *shmaddr); }
200 1.10 manu #else
201 1.1 manu 67 UNIMPL shmdt
202 1.10 manu #endif
203 1.10 manu #ifdef SYSVMSG
204 1.28 pooka 68 NOARGS { int|sys||msgget(key_t key, int msgflg); }
205 1.28 pooka 69 NOARGS { int|sys||msgsnd(int msqid, void *msgp, size_t msgsz, \
206 1.10 manu int msgflg); }
207 1.28 pooka 70 NOARGS { ssize_t|sys||msgrcv(int msqid, void *msgp, \
208 1.10 manu size_t msgsz, long msgtyp, int msgflg); }
209 1.28 pooka 71 NOARGS { int|linux_sys||msgctl(int msqid, int cmd, \
210 1.10 manu struct linux_msqid_ds *buf); }
211 1.10 manu #else
212 1.1 manu 68 UNIMPL msgget
213 1.1 manu 69 UNIMPL msgsnd
214 1.1 manu 70 UNIMPL msgrcv
215 1.1 manu 71 UNIMPL msgctl
216 1.10 manu #endif
217 1.28 pooka 72 STD { int|linux_sys||fcntl(int fd, int cmd, void *arg); }
218 1.28 pooka 73 NOARGS { int|sys||flock(int fd, int how); }
219 1.28 pooka 74 NOARGS { int|sys||fsync(int fd); }
220 1.28 pooka 75 STD { int|linux_sys||fdatasync(int fd); }
221 1.28 pooka 76 STD { int|linux_sys||truncate64(const char *path, \
222 1.1 manu off_t length); }
223 1.28 pooka 77 STD { int|linux_sys||ftruncate64(unsigned int fd, \
224 1.1 manu off_t length); }
225 1.28 pooka 78 STD { int|linux_sys||getdents(int fd, \
226 1.1 manu struct linux_dirent *dent, unsigned int count); }
227 1.28 pooka 79 NOARGS { int|sys||__getcwd(char *bufp, size_t length); }
228 1.28 pooka 80 NOARGS { int|sys||chdir(const char *path); }
229 1.28 pooka 81 NOARGS { int|sys||fchdir(int fd); }
230 1.28 pooka 82 NOARGS { int|sys||__posix_rename(const char *from, \
231 1.1 manu const char *to); }
232 1.45 chs 83 NOARGS { int|sys||mkdir(const char *path, linux_umode_t mode); }
233 1.28 pooka 84 NOARGS { int|sys||rmdir(const char *path); }
234 1.46 njoly 85 STD { int|linux_sys||creat(const char *path, linux_umode_t mode); }
235 1.28 pooka 86 NOARGS { int|sys||link(const char *path, const char *link); }
236 1.28 pooka 87 STD { int|linux_sys||unlink(const char *path); }
237 1.54 christos 88 NOARGS { int|sys||symlink(const char *path, const char *link); }
238 1.57 njoly 89 NOARGS { ssize_t|sys||readlink(const char *path, char *buf, \
239 1.1 manu int count); }
240 1.45 chs 90 NOARGS { int|sys||chmod(const char *path, linux_umode_t mode); }
241 1.45 chs 91 NOARGS { int|sys||fchmod(int fd, linux_umode_t mode); }
242 1.28 pooka 92 NOARGS { int|sys||__posix_chown(const char *path, uid_t uid, \
243 1.1 manu gid_t gid); }
244 1.28 pooka 93 NOARGS { int|sys||__posix_fchown(int fd, uid_t uid, \
245 1.1 manu gid_t gid); }
246 1.28 pooka 94 NOARGS { int|sys||__posix_lchown(const char *path, uid_t uid, \
247 1.1 manu gid_t gid); }
248 1.28 pooka 95 NOARGS { int|sys||umask(int newmask); }
249 1.29 njoly 96 STD { int|linux_sys||gettimeofday(struct timeval50 *tp, \
250 1.1 manu struct timezone *tzp); }
251 1.28 pooka 97 STD { int|linux_sys||getrlimit(int which, \
252 1.9 manu struct rlimit *rlp); }
253 1.29 njoly 98 NOARGS { int|compat_50_sys||getrusage(int who, \
254 1.29 njoly struct rusage50 *rusage); }
255 1.28 pooka 99 STD { int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
256 1.28 pooka 100 STD { int|linux_sys||times(struct times *tms); }
257 1.28 pooka 101 STD { int|linux_sys||ptrace(long request, long pid, \
258 1.1 manu long addr, long data); }
259 1.28 pooka 102 NOARGS { uid_t|sys||getuid(void); }
260 1.1 manu 103 UNIMPL syslog
261 1.28 pooka 104 NOARGS { gid_t|sys||getgid(void); }
262 1.56 njoly 105 NOARGS { int|sys||setuid(uid_t uid); }
263 1.56 njoly 106 NOARGS { int|sys||setgid(gid_t gid); }
264 1.28 pooka 107 NOARGS { uid_t|sys||geteuid(void); }
265 1.28 pooka 108 NOARGS { gid_t|sys||getegid(void); }
266 1.28 pooka 109 NOARGS { int|sys||setpgid(int pid, int pgid); }
267 1.35 chs 110 STD { pid_t|sys||getppid(void); }
268 1.28 pooka 111 NOARGS { int|sys||getpgrp(void); }
269 1.28 pooka 112 NOARGS { int|sys||setsid(void); }
270 1.28 pooka 113 NOARGS { int|sys||setreuid(uid_t ruid, uid_t euid); }
271 1.28 pooka 114 NOARGS { int|sys||setregid(gid_t rgid, gid_t egid); }
272 1.50 njoly 115 NOARGS { int|sys||getgroups(int gidsetsize, gid_t *gidset); }
273 1.50 njoly 116 NOARGS { int|sys||setgroups(int gidsetsize, gid_t *gidset); }
274 1.28 pooka 117 STD { int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
275 1.1 manu uid_t suid); }
276 1.28 pooka 118 STD { int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
277 1.1 manu uid_t *suid); }
278 1.28 pooka 119 STD { int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
279 1.1 manu gid_t sgid); }
280 1.28 pooka 120 STD { int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
281 1.1 manu gid_t *sgid); }
282 1.28 pooka 121 NOARGS { pid_t|sys||getpgid(pid_t pid); }
283 1.28 pooka 122 STD { int|linux_sys||setfsuid(uid_t uid); }
284 1.28 pooka 123 STD { int|linux_sys||setfsgid(gid_t gid); }
285 1.28 pooka 124 NOARGS { pid_t|sys||getsid(pid_t pid); }
286 1.1 manu 125 UNIMPL capget
287 1.1 manu 126 UNIMPL capset
288 1.28 pooka 127 STD { int|linux_sys||rt_sigpending( \
289 1.1 manu linux_sigset_t *set, \
290 1.1 manu size_t sigsetsize); }
291 1.40 christos 128 STD { int|linux_sys||rt_sigtimedwait( \
292 1.40 christos const linux_sigset_t *set, \
293 1.40 christos linux_siginfo_t *info, \
294 1.40 christos const struct linux_timespec *timeout); }
295 1.28 pooka 129 STD { int|linux_sys||rt_queueinfo(int pid, int signum, \
296 1.31 njoly linux_siginfo_t *uinfo); }
297 1.28 pooka 130 STD { int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
298 1.1 manu size_t sigsetsize); }
299 1.28 pooka 131 STD { int|linux_sys||sigaltstack( \
300 1.1 manu const struct linux_sigaltstack *ss, \
301 1.1 manu struct linux_sigaltstack *oss); }
302 1.28 pooka 132 STD { int|linux_sys||utime(const char *path, \
303 1.1 manu struct linux_utimbuf *times); }
304 1.45 chs 133 STD { int|linux_sys||mknod(const char *path, linux_umode_t mode, \
305 1.45 chs unsigned dev); }
306 1.6 joerg #ifdef EXEC_AOUT
307 1.28 pooka 134 STD { int|linux_sys||uselib(const char *path); }
308 1.6 joerg #else
309 1.6 joerg 134 UNIMPL sys_uselib
310 1.6 joerg #endif
311 1.34 njoly 135 STD { int|linux_sys||personality(unsigned long per); }
312 1.1 manu 136 UNIMPL ustat
313 1.28 pooka 137 STD { int|linux_sys||statfs(const char *path, \
314 1.18 njoly struct linux_statfs *sp); }
315 1.28 pooka 138 STD { int|linux_sys||fstatfs(int fd, \
316 1.18 njoly struct linux_statfs *sp); }
317 1.1 manu 139 UNIMPL sysfs
318 1.28 pooka 140 STD { int|linux_sys||getpriority(int which, int who); }
319 1.28 pooka 141 NOARGS { int|sys||setpriority(int which, int who, int prio); }
320 1.28 pooka 142 STD { int|linux_sys||sched_setparam(pid_t pid, \
321 1.1 manu const struct linux_sched_param *sp); }
322 1.28 pooka 143 STD { int|linux_sys||sched_getparam(pid_t pid, \
323 1.1 manu struct linux_sched_param *sp); }
324 1.28 pooka 144 STD { int|linux_sys||sched_setscheduler(pid_t pid, \
325 1.1 manu int policy, const struct linux_sched_param *sp); }
326 1.28 pooka 145 STD { int|linux_sys||sched_getscheduler(pid_t pid); }
327 1.28 pooka 146 STD { int|linux_sys||sched_get_priority_max(int policy); }
328 1.28 pooka 147 STD { int|linux_sys||sched_get_priority_min(int policy); }
329 1.1 manu 148 UNIMPL sys_sched_rr_get_interval
330 1.28 pooka 149 NOARGS { int|sys||mlock(void *addr, size_t len); }
331 1.28 pooka 150 NOARGS { int|sys||munlock(void *addr, size_t len); }
332 1.28 pooka 151 NOARGS { int|sys||mlockall(int flags); }
333 1.28 pooka 152 NOARGS { int|sys||munlockall(void); }
334 1.1 manu 153 UNIMPL vhangup
335 1.28 pooka 154 STD { int|linux_sys||modify_ldt(int func, void *ptr, \
336 1.1 manu size_t bytecount); }
337 1.1 manu 155 UNIMPL pivot_root
338 1.28 pooka 156 STD { int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
339 1.1 manu 157 UNIMPL prctl
340 1.28 pooka 158 STD { int|linux_sys||arch_prctl(int code, \
341 1.1 manu unsigned long addr); }
342 1.1 manu 159 UNIMPL adjtimex
343 1.28 pooka 160 STD { int|linux_sys||setrlimit(u_int which, \
344 1.9 manu struct rlimit *rlp); }
345 1.28 pooka 161 NOARGS { int|sys||chroot(char *path); }
346 1.28 pooka 162 NOARGS { int|sys||sync(void); }
347 1.28 pooka 163 NOARGS { int|sys||acct(char *path); }
348 1.29 njoly 164 STD { int|linux_sys||settimeofday(struct timeval50 *tp, \
349 1.1 manu struct timezone *tzp); }
350 1.1 manu 165 UNIMPL mount
351 1.1 manu 166 UNIMPL umount2
352 1.28 pooka 167 STD { int|linux_sys||swapon(char *name); }
353 1.28 pooka 168 STD { int|linux_sys||swapoff(const char *path); }
354 1.28 pooka 169 STD { int|linux_sys||reboot(int magic1, int magic2, \
355 1.1 manu int cmd, void *arg); }
356 1.28 pooka 170 NOARGS { int|compat_43_sys||sethostname(char *hostname, \
357 1.1 manu u_int len);}
358 1.28 pooka 171 STD { int|linux_sys||setdomainname(char *domainname, \
359 1.1 manu int len); }
360 1.28 pooka 172 STD { int|linux_sys||iopl(int level); }
361 1.28 pooka 173 STD { int|linux_sys||ioperm(unsigned int lo, \
362 1.1 manu unsigned int hi, int val); }
363 1.1 manu 174 UNIMPL create_module
364 1.1 manu 175 UNIMPL init_module
365 1.1 manu 176 UNIMPL delete_module
366 1.1 manu 177 UNIMPL get_kernel_syms
367 1.1 manu 178 UNIMPL query_module
368 1.1 manu 179 UNIMPL quotactl
369 1.1 manu 180 UNIMPL nfsservctl
370 1.1 manu 181 UNIMPL getpmsg
371 1.1 manu 182 UNIMPL putpmsg
372 1.1 manu 183 UNIMPL afs_syscall
373 1.1 manu 184 UNIMPL tuxcall
374 1.1 manu 185 UNIMPL security
375 1.28 pooka 186 STD { pid_t|linux_sys||gettid(void); }
376 1.1 manu 187 UNIMPL readahead
377 1.28 pooka 188 STD { int|linux_sys||setxattr(char *path, char *name, \
378 1.2 fvdl void *value, size_t size, int flags); }
379 1.28 pooka 189 STD { int|linux_sys||lsetxattr(char *path, char *name, \
380 1.2 fvdl void *value, size_t size, int flags); }
381 1.28 pooka 190 STD { int|linux_sys||fsetxattr(int fd, char *name, \
382 1.2 fvdl void *value, size_t size, int flags); }
383 1.28 pooka 191 STD { ssize_t|linux_sys||getxattr(char *path, char *name, \
384 1.2 fvdl void *value, size_t size); }
385 1.28 pooka 192 STD { ssize_t|linux_sys||lgetxattr(char *path, char *name, \
386 1.2 fvdl void *value, size_t size); }
387 1.28 pooka 193 STD { ssize_t|linux_sys||fgetxattr(int fd, char *name, \
388 1.2 fvdl void *value, size_t size); }
389 1.28 pooka 194 STD { ssize_t|linux_sys||listxattr(char *path, char *list, \
390 1.2 fvdl size_t size); }
391 1.28 pooka 195 STD { ssize_t|linux_sys||llistxattr(char *path, char *list, \
392 1.2 fvdl size_t size); }
393 1.28 pooka 196 STD { ssize_t|linux_sys||flistxattr(int fd, char *list, \
394 1.2 fvdl size_t size); }
395 1.28 pooka 197 STD { int|linux_sys||removexattr(char *path, char *name); }
396 1.28 pooka 198 STD { int|linux_sys||lremovexattr(char *path, char *name); }
397 1.28 pooka 199 STD { int|linux_sys||fremovexattr(int fd, char *name); }
398 1.28 pooka 200 STD { int|linux_sys||tkill(int tid, int sig); }
399 1.28 pooka 201 STD { int|linux_sys||time(linux_time_t *t); }
400 1.28 pooka 202 STD { int|linux_sys||futex(int *uaddr, int op, int val, \
401 1.26 njoly const struct linux_timespec *timeout, int *uaddr2, \
402 1.7 manu int val3); }
403 1.28 pooka 203 STD { int|linux_sys||sched_setaffinity(pid_t pid, \
404 1.8 manu unsigned int len, unsigned long *mask); }
405 1.28 pooka 204 STD { int|linux_sys||sched_getaffinity(pid_t pid, \
406 1.8 manu unsigned int len, unsigned long *mask); }
407 1.1 manu 205 UNIMPL set_thread_area
408 1.1 manu 206 UNIMPL io_setup
409 1.1 manu 207 UNIMPL io_destroy
410 1.1 manu 208 UNIMPL io_getevents
411 1.1 manu 209 UNIMPL io_submit
412 1.1 manu 210 UNIMPL io_cancel
413 1.1 manu 211 UNIMPL get_thread_area
414 1.1 manu 212 UNIMPL lookup_dcookie
415 1.1 manu 213 UNIMPL epoll_create
416 1.1 manu 214 UNIMPL epoll_ctl_old
417 1.1 manu 215 UNIMPL epoll_wait_old
418 1.1 manu 216 UNIMPL remap_file_pages
419 1.28 pooka 217 STD { int|linux_sys||getdents64(int fd, \
420 1.1 manu struct linux_dirent64 *dent, unsigned int count); }
421 1.28 pooka 218 STD { int|linux_sys||set_tid_address(int *tid); }
422 1.1 manu 219 UNIMPL restart_syscall
423 1.1 manu 220 UNIMPL semtimedop
424 1.49 njoly 221 STD { int|linux_sys||fadvise64(int fd, off_t offset, \
425 1.49 njoly size_t len, int advice); }
426 1.63 thorpej 222 STD { int|linux_sys||timer_create(clockid_t clockid, \
427 1.63 thorpej struct linux_sigevent *evp, timer_t *timerid); }
428 1.63 thorpej 223 STD { int|linux_sys||timer_settime(timer_t timerid, \
429 1.63 thorpej int flags, const struct linux_itimerspec *tim, \
430 1.63 thorpej struct linux_itimerspec *otim); }
431 1.63 thorpej 224 STD { int|linux_sys||timer_gettime(timer_t timerid, \
432 1.63 thorpej struct linux_itimerspec *tim); }
433 1.63 thorpej 225 NOARGS { int|sys||timer_getoverrun(timer_t timerid); }
434 1.63 thorpej 226 NOARGS { int|sys||timer_delete(timer_t timerid); }
435 1.28 pooka 227 STD { int|linux_sys||clock_settime(clockid_t which, \
436 1.3 fvdl struct linux_timespec *tp); }
437 1.28 pooka 228 STD { int|linux_sys||clock_gettime(clockid_t which, \
438 1.3 fvdl struct linux_timespec *tp); }
439 1.28 pooka 229 STD { int|linux_sys||clock_getres(clockid_t which, \
440 1.3 fvdl struct linux_timespec *tp); }
441 1.28 pooka 230 STD { int|linux_sys||clock_nanosleep(clockid_t which, \
442 1.3 fvdl int flags, struct linux_timespec *rqtp, \
443 1.3 fvdl struct linux_timespec *rmtp); }
444 1.28 pooka 231 STD { int|linux_sys||exit_group(int error_code); }
445 1.1 manu 232 UNIMPL epoll_wait
446 1.1 manu 233 UNIMPL epoll_ctl
447 1.28 pooka 234 STD { int|linux_sys||tgkill(int tgid, int tid, int sig); }
448 1.51 njoly 235 NOARGS { int|compat_50_sys||utimes(const char *path, \
449 1.51 njoly const struct timeval50 *tptr); }
450 1.1 manu 236 UNIMPL vserver
451 1.24 christos 237 UNIMPL mbind
452 1.24 christos 238 UNIMPL set_mempolicy
453 1.24 christos 239 UNIMPL get_mempolicy
454 1.24 christos 240 UNIMPL mq_open
455 1.24 christos 241 UNIMPL mq_unlink
456 1.24 christos 242 UNIMPL mq_timedsend
457 1.24 christos 243 UNIMPL mq_timedreceive
458 1.24 christos 244 UNIMPL mq_notify
459 1.24 christos 245 UNIMPL mq_getsetattr
460 1.24 christos 246 UNIMPL kexec_load
461 1.24 christos 247 UNIMPL waitid
462 1.24 christos 248 UNIMPL add_key
463 1.24 christos 249 UNIMPL request_key
464 1.24 christos 250 UNIMPL keyctl
465 1.24 christos 251 UNIMPL ioprio_set
466 1.24 christos 252 UNIMPL ioprio_get
467 1.24 christos 253 UNIMPL inotify_init
468 1.24 christos 254 UNIMPL inotify_add_watch
469 1.24 christos 255 UNIMPL inotify_rm_watch
470 1.24 christos 256 UNIMPL migrate_pages
471 1.45 chs 257 STD { int|linux_sys||openat(int fd, const char *path, \
472 1.45 chs int flags, ... linux_umode_t mode); }
473 1.45 chs 258 NOARGS { int|sys||mkdirat(int fd, const char *path, \
474 1.45 chs linux_umode_t mode); }
475 1.45 chs 259 STD { int|linux_sys||mknodat(int fd, const char *path, \
476 1.45 chs linux_umode_t mode, unsigned dev); }
477 1.45 chs 260 STD { int|linux_sys||fchownat(int fd, const char *path, \
478 1.45 chs uid_t owner, gid_t group, int flag); }
479 1.24 christos 261 UNIMPL futimesat
480 1.45 chs 262 STD { int|linux_sys||fstatat64(int fd, const char *path, \
481 1.45 chs struct linux_stat *sp, int flag); }
482 1.45 chs 263 STD { int|linux_sys||unlinkat(int fd, const char *path, \
483 1.45 chs int flag); }
484 1.45 chs 264 NOARGS { int|sys||renameat(int fromfd, const char *from, \
485 1.45 chs int tofd, const char *to); }
486 1.45 chs 265 STD { int|linux_sys||linkat(int fd1, const char *name1, \
487 1.45 chs int fd2, const char *name2, int flags); }
488 1.45 chs 266 NOARGS { int|sys||symlinkat(const char *path1, int fd, \
489 1.45 chs const char *path2); }
490 1.57 njoly 267 NOARGS { ssize_t|sys||readlinkat(int fd, const char *path, \
491 1.45 chs char *buf, size_t bufsize); }
492 1.45 chs 268 STD { int|linux_sys||fchmodat(int fd, const char *path, \
493 1.45 chs linux_umode_t mode); }
494 1.45 chs 269 STD { int|linux_sys||faccessat(int fd, const char *path, \
495 1.45 chs int amode); }
496 1.58 manu 270 STD { int|linux_sys||pselect6(int nfds, fd_set *readfds, \
497 1.58 manu fd_set *writefds, fd_set *exceptfds, \
498 1.58 manu struct linux_timespec *timeout, \
499 1.58 manu linux_sized_sigset_t *ss); }
500 1.53 njoly 271 STD { int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
501 1.41 pooka struct linux_timespec *timeout, \
502 1.41 pooka linux_sigset_t *sigset); }
503 1.24 christos 272 UNIMPL unshare
504 1.62 thorpej ;
505 1.62 thorpej ; The NetBSD native robust list calls have different
506 1.62 thorpej ; argument names / types, but they are ABI-compatible
507 1.62 thorpej ; with Linux.
508 1.62 thorpej ;
509 1.62 thorpej 273 NOARGS { int|sys||__futex_set_robust_list(void *head, \
510 1.62 thorpej size_t len); }
511 1.62 thorpej 274 NOARGS { int|sys||__futex_get_robust_list(lwpid_t lwpid, \
512 1.62 thorpej void **headp, size_t *lenp); }
513 1.24 christos 275 UNIMPL splice
514 1.24 christos 276 UNIMPL tee
515 1.24 christos 277 UNIMPL sync_file_range
516 1.24 christos 278 UNIMPL vmsplice
517 1.24 christos 279 UNIMPL move_pages
518 1.43 njoly 280 STD { int|linux_sys||utimensat(int fd, const char *path, \
519 1.43 njoly struct linux_timespec *times, int flag); }
520 1.24 christos 281 UNIMPL epoll_pwait
521 1.24 christos 282 UNIMPL signalfd
522 1.64 thorpej 283 STD { int|linux_sys||timerfd_create(clockid_t clock_id, \
523 1.64 thorpej int flags); }
524 1.65 thorpej 284 STD { int|linux_sys||eventfd(unsigned int initval); }
525 1.61 jdolecek 285 STD { int|linux_sys||fallocate(int fd, int mode, \
526 1.61 jdolecek off_t offset, off_t len); }
527 1.64 thorpej 286 STD { int|linux_sys||timerfd_settime(int fd, int flags, \
528 1.64 thorpej const struct linux_itimerspec *tim, \
529 1.64 thorpej struct linux_itimerspec *otim); }
530 1.64 thorpej 287 STD { int|linux_sys||timerfd_gettime(int fd, \
531 1.64 thorpej struct linux_itimerspec *tim); }
532 1.59 christos 288 STD { int|linux_sys||accept4(int s, \
533 1.59 christos struct osockaddr *name, \
534 1.59 christos int *anamelen, int flags); }
535 1.35 chs 289 UNIMPL signalfd4
536 1.65 thorpej 290 STD { int|linux_sys||eventfd2(unsigned int initval, \
537 1.65 thorpej int flags); }
538 1.35 chs 291 UNIMPL epoll_create1
539 1.36 christos 292 STD { int|linux_sys||dup3(int from, int to, int flags); }
540 1.36 christos 293 STD { int|linux_sys||pipe2(int *pfds, int flags); }
541 1.35 chs 294 UNIMPL inotify_init1
542 1.66 thorpej 295 STD { int|linux_sys||preadv(int fd, \
543 1.66 thorpej const struct iovec *iovp, int iovcnt, \
544 1.66 thorpej unsigned long off_lo, unsigned long off_hi); }
545 1.66 thorpej 296 STD { int|linux_sys||pwritev(int fd, \
546 1.66 thorpej const struct iovcnt *iovp, int iovcnt, \
547 1.66 thorpej unsigned long off_lo, unsigned long off_hi); }
548 1.35 chs 297 UNIMPL rt_tgsigqueueinfo
549 1.35 chs 298 UNIMPL perf_counter_open
550 1.60 christos 299 STD { int|linux_sys||recvmmsg(int s, \
551 1.60 christos struct linux_mmsghdr *msgvec, unsigned int vlen, \
552 1.60 christos unsigned int flags, struct timespec *timeout); }
553 1.45 chs 300 UNIMPL fanotify_init
554 1.45 chs 301 UNIMPL fanotify_mark
555 1.67 ryo 302 STD { int|linux_sys||prlimit64(pid_t pid, int which, \
556 1.67 ryo struct rlimit *new_rlp, struct rlimit *old_rlp); }
557 1.45 chs 303 UNIMPL name_to_handle_at
558 1.45 chs 304 UNIMPL open_by_handle_at
559 1.45 chs 305 UNIMPL clock_adjtime
560 1.45 chs 306 UNIMPL syncfs
561 1.60 christos 307 STD { int|linux_sys||sendmmsg(int s, \
562 1.60 christos struct linux_mmsghdr *msgvec, unsigned int vlen, \
563 1.60 christos unsigned int flags); }
564 1.45 chs 308 UNIMPL setns
565 1.45 chs 309 UNIMPL getcpu
566 1.45 chs 310 UNIMPL process_vm_readv
567 1.45 chs 311 UNIMPL process_vm_writev
568 1.45 chs 312 UNIMPL kcmp
569 1.45 chs 313 UNIMPL finit_module
570 1.35 chs
571 1.35 chs ; we want a "nosys" syscall, we'll just add an extra entry for it.
572 1.45 chs 314 STD { int|linux_sys||nosys(void); }
573