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