syscalls.master revision 1.22 1 $NetBSD: syscalls.master,v 1.22 2000/11/17 03:55:18 erh Exp $
2 ;
3 ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
4
5 ; NetBSD alpha COMPAT_LINUX system call name/number "master" file.
6 ; (See syscalls.conf to see what it is processed into.)
7 ;
8 ; Fields: number type [type-dependent ...]
9 ; number system call number, must be in order
10 ; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
11 ; the compatibility options defined in syscalls.conf.
12 ;
13 ; types:
14 ; STD always included
15 ; OBSOL obsolete, not included in system
16 ; UNIMPL unimplemented, not included in system
17 ; NODEF included, but don't define the syscall number
18 ; NOARGS included, but don't define the syscall args structure
19 ; INDIR included, but don't define the syscall args structure
20 ; and allow it to be "really" varargs.
21 ;
22 ; The compat options are defined in the syscalls.conf file, and the
23 ; compat option name is prefixed to the syscall name. Other than
24 ; that, they're like NODEF (for 'compat' options), or STD (for
25 ; 'libcompat' options).
26 ;
27 ; The type-dependent arguments are as follows:
28 ; For STD, NODEF, NOARGS, and compat syscalls:
29 ; { pseudo-proto } [alias]
30 ; For other syscalls:
31 ; [comment]
32 ;
33 ; #ifdef's, etc. may be included, and are copied to the output files.
34 ; #include's are copied to the syscall names and switch definition files only.
35 ;
36 ; (ERH: 3/18/00)
37 ;
38 ; XXX XAX things to do:
39 ; make sure non-linux_foo() matches real linux syscalls.
40 ; create new linux_foo functions otherwise
41 ; (i.e. reboot, msgrcv? )
42 ; make sure linux_foo() matches expected prototypes in .c files.
43 ; kill not used functions. (ifdef the actual code)
44 ; fix getfsuid in linux_misc.c
45 ; make linux_sys_sigreturn in linux_machdep.c use frame.extramask
46 ;
47 ; NOT USED = This syscall is not really used in Linux, except in its
48 ; osf compat mode. Since Linux binaries shouldn't ever
49 ; call it and osf binaries run under a different emulation,
50 ; it shouldn't matter that the linux version of the
51 ; function might not DTRT. Define it anyway so we
52 ; don't have to split off or ifdef the associated function.
53 ; A bit better might be to have makesyscalls identify this
54 ; as "define but don't include in table" so it doesn't actually
55 ; ever get called.
56 ; UNIMPL <blank> = not implemented here nor in linux source
57 ; UNIMPL osf_* = osf functions implemented in linux, not here.
58 ;
59
60 #include "opt_sysv.h"
61 #include "opt_compat_43.h"
62 #include "opt_compat_osf1.h"
63
64 #include <sys/param.h>
65 #include <sys/poll.h>
66 #include <sys/systm.h>
67 #include <sys/signal.h>
68 #include <sys/mount.h>
69 #include <sys/syscallargs.h>
70
71 #include <compat/linux/common/linux_types.h>
72 #include <compat/linux/common/linux_signal.h>
73 #include <compat/linux/common/linux_siginfo.h>
74 #include <compat/linux/common/linux_ipc.h>
75 #include <compat/linux/common/linux_msg.h>
76 #include <compat/linux/common/linux_sem.h>
77 #include <compat/linux/common/linux_shm.h>
78 #include <compat/linux/common/linux_mmap.h>
79 ;#include <compat/linux/common/linux_machdep.h>
80
81 #include <compat/linux/linux_syscallargs.h>
82
83 0 NOARGS { int sys_nosys(void); } syscall
84 1 NOARGS { int sys_exit(int rval); }
85 2 NOARGS { int sys_fork(void); }
86 3 NOARGS { int sys_read(int fd, void *buf, size_t nbyte); }
87 4 NOARGS { int sys_write(int fd, const void *buf, size_t nbyte); }
88 5 UNIMPL
89 6 NOARGS { int sys_close(int fd); }
90 7 NODEF { int osf1_sys_wait4(int pid, int *status, \
91 int options, struct osf1_rusage *rusage); }
92 ;8 ALIAS osf1_sys_old_creat, NOT USED
93 8 STD { int linux_sys_creat(const char *path, mode_t mode); }
94 9 NOARGS { int sys_link(const char *path, const char *link); }
95 10 STD { int linux_sys_unlink(const char *path); }
96 11 UNIMPL
97 12 STD { int linux_sys_chdir(const char *path); }
98 13 NOARGS { int sys_fchdir(int fd); }
99 14 STD { int linux_sys_mknod(const char *path, int mode, int dev); }
100 15 STD { int linux_sys_chmod(const char *path, int mode); }
101 16 STD { int linux_sys_chown(const char *path, int uid, int gid); }
102 ;17 ALIAS osf1_sys_brk
103 17 STD { int linux_sys_brk(char *nsize); }
104 18 UNIMPL
105 19 NOARGS { long compat_43_sys_lseek(int fd, long offset, \
106 int whence); }
107 20 NOARGS { pid_t sys_getpid(void); }
108 21 NODEF { int osf1_sys_mount(int type, const char *path, \
109 int flags, caddr_t data); }
110 22 UNIMPL umount
111 23 NOARGS { int sys_setuid(uid_t uid); }
112 24 NOARGS { uid_t sys_getuid(void); }
113 25 UNIMPL
114 26 STD { int linux_sys_ptrace(long request, long pid, \
115 long addr, long data); }
116 27 UNIMPL
117 28 UNIMPL
118 29 UNIMPL
119 30 UNIMPL
120 31 UNIMPL
121 32 UNIMPL
122 33 STD { int linux_sys_access(const char *path, int flags); }
123 34 UNIMPL
124 35 UNIMPL
125 36 NOARGS { int sys_sync(void); }
126 37 STD { int linux_sys_kill(int pid, int signum); }
127 38 UNIMPL
128 39 NOARGS { int sys_setpgid(int pid, int pgid); }
129 40 UNIMPL
130 41 NOARGS { int sys_dup(int fd); }
131 42 NOARGS { int linux_sys_pipe(void); }
132 43 NODEF { int osf1_sys_set_program_attributes( \
133 caddr_t taddr, unsigned long tsize, \
134 caddr_t daddr, unsigned long dsize); }
135 44 UNIMPL
136 45 STD { int linux_sys_open(const char *path, int flags, int mode); }
137 46 UNIMPL
138 47 NOARGS { gid_t sys_getgid(void); }
139 ; ALIAS osf1_sys_sigprocmask(int how, unsigned long mask);
140 ; XXX <- copied from osf1/syscalls.master
141 48 NOARGS { int compat_13_sys_sigprocmask(int how, \
142 sigset13_t mask); }
143 49 UNIMPL
144 50 UNIMPL
145 51 NOARGS { int sys_acct(const char *path); }
146 52 STD { int linux_sys_sigpending(linux_old_sigset_t *set); }
147 53 UNIMPL
148 54 STD { int linux_sys_ioctl(int fd, u_long com, \
149 caddr_t data); }
150 55 UNIMPL
151 56 UNIMPL
152 57 STD { int linux_sys_symlink(const char *path, const char *to); }
153 58 STD { int linux_sys_readlink(const char *name, char *buf, \
154 int count); }
155 59 STD { int linux_sys_execve(const char *path, char **argp, \
156 char **envp); }
157 60 NOARGS { mode_t sys_umask(mode_t newmask); }
158 61 NOARGS { int sys_chroot(const char *path); }
159 62 UNIMPL
160 63 NOARGS { int sys_getpgrp(void); }
161 64 NOARGS { int compat_43_sys_getpagesize(void); }
162 65 UNIMPL
163 66 NOARGS { int sys___vfork14(void); }
164 67 STD { int linux_sys_stat(const char *path, \
165 struct linux_stat *sp); }
166 68 STD { int linux_sys_lstat(const char *path, \
167 struct linux_stat *sp); }
168 69 UNIMPL
169 70 UNIMPL
170 ;71 ALIAS osf1_sys_mmap
171 71 NOARGS { int linux_sys_mmap(unsigned long addr, size_t len, \
172 int prot, int flags, int fd, off_t offset); }
173 72 UNIMPL
174 73 NOARGS { int sys_munmap(void *addr, size_t len); }
175 74 NOARGS { int sys_mprotect(void *addr, size_t len, int prot); }
176 ; Liunx sys_madvise just returns 0.
177 75 UNIMPL madvise
178 76 UNIMPL vhangup
179 77 UNIMPL
180 78 UNIMPL
181 79 NOARGS { int sys_getgroups(int gidsetsize, gid_t *gidset); }
182 80 NOARGS { int sys_setgroups(int gidsetsize, const gid_t *gidset); }
183 81 UNIMPL
184 82 UNIMPL setpgrp
185 83 NODEF { int osf1_sys_setitimer(u_int which, \
186 struct osf1_itimerval *itv, \
187 struct osf1_itimerval *oitv); }
188 84 UNIMPL
189 85 UNIMPL
190 86 UNIMPL osf1_sys_getitimer
191 87 NOARGS { int compat_43_sys_gethostname(char *hostname, \
192 u_int len); }
193 88 NOARGS { int compat_43_sys_sethostname(char *hostname, \
194 u_int len); }
195 89 UNIMPL getdtablesize
196 90 NOARGS { int sys_dup2(int from, int to); }
197 91 STD { int linux_sys_fstat(int fd, struct linux_stat *sp); }
198 92 STD { int linux_sys_fcntl(int fd, int cmd, void *arg); }
199 93 NODEF { int osf1_sys_select(u_int nd, fd_set *in, \
200 fd_set *ou, fd_set *ex, struct osf1_timeval *tv); }
201 94 NOARGS { int sys_poll(struct pollfd *fds, u_int nfds, \
202 int timeout); }
203 95 NOARGS { int sys_fsync(int fd); }
204 96 NOARGS { int sys_setpriority(int which, int who, int prio); }
205 97 STD { int linux_sys_socket(int domain, int type, \
206 int protocol); }
207 98 STD { int linux_sys_connect(int s, \
208 const struct sockaddr *name, \
209 unsigned int namelen); }
210 99 NOARGS { int compat_43_sys_accept(int s, \
211 caddr_t name, int *anamelen); }
212 ;100 ALIAS osf1_sys_getpriority
213 100 NOARGS { int sys_getpriority(int which, int who); }
214 101 NOARGS { int compat_43_sys_send(int s, caddr_t buf, int len, \
215 int flags); }
216 102 NOARGS { int compat_43_sys_recv(int s, caddr_t buf, int len, \
217 int flags); }
218 103 STD { int linux_sys_sigreturn(struct linux_sigframe *sfp); }
219 104 NOARGS { int sys_bind(int s, const struct sockaddr *name, \
220 unsigned int namelen); }
221 105 STD { int linux_sys_setsockopt(int s, int level, \
222 int optname, void *optval, int optlen); }
223 106 NOARGS { int sys_listen(int s, int backlog); }
224 107 UNIMPL
225 108 UNIMPL
226 109 UNIMPL
227 110 UNIMPL
228
229 111 STD { int linux_sys_sigsuspend(caddr_t restart, \
230 int oldmask, int mask); }
231 ;112 ALIAS osf1_sys_sigstack
232 112 NOARGS { int compat_43_sys_sigstack(struct sigstack *nss, \
233 struct sigstack *oss); }
234 113 NOARGS { size_t sys_recvmsg(int fd, struct msghdr *msg, \
235 int flags); }
236 114 NOARGS { ssize_t sys_sendmsg(int fd, \
237 const struct msghdr *msg, int flags); }
238 115 UNIMPL
239 116 NODEF { int osf1_sys_gettimeofday(struct osf1_timeval *tv, \
240 struct osf1_timezone *tzp); }
241 117 NODEF { int osf1_sys_getrusage(int who, \
242 struct osf1_rusage *rusage); }
243 118 STD { int linux_sys_getsockopt(int s, int level, \
244 int optname, void *optval, int *optlen); }
245 119 UNIMPL
246 120 NOARGS { ssize_t sys_readv(int fd, const struct iovec *iovp, \
247 int iovcnt); }
248 121 NOARGS { ssize_t sys_writev(int fd, const struct iovec *iovp, \
249 int iovcnt); }
250 122 NODEF { int osf1_sys_settimeofday(struct osf1_timeval *tv, \
251 struct osf1_timezone *tzp); }
252 123 STD { int linux_sys_fchown(int fd, int uid, int gid); }
253 124 NOARGS { int sys_fchmod(int fd, mode_t mode); }
254 125 STD { int linux_sys_recvfrom(int s, void *buf, int len, \
255 int flags, struct sockaddr *from, \
256 int *fromlen); }
257 126 STD { int linux_sys_setreuid(int ruid, int euid); }
258 127 STD { int linux_sys_setregid(int rgid, int egid); }
259 128 STD { int linux_sys_rename(const char *from, const char *to); }
260 129 STD { int linux_sys_truncate(const char *path, long length); }
261 130 NOARGS { int compat_43_sys_ftruncate(int fd, long length); }
262 131 NOARGS { int sys_flock(int fd, int how); }
263 132 NOARGS { int sys_setgid(gid_t gid); }
264 133 STD { int linux_sys_sendto(int s, void *msg, int len, \
265 int flags, struct sockaddr *to, int tolen); }
266 134 NOARGS { int sys_shutdown(int s, int how); }
267 135 STD { int linux_sys_socketpair(int domain, int type, \
268 int protocol, int *rsv); }
269 136 STD { int linux_sys_mkdir(const char *path, int mode); }
270 137 STD { int linux_sys_rmdir(const char *path); }
271 138 NODEF { int osf1_sys_utimes(const char *path, \
272 const struct osf1_timeval *tptr); }
273 139 UNIMPL
274 140 UNIMPL
275 141 NOARGS { int compat_43_sys_getpeername(int fdes, \
276 caddr_t asa, int *alen); }
277 142 UNIMPL
278 143 UNIMPL
279 144 NOARGS { int compat_43_sys_getrlimit(int which, \
280 struct orlimit *rlp); }
281 145 NOARGS { int compat_43_sys_setrlimit(int which, \
282 const struct orlimit *rlp); }
283 146 UNIMPL
284 147 NOARGS { int sys_setsid(void); }
285 148 UNIMPL quotactl
286 149 UNIMPL
287 150 NOARGS { int compat_43_sys_getsockname(int fdec, \
288 caddr_t asa, int *alen); }
289 151 UNIMPL
290 152 UNIMPL
291 153 UNIMPL
292 154 UNIMPL
293 155 UNIMPL
294 ;156 ALIAS osf1_sys_sigaction
295 156 STD { int linux_sys_sigaction(int signum, \
296 const struct linux_old_sigaction *nsa, \
297 struct linux_old_sigaction *osa); }
298 157 UNIMPL
299 158 UNIMPL
300 ;159 ALIAS osf1_sys_getdirentries
301 159 NOARGS { int compat_43_sys_getdirentries(int fd, char *buf, \
302 u_int count, long *basep); }
303 160 NODEF { int osf1_sys_statfs(const char *path, \
304 struct osf1_statfs *buf, int len); }
305 161 NODEF { int osf1_sys_fstatfs(int fd, \
306 struct osf1_statfs *buf, int len); }
307 162 UNIMPL
308 163 UNIMPL
309 164 UNIMPL
310 ;165 ALIAS osf1_sys_getdomainname
311 165 NOARGS { int compat_09_sys_getdomainname(char *domainname, \
312 int len); }
313 166 UNIMPL setdomainname
314 167 UNIMPL
315 168 UNIMPL
316 169 UNIMPL
317 170 UNIMPL
318 171 UNIMPL
319 172 UNIMPL
320 173 UNIMPL
321 174 UNIMPL
322 175 UNIMPL
323 176 UNIMPL
324 177 UNIMPL
325 178 UNIMPL
326 179 UNIMPL
327 180 UNIMPL
328 181 UNIMPL
329 182 UNIMPL
330 183 UNIMPL
331 184 UNIMPL
332 185 UNIMPL
333 186 UNIMPL
334 187 UNIMPL
335 188 UNIMPL
336 189 UNIMPL
337 190 UNIMPL
338 191 UNIMPL
339 192 UNIMPL
340 193 UNIMPL
341 194 UNIMPL
342 195 UNIMPL
343 196 UNIMPL
344 197 UNIMPL
345 198 UNIMPL
346 199 UNIMPL osf1_sys_swapon
347 #ifdef SYSVMSG
348 200 NOARGS { int linux_sys_msgctl(int msqid, int cmd, \
349 struct linux_msqid_ds *buf); }
350 201 NOARGS { int sys_msgget(key_t key, int msgflg); }
351 202 NOARGS { ssize_t sys_msgrcv(int msqid, void *msgp, \
352 size_t msgsz, long msgtyp, int msgflg); }
353 203 NOARGS { int sys_msgsnd(int msqid, void *msgp, size_t msgsz, \
354 int msgflg); }
355 #else
356 200 UNIMPL msgctl
357 201 UNIMPL msgget
358 202 UNIMPL msgrcv
359 203 UNIMPL msgsnd
360 #endif
361 #ifdef SYSVSEM
362 204 NOARGS { int linux_sys_semctl(int semid, int semnum, \
363 int cmd, union linux_semun arg); }
364 205 NOARGS { int sys_semget(key_t key, int nsems, int semflg); }
365 206 NOARGS { int sys_semop(int semid, struct sembuf *sops, \
366 size_t nsops); }
367 #else
368 204 UNIMPL semctl
369 205 UNIMPL semget
370 206 UNIMPL semop
371 #endif
372 ;207 ALIAS osf1_sys_utsname
373 207 STD { int linux_sys_olduname(struct linux_old_utsname *up); }
374 208 STD { int linux_sys_lchown(char *path, int uid, int gid); }
375 #ifdef SYSVSHM
376 209 NOARGS { int linux_sys_shmat(int shmid, void *shmaddr, \
377 int shmflg, u_long *raddr); }
378 210 NOARGS { int linux_sys_shmctl(int shmid, int cmd, \
379 struct linux_shmid_ds *buf); }
380 211 NOARGS { int sys_shmdt(const void *shmaddr); }
381 212 NOARGS { int sys_shmget(key_t key, size_t size, int shmflg); }
382 #else
383 209 UNIMPL shmat
384 210 UNIMPL shmctl
385 211 UNIMPL shmdt
386 212 UNIMPL shmget
387 #endif
388 213 UNIMPL
389 214 UNIMPL
390 215 UNIMPL
391 216 UNIMPL
392 217 STD { int linux_sys_msync(caddr_t addr, int len, int fl); }
393 218 UNIMPL
394 219 UNIMPL
395 220 UNIMPL
396 221 UNIMPL
397 222 UNIMPL
398 223 UNIMPL
399 224 UNIMPL
400 225 UNIMPL
401 226 UNIMPL
402 227 UNIMPL
403 228 UNIMPL
404 229 UNIMPL
405 230 UNIMPL
406 231 UNIMPL
407 232 UNIMPL
408 233 STD { int linux_sys_getpgid(int pid); }
409 234 NOARGS { pid_t sys_getsid(pid_t pid); }
410 235 UNIMPL sigaltstack
411 236 UNIMPL
412 237 UNIMPL
413 238 UNIMPL
414 239 UNIMPL
415 240 UNIMPL
416 241 NODEF { int osf1_sys_sysinfo(int cmd, char buf, long len); }
417 242 UNIMPL
418 243 UNIMPL
419 244 UNIMPL osf1_sys_proplist_syscall
420 245 UNIMPL
421 246 UNIMPL
422 247 UNIMPL
423 248 UNIMPL
424 249 UNIMPL
425 250 UNIMPL
426 251 NODEF { int osf1_sys_usleep_thread( \
427 struct osf1_timeval *sleep, \
428 struct osf1_timeval *slept); }
429 252 UNIMPL
430 253 UNIMPL
431 254 UNIMPL
432 255 UNIMPL sysfs
433 256 NODEF { int osf1_sys_getsysinfo(u_long op, caddr_t buffer, \
434 u_long nbytes, caddr_t arg, u_long flag); }
435 257 NODEF { int osf1_sys_setsysinfo(u_long op, caddr_t buffer, \
436 u_long nbytes, caddr_t arg, u_long flag); }
437 258 UNIMPL
438 259 UNIMPL
439 260 UNIMPL
440 ; This entry doesn't exist in the Alpha linux syscall table but the function is
441 ; implemented and used on other ports.
442 261 STD { int linux_sys_fdatasync(int fd); }
443 262 UNIMPL
444 263 UNIMPL
445 264 UNIMPL
446 265 UNIMPL
447 266 UNIMPL
448 267 UNIMPL
449 268 UNIMPL
450 269 UNIMPL
451 270 UNIMPL
452 271 UNIMPL
453 272 UNIMPL
454 273 UNIMPL
455 274 UNIMPL
456 275 UNIMPL
457 276 UNIMPL
458 277 UNIMPL
459 278 UNIMPL
460 279 UNIMPL
461 280 UNIMPL
462 281 UNIMPL
463 282 UNIMPL
464 283 UNIMPL
465 284 UNIMPL
466 285 UNIMPL
467 286 UNIMPL
468 287 UNIMPL
469 288 UNIMPL
470 289 UNIMPL
471 290 UNIMPL
472 291 UNIMPL
473 292 UNIMPL
474 293 UNIMPL
475 294 UNIMPL
476 295 UNIMPL
477 296 UNIMPL
478 297 UNIMPL
479 298 UNIMPL
480 299 UNIMPL
481 300 UNIMPL bdflush
482 301 UNIMPL sethae
483 302 UNIMPL mount
484 303 UNIMPL old_adjtimex
485 304 UNIMPL swapoff
486 305 STD { int linux_sys_getdents(int fd, \
487 struct linux_dirent *dent, unsigned int count); }
488 306 UNIMPL alpha_create_module
489 307 UNIMPL init_module
490 308 UNIMPL delete_module
491 309 UNIMPL get_kernel_syms
492 310 UNIMPL syslog
493 311 STD { int linux_sys_reboot(int magic1, int magic2, \
494 int cmd, void *arg); }
495 312 STD { int linux_sys_clone(int flags, void *stack); }
496 #ifdef EXEC_AOUT
497 313 STD { int linux_sys_uselib(char *path); }
498 #else
499 313 UNIMPL sys_uselib
500 #endif
501 314 NOARGS { int sys_mlock(const void *addr, size_t len); }
502 315 NOARGS { int sys_munlock(const void *addr, size_t len); }
503 316 NOARGS { int sys_mlockall(int flags); }
504 317 NOARGS { int sys_munlockall(void); }
505 318 UNIMPL sysinfo
506 319 STD { int linux_sys___sysctl(struct linux___sysctl *lsp); }
507 320 UNIMPL idle
508 321 UNIMPL oldumount
509 322 NOARGS { int compat_12_sys_swapon(const char *name); }
510 323 STD { int linux_sys_times(struct times *tms); }
511 324 STD { int linux_sys_personality(int per); }
512 325 STD { int linux_sys_setfsuid(uid_t uid); }
513 326 UNIMPL setfsgid
514 327 UNIMPL ustat
515 328 STD { int linux_sys_statfs(const char *path, \
516 struct linux_statfs *sp); }
517 329 STD { int linux_sys_fstatfs(int fd, \
518 struct linux_statfs *sp); }
519 330 STD { int linux_sys_sched_setparam(pid_t pid, \
520 const struct linux_sched_param *sp); }
521 331 STD { int linux_sys_sched_getparam(pid_t pid, \
522 struct linux_sched_param *sp); }
523 332 STD { int linux_sys_sched_setscheduler(pid_t pid, \
524 int policy, const struct linux_sched_param *sp); }
525 333 STD { int linux_sys_sched_getscheduler(pid_t pid); }
526 334 STD { int linux_sys_sched_yield(void); }
527 335 STD { int linux_sys_sched_get_priority_max(int policy); }
528 336 STD { int linux_sys_sched_get_priority_min(int policy); }
529 337 UNIMPL sched_rr_get_interval
530 338 UNIMPL afs_syscall
531 339 STD { int linux_sys_uname(struct linux_utsname *up); }
532 340 NOARGS { int sys_nanosleep(const struct timespec *rqtp, \
533 struct timespec *rmtp); }
534 341 STD { void *linux_sys_mremap(void *old_address, \
535 size_t old_size, size_t new_size, u_long flags); }
536 342 UNIMPL nfsservctl
537 343 STD { int linux_sys_setresuid(uid_t ruid, uid_t euid, \
538 uid_t suid); }
539 344 STD { int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \
540 uid_t *suid); }
541 345 UNIMPL pciconfig_read
542 346 UNIMPL pciconfig_write
543 347 UNIMPL query_module
544 348 UNIMPL prctl
545 349 STD { int linux_sys_pread(int fd, char *buf, \
546 size_t nbyte, linux_off_t offset); }
547 350 STD { int linux_sys_pwrite(int fd, char *buf, \
548 size_t nbyte, linux_off_t offset); }
549 351 STD { int linux_sys_rt_sigreturn( \
550 struct linux_rt_sigframe *sfp); }
551 352 STD { int linux_sys_rt_sigaction(int signum, \
552 const struct linux_sigaction *nsa, \
553 struct linux_sigaction *osa, \
554 size_t sigsetsize); }
555 353 STD { int linux_sys_rt_sigprocmask(int how, \
556 const linux_sigset_t *set, \
557 linux_sigset_t *oset, \
558 size_t sigsetsize); }
559 354 STD { int linux_sys_rt_sigpending( \
560 linux_sigset_t *set, \
561 size_t sigsetsize); }
562 355 UNIMPL rt_sigtimedwait
563 ; XXX XAX int here? sigset_t here?
564 356 STD { int linux_sys_rt_queueinfo(int pid, int signum, \
565 linux_siginfo_t *uinfo); }
566 357 STD { int linux_sys_rt_sigsuspend(linux_sigset_t *unewset, \
567 size_t sigsetsize); }
568 358 STD { int linux_sys_select(int nfds, fd_set *readfds, \
569 fd_set *writefds, fd_set *exceptfds, \
570 struct timeval *timeout); }
571 359 NOARGS { int sys_gettimeofday(struct timeval *tp, \
572 struct timezone *tzp); }
573 360 NOARGS { int sys_settimeofday(const struct timeval *tp, \
574 const struct timezone *tzp); }
575 361 NOARGS { int sys_getitimer(int which, \
576 struct itimerval *itv); }
577 362 NOARGS { int sys_setitimer(int which, \
578 const struct itimerval *itv, \
579 struct itimerval *oitv); }
580 363 NOARGS { int sys_utimes(char *path, \
581 struct timeval *times); }
582 364 NOARGS { int sys_getrusage(int who, struct rusage *rusage); }
583 365 STD { int linux_sys_wait4(int pid, int *status, \
584 int options, struct rusage *rusage); }
585 366 UNIMPL adjtimex
586 367 NOARGS { int sys___getcwd(char *bufp, size_t length); }
587 368 UNIMPL capget
588 369 UNIMPL capset
589 370 UNIMPL sendfile
590