]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/amd64/linux32/syscalls.master
Upgrade our copies of clang, llvm, lld, lldb, compiler-rt and libc++ to
[FreeBSD/FreeBSD.git] / sys / amd64 / linux32 / syscalls.master
1  $FreeBSD$
2
3 ;       @(#)syscalls.master     8.1 (Berkeley) 7/19/93
4 ; System call name/number master file (or rather, slave, from LINUX).
5 ; Processed to create linux32_sysent.c, linux32_proto.h and linux32_syscall.h.
6
7 ; Columns: number audit type nargs name alt{name,tag,rtyp}/comments
8 ;       number  system call number, must be in order
9 ;       audit   the audit event associated with the system call
10 ;               A value of AUE_NULL means no auditing, but it also means that
11 ;               there is no audit event for the call at this time. For the
12 ;               case where the event exists, but we don't want auditing, the
13 ;               event should be #defined to AUE_NULL in audit_kevents.h.
14 ;       type    one of STD, NOPROTO, UNIMPL
15 ;       name    pseudo-prototype of syscall routine
16 ;               If one of the following alts is different, then all appear:
17 ;       altname name of system call if different
18 ;       alttag  name of args struct tag if different from [o]`name'"_args"
19 ;       altrtyp return type if not int (bogus - syscalls always return int)
20 ;               for UNIMPL, name continues with comments
21
22 ; types:
23 ;       STD     always included
24 ;       UNIMPL  not implemented, placeholder only
25 ;       NOPROTO same as STD except do not create structure or
26 ;               function prototype in sys/sysproto.h.  Does add a
27 ;               definition to syscall.h besides adding a sysent.
28
29 #include "opt_compat.h"
30 #include <sys/param.h>
31 #include <sys/sysent.h>
32 #include <sys/sysproto.h>
33 #include <compat/linux/linux_sysproto.h>
34 #include <amd64/linux32/linux.h>
35 #include <amd64/linux32/linux32_proto.h>
36
37 ; Isn't pretty, but there seems to be no other way to trap nosys
38 #define nosys   linux_nosys
39
40 ; #ifdef's, etc. may be included, and are copied to the output files.
41
42 0       AUE_NULL        UNIMPL  setup
43 1       AUE_EXIT        STD     { void linux_exit(int rval); }
44 2       AUE_FORK        STD     { int linux_fork(void); }
45 3       AUE_NULL        NOPROTO { int read(int fd, char *buf, \
46                                     u_int nbyte); }
47 4       AUE_NULL        NOPROTO { int write(int fd, char *buf, \
48                                     u_int nbyte); }
49 5       AUE_OPEN_RWTC   STD     { int linux_open(char *path, l_int flags, \
50                                     l_int mode); }
51 6       AUE_CLOSE       NOPROTO { int close(int fd); }
52 7       AUE_WAIT4       STD     { int linux_waitpid(l_pid_t pid, \
53                                     l_int *status, l_int options); }
54 8       AUE_CREAT       STD     { int linux_creat(char *path, \
55                                     l_int mode); }
56 9       AUE_LINK        STD     { int linux_link(char *path, char *to); }
57 10      AUE_UNLINK      STD     { int linux_unlink(char *path); }
58 11      AUE_EXECVE      STD     { int linux_execve(char *path, uint32_t *argp, \
59                                     uint32_t *envp); }
60 12      AUE_CHDIR       STD     { int linux_chdir(char *path); }
61 13      AUE_NULL        STD     { int linux_time(l_time_t *tm); }
62 14      AUE_MKNOD       STD     { int linux_mknod(char *path, l_int mode, \
63                                     l_dev_t dev); }
64 15      AUE_CHMOD       STD     { int linux_chmod(char *path, \
65                                     l_mode_t mode); }
66 16      AUE_LCHOWN      STD     { int linux_lchown16(char *path, \
67                                     l_uid16_t uid, l_gid16_t gid); }
68 17      AUE_NULL        UNIMPL  break
69 18      AUE_STAT        STD     { int linux_stat(char *path, \
70                                     struct linux_stat *up); }
71 19      AUE_LSEEK       STD     { int linux_lseek(l_uint fdes, l_off_t off, \
72                                     l_int whence); }
73 20      AUE_GETPID      STD     { int linux_getpid(void); }
74 21      AUE_MOUNT       STD     { int linux_mount(char *specialfile, \
75                                     char *dir, char *filesystemtype, \
76                                     l_ulong rwflag, void *data); }
77 22      AUE_UMOUNT      STD     { int linux_oldumount(char *path); }
78 23      AUE_SETUID      STD     { int linux_setuid16(l_uid16_t uid); }
79 24      AUE_GETUID      STD     { int linux_getuid16(void); }
80 25      AUE_SETTIMEOFDAY        STD     { int linux_stime(void); }
81 26      AUE_PTRACE      STD     { int linux_ptrace(l_long req, l_long pid, \
82                                     l_long addr, l_long data); }
83 27      AUE_NULL        STD     { int linux_alarm(l_uint secs); }
84 28      AUE_FSTAT       UNIMPL  fstat
85 29      AUE_NULL        STD     { int linux_pause(void); }
86 30      AUE_UTIME       STD     { int linux_utime(char *fname, \
87                                     struct l_utimbuf *times); }
88 31      AUE_NULL        UNIMPL  stty
89 32      AUE_NULL        UNIMPL  gtty
90 33      AUE_ACCESS      STD     { int linux_access(char *path, l_int amode); }
91 34      AUE_NICE        STD     { int linux_nice(l_int inc); }
92 35      AUE_NULL        UNIMPL  ftime
93 36      AUE_SYNC        NOPROTO { int sync(void); }
94 37      AUE_KILL        STD     { int linux_kill(l_int pid, l_int signum); }
95 38      AUE_RENAME      STD     { int linux_rename(char *from, char *to); }
96 39      AUE_MKDIR       STD     { int linux_mkdir(char *path, l_int mode); }
97 40      AUE_RMDIR       STD     { int linux_rmdir(char *path); }
98 41      AUE_DUP         NOPROTO { int dup(u_int fd); }
99 42      AUE_PIPE        STD     { int linux_pipe(l_int *pipefds); }
100 43      AUE_NULL        STD     { int linux_times(struct l_times_argv *buf); }
101 44      AUE_NULL        UNIMPL  prof
102 45      AUE_NULL        STD     { int linux_brk(l_ulong dsend); }
103 46      AUE_SETGID      STD     { int linux_setgid16(l_gid16_t gid); }
104 47      AUE_GETGID      STD     { int linux_getgid16(void); }
105 48      AUE_NULL        STD     { int linux_signal(l_int sig, \
106                                     l_handler_t handler); }
107 49      AUE_GETEUID     STD     { int linux_geteuid16(void); }
108 50      AUE_GETEGID     STD     { int linux_getegid16(void); }
109 51      AUE_ACCT        NOPROTO { int acct(char *path); }
110 52      AUE_UMOUNT      STD     { int linux_umount(char *path, l_int flags); }
111 53      AUE_NULL        UNIMPL  lock
112 54      AUE_IOCTL       STD     { int linux_ioctl(l_uint fd, l_uint cmd, \
113                                     uintptr_t arg); }
114 55      AUE_FCNTL       STD     { int linux_fcntl(l_uint fd, l_uint cmd, \
115                                     uintptr_t arg); }
116 56      AUE_NULL        UNIMPL  mpx
117 57      AUE_SETPGRP     NOPROTO { int setpgid(int pid, int pgid); }
118 58      AUE_NULL        UNIMPL  ulimit
119 59      AUE_NULL        STD     { int linux_olduname(void); }
120 60      AUE_UMASK       NOPROTO { int umask(int newmask); }
121 61      AUE_CHROOT      NOPROTO { int chroot(char *path); }
122 62      AUE_NULL        STD     { int linux_ustat(l_dev_t dev, \
123                                     struct l_ustat *ubuf); }
124 63      AUE_DUP2        NOPROTO { int dup2(u_int from, u_int to); }
125 64      AUE_GETPPID     STD     { int linux_getppid(void); }
126 65      AUE_GETPGRP     NOPROTO { int getpgrp(void); }
127 66      AUE_SETSID      NOPROTO { int setsid(void); }
128 67      AUE_NULL        STD     { int linux_sigaction(l_int sig, \
129                                     l_osigaction_t *nsa, \
130                                     l_osigaction_t *osa); }
131 68      AUE_NULL        STD     { int linux_sgetmask(void); }
132 69      AUE_NULL        STD     { int linux_ssetmask(l_osigset_t mask); }
133 70      AUE_SETREUID    STD     { int linux_setreuid16(l_uid16_t ruid, \
134                                     l_uid16_t euid); }
135 71      AUE_SETREGID    STD     { int linux_setregid16(l_gid16_t rgid, \
136                                     l_gid16_t egid); }
137 72      AUE_NULL        STD     { int linux_sigsuspend(l_int hist0, \
138                                     l_int hist1, l_osigset_t mask); }
139 73      AUE_NULL        STD     { int linux_sigpending(l_osigset_t *mask); }
140 74      AUE_SYSCTL      STD     { int linux_sethostname(char *hostname, \
141                                     u_int len); }
142 75      AUE_SETRLIMIT   STD     { int linux_setrlimit(l_uint resource, \
143                                     struct l_rlimit *rlim); }
144 76      AUE_GETRLIMIT   STD     { int linux_old_getrlimit(l_uint resource, \
145                                     struct l_rlimit *rlim); }
146 77      AUE_GETRUSAGE   STD     { int linux_getrusage(int who, \
147                                     struct l_rusage *rusage); }
148 78      AUE_NULL        STD     { int linux_gettimeofday( \
149                                     struct l_timeval *tp, \
150                                     struct timezone *tzp); }
151 79      AUE_SETTIMEOFDAY STD    { int linux_settimeofday( \
152                                     struct l_timeval *tp, \
153                                     struct timezone *tzp); }
154 80      AUE_GETGROUPS   STD     { int linux_getgroups16(l_uint gidsetsize, \
155                                     l_gid16_t *gidset); }
156 81      AUE_SETGROUPS   STD     { int linux_setgroups16(l_uint gidsetsize, \
157                                     l_gid16_t *gidset); }
158 82      AUE_SELECT      STD     { int linux_old_select( \
159                                     struct l_old_select_argv *ptr); }
160 83      AUE_SYMLINK     STD     { int linux_symlink(char *path, char *to); }
161 ; 84: oldlstat
162 84      AUE_LSTAT       STD     { int linux_lstat(char *path, struct linux_lstat *up); }
163 85      AUE_READLINK    STD     { int linux_readlink(char *name, char *buf, \
164                                     l_int count); }
165 86      AUE_USELIB      UNIMPL  linux_uselib
166 87      AUE_SWAPON      NOPROTO { int swapon(char *name); }
167 88      AUE_REBOOT      STD     { int linux_reboot(l_int magic1, \
168                                     l_int magic2, l_uint cmd, void *arg); }
169 ; 89: old_readdir
170 89      AUE_GETDIRENTRIES       STD { int linux_readdir(l_uint fd, \
171                                     struct l_dirent *dent, l_uint count); }
172 ; 90: old_mmap
173 90      AUE_MMAP        STD     { int linux_mmap(struct l_mmap_argv *ptr); }
174 91      AUE_MUNMAP      NOPROTO { int munmap(caddr_t addr, int len); }
175 92      AUE_TRUNCATE    STD     { int linux_truncate(char *path, \
176                                     l_ulong length); }
177 93      AUE_FTRUNCATE   STD     { int linux_ftruncate(int fd, long length); }
178 94      AUE_FCHMOD      NOPROTO { int fchmod(int fd, int mode); }
179 95      AUE_FCHOWN      NOPROTO { int fchown(int fd, int uid, int gid); }
180 96      AUE_GETPRIORITY STD     { int linux_getpriority(int which, int who); }
181 97      AUE_SETPRIORITY NOPROTO { int setpriority(int which, int who, \
182                                     int prio); }
183 98      AUE_PROFILE     UNIMPL  profil
184 99      AUE_STATFS      STD     { int linux_statfs(char *path, \
185                                     struct l_statfs_buf *buf); }
186 100     AUE_FSTATFS     STD     { int linux_fstatfs(l_uint fd, \
187                                     struct l_statfs_buf *buf); }
188 101     AUE_NULL        UNIMPL  ioperm
189 102     AUE_NULL        STD     { int linux_socketcall(l_int what, \
190                                     l_ulong args); }
191 103     AUE_NULL        STD     { int linux_syslog(l_int type, char *buf, \
192                                     l_int len); }
193 104     AUE_SETITIMER   STD     { int linux_setitimer(l_int which, \
194                                     struct l_itimerval *itv, \
195                                     struct l_itimerval *oitv); }
196 105     AUE_GETITIMER   STD     { int linux_getitimer(l_int which, \
197                                     struct l_itimerval *itv); }
198 106     AUE_STAT        STD     { int linux_newstat(char *path, \
199                                     struct l_newstat *buf); }
200 107     AUE_LSTAT       STD     { int linux_newlstat(char *path, \
201                                     struct l_newstat *buf); }
202 108     AUE_FSTAT       STD     { int linux_newfstat(l_uint fd, \
203                                     struct l_newstat *buf); }
204 ; 109: olduname
205 109     AUE_NULL        STD     { int linux_uname(void); }
206 110     AUE_NULL        STD     { int linux_iopl(l_int level); }
207 111     AUE_NULL        STD     { int linux_vhangup(void); }
208 112     AUE_NULL        UNIMPL  idle
209 113     AUE_NULL        UNIMPL  vm86old
210 114     AUE_WAIT4       STD     { int linux_wait4(l_pid_t pid, \
211                                     l_int *status, l_int options, \
212                                     struct l_rusage *rusage); }
213 115     AUE_SWAPOFF     STD     { int linux_swapoff(void); }
214 116     AUE_NULL        STD     { int linux_sysinfo(struct l_sysinfo *info); }
215 117     AUE_NULL        STD     { int linux_ipc(l_uint what, l_int arg1, \
216                                     l_int arg2, l_int arg3, void *ptr, \
217                                     l_long arg5); }
218 118     AUE_FSYNC       NOPROTO { int fsync(int fd); }
219 119     AUE_SIGRETURN   STD     { int linux_sigreturn( \
220                                     struct l_sigframe *sfp); }
221 120     AUE_RFORK       STD     { int linux_clone(l_int flags, void *stack, \
222                                     void *parent_tidptr, void *tls, void * child_tidptr); }
223 121     AUE_SYSCTL      STD     { int linux_setdomainname(char *name, \
224                                     int len); }
225 122     AUE_NULL        STD     { int linux_newuname( \
226                                     struct l_new_utsname *buf); }
227 123     AUE_NULL        UNIMPL  modify_ldt
228 124     AUE_ADJTIME     STD     { int linux_adjtimex(void); }
229 125     AUE_MPROTECT    STD     { int linux_mprotect(caddr_t addr, int len, \
230                                     int prot); }
231 126     AUE_SIGPROCMASK STD     { int linux_sigprocmask(l_int how, \
232                                     l_osigset_t *mask, l_osigset_t *omask); }
233 127     AUE_NULL        UNIMPL  create_module
234 128     AUE_NULL        STD     { int linux_init_module(void); }
235 129     AUE_NULL        STD     { int linux_delete_module(void); }
236 130     AUE_NULL        UNIMPL  get_kernel_syms
237 131     AUE_QUOTACTL    STD     { int linux_quotactl(void); }
238 132     AUE_GETPGID     NOPROTO { int getpgid(int pid); }
239 133     AUE_FCHDIR      NOPROTO { int fchdir(int fd); }
240 134     AUE_BDFLUSH     STD     { int linux_bdflush(void); }
241 135     AUE_NULL        STD     { int linux_sysfs(l_int option, \
242                                     l_ulong arg1, l_ulong arg2); }
243 136     AUE_PERSONALITY STD     { int linux_personality(l_uint per); }
244 137     AUE_NULL        UNIMPL  afs_syscall
245 138     AUE_SETFSUID    STD     { int linux_setfsuid16(l_uid16_t uid); }
246 139     AUE_SETFSGID    STD     { int linux_setfsgid16(l_gid16_t gid); }
247 140     AUE_LSEEK       STD     { int linux_llseek(l_int fd, l_ulong ohigh, \
248                                     l_ulong olow, l_loff_t *res, \
249                                     l_uint whence); }
250 141     AUE_GETDIRENTRIES       STD { int linux_getdents(l_uint fd, void *dent, \
251                                     l_uint count); }
252 ; 142: newselect
253 142     AUE_SELECT      STD     { int linux_select(l_int nfds, \
254                                     l_fd_set *readfds, l_fd_set *writefds, \
255                                     l_fd_set *exceptfds, \
256                                     struct l_timeval *timeout); }
257 143     AUE_FLOCK       NOPROTO { int flock(int fd, int how); }
258 144     AUE_MSYNC       STD     { int linux_msync(l_ulong addr, \
259                                     l_size_t len, l_int fl); }
260 145     AUE_READV       STD { int linux_readv(l_ulong fd, struct l_iovec32 *iovp, \
261                                     l_ulong iovcnt); }
262 146     AUE_WRITEV      STD { int linux_writev(l_ulong fd, struct l_iovec32 *iovp, \
263                                     l_ulong iovcnt); }
264 147     AUE_GETSID      STD     { int linux_getsid(l_pid_t pid); }
265 148     AUE_NULL        STD     { int linux_fdatasync(l_uint fd); }
266 149     AUE_SYSCTL      STD     { int linux_sysctl( \
267                                     struct l___sysctl_args *args); }
268 150     AUE_MLOCK       NOPROTO { int mlock(const void *addr, size_t len); }
269 151     AUE_MUNLOCK     NOPROTO { int munlock(const void *addr, size_t len); }
270 152     AUE_MLOCKALL    NOPROTO { int mlockall(int how); }
271 153     AUE_MUNLOCKALL  NOPROTO { int munlockall(void); }
272 154     AUE_SCHED_SETPARAM      STD     { int linux_sched_setparam(l_pid_t pid, \
273                                     struct sched_param *param); }
274 155     AUE_SCHED_GETPARAM      STD     { int linux_sched_getparam(l_pid_t pid, \
275                                     struct sched_param *param); }
276 156     AUE_SCHED_SETSCHEDULER  STD { int linux_sched_setscheduler( \
277                                     l_pid_t pid, l_int policy, \
278                                     struct sched_param *param); }
279 157     AUE_SCHED_GETSCHEDULER  STD { int linux_sched_getscheduler( \
280                                     l_pid_t pid); }
281 158     AUE_NULL        NOPROTO { int sched_yield(void); }
282 159     AUE_SCHED_GET_PRIORITY_MAX      STD { int linux_sched_get_priority_max( \
283                                     l_int policy); }
284 160     AUE_SCHED_GET_PRIORITY_MIN      STD { int linux_sched_get_priority_min( \
285                                     l_int policy); }
286 161     AUE_SCHED_RR_GET_INTERVAL       STD { int linux_sched_rr_get_interval(l_pid_t pid, \
287                                     struct l_timespec *interval); }
288 162     AUE_NULL        STD     { int linux_nanosleep( \
289                                     const struct l_timespec *rqtp, \
290                                     struct l_timespec *rmtp); }
291 163     AUE_NULL        STD     { int linux_mremap(l_ulong addr, \
292                                     l_ulong old_len, l_ulong new_len, \
293                                     l_ulong flags, l_ulong new_addr); }
294 164     AUE_SETRESUID   STD     { int linux_setresuid16(l_uid16_t ruid, \
295                                     l_uid16_t euid, l_uid16_t suid); }
296 165     AUE_GETRESUID   STD     { int linux_getresuid16(l_uid16_t *ruid, \
297                                     l_uid16_t *euid, l_uid16_t *suid); }
298 166     AUE_NULL        UNIMPL  vm86
299 167     AUE_NULL        UNIMPL  query_module
300 168     AUE_POLL        NOPROTO { int poll(struct pollfd *fds, \
301                                     unsigned int nfds, int timeout); }
302 169     AUE_NULL        UNIMPL  nfsservctl
303 170     AUE_SETRESGID   STD     { int linux_setresgid16(l_gid16_t rgid, \
304                                     l_gid16_t egid, l_gid16_t sgid); }
305 171     AUE_GETRESGID   STD     { int linux_getresgid16(l_gid16_t *rgid, \
306                                     l_gid16_t *egid, l_gid16_t *sgid); }
307 172     AUE_PRCTL       STD     { int linux_prctl(l_int option, l_int arg2, l_int arg3, \
308                                     l_int arg4, l_int arg5); }
309 173     AUE_NULL        STD     { int linux_rt_sigreturn( \
310                                     struct l_ucontext *ucp); }
311 174     AUE_NULL        STD     { int linux_rt_sigaction(l_int sig, \
312                                     l_sigaction_t *act, l_sigaction_t *oact, \
313                                     l_size_t sigsetsize); }
314 175     AUE_NULL        STD     { int linux_rt_sigprocmask(l_int how, \
315                                     l_sigset_t *mask, l_sigset_t *omask, \
316                                     l_size_t sigsetsize); }
317 176     AUE_NULL        STD     { int linux_rt_sigpending(l_sigset_t *set, \
318                                     l_size_t sigsetsize); }
319 177     AUE_NULL        STD     { int linux_rt_sigtimedwait(l_sigset_t *mask, \
320                                     l_siginfo_t *ptr, \
321                                     struct l_timeval *timeout, \
322                                     l_size_t sigsetsize); }
323 178     AUE_NULL        STD     { int linux_rt_sigqueueinfo(l_pid_t pid, l_int sig, \
324                                     l_siginfo_t *info); }
325 179     AUE_NULL        STD     { int linux_rt_sigsuspend( \
326                                     l_sigset_t *newset, \
327                                     l_size_t sigsetsize); }
328 180     AUE_PREAD       STD     { int linux_pread(l_uint fd, char *buf, \
329                                     l_size_t nbyte, l_loff_t offset); }
330 181     AUE_PWRITE      STD     { int linux_pwrite(l_uint fd, char *buf, \
331                                     l_size_t nbyte, l_loff_t offset); }
332 182     AUE_CHOWN       STD     { int linux_chown16(char *path, \
333                                     l_uid16_t uid, l_gid16_t gid); }
334 183     AUE_GETCWD      STD     { int linux_getcwd(char *buf, \
335                                     l_ulong bufsize); }
336 184     AUE_CAPGET      STD     { int linux_capget(struct l_user_cap_header *hdrp, \
337                                     struct l_user_cap_data *datap); }
338 185     AUE_CAPSET      STD     { int linux_capset(struct l_user_cap_header *hdrp, \
339                                     struct l_user_cap_data *datap); }
340 186     AUE_NULL        STD     { int linux_sigaltstack(l_stack_t *uss, \
341                                     l_stack_t *uoss); }
342 187     AUE_SENDFILE    STD     { int linux_sendfile(void); }
343 188     AUE_GETPMSG     UNIMPL  getpmsg
344 189     AUE_PUTPMSG     UNIMPL  putpmsg
345 190     AUE_VFORK       STD     { int linux_vfork(void); }
346 ; 191: ugetrlimit
347 191     AUE_GETRLIMIT   STD     { int linux_getrlimit(l_uint resource, \
348                                     struct l_rlimit *rlim); }
349 192     AUE_MMAP        STD     { int linux_mmap2(l_ulong addr, l_ulong len, \
350                                     l_ulong prot, l_ulong flags, l_ulong fd, \
351                                     l_ulong pgoff); }
352 193     AUE_TRUNCATE    STD     { int linux_truncate64(char *path, \
353                                     l_loff_t length); }
354 194     AUE_FTRUNCATE   STD     { int linux_ftruncate64(l_uint fd, \
355                                     l_loff_t length); }
356 195     AUE_STAT        STD     { int linux_stat64(const char *filename, \
357                                     struct l_stat64 *statbuf); }
358 196     AUE_LSTAT       STD     { int linux_lstat64(const char *filename, \
359                                     struct l_stat64 *statbuf); }
360 197     AUE_FSTAT       STD     { int linux_fstat64(l_int fd, \
361                                     struct l_stat64 *statbuf); }
362 198     AUE_LCHOWN      STD     { int linux_lchown(char *path, l_uid_t uid, \
363                                     l_gid_t gid); }
364 199     AUE_GETUID      STD     { int linux_getuid(void); }
365 200     AUE_GETGID      STD     { int linux_getgid(void); }
366 201     AUE_GETEUID     NOPROTO { int geteuid(void); }
367 202     AUE_GETEGID     NOPROTO { int getegid(void); }
368 203     AUE_SETREUID    NOPROTO { int setreuid(uid_t ruid, uid_t euid); }
369 204     AUE_SETREGID    NOPROTO { int setregid(gid_t rgid, gid_t egid); }
370 205     AUE_GETGROUPS   STD     { int linux_getgroups(l_int gidsetsize, \
371                                     l_gid_t *grouplist); }
372 206     AUE_SETGROUPS   STD     { int linux_setgroups(l_int gidsetsize, \
373                                     l_gid_t *grouplist); }
374 207     AUE_FCHOWN      NODEF   fchown fchown fchown_args int
375 208     AUE_SETRESUID   NOPROTO { int setresuid(uid_t ruid, uid_t euid, \
376                                     uid_t suid); }
377 209     AUE_GETRESUID   NOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \
378                                     uid_t *suid); }
379 210     AUE_SETRESGID   NOPROTO { int setresgid(gid_t rgid, gid_t egid, \
380                                     gid_t sgid); }
381 211     AUE_GETRESGID   NOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \
382                                     gid_t *sgid); }
383 212     AUE_CHOWN       STD     { int linux_chown(char *path, l_uid_t uid, \
384                                     l_gid_t gid); }
385 213     AUE_SETUID      NOPROTO { int setuid(uid_t uid); }
386 214     AUE_SETGID      NOPROTO { int setgid(gid_t gid); }
387 215     AUE_SETFSUID    STD     { int linux_setfsuid(l_uid_t uid); }
388 216     AUE_SETFSGID    STD     { int linux_setfsgid(l_gid_t gid); }
389 217     AUE_PIVOT_ROOT  STD     { int linux_pivot_root(char *new_root, \
390                                     char *put_old); }
391 218     AUE_MINCORE     STD     { int linux_mincore(l_ulong start, \
392                                     l_size_t len, u_char *vec); }
393 219     AUE_MADVISE     NOPROTO { int madvise(void *addr, size_t len, \
394                                     int behav); }
395 220     AUE_GETDIRENTRIES       STD { int linux_getdents64(l_uint fd, \
396                                     void *dirent, l_uint count); }
397 221     AUE_FCNTL       STD     { int linux_fcntl64(l_uint fd, l_uint cmd, \
398                                     uintptr_t arg); }
399 222     AUE_NULL        UNIMPL
400 223     AUE_NULL        UNIMPL
401 224     AUE_NULL        STD     { long linux_gettid(void); }
402 225     AUE_NULL        UNIMPL  linux_readahead
403 226     AUE_NULL        STD     { int linux_setxattr(void); }
404 227     AUE_NULL        STD     { int linux_lsetxattr(void); }
405 228     AUE_NULL        STD     { int linux_fsetxattr(void); }
406 229     AUE_NULL        STD     { int linux_getxattr(void); }
407 230     AUE_NULL        STD     { int linux_lgetxattr(void); }
408 231     AUE_NULL        STD     { int linux_fgetxattr(void); }
409 232     AUE_NULL        STD     { int linux_listxattr(void); }
410 233     AUE_NULL        STD     { int linux_llistxattr(void); }
411 234     AUE_NULL        STD     { int linux_flistxattr(void); }
412 235     AUE_NULL        STD     { int linux_removexattr(void); }
413 236     AUE_NULL        STD     { int linux_lremovexattr(void); }
414 237     AUE_NULL        STD     { int linux_fremovexattr(void); }
415 238     AUE_NULL        STD     { int linux_tkill(int tid, int sig); }
416 239     AUE_SENDFILE    UNIMPL  linux_sendfile64
417 240     AUE_NULL        STD     { int linux_sys_futex(void *uaddr, int op, uint32_t val, \
418                                         struct l_timespec *timeout, uint32_t *uaddr2, uint32_t val3); }
419 241     AUE_NULL        STD     { int linux_sched_setaffinity(l_pid_t pid, l_uint len, \
420                                         l_ulong *user_mask_ptr); }
421 242     AUE_NULL        STD     { int linux_sched_getaffinity(l_pid_t pid, l_uint len, \
422                                         l_ulong *user_mask_ptr); }
423 243     AUE_NULL        STD     { int linux_set_thread_area(struct l_user_desc *desc); }
424 244     AUE_NULL        UNIMPL  linux_get_thread_area
425 245     AUE_NULL        UNIMPL  linux_io_setup
426 246     AUE_NULL        UNIMPL  linux_io_destroy
427 247     AUE_NULL        UNIMPL  linux_io_getevents
428 248     AUE_NULL        UNIMPL  linux_io_submit
429 249     AUE_NULL        UNIMPL  linux_io_cancel
430 250     AUE_NULL        STD     { int linux_fadvise64(int fd, l_loff_t offset, \
431                                         l_size_t len, int advice); }
432 251     AUE_NULL        UNIMPL
433 252     AUE_EXIT        STD     { int linux_exit_group(int error_code); }
434 253     AUE_NULL        STD     { int linux_lookup_dcookie(void); }
435 254     AUE_NULL        STD     { int linux_epoll_create(l_int size); }
436 255     AUE_NULL        STD     { int linux_epoll_ctl(l_int epfd, l_int op, l_int fd, \
437                                         struct epoll_event *event); }
438 256     AUE_NULL        STD     { int linux_epoll_wait(l_int epfd, struct epoll_event *events, \
439                                         l_int maxevents, l_int timeout); }
440 257     AUE_NULL        STD     { int linux_remap_file_pages(void); }
441 258     AUE_NULL        STD     { int linux_set_tid_address(int *tidptr); }
442 259     AUE_NULL        STD     { int linux_timer_create(clockid_t clock_id, \
443                                         struct sigevent *evp, l_timer_t *timerid); }
444 260     AUE_NULL        STD     { int linux_timer_settime(l_timer_t timerid, l_int flags, \
445                                         const struct itimerspec *new, struct itimerspec *old); }
446 261     AUE_NULL        STD     { int linux_timer_gettime(l_timer_t timerid, struct itimerspec *setting); }
447 262     AUE_NULL        STD     { int linux_timer_getoverrun(l_timer_t timerid); }
448 263     AUE_NULL        STD     { int linux_timer_delete(l_timer_t timerid); }
449 264     AUE_CLOCK_SETTIME       STD     { int linux_clock_settime(clockid_t which, struct l_timespec *tp); }
450 265     AUE_NULL        STD     { int linux_clock_gettime(clockid_t which, struct l_timespec *tp); }
451 266     AUE_NULL        STD     { int linux_clock_getres(clockid_t which, struct l_timespec *tp); }
452 267     AUE_NULL        STD     { int linux_clock_nanosleep(clockid_t which, int flags, \
453                                         struct l_timespec *rqtp, struct l_timespec *rmtp); }
454 268     AUE_STATFS      STD     { int linux_statfs64(char *path, size_t bufsize, struct l_statfs64_buf *buf); }
455 269     AUE_FSTATFS     STD     { int linux_fstatfs64(l_uint fd, size_t bufsize, struct l_statfs64_buf *buf); }
456 270     AUE_NULL        STD     { int linux_tgkill(int tgid, int pid, int sig); }
457 271     AUE_UTIMES      STD     { int linux_utimes(char *fname, \
458                                         struct l_timeval *tptr); }
459 272     AUE_NULL        STD     { int linux_fadvise64_64(int fd, \
460                                         l_loff_t offset, l_loff_t len, \
461                                         int advice); }
462 273     AUE_NULL        UNIMPL  vserver
463 274     AUE_NULL        STD     { int linux_mbind(void); }
464 275     AUE_NULL        STD     { int linux_get_mempolicy(void); }
465 276     AUE_NULL        STD     { int linux_set_mempolicy(void); }
466 ; Linux 2.6.6:
467 277     AUE_NULL        STD     { int linux_mq_open(void); }
468 278     AUE_NULL        STD     { int linux_mq_unlink(void); }
469 279     AUE_NULL        STD     { int linux_mq_timedsend(void); }
470 280     AUE_NULL        STD     { int linux_mq_timedreceive(void); }
471 281     AUE_NULL        STD     { int linux_mq_notify(void); }
472 282     AUE_NULL        STD     { int linux_mq_getsetattr(void); }
473 283     AUE_NULL        STD     { int linux_kexec_load(void); }
474 284     AUE_WAIT6       STD     { int linux_waitid(int idtype, l_pid_t id, \
475                                     l_siginfo_t *info, int options, \
476                                     struct l_rusage *rusage); }
477 285     AUE_NULL        UNIMPL
478 ; Linux 2.6.11:
479 286     AUE_NULL        STD     { int linux_add_key(void); }
480 287     AUE_NULL        STD     { int linux_request_key(void); }
481 288     AUE_NULL        STD     { int linux_keyctl(void); }
482 ; Linux 2.6.13:
483 289     AUE_NULL        STD     { int linux_ioprio_set(void); }
484 290     AUE_NULL        STD     { int linux_ioprio_get(void); }
485 291     AUE_NULL        STD     { int linux_inotify_init(void); }
486 292     AUE_NULL        STD     { int linux_inotify_add_watch(void); }
487 293     AUE_NULL        STD     { int linux_inotify_rm_watch(void); }
488 ; Linux 2.6.16:
489 294     AUE_NULL        STD     { int linux_migrate_pages(void); }
490 295     AUE_OPEN_RWTC   STD     { int linux_openat(l_int dfd, const char *filename, \
491                                         l_int flags, l_int mode); }
492 296     AUE_MKDIRAT     STD     { int linux_mkdirat(l_int dfd, const char *pathname, \
493                                         l_int mode); }
494 297     AUE_MKNODAT     STD     { int linux_mknodat(l_int dfd, const char *filename, \
495                                         l_int mode, l_uint dev); }
496 298     AUE_FCHOWNAT    STD     { int linux_fchownat(l_int dfd, const char *filename, \
497                                         l_uid16_t uid, l_gid16_t gid, l_int flag); }
498 299     AUE_FUTIMESAT   STD     { int linux_futimesat(l_int dfd, char *filename, \
499                                         struct l_timeval *utimes); }
500 300     AUE_FSTATAT     STD     { int linux_fstatat64(l_int dfd, char *pathname, \
501                                         struct l_stat64 *statbuf, l_int flag); }
502 301     AUE_UNLINKAT    STD     { int linux_unlinkat(l_int dfd, const char *pathname, \
503                                         l_int flag); }
504 302     AUE_RENAMEAT    STD     { int linux_renameat(l_int olddfd, const char *oldname, \
505                                         l_int newdfd, const char *newname); }
506 303     AUE_LINKAT      STD     { int linux_linkat(l_int olddfd, const char *oldname, \
507                                         l_int newdfd, const char *newname, l_int flag); }
508 304     AUE_SYMLINKAT   STD     { int linux_symlinkat(const char *oldname, l_int newdfd, \
509                                         const char *newname); }
510 305     AUE_READLINKAT  STD     { int linux_readlinkat(l_int dfd, const char *path, \
511                                         char *buf, l_int bufsiz); }
512 306     AUE_FCHMODAT    STD     { int linux_fchmodat(l_int dfd, const char *filename, \
513                                         l_mode_t mode); }
514 307     AUE_FACCESSAT   STD     { int linux_faccessat(l_int dfd, const char *filename, \
515                                         l_int amode); }
516 308     AUE_SELECT      STD     { int linux_pselect6(l_int nfds, l_fd_set *readfds,     \
517                                         l_fd_set *writefds, l_fd_set *exceptfds,        \
518                                         struct l_timespec *tsp, l_uintptr_t *sig); }
519 309     AUE_POLL        STD     { int linux_ppoll(struct pollfd *fds, uint32_t nfds,    \
520                                     struct l_timespec *tsp, l_sigset_t *sset, l_size_t ssize); }
521 310     AUE_NULL        STD     { int linux_unshare(void); }
522 ; Linux 2.6.17:
523 311     AUE_NULL        STD     { int linux_set_robust_list(struct linux_robust_list_head *head, \
524                                         l_size_t len); }
525 312     AUE_NULL        STD     { int linux_get_robust_list(l_int pid, \
526                                     struct linux_robust_list_head **head, l_size_t *len); }
527 313     AUE_NULL        STD     { int linux_splice(void); }
528 314     AUE_NULL        STD     { int linux_sync_file_range(void); }
529 315     AUE_NULL        STD     { int linux_tee(void); }
530 316     AUE_NULL        STD     { int linux_vmsplice(void); }
531 ; Linux 2.6.18:
532 317     AUE_NULL        STD     { int linux_move_pages(void); }
533 ; Linux 2.6.19:
534 318     AUE_NULL        STD     { int linux_getcpu(void); }
535 319     AUE_NULL        STD     { int linux_epoll_pwait(l_int epfd, struct epoll_event *events, \
536                                     l_int maxevents, l_int timeout, l_sigset_t *mask, \
537                                     l_size_t sigsetsize); }
538 ; Linux 2.6.22:
539 320     AUE_FUTIMESAT   STD     { int linux_utimensat(l_int dfd, const char *pathname, \
540                                         const struct l_timespec *times, l_int flags); }
541 321     AUE_NULL        STD     { int linux_signalfd(void); }
542 322     AUE_NULL        STD     { int linux_timerfd_create(l_int clockid, l_int flags); }
543 323     AUE_NULL        STD     { int linux_eventfd(l_uint initval); }
544 ; Linux 2.6.23:
545 324     AUE_NULL        STD     { int linux_fallocate(l_int fd, l_int mode, \
546                                     l_loff_t offset, l_loff_t len); }
547 ; Linux 2.6.25:
548 325     AUE_NULL        STD     { int linux_timerfd_settime(l_int fd, l_int flags,      \
549                                     const struct l_itimerspec *new_value,               \
550                                     struct l_itimerspec *old_value); }
551 326     AUE_NULL        STD     { int linux_timerfd_gettime(l_int fd,   \
552                                     struct l_itimerspec *old_value); }
553 ; Linux 2.6.27:
554 327     AUE_NULL        STD     { int linux_signalfd4(void); }
555 328     AUE_NULL        STD     { int linux_eventfd2(l_uint initval, l_int flags); }
556 329     AUE_NULL        STD     { int linux_epoll_create1(l_int flags); }
557 330     AUE_NULL        STD     { int linux_dup3(l_int oldfd,           \
558                                         l_int newfd, l_int flags); }
559 331     AUE_NULL        STD     { int linux_pipe2(l_int *pipefds, l_int flags); }
560 332     AUE_NULL        STD     { int linux_inotify_init1(void); }
561 ; Linux 2.6.30:
562 333     AUE_NULL        STD     { int linux_preadv(l_ulong fd,                  \
563                                     struct iovec *vec, l_ulong vlen,            \
564                                     l_ulong pos_l, l_ulong pos_h); }
565 334     AUE_NULL        STD     { int linux_pwritev(l_ulong fd,                 \
566                                     struct iovec *vec, l_ulong vlen,            \
567                                     l_ulong pos_l, l_ulong pos_h); }
568 ; Linux 2.6.31:
569 335     AUE_NULL        STD     { int linux_rt_tgsigqueueinfo(l_pid_t tgid,     \
570                                     l_pid_t tid, l_int sig, l_siginfo_t *uinfo); }
571 336     AUE_NULL        STD     { int linux_perf_event_open(void); }
572 ; Linux 2.6.33:
573 337     AUE_NULL        STD     { int linux_recvmmsg(l_int s,                   \
574                                     struct l_mmsghdr *msg, l_uint vlen,         \
575                                     l_uint flags, struct l_timespec *timeout); }
576 338     AUE_NULL        STD     { int linux_fanotify_init(void); }
577 339     AUE_NULL        STD     { int linux_fanotify_mark(void); }
578 ; Linux 2.6.36:
579 340     AUE_NULL        STD     { int linux_prlimit64(l_pid_t pid,      \
580                                     l_uint resource,                    \
581                                     struct rlimit *new,                 \
582                                     struct rlimit *old); }
583 ; Linux 2.6.39:
584 341     AUE_NULL        STD     { int linux_name_to_handle_at(void); }
585 342     AUE_NULL        STD     { int linux_open_by_handle_at(void); }
586 343     AUE_NULL        STD     { int linux_clock_adjtime(void); }
587 344     AUE_SYNC        STD     { int linux_syncfs(l_int fd); }
588 ; Linux 3.0:
589 345     AUE_NULL        STD     { int linux_sendmmsg(l_int s,                   \
590                                     struct l_mmsghdr *msg, l_uint vlen,         \
591                                     l_uint flags); }
592 346     AUE_NULL        STD     { int linux_setns(void); }
593 ; Linux 3.2 (glibc 2.15):
594 347     AUE_NULL        STD     { int linux_process_vm_readv(l_pid_t pid,       \
595                                     const struct iovec *lvec, l_ulong liovcnt,  \
596                                     const struct iovec *rvec, l_ulong riovcnt,  \
597                                     l_ulong flags); }
598 348     AUE_NULL        STD     { int linux_process_vm_writev(l_pid_t pid,      \
599                                     const struct iovec *lvec, l_ulong liovcnt,  \
600                                     const struct iovec *rvec, l_ulong riovcnt,  \
601                                     l_ulong flags); }
602 ; Linux 3.5 (no glibc wrapper):
603 349     AUE_NULL        STD     { int linux_kcmp(l_pid_t pid1, l_pid_t pid2,    \
604                                     l_int type, l_ulong idx1, l_ulong idx); }
605 ; Linux 3.8 (no glibc wrapper):
606 350     AUE_NULL        STD     { int linux_finit_module(l_int fd,              \
607                                     const char *uargs, l_int flags); }
608 ; Linux 3.14:
609 351     AUE_NULL        STD     { int linux_sched_setattr(l_pid_t pid,          \
610                                     void *attr, l_uint flags); }
611 352     AUE_NULL        STD     { int linux_sched_getattr(l_pid_t pid,          \
612                                     void *attr, l_uint size, l_uint flags); }
613 ; Linux 3.15:
614 353     AUE_NULL        STD     { int linux_renameat2(l_int oldfd,              \
615                                     const char *oldname, l_int newfd,           \
616                                     const char *newname, unsigned int flags); }
617 ; Linux 3.17:
618 354     AUE_NULL        STD     { int linux_seccomp(l_uint op, l_uint flags,    \
619                                     const char *uargs); }
620 355     AUE_NULL        STD     { int linux_getrandom(char *buf,                \
621                                     l_size_t count, l_uint flags); }
622 356     AUE_NULL        STD     { int linux_memfd_create(const char *uname_ptr, \
623                                     l_uint flags); }
624 ; Linux 3.18:
625 357     AUE_NULL        STD     { int linux_bpf(l_int cmd, void *attr,          \
626                                     l_uint size); }
627 ; Linux 3.19:
628 358     AUE_NULL        STD     { int linux_execveat(l_int dfd,                 \
629                                     const char *filename, const char **argv,    \
630                                     const char **envp, l_int flags); }
631 ; Linux 4.3: sockets now direct system calls:
632 359     AUE_SOCKET      STD     { int linux_socket(l_int domain, l_int type, \
633                                     l_int protocol); }
634 360     AUE_SOCKETPAIR  STD     { int linux_socketpair(l_int domain, \
635                                     l_int type, l_int protocol, l_uintptr_t rsv); }
636 361     AUE_BIND        STD     { int linux_bind(l_int s, l_uintptr_t name, \
637                                     l_int namelen); }
638 362     AUE_CONNECT     STD     { int linux_connect(l_int s, l_uintptr_t name, \
639                                     l_int namelen); }
640 363     AUE_LISTEN      STD     { int linux_listen(l_int s, l_int backlog); }
641 364     AUE_ACCEPT      STD     { int linux_accept4(l_int s, l_uintptr_t addr, \
642                                     l_uintptr_t namelen, l_int flags); }
643 365     AUE_GETSOCKOPT  STD     { int linux_getsockopt(l_int s, l_int level, \
644                                     l_int optname, l_uintptr_t optval, \
645                                     l_uintptr_t optlen); }
646 366     AUE_SETSOCKOPT  STD     { int linux_setsockopt(l_int s, l_int level, \
647                                     l_int optname, l_uintptr_t optval, \
648                                     l_int optlen); }
649 367     AUE_GETSOCKNAME STD     { int linux_getsockname(l_int s, \
650                                     l_uintptr_t addr, l_uintptr_t namelen); }
651 368     AUE_GETPEERNAME STD     { int linux_getpeername(l_int s, \
652                                     l_uintptr_t addr, l_uintptr_t namelen); }
653 369     AUE_SENDTO      STD     { int linux_sendto(l_int s, l_uintptr_t msg, \
654                                     l_int len, l_int flags, l_uintptr_t to, \
655                                     l_int tolen); }
656 370     AUE_SENDMSG     STD     { int linux_sendmsg(l_int s, l_uintptr_t msg, \
657                                     l_int flags); }
658 371     AUE_RECVFROM    STD     { int linux_recvfrom(l_int s, l_uintptr_t buf, \
659                                     l_size_t len, l_int flags, l_uintptr_t from, \
660                                     l_uintptr_t fromlen); }
661 372     AUE_RECVMSG     STD     { int linux_recvmsg(l_int s, l_uintptr_t msg, \
662                                     l_int flags); }
663 373     AUE_NULL        STD     { int linux_shutdown(l_int s, l_int how); }
664 ;
665 ; Linux 4.2:
666 374     AUE_NULL        STD     { int linux_userfaultfd(l_int flags); }
667 ; Linux 4.3:
668 375     AUE_NULL        STD     { int linux_membarrier(l_int cmd, l_int flags); }
669 ; Linux 4.4:
670 376     AUE_NULL        STD     { int linux_mlock2(l_ulong start, l_size_t len, \
671                                     l_int flags); }
672 ; Linux 4.5:
673 377     AUE_NULL        STD     { int linux_copy_file_range(l_int fd_in,        \
674                                     l_loff_t *off_in, l_int fd_out,             \
675                                     l_loff_t *off_out, l_size_t len,            \
676                                     l_uint flags); }
677 ; Linux 4.6:
678 378     AUE_NULL        STD     { int linux_preadv2(l_ulong fd,                 \
679                                     const struct iovec *vec, l_ulong vlen,      \
680                                     l_ulong pos_l, l_ulong pos_h, l_int flags); }
681 379     AUE_NULL        STD     { int linux_pwritev2(l_ulong fd,                \
682                                     const struct iovec *vec, l_ulong vlen,      \
683                                     l_ulong pos_l, l_ulong pos_h, l_int flags); }
684 ; Linux 4.8:
685 380     AUE_NULL        STD     { int linux_pkey_mprotect(l_ulong start,        \
686                                     l_size_t len, l_ulong prot, l_int pkey); }
687 381     AUE_NULL        STD     { int linux_pkey_alloc(l_ulong flags,           \
688                                     l_ulong init_val); }
689 382     AUE_NULL        STD     { int linux_pkey_free(l_int pkey); }
690
691 ; please, keep this line at the end.
692 383     AUE_NULL        UNIMPL  nosys
693 ; vim: syntax=off