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.
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
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.
29 #include <sys/param.h>
30 #include <sys/sysent.h>
31 #include <sys/sysproto.h>
32 #include <compat/linux/linux_sysproto.h>
33 #include <amd64/linux32/linux.h>
34 #include <amd64/linux32/linux32_proto.h>
36 ; Isn't pretty, but there seems to be no other way to trap nosys
37 #define nosys linux_nosys
39 ; #ifdef's, etc. may be included, and are copied to the output files.
41 0 AUE_NULL UNIMPL setup
42 1 AUE_EXIT STD { void linux_exit(int rval); }
43 2 AUE_FORK STD { int linux_fork(void); }
44 3 AUE_NULL NOPROTO { int read(int fd, char *buf, \
46 4 AUE_NULL NOPROTO { int write(int fd, char *buf, \
48 5 AUE_OPEN_RWTC STD { int linux_open(char *path, l_int flags, \
50 6 AUE_CLOSE NOPROTO { int close(int fd); }
51 7 AUE_WAIT4 STD { int linux_waitpid(l_pid_t pid, \
52 l_int *status, l_int options); }
53 8 AUE_CREAT STD { int linux_creat(char *path, \
55 9 AUE_LINK STD { int linux_link(char *path, char *to); }
56 10 AUE_UNLINK STD { int linux_unlink(char *path); }
57 11 AUE_EXECVE STD { int linux_execve(char *path, uint32_t *argp, \
59 12 AUE_CHDIR STD { int linux_chdir(char *path); }
60 13 AUE_NULL STD { int linux_time(l_time_t *tm); }
61 14 AUE_MKNOD STD { int linux_mknod(char *path, l_int mode, \
63 15 AUE_CHMOD STD { int linux_chmod(char *path, \
65 16 AUE_LCHOWN STD { int linux_lchown16(char *path, \
66 l_uid16_t uid, l_gid16_t gid); }
67 17 AUE_NULL UNIMPL break
68 18 AUE_STAT STD { int linux_stat(char *path, \
69 struct linux_stat *up); }
70 19 AUE_LSEEK STD { int linux_lseek(l_uint fdes, l_off_t off, \
72 20 AUE_GETPID STD { int linux_getpid(void); }
73 21 AUE_MOUNT STD { int linux_mount(char *specialfile, \
74 char *dir, char *filesystemtype, \
75 l_ulong rwflag, void *data); }
76 22 AUE_UMOUNT STD { int linux_oldumount(char *path); }
77 23 AUE_SETUID STD { int linux_setuid16(l_uid16_t uid); }
78 24 AUE_GETUID STD { int linux_getuid16(void); }
79 25 AUE_SETTIMEOFDAY STD { int linux_stime(void); }
80 26 AUE_PTRACE STD { int linux_ptrace(l_long req, l_long pid, \
81 l_long addr, l_long data); }
82 27 AUE_NULL STD { int linux_alarm(l_uint secs); }
83 28 AUE_FSTAT UNIMPL fstat
84 29 AUE_NULL STD { int linux_pause(void); }
85 30 AUE_UTIME STD { int linux_utime(char *fname, \
86 struct l_utimbuf *times); }
87 31 AUE_NULL UNIMPL stty
88 32 AUE_NULL UNIMPL gtty
89 33 AUE_ACCESS STD { int linux_access(char *path, l_int amode); }
90 34 AUE_NICE STD { int linux_nice(l_int inc); }
91 35 AUE_NULL UNIMPL ftime
92 36 AUE_SYNC NOPROTO { int sync(void); }
93 37 AUE_KILL STD { int linux_kill(l_int pid, l_int signum); }
94 38 AUE_RENAME STD { int linux_rename(char *from, char *to); }
95 39 AUE_MKDIR STD { int linux_mkdir(char *path, l_int mode); }
96 40 AUE_RMDIR STD { int linux_rmdir(char *path); }
97 41 AUE_DUP NOPROTO { int dup(u_int fd); }
98 42 AUE_PIPE STD { int linux_pipe(l_int *pipefds); }
99 43 AUE_NULL STD { int linux_times(struct l_times_argv *buf); }
100 44 AUE_NULL UNIMPL prof
101 45 AUE_NULL STD { int linux_brk(l_ulong dsend); }
102 46 AUE_SETGID STD { int linux_setgid16(l_gid16_t gid); }
103 47 AUE_GETGID STD { int linux_getgid16(void); }
104 48 AUE_NULL STD { int linux_signal(l_int sig, \
105 l_handler_t handler); }
106 49 AUE_GETEUID STD { int linux_geteuid16(void); }
107 50 AUE_GETEGID STD { int linux_getegid16(void); }
108 51 AUE_ACCT NOPROTO { int acct(char *path); }
109 52 AUE_UMOUNT STD { int linux_umount(char *path, l_int flags); }
110 53 AUE_NULL UNIMPL lock
111 54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \
113 55 AUE_FCNTL STD { int linux_fcntl(l_uint fd, l_uint cmd, \
115 56 AUE_NULL UNIMPL mpx
116 57 AUE_SETPGRP NOPROTO { int setpgid(int pid, int pgid); }
117 58 AUE_NULL UNIMPL ulimit
118 59 AUE_NULL STD { int linux_olduname(void); }
119 60 AUE_UMASK NOPROTO { int umask(int newmask); }
120 61 AUE_CHROOT NOPROTO { int chroot(char *path); }
121 62 AUE_NULL STD { int linux_ustat(l_dev_t dev, \
122 struct l_ustat *ubuf); }
123 63 AUE_DUP2 NOPROTO { int dup2(u_int from, u_int to); }
124 64 AUE_GETPPID STD { int linux_getppid(void); }
125 65 AUE_GETPGRP NOPROTO { int getpgrp(void); }
126 66 AUE_SETSID NOPROTO { int setsid(void); }
127 67 AUE_NULL STD { int linux_sigaction(l_int sig, \
128 l_osigaction_t *nsa, \
129 l_osigaction_t *osa); }
130 68 AUE_NULL STD { int linux_sgetmask(void); }
131 69 AUE_NULL STD { int linux_ssetmask(l_osigset_t mask); }
132 70 AUE_SETREUID STD { int linux_setreuid16(l_uid16_t ruid, \
134 71 AUE_SETREGID STD { int linux_setregid16(l_gid16_t rgid, \
136 72 AUE_NULL STD { int linux_sigsuspend(l_int hist0, \
137 l_int hist1, l_osigset_t mask); }
138 73 AUE_NULL STD { int linux_sigpending(l_osigset_t *mask); }
139 74 AUE_SYSCTL STD { int linux_sethostname(char *hostname, \
141 75 AUE_SETRLIMIT STD { int linux_setrlimit(l_uint resource, \
142 struct l_rlimit *rlim); }
143 76 AUE_GETRLIMIT STD { int linux_old_getrlimit(l_uint resource, \
144 struct l_rlimit *rlim); }
145 77 AUE_GETRUSAGE STD { int linux_getrusage(int who, \
146 struct l_rusage *rusage); }
147 78 AUE_NULL STD { int linux_gettimeofday( \
148 struct l_timeval *tp, \
149 struct timezone *tzp); }
150 79 AUE_SETTIMEOFDAY STD { int linux_settimeofday( \
151 struct l_timeval *tp, \
152 struct timezone *tzp); }
153 80 AUE_GETGROUPS STD { int linux_getgroups16(l_uint gidsetsize, \
154 l_gid16_t *gidset); }
155 81 AUE_SETGROUPS STD { int linux_setgroups16(l_uint gidsetsize, \
156 l_gid16_t *gidset); }
157 82 AUE_SELECT STD { int linux_old_select( \
158 struct l_old_select_argv *ptr); }
159 83 AUE_SYMLINK STD { int linux_symlink(char *path, char *to); }
161 84 AUE_LSTAT STD { int linux_lstat(char *path, struct linux_lstat *up); }
162 85 AUE_READLINK STD { int linux_readlink(char *name, char *buf, \
164 86 AUE_USELIB UNIMPL linux_uselib
165 87 AUE_SWAPON NOPROTO { int swapon(char *name); }
166 88 AUE_REBOOT STD { int linux_reboot(l_int magic1, \
167 l_int magic2, l_uint cmd, void *arg); }
169 89 AUE_GETDIRENTRIES STD { int linux_readdir(l_uint fd, \
170 struct l_dirent *dent, l_uint count); }
172 90 AUE_MMAP STD { int linux_mmap(struct l_mmap_argv *ptr); }
173 91 AUE_MUNMAP NOPROTO { int munmap(caddr_t addr, int len); }
174 92 AUE_TRUNCATE STD { int linux_truncate(char *path, \
176 93 AUE_FTRUNCATE STD { int linux_ftruncate(int fd, long length); }
177 94 AUE_FCHMOD NOPROTO { int fchmod(int fd, int mode); }
178 95 AUE_FCHOWN NOPROTO { int fchown(int fd, int uid, int gid); }
179 96 AUE_GETPRIORITY STD { int linux_getpriority(int which, int who); }
180 97 AUE_SETPRIORITY NOPROTO { int setpriority(int which, int who, \
182 98 AUE_PROFILE UNIMPL profil
183 99 AUE_STATFS STD { int linux_statfs(char *path, \
184 struct l_statfs_buf *buf); }
185 100 AUE_FSTATFS STD { int linux_fstatfs(l_uint fd, \
186 struct l_statfs_buf *buf); }
187 101 AUE_NULL UNIMPL ioperm
188 102 AUE_NULL STD { int linux_socketcall(l_int what, \
190 103 AUE_NULL STD { int linux_syslog(l_int type, char *buf, \
192 104 AUE_SETITIMER STD { int linux_setitimer(l_int which, \
193 struct l_itimerval *itv, \
194 struct l_itimerval *oitv); }
195 105 AUE_GETITIMER STD { int linux_getitimer(l_int which, \
196 struct l_itimerval *itv); }
197 106 AUE_STAT STD { int linux_newstat(char *path, \
198 struct l_newstat *buf); }
199 107 AUE_LSTAT STD { int linux_newlstat(char *path, \
200 struct l_newstat *buf); }
201 108 AUE_FSTAT STD { int linux_newfstat(l_uint fd, \
202 struct l_newstat *buf); }
204 109 AUE_NULL STD { int linux_uname(void); }
205 110 AUE_NULL STD { int linux_iopl(l_int level); }
206 111 AUE_NULL STD { int linux_vhangup(void); }
207 112 AUE_NULL UNIMPL idle
208 113 AUE_NULL UNIMPL vm86old
209 114 AUE_WAIT4 STD { int linux_wait4(l_pid_t pid, \
210 l_int *status, l_int options, \
211 struct l_rusage *rusage); }
212 115 AUE_SWAPOFF STD { int linux_swapoff(void); }
213 116 AUE_NULL STD { int linux_sysinfo(struct l_sysinfo *info); }
214 117 AUE_NULL STD { int linux_ipc(l_uint what, l_int arg1, \
215 l_int arg2, l_uint arg3, l_uintptr_t ptr, \
217 118 AUE_FSYNC NOPROTO { int fsync(int fd); }
218 119 AUE_SIGRETURN STD { int linux_sigreturn( \
219 struct l_sigframe *sfp); }
220 120 AUE_RFORK STD { int linux_clone(l_int flags, void *stack, \
221 void *parent_tidptr, void *tls, void * child_tidptr); }
222 121 AUE_SYSCTL STD { int linux_setdomainname(char *name, \
224 122 AUE_NULL STD { int linux_newuname( \
225 struct l_new_utsname *buf); }
226 123 AUE_NULL UNIMPL modify_ldt
227 124 AUE_ADJTIME STD { int linux_adjtimex(void); }
228 125 AUE_MPROTECT STD { int linux_mprotect(caddr_t addr, int len, \
230 126 AUE_SIGPROCMASK STD { int linux_sigprocmask(l_int how, \
231 l_osigset_t *mask, l_osigset_t *omask); }
232 127 AUE_NULL UNIMPL create_module
233 128 AUE_NULL STD { int linux_init_module(void); }
234 129 AUE_NULL STD { int linux_delete_module(void); }
235 130 AUE_NULL UNIMPL get_kernel_syms
236 131 AUE_QUOTACTL STD { int linux_quotactl(void); }
237 132 AUE_GETPGID NOPROTO { int getpgid(int pid); }
238 133 AUE_FCHDIR NOPROTO { int fchdir(int fd); }
239 134 AUE_BDFLUSH STD { int linux_bdflush(void); }
240 135 AUE_NULL STD { int linux_sysfs(l_int option, \
241 l_ulong arg1, l_ulong arg2); }
242 136 AUE_PERSONALITY STD { int linux_personality(l_uint per); }
243 137 AUE_NULL UNIMPL afs_syscall
244 138 AUE_SETFSUID STD { int linux_setfsuid16(l_uid16_t uid); }
245 139 AUE_SETFSGID STD { int linux_setfsgid16(l_gid16_t gid); }
246 140 AUE_LSEEK STD { int linux_llseek(l_int fd, l_ulong ohigh, \
247 l_ulong olow, l_loff_t *res, \
249 141 AUE_GETDIRENTRIES STD { int linux_getdents(l_uint fd, void *dent, \
252 142 AUE_SELECT STD { int linux_select(l_int nfds, \
253 l_fd_set *readfds, l_fd_set *writefds, \
254 l_fd_set *exceptfds, \
255 struct l_timeval *timeout); }
256 143 AUE_FLOCK NOPROTO { int flock(int fd, int how); }
257 144 AUE_MSYNC STD { int linux_msync(l_ulong addr, \
258 l_size_t len, l_int fl); }
259 145 AUE_READV STD { int linux_readv(l_ulong fd, struct l_iovec32 *iovp, \
261 146 AUE_WRITEV STD { int linux_writev(l_ulong fd, struct l_iovec32 *iovp, \
263 147 AUE_GETSID STD { int linux_getsid(l_pid_t pid); }
264 148 AUE_NULL STD { int linux_fdatasync(l_uint fd); }
265 149 AUE_SYSCTL STD { int linux_sysctl( \
266 struct l___sysctl_args *args); }
267 150 AUE_MLOCK NOPROTO { int mlock(const void *addr, size_t len); }
268 151 AUE_MUNLOCK NOPROTO { int munlock(const void *addr, size_t len); }
269 152 AUE_MLOCKALL NOPROTO { int mlockall(int how); }
270 153 AUE_MUNLOCKALL NOPROTO { int munlockall(void); }
271 154 AUE_SCHED_SETPARAM STD { int linux_sched_setparam(l_pid_t pid, \
272 struct sched_param *param); }
273 155 AUE_SCHED_GETPARAM STD { int linux_sched_getparam(l_pid_t pid, \
274 struct sched_param *param); }
275 156 AUE_SCHED_SETSCHEDULER STD { int linux_sched_setscheduler( \
276 l_pid_t pid, l_int policy, \
277 struct sched_param *param); }
278 157 AUE_SCHED_GETSCHEDULER STD { int linux_sched_getscheduler( \
280 158 AUE_NULL NOPROTO { int sched_yield(void); }
281 159 AUE_SCHED_GET_PRIORITY_MAX STD { int linux_sched_get_priority_max( \
283 160 AUE_SCHED_GET_PRIORITY_MIN STD { int linux_sched_get_priority_min( \
285 161 AUE_SCHED_RR_GET_INTERVAL STD { int linux_sched_rr_get_interval(l_pid_t pid, \
286 struct l_timespec *interval); }
287 162 AUE_NULL STD { int linux_nanosleep( \
288 const struct l_timespec *rqtp, \
289 struct l_timespec *rmtp); }
290 163 AUE_NULL STD { int linux_mremap(l_ulong addr, \
291 l_ulong old_len, l_ulong new_len, \
292 l_ulong flags, l_ulong new_addr); }
293 164 AUE_SETRESUID STD { int linux_setresuid16(l_uid16_t ruid, \
294 l_uid16_t euid, l_uid16_t suid); }
295 165 AUE_GETRESUID STD { int linux_getresuid16(l_uid16_t *ruid, \
296 l_uid16_t *euid, l_uid16_t *suid); }
297 166 AUE_NULL UNIMPL vm86
298 167 AUE_NULL UNIMPL query_module
299 168 AUE_POLL NOPROTO { int poll(struct pollfd *fds, \
300 unsigned int nfds, int timeout); }
301 169 AUE_NULL UNIMPL nfsservctl
302 170 AUE_SETRESGID STD { int linux_setresgid16(l_gid16_t rgid, \
303 l_gid16_t egid, l_gid16_t sgid); }
304 171 AUE_GETRESGID STD { int linux_getresgid16(l_gid16_t *rgid, \
305 l_gid16_t *egid, l_gid16_t *sgid); }
306 172 AUE_PRCTL STD { int linux_prctl(l_int option, l_int arg2, l_int arg3, \
307 l_int arg4, l_int arg5); }
308 173 AUE_NULL STD { int linux_rt_sigreturn( \
309 struct l_ucontext *ucp); }
310 174 AUE_NULL STD { int linux_rt_sigaction(l_int sig, \
311 l_sigaction_t *act, l_sigaction_t *oact, \
312 l_size_t sigsetsize); }
313 175 AUE_NULL STD { int linux_rt_sigprocmask(l_int how, \
314 l_sigset_t *mask, l_sigset_t *omask, \
315 l_size_t sigsetsize); }
316 176 AUE_NULL STD { int linux_rt_sigpending(l_sigset_t *set, \
317 l_size_t sigsetsize); }
318 177 AUE_NULL STD { int linux_rt_sigtimedwait(l_sigset_t *mask, \
320 struct l_timeval *timeout, \
321 l_size_t sigsetsize); }
322 178 AUE_NULL STD { int linux_rt_sigqueueinfo(l_pid_t pid, l_int sig, \
323 l_siginfo_t *info); }
324 179 AUE_NULL STD { int linux_rt_sigsuspend( \
325 l_sigset_t *newset, \
326 l_size_t sigsetsize); }
327 180 AUE_PREAD STD { int linux_pread(l_uint fd, char *buf, \
328 l_size_t nbyte, uint32_t offset1, uint32_t offset2); }
329 181 AUE_PWRITE STD { int linux_pwrite(l_uint fd, char *buf, \
330 l_size_t nbyte, uint32_t offset1, uint32_t offset2); }
331 182 AUE_CHOWN STD { int linux_chown16(char *path, \
332 l_uid16_t uid, l_gid16_t gid); }
333 183 AUE_GETCWD STD { int linux_getcwd(char *buf, \
335 184 AUE_CAPGET STD { int linux_capget(struct l_user_cap_header *hdrp, \
336 struct l_user_cap_data *datap); }
337 185 AUE_CAPSET STD { int linux_capset(struct l_user_cap_header *hdrp, \
338 struct l_user_cap_data *datap); }
339 186 AUE_NULL STD { int linux_sigaltstack(l_stack_t *uss, \
341 187 AUE_SENDFILE STD { int linux_sendfile(l_int out, l_int in, \
342 l_long *offset, l_size_t count); }
343 188 AUE_GETPMSG UNIMPL getpmsg
344 189 AUE_PUTPMSG UNIMPL putpmsg
345 190 AUE_VFORK STD { int linux_vfork(void); }
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, \
352 193 AUE_TRUNCATE STD { int linux_truncate64(char *path, \
353 uint32_t length1, uint32_t length2); }
354 194 AUE_FTRUNCATE STD { int linux_ftruncate64(l_uint fd, \
355 uint32_t length1, uint32_t length2); }
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, \
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, \
377 209 AUE_GETRESUID NOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \
379 210 AUE_SETRESGID NOPROTO { int setresgid(gid_t rgid, gid_t egid, \
381 211 AUE_GETRESGID NOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \
383 212 AUE_CHOWN STD { int linux_chown(char *path, l_uid_t uid, \
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, \
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, \
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, \
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 STD { int linux_sendfile64(l_int out, l_int in, \
417 l_loff_t *offset, l_size_t count); }
418 240 AUE_NULL STD { int linux_sys_futex(void *uaddr, int op, uint32_t val, \
419 struct l_timespec *timeout, uint32_t *uaddr2, uint32_t val3); }
420 241 AUE_NULL STD { int linux_sched_setaffinity(l_pid_t pid, l_uint len, \
421 l_ulong *user_mask_ptr); }
422 242 AUE_NULL STD { int linux_sched_getaffinity(l_pid_t pid, l_uint len, \
423 l_ulong *user_mask_ptr); }
424 243 AUE_NULL STD { int linux_set_thread_area(struct l_user_desc *desc); }
425 244 AUE_NULL UNIMPL linux_get_thread_area
426 245 AUE_NULL UNIMPL linux_io_setup
427 246 AUE_NULL UNIMPL linux_io_destroy
428 247 AUE_NULL UNIMPL linux_io_getevents
429 248 AUE_NULL UNIMPL linux_io_submit
430 249 AUE_NULL UNIMPL linux_io_cancel
431 250 AUE_NULL STD { int linux_fadvise64(int fd, uint32_t offset1, uint32_t offset2, \
432 l_size_t len, int advice); }
434 252 AUE_EXIT STD { int linux_exit_group(int error_code); }
435 253 AUE_NULL STD { int linux_lookup_dcookie(void); }
436 254 AUE_NULL STD { int linux_epoll_create(l_int size); }
437 255 AUE_NULL STD { int linux_epoll_ctl(l_int epfd, l_int op, l_int fd, \
438 struct epoll_event *event); }
439 256 AUE_NULL STD { int linux_epoll_wait(l_int epfd, struct epoll_event *events, \
440 l_int maxevents, l_int timeout); }
441 257 AUE_NULL STD { int linux_remap_file_pages(void); }
442 258 AUE_NULL STD { int linux_set_tid_address(int *tidptr); }
443 259 AUE_NULL STD { int linux_timer_create(clockid_t clock_id, \
444 struct sigevent *evp, l_timer_t *timerid); }
445 260 AUE_NULL STD { int linux_timer_settime(l_timer_t timerid, l_int flags, \
446 const struct itimerspec *new, struct itimerspec *old); }
447 261 AUE_NULL STD { int linux_timer_gettime(l_timer_t timerid, struct itimerspec *setting); }
448 262 AUE_NULL STD { int linux_timer_getoverrun(l_timer_t timerid); }
449 263 AUE_NULL STD { int linux_timer_delete(l_timer_t timerid); }
450 264 AUE_CLOCK_SETTIME STD { int linux_clock_settime(clockid_t which, struct l_timespec *tp); }
451 265 AUE_NULL STD { int linux_clock_gettime(clockid_t which, struct l_timespec *tp); }
452 266 AUE_NULL STD { int linux_clock_getres(clockid_t which, struct l_timespec *tp); }
453 267 AUE_NULL STD { int linux_clock_nanosleep(clockid_t which, int flags, \
454 struct l_timespec *rqtp, struct l_timespec *rmtp); }
455 268 AUE_STATFS STD { int linux_statfs64(char *path, size_t bufsize, struct l_statfs64_buf *buf); }
456 269 AUE_FSTATFS STD { int linux_fstatfs64(l_uint fd, size_t bufsize, struct l_statfs64_buf *buf); }
457 270 AUE_NULL STD { int linux_tgkill(int tgid, int pid, int sig); }
458 271 AUE_UTIMES STD { int linux_utimes(char *fname, \
459 struct l_timeval *tptr); }
460 272 AUE_NULL STD { int linux_fadvise64_64(int fd, \
461 uint32_t offset1, uint32_t offset2, \
462 uint32_t len1, uint32_t len2, \
464 273 AUE_NULL UNIMPL vserver
465 274 AUE_NULL STD { int linux_mbind(void); }
466 275 AUE_NULL STD { int linux_get_mempolicy(void); }
467 276 AUE_NULL STD { int linux_set_mempolicy(void); }
469 277 AUE_NULL STD { int linux_mq_open(void); }
470 278 AUE_NULL STD { int linux_mq_unlink(void); }
471 279 AUE_NULL STD { int linux_mq_timedsend(void); }
472 280 AUE_NULL STD { int linux_mq_timedreceive(void); }
473 281 AUE_NULL STD { int linux_mq_notify(void); }
474 282 AUE_NULL STD { int linux_mq_getsetattr(void); }
475 283 AUE_NULL STD { int linux_kexec_load(void); }
476 284 AUE_WAIT6 STD { int linux_waitid(int idtype, l_pid_t id, \
477 l_siginfo_t *info, int options, \
478 struct l_rusage *rusage); }
481 286 AUE_NULL STD { int linux_add_key(void); }
482 287 AUE_NULL STD { int linux_request_key(void); }
483 288 AUE_NULL STD { int linux_keyctl(void); }
485 289 AUE_NULL STD { int linux_ioprio_set(void); }
486 290 AUE_NULL STD { int linux_ioprio_get(void); }
487 291 AUE_NULL STD { int linux_inotify_init(void); }
488 292 AUE_NULL STD { int linux_inotify_add_watch(void); }
489 293 AUE_NULL STD { int linux_inotify_rm_watch(void); }
491 294 AUE_NULL STD { int linux_migrate_pages(void); }
492 295 AUE_OPEN_RWTC STD { int linux_openat(l_int dfd, const char *filename, \
493 l_int flags, l_int mode); }
494 296 AUE_MKDIRAT STD { int linux_mkdirat(l_int dfd, const char *pathname, \
496 297 AUE_MKNODAT STD { int linux_mknodat(l_int dfd, const char *filename, \
497 l_int mode, l_uint dev); }
498 298 AUE_FCHOWNAT STD { int linux_fchownat(l_int dfd, const char *filename, \
499 l_uid16_t uid, l_gid16_t gid, l_int flag); }
500 299 AUE_FUTIMESAT STD { int linux_futimesat(l_int dfd, char *filename, \
501 struct l_timeval *utimes); }
502 300 AUE_FSTATAT STD { int linux_fstatat64(l_int dfd, char *pathname, \
503 struct l_stat64 *statbuf, l_int flag); }
504 301 AUE_UNLINKAT STD { int linux_unlinkat(l_int dfd, const char *pathname, \
506 302 AUE_RENAMEAT STD { int linux_renameat(l_int olddfd, const char *oldname, \
507 l_int newdfd, const char *newname); }
508 303 AUE_LINKAT STD { int linux_linkat(l_int olddfd, const char *oldname, \
509 l_int newdfd, const char *newname, l_int flag); }
510 304 AUE_SYMLINKAT STD { int linux_symlinkat(const char *oldname, l_int newdfd, \
511 const char *newname); }
512 305 AUE_READLINKAT STD { int linux_readlinkat(l_int dfd, const char *path, \
513 char *buf, l_int bufsiz); }
514 306 AUE_FCHMODAT STD { int linux_fchmodat(l_int dfd, const char *filename, \
516 307 AUE_FACCESSAT STD { int linux_faccessat(l_int dfd, const char *filename, \
518 308 AUE_SELECT STD { int linux_pselect6(l_int nfds, l_fd_set *readfds, \
519 l_fd_set *writefds, l_fd_set *exceptfds, \
520 struct l_timespec *tsp, l_uintptr_t *sig); }
521 309 AUE_POLL STD { int linux_ppoll(struct pollfd *fds, uint32_t nfds, \
522 struct l_timespec *tsp, l_sigset_t *sset, l_size_t ssize); }
523 310 AUE_NULL STD { int linux_unshare(void); }
525 311 AUE_NULL STD { int linux_set_robust_list(struct linux_robust_list_head *head, \
527 312 AUE_NULL STD { int linux_get_robust_list(l_int pid, \
528 struct linux_robust_list_head **head, l_size_t *len); }
529 313 AUE_NULL STD { int linux_splice(void); }
530 314 AUE_NULL STD { int linux_sync_file_range(l_int fd, uint32_t offset1,
531 uint32_t offset2, uint32_t nbytes1, uint32_t nbytes2,
532 unsigned int flags); }
533 315 AUE_NULL STD { int linux_tee(void); }
534 316 AUE_NULL STD { int linux_vmsplice(void); }
536 317 AUE_NULL STD { int linux_move_pages(void); }
538 318 AUE_NULL STD { int linux_getcpu(l_uint *cpu, l_uint *node, \
540 319 AUE_NULL STD { int linux_epoll_pwait(l_int epfd, struct epoll_event *events, \
541 l_int maxevents, l_int timeout, l_sigset_t *mask, \
542 l_size_t sigsetsize); }
544 320 AUE_FUTIMESAT STD { int linux_utimensat(l_int dfd, const char *pathname, \
545 const struct l_timespec *times, l_int flags); }
546 321 AUE_NULL STD { int linux_signalfd(void); }
547 322 AUE_NULL STD { int linux_timerfd_create(l_int clockid, l_int flags); }
548 323 AUE_NULL STD { int linux_eventfd(l_uint initval); }
550 324 AUE_NULL STD { int linux_fallocate(l_int fd, l_int mode, \
551 uint32_t offset1, uint32_t offset2, uint32_t len1,
554 325 AUE_NULL STD { int linux_timerfd_settime(l_int fd, l_int flags, \
555 const struct l_itimerspec *new_value, \
556 struct l_itimerspec *old_value); }
557 326 AUE_NULL STD { int linux_timerfd_gettime(l_int fd, \
558 struct l_itimerspec *old_value); }
560 327 AUE_NULL STD { int linux_signalfd4(void); }
561 328 AUE_NULL STD { int linux_eventfd2(l_uint initval, l_int flags); }
562 329 AUE_NULL STD { int linux_epoll_create1(l_int flags); }
563 330 AUE_NULL STD { int linux_dup3(l_int oldfd, \
564 l_int newfd, l_int flags); }
565 331 AUE_NULL STD { int linux_pipe2(l_int *pipefds, l_int flags); }
566 332 AUE_NULL STD { int linux_inotify_init1(void); }
568 333 AUE_NULL STD { int linux_preadv(l_ulong fd, \
569 struct iovec *vec, l_ulong vlen, \
570 l_ulong pos_l, l_ulong pos_h); }
571 334 AUE_NULL STD { int linux_pwritev(l_ulong fd, \
572 struct iovec *vec, l_ulong vlen, \
573 l_ulong pos_l, l_ulong pos_h); }
575 335 AUE_NULL STD { int linux_rt_tgsigqueueinfo(l_pid_t tgid, \
576 l_pid_t tid, l_int sig, l_siginfo_t *uinfo); }
577 336 AUE_NULL STD { int linux_perf_event_open(void); }
579 337 AUE_NULL STD { int linux_recvmmsg(l_int s, \
580 struct l_mmsghdr *msg, l_uint vlen, \
581 l_uint flags, struct l_timespec *timeout); }
582 338 AUE_NULL STD { int linux_fanotify_init(void); }
583 339 AUE_NULL STD { int linux_fanotify_mark(void); }
585 340 AUE_NULL STD { int linux_prlimit64(l_pid_t pid, \
587 struct rlimit *new, \
588 struct rlimit *old); }
590 341 AUE_NULL STD { int linux_name_to_handle_at(void); }
591 342 AUE_NULL STD { int linux_open_by_handle_at(void); }
592 343 AUE_NULL STD { int linux_clock_adjtime(void); }
593 344 AUE_SYNC STD { int linux_syncfs(l_int fd); }
595 345 AUE_NULL STD { int linux_sendmmsg(l_int s, \
596 struct l_mmsghdr *msg, l_uint vlen, \
598 346 AUE_NULL STD { int linux_setns(void); }
599 ; Linux 3.2 (glibc 2.15):
600 347 AUE_NULL STD { int linux_process_vm_readv(l_pid_t pid, \
601 const struct iovec *lvec, l_ulong liovcnt, \
602 const struct iovec *rvec, l_ulong riovcnt, \
604 348 AUE_NULL STD { int linux_process_vm_writev(l_pid_t pid, \
605 const struct iovec *lvec, l_ulong liovcnt, \
606 const struct iovec *rvec, l_ulong riovcnt, \
608 ; Linux 3.5 (no glibc wrapper):
609 349 AUE_NULL STD { int linux_kcmp(l_pid_t pid1, l_pid_t pid2, \
610 l_int type, l_ulong idx1, l_ulong idx); }
611 ; Linux 3.8 (no glibc wrapper):
612 350 AUE_NULL STD { int linux_finit_module(l_int fd, \
613 const char *uargs, l_int flags); }
615 351 AUE_NULL STD { int linux_sched_setattr(l_pid_t pid, \
616 void *attr, l_uint flags); }
617 352 AUE_NULL STD { int linux_sched_getattr(l_pid_t pid, \
618 void *attr, l_uint size, l_uint flags); }
620 353 AUE_NULL STD { int linux_renameat2(l_int olddfd, \
621 const char *oldname, l_int newdfd, \
622 const char *newname, unsigned int flags); }
624 354 AUE_NULL STD { int linux_seccomp(l_uint op, l_uint flags, \
625 const char *uargs); }
626 355 AUE_NULL STD { int linux_getrandom(char *buf, \
627 l_size_t count, l_uint flags); }
628 356 AUE_NULL STD { int linux_memfd_create(const char *uname_ptr, \
631 357 AUE_NULL STD { int linux_bpf(l_int cmd, void *attr, \
634 358 AUE_NULL STD { int linux_execveat(l_int dfd, \
635 const char *filename, const char **argv, \
636 const char **envp, l_int flags); }
637 ; Linux 4.3: sockets now direct system calls:
638 359 AUE_SOCKET STD { int linux_socket(l_int domain, l_int type, \
640 360 AUE_SOCKETPAIR STD { int linux_socketpair(l_int domain, \
641 l_int type, l_int protocol, l_uintptr_t rsv); }
642 361 AUE_BIND STD { int linux_bind(l_int s, l_uintptr_t name, \
644 362 AUE_CONNECT STD { int linux_connect(l_int s, l_uintptr_t name, \
646 363 AUE_LISTEN STD { int linux_listen(l_int s, l_int backlog); }
647 364 AUE_ACCEPT STD { int linux_accept4(l_int s, l_uintptr_t addr, \
648 l_uintptr_t namelen, l_int flags); }
649 365 AUE_GETSOCKOPT STD { int linux_getsockopt(l_int s, l_int level, \
650 l_int optname, l_uintptr_t optval, \
651 l_uintptr_t optlen); }
652 366 AUE_SETSOCKOPT STD { int linux_setsockopt(l_int s, l_int level, \
653 l_int optname, l_uintptr_t optval, \
655 367 AUE_GETSOCKNAME STD { int linux_getsockname(l_int s, \
656 l_uintptr_t addr, l_uintptr_t namelen); }
657 368 AUE_GETPEERNAME STD { int linux_getpeername(l_int s, \
658 l_uintptr_t addr, l_uintptr_t namelen); }
659 369 AUE_SENDTO STD { int linux_sendto(l_int s, l_uintptr_t msg, \
660 l_int len, l_int flags, l_uintptr_t to, \
662 370 AUE_SENDMSG STD { int linux_sendmsg(l_int s, l_uintptr_t msg, \
664 371 AUE_RECVFROM STD { int linux_recvfrom(l_int s, l_uintptr_t buf, \
665 l_size_t len, l_int flags, l_uintptr_t from, \
666 l_uintptr_t fromlen); }
667 372 AUE_RECVMSG STD { int linux_recvmsg(l_int s, l_uintptr_t msg, \
669 373 AUE_NULL STD { int linux_shutdown(l_int s, l_int how); }
672 374 AUE_NULL STD { int linux_userfaultfd(l_int flags); }
674 375 AUE_NULL STD { int linux_membarrier(l_int cmd, l_int flags); }
676 376 AUE_NULL STD { int linux_mlock2(l_ulong start, l_size_t len, \
679 377 AUE_NULL STD { int linux_copy_file_range(l_int fd_in, \
680 l_loff_t *off_in, l_int fd_out, \
681 l_loff_t *off_out, l_size_t len, \
684 378 AUE_NULL STD { int linux_preadv2(l_ulong fd, \
685 const struct iovec *vec, l_ulong vlen, \
686 l_ulong pos_l, l_ulong pos_h, l_int flags); }
687 379 AUE_NULL STD { int linux_pwritev2(l_ulong fd, \
688 const struct iovec *vec, l_ulong vlen, \
689 l_ulong pos_l, l_ulong pos_h, l_int flags); }
691 380 AUE_NULL STD { int linux_pkey_mprotect(l_ulong start, \
692 l_size_t len, l_ulong prot, l_int pkey); }
693 381 AUE_NULL STD { int linux_pkey_alloc(l_ulong flags, \
695 382 AUE_NULL STD { int linux_pkey_free(l_int pkey); }
697 383 AUE_NULL STD { int linux_statx(l_int dirfd, \
698 const char *pathname, l_uint flags, \
699 l_uint mask, void *statxbuf); }
700 384 AUE_NULL STD { int linux_arch_prctl(l_int option, \
703 385 AUE_NULL STD { int linux_io_pgetevents(void); }
704 386 AUE_NULL STD { int linux_rseq(void); }
705 387-392 AUE_NULL UNIMPL nosys
706 393 AUE_NULL STD { int linux_semget(l_key_t key, l_int nsems, \
708 394 AUE_NULL STD { int linux_semctl(l_int semid, l_int semnum, \
709 l_int cmd, union l_semun arg); }
710 395 AUE_NULL STD { int linux_shmget(l_key_t key, l_size_t size, \
712 396 AUE_NULL STD { int linux_shmctl(l_int shmid, l_int cmd, \
713 struct l_shmid_ds *buf); }
714 397 AUE_NULL STD { int linux_shmat(l_int shmid, char *shmaddr, \
716 398 AUE_NULL STD { int linux_shmdt(char *shmaddr); }
717 399 AUE_NULL STD { int linux_msgget(l_key_t key, l_int msgflg); }
718 400 AUE_NULL STD { int linux_msgsnd(l_int msqid, \
719 struct l_msgbuf *msgp, l_size_t msgsz, \
721 401 AUE_NULL STD { int linux_msgrcv(l_int msqid, \
722 struct l_msgbuf *msgp, l_size_t msgsz, \
723 l_long msgtyp, l_int msgflg); }
724 402 AUE_NULL STD { int linux_msgctl(l_int msqid, l_int cmd, \
725 struct l_msqid_ds *buf); }
727 403 AUE_NULL STD { int linux_clock_gettime64(void); }
728 404 AUE_NULL STD { int linux_clock_settime64(void); }
729 405 AUE_NULL STD { int linux_clock_adjtime64(void); }
730 406 AUE_NULL STD { int linux_clock_getres_time64(void); }
731 407 AUE_NULL STD { int linux_clock_nanosleep_time64(void); }
732 408 AUE_NULL STD { int linux_timer_gettime64(void); }
733 409 AUE_NULL STD { int linux_timer_settime64(void); }
734 410 AUE_NULL STD { int linux_timerfd_gettime64(void); }
735 411 AUE_NULL STD { int linux_timerfd_settime64(void); }
736 412 AUE_NULL STD { int linux_utimensat_time64(void); }
737 413 AUE_NULL STD { int linux_pselect6_time64(void); }
738 414 AUE_NULL STD { int linux_ppoll_time64(void); }
739 415 AUE_NULL UNIMPL nosys
740 416 AUE_NULL STD { int linux_io_pgetevents_time64(void); }
741 417 AUE_NULL STD { int linux_recvmmsg_time64(void); }
742 418 AUE_NULL STD { int linux_mq_timedsend_time64(void); }
743 419 AUE_NULL STD { int linux_mq_timedreceive_time64(void); }
744 420 AUE_NULL STD { int linux_semtimedop_time64(void); }
745 421 AUE_NULL STD { int linux_rt_sigtimedwait_time64(void); }
746 422 AUE_NULL STD { int linux_futex_time64(void); }
747 423 AUE_NULL STD { int linux_sched_rr_get_interval_time64(void); }
748 424 AUE_NULL STD { int linux_pidfd_send_signal(l_int pidfd, \
749 l_int sig, l_siginfo_t *info, l_uint flags); }
750 425 AUE_NULL STD { int linux_io_uring_setup(void); }
751 426 AUE_NULL STD { int linux_io_uring_enter(void); }
752 427 AUE_NULL STD { int linux_io_uring_register(void); }
754 ; please, keep this line at the end.
755 428 AUE_NULL UNIMPL nosys