Home | History | Annotate | Line # | Download | only in m68k
syscalls.master revision 1.44
      1 	$NetBSD: syscalls.master,v 1.44 2004/08/01 15:34:22 jdolecek Exp $
      2 
      3 ;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93
      4 
      5 ; NetBSD m68k 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 #if defined(_KERNEL_OPT)
     37 #include "opt_compat_netbsd.h"
     38 #include "opt_compat_43.h"
     39 #endif
     40 
     41 #include <sys/param.h>
     42 #include <sys/poll.h>
     43 #include <sys/systm.h>
     44 #include <sys/signal.h>
     45 #include <sys/mount.h>
     46 #include <sys/sa.h>
     47 #include <sys/syscallargs.h>
     48 
     49 #include <compat/linux/common/linux_types.h>
     50 #include <compat/linux/common/linux_signal.h>
     51 #include <compat/linux/common/linux_siginfo.h>
     52 #include <compat/linux/common/linux_machdep.h>
     53 #include <compat/linux/common/linux_mmap.h>
     54 
     55 #include <compat/linux/linux_syscallargs.h>
     56 
     57 %%
     58 
     59 0	NOARGS		{ int linux_sys_nosys(void); } syscall
     60 1	NOARGS		{ int sys_exit(int rval); }
     61 2	NOARGS		{ int sys_fork(void); }
     62 3	NOARGS		{ int sys_read(int fd, char *buf, u_int nbyte); }
     63 4	NOARGS		{ int sys_write(int fd, char *buf, u_int nbyte); }
     64 5	STD		{ int linux_sys_open(const char *path, int flags, \
     65 			    int mode); }
     66 6	NOARGS		{ int sys_close(int fd); }
     67 7	STD		{ int linux_sys_waitpid(int pid, int *status, \
     68 			    int options);}
     69 8	STD		{ int linux_sys_creat(const char *path, int mode); }
     70 9	STD		{ int linux_sys_link(const char *path, const char *link); }
     71 10	STD		{ int linux_sys_unlink(const char *path); }
     72 11	STD		{ int linux_sys_execve(const char *path, char **argp, \
     73 			    char **envp); }
     74 12	STD		{ int linux_sys_chdir(const char *path); }
     75 13	STD		{ int linux_sys_time(linux_time_t *t); }
     76 14	STD		{ int linux_sys_mknod(const char *path, int mode, \
     77 			    int dev); }
     78 15	STD		{ int linux_sys_chmod(const char *path, int mode); }
     79 ;16 lchown on i386; chown on m68k.
     80 16	STD		{ int linux_sys_chown16(const char *path, \
     81 			    int uid, int gid); }
     82 17	OBSOL		break
     83 18	OBSOL		ostat
     84 #if !defined(_KERNEL) || defined(COMPAT_43)
     85 19	NOARGS		{ long compat_43_sys_lseek(int fd, long offset, \
     86 			    int whence); }
     87 #else
     88 19	UNIMPL		compat_43_sys_lseek
     89 #endif
     90 20	NOARGS MPSAFE	{ pid_t sys_getpid(void); }
     91 21	UNIMPL		mount
     92 22	OBSOL		umount
     93 23	NOARGS		linux_setuid16 { int sys_setuid(uid_t uid); }
     94 24	NOARGS		linux_getuid16 { uid_t sys_getuid(void); }
     95 25	STD		{ int linux_sys_stime(linux_time_t *t); }
     96 26	STD		{ int linux_sys_ptrace(int request, int pid, \
     97 			  int addr, int data); }
     98 27	STD		{ int linux_sys_alarm(unsigned int secs); }
     99 28	OBSOL		ofstat
    100 29	STD		{ int linux_sys_pause(void); }
    101 30	STD		{ int linux_sys_utime(const char *path, \
    102 			    struct linux_utimbuf *times); }
    103 31	OBSOL		stty
    104 32	OBSOL		gtty
    105 33	STD		{ int linux_sys_access(const char *path, int flags); }
    106 34	STD		{ int linux_sys_nice(int incr); }
    107 35	OBSOL		ftime
    108 36	NOARGS		{ int sys_sync(void); }
    109 37	STD		{ int linux_sys_kill(int pid, int signum); }
    110 38	STD		{ int linux_sys_rename(const char *from, \
    111 			    const char *to); }
    112 39	STD		{ int linux_sys_mkdir(const char *path, int mode); }
    113 40	STD		{ int linux_sys_rmdir(const char *path); }
    114 41	NOARGS		{ int sys_dup(u_int fd); }
    115 42	STD		{ int linux_sys_pipe(int *pfds); }
    116 43	STD		{ int linux_sys_times(struct times *tms); }
    117 44	OBSOL		prof
    118 45	STD		{ int linux_sys_brk(char *nsize); }
    119 46	NOARGS		linux_setgid16 { int sys_setgid(gid_t gid); }
    120 47	NOARGS		linux_getgid16 { gid_t sys_getgid(void); }
    121 48	STD		{ int linux_sys_signal(int signum, \
    122 			    linux_handler_t handler); }
    123 49	NOARGS		linux_geteuid16 { uid_t sys_geteuid(void); }
    124 50	NOARGS		linux_getegid16 { gid_t sys_getegid(void); }
    125 51	NOARGS		{ int sys_acct(char *path); }
    126 52	UNIMPL		umount
    127 53	OBSOL		lock
    128 54	STD		{ int linux_sys_ioctl(int fd, u_long com, \
    129 			    caddr_t data); }
    130 55	STD		{ int linux_sys_fcntl(int fd, int cmd, void *arg); }
    131 56	OBSOL		mpx
    132 57	NOARGS		{ int sys_setpgid(int pid, int pgid); }
    133 58	OBSOL		ulimit
    134 59	UNIMPL		oldolduname
    135 60	NOARGS		{ int sys_umask(int newmask); }
    136 61	NOARGS		{ int sys_chroot(char *path); }
    137 62	UNIMPL		ustat
    138 63	NOARGS		{ int sys_dup2(u_int from, u_int to); }
    139 64	NOARGS		{ pid_t sys_getppid(void); }
    140 65	NOARGS		{ int sys_getpgrp(void); }
    141 66	NOARGS		{ int sys_setsid(void); }
    142 67	STD		{ int linux_sys_sigaction(int signum, \
    143 			    const struct linux_old_sigaction *nsa, \
    144 			    struct linux_old_sigaction *osa); }
    145 68	STD		{ int linux_sys_siggetmask(void); }
    146 69	STD		{ int linux_sys_sigsetmask(linux_old_sigset_t mask); }
    147 70	STD		{ int linux_sys_setreuid16(int ruid, int euid); }
    148 71	STD		{ int linux_sys_setregid16(int rgid, int egid); }
    149 72	STD		{ int linux_sys_sigsuspend(caddr_t restart, \
    150 			    int oldmask, int mask); }
    151 73	STD		{ int linux_sys_sigpending(linux_old_sigset_t *set); }
    152 #if !defined(_KERNEL) || defined(COMPAT_43)
    153 74	NOARGS		{ int compat_43_sys_sethostname(char *hostname, \
    154 			    u_int len);}
    155 #else
    156 74	UNIMPL		compat_43_sys_sethostname
    157 #endif
    158 75	STD		{ int linux_sys_setrlimit(u_int which, \
    159 			    struct orlimit *rlp); }
    160 76	STD		{ int linux_sys_getrlimit(u_int which, \
    161 			    struct orlimit *rlp); }
    162 77	NOARGS		{ int sys_getrusage(int who, struct rusage *rusage); }
    163 78	STD		{ int linux_sys_gettimeofday(struct timeval *tp, \
    164 			    struct timezone *tzp); }
    165 79	STD		{ int linux_sys_settimeofday(struct timeval *tp, \
    166 			    struct timezone *tzp); }
    167 80	STD		{ int linux_sys_getgroups16(u_int gidsetsize, linux_gid_t *gidset); }
    168 81	STD		{ int linux_sys_setgroups16(u_int gidsetsize, linux_gid_t *gidset); }
    169 82	STD		{ int linux_sys_oldselect(struct linux_oldselect *lsp); }
    170 83	STD		{ int linux_sys_symlink(const char *path, \
    171 			    const char *to); }
    172 #if !defined(_KERNEL) || defined(COMPAT_43)
    173 84	NOARGS		{ int compat_43_sys_lstat(const char *path, \
    174 			    struct stat43 *up); } oolstat
    175 #else
    176 84	UNIMPL		compat_43_sys_lstat
    177 #endif
    178 85	STD		{ int linux_sys_readlink(const char *name, char *buf, \
    179 			    int count); }
    180 86	STD		{ int linux_sys_uselib(const char *path); }
    181 87	STD		{ int linux_sys_swapon(char *name); }
    182 88	STD		{ int linux_sys_reboot(int magic1, int magic2, \
    183 			    int cmd, void *arg); }
    184 89	STD		{ int linux_sys_readdir(int fd, caddr_t dent, \
    185 			    unsigned int count); }
    186 90	STD		{ int linux_sys_old_mmap(struct linux_oldmmap *lmp); }
    187 91	NOARGS		{ int sys_munmap(caddr_t addr, int len); }
    188 92	STD		{ int linux_sys_truncate(const char *path, \
    189 			    long length); }
    190 #if !defined(_KERNEL) || defined(COMPAT_43)
    191 93	NOARGS		{ int compat_43_sys_ftruncate(int fd, long length); }
    192 #else
    193 93	UNIMPL		compat_43_sys_ftruncate
    194 #endif
    195 94	NOARGS		{ int sys_fchmod(int fd, int mode); }
    196 95	STD		{ int linux_sys_fchown16(int fd, int uid, int gid); }
    197 96	NOARGS		{ int sys_getpriority(int which, int who); }
    198 97	NOARGS		{ int sys_setpriority(int which, int who, int prio); }
    199 98	NOARGS		{ int sys_profil(caddr_t samples, u_int size, \
    200 			    u_int offset, u_int scale); }
    201 99	STD		{ int linux_sys_statfs(const char *path, \
    202 			    struct linux_statfs *sp); }
    203 100	STD		{ int linux_sys_fstatfs(int fd, \
    204 			    struct linux_statfs *sp); }
    205 101	UNIMPL		ioperm
    206 102	STD		{ int linux_sys_socketcall(int what, void *args); }
    207 103	UNIMPL		syslog
    208 104	NOARGS		{ int sys_setitimer(u_int which, \
    209 			    struct itimerval *itv, struct itimerval *oitv); }
    210 105	NOARGS		{ int sys_getitimer(u_int which, \
    211 			    struct itimerval *itv); }
    212 106	STD		{ int linux_sys_stat(const char *path, \
    213 			    struct linux_stat *sp); }
    214 107	STD		{ int linux_sys_lstat(const char *path, \
    215 			    struct linux_stat *sp); }
    216 108	STD		{ int linux_sys_fstat(int fd, struct linux_stat *sp); }
    217 109	UNIMPL		olduname
    218 110	UNIMPL		iopl
    219 111	UNIMPL		vhangup
    220 112	UNIMPL		idle
    221 113	UNIMPL		vm86old
    222 114	STD		{ int linux_sys_wait4(int pid, int *status, \
    223 			    int options, struct rusage *rusage); }
    224 115	STD		{ int linux_sys_swapoff(const char *path); }
    225 116	STD		{ int linux_sys_sysinfo(struct linux_sysinfo *arg); }
    226 117	STD		{ int linux_sys_ipc(int what, int a1, int a2, int a3, \
    227 			    caddr_t ptr); }
    228 118	NOARGS		{ int sys_fsync(int fd); }
    229 119	STD		{ int linux_sys_sigreturn(void); }
    230 120	STD		{ int linux_sys_clone(int flags, void *stack); }
    231 121	STD		{ int linux_sys_setdomainname(char *domainname, \
    232 			    int len); }
    233 122	STD		{ int linux_sys_uname(struct linux_utsname *up); }
    234 123	STD		{ int linux_sys_cacheflush(unsigned long addr, \
    235 			    int scope, int cache, unsigned long len); }
    236 124	UNIMPL		adjtimex
    237 125	STD		{ int linux_sys_mprotect(const void *start, \
    238 			    unsigned long len, int prot); }
    239 126	STD		{ int linux_sys_sigprocmask(int how, \
    240 			    const linux_old_sigset_t *set, \
    241 			    linux_old_sigset_t *oset); }
    242 127	UNIMPL		create_module
    243 128	UNIMPL		init_module
    244 129	UNIMPL		delete_module
    245 130	UNIMPL		get_kernel_syms
    246 131	UNIMPL		quotactl
    247 132	STD		{ int linux_sys_getpgid(int pid); }
    248 133	NOARGS		{ int sys_fchdir(int fd); }
    249 134	UNIMPL		bdflush
    250 135	UNIMPL		sysfs
    251 136	STD		{ int linux_sys_personality(int per); }
    252 137	UNIMPL		afs_syscall
    253 138	NOARGS		linux_setfsuid16 { int linux_sys_setfsuid(uid_t uid); }
    254 139	NOARGS		linux_getfsuid16 { int linux_sys_getfsuid(void); }
    255 140	STD		{ int linux_sys_llseek(int fd, u_int32_t ohigh, \
    256 			    u_int32_t olow, caddr_t res, int whence); }
    257 141	STD		{ int linux_sys_getdents(int fd, \
    258 			    struct linux_dirent *dent, unsigned int count); }
    259 142	STD		{ int linux_sys_select(int nfds, fd_set *readfds, \
    260 			    fd_set *writefds, fd_set *exceptfds, \
    261 			    struct timeval *timeout); }
    262 143	NOARGS		{ int sys_flock(int fd, int how); }
    263 144	STD		{ int linux_sys_msync(caddr_t addr, int len, int fl); }
    264 145	NOARGS		{ int sys_readv(int fd, struct iovec *iovp, \
    265 				u_int iovcnt); }
    266 146	NOARGS		{ int sys_writev(int fd, struct iovec *iovp, \
    267 				u_int iovcnt); }
    268 147	NOARGS		{ pid_t sys_getsid(pid_t pid); }
    269 148	STD		{ int linux_sys_fdatasync(int fd); }
    270 149	STD		{ int linux_sys___sysctl(struct linux___sysctl *lsp); }
    271 150	NOARGS		{ int sys_mlock(caddr_t addr, size_t len); }
    272 151	NOARGS		{ int sys_munlock(caddr_t addr, size_t len); }
    273 152	NOARGS		{ int sys_mlockall(int flags); }
    274 153	NOARGS		{ int sys_munlockall(void); }
    275 154	STD		{ int linux_sys_sched_setparam(pid_t pid, \
    276 			    const struct linux_sched_param *sp); }
    277 155	STD		{ int linux_sys_sched_getparam(pid_t pid, \
    278 			    struct linux_sched_param *sp); }
    279 156	STD		{ int linux_sys_sched_setscheduler(pid_t pid, \
    280 			    int policy, const struct linux_sched_param *sp); }
    281 157	STD		{ int linux_sys_sched_getscheduler(pid_t pid); }
    282 158	STD		{ int linux_sys_sched_yield(void); }
    283 159	STD		{ int linux_sys_sched_get_priority_max(int policy); }
    284 160	STD		{ int linux_sys_sched_get_priority_min(int policy); }
    285 161	UNIMPL		sched_rr_get_interval
    286 162	NOARGS		{ int sys_nanosleep(const struct timespec *rqtp, \
    287 				struct timespec *rmtp); }
    288 163	STD		{ void *linux_sys_mremap(void *old_address, \
    289 			    size_t old_size, size_t new_size, u_long flags); }
    290 164	STD		{ int linux_sys_setresuid16(uid_t ruid, uid_t euid, \
    291 			    uid_t suid); }
    292 165	NOARGS		linux_getresuid16 { int linux_sys_getresuid( \
    293 			    uid_t *ruid, uid_t *euid, uid_t *suid); }
    294 166	UNIMPL		vm86
    295 167	UNIMPL		query_module
    296 168	NOARGS		{ int sys_poll(struct pollfd *fds, u_int nfds, \
    297 			    int timeout); }
    298 169	UNIMPL		nfsservctl
    299 170	STD		{ int linux_sys_setresgid16(gid_t rgid, gid_t egid, \
    300 			    gid_t sgid); }
    301 171	NOARGS		linux_getresgid16 { int linux_sys_getresgid( \
    302 			    gid_t *rgid, gid_t *egid, gid_t *sgid); }
    303 172	UNIMPL		prctl
    304 173	STD		{ int linux_sys_rt_sigreturn(void); }
    305 174	STD		{ int linux_sys_rt_sigaction(int signum, \
    306 			    const struct linux_sigaction *nsa, \
    307 			    struct linux_sigaction *osa, \
    308 			    size_t sigsetsize); }
    309 175	STD		{ int linux_sys_rt_sigprocmask(int how, \
    310 			    const linux_sigset_t *set, \
    311 			    linux_sigset_t *oset, \
    312 			    size_t sigsetsize); }
    313 176	STD		{ int linux_sys_rt_sigpending( \
    314 			    linux_sigset_t *set, \
    315 			    size_t sigsetsize); }
    316 177	UNIMPL		rt_sigtimedwait
    317 ; XXX XAX int here?  sigset_t here?  siginfo_t
    318 178	STD		{ int linux_sys_rt_queueinfo(int pid, int signum, \
    319 			    void *uinfo); }
    320 179	STD		{ int linux_sys_rt_sigsuspend(linux_sigset_t *unewset, \
    321 			    size_t sigsetsize); }
    322 180	STD		{ int linux_sys_pread(int fd, char *buf, \
    323 			    size_t nbyte, linux_off_t offset); }
    324 181	STD		{ int linux_sys_pwrite(int fd, char *buf, \
    325 			    size_t nbyte, linux_off_t offset); }
    326 ;182 chown on i386; lchown on m68k.
    327 182	STD		{ int linux_sys_lchown16(const char *path, int uid, \
    328 			    int gid); }
    329 183	NOARGS		{ int sys___getcwd(char *bufp, size_t length); }
    330 184	UNIMPL		capget
    331 185	UNIMPL		capset
    332 186	STD		{ int linux_sys_sigaltstack( \
    333 			    const struct linux_sigaltstack *ss, \
    334 			    struct linux_sigaltstack *oss); }
    335 187	UNIMPL		sendfile
    336 188	UNIMPL		getpmsg
    337 189	UNIMPL		putpmsg
    338 190	NOARGS		{ int sys___vfork14(void); }
    339 191	STD		{ int linux_sys_ugetrlimit(int which, \
    340 			    struct orlimit *rlp); }
    341 192	NOARGS		{ linux_off_t linux_sys_mmap2(unsigned long addr, \
    342 			    size_t len, int prot, int flags, int fd, \
    343 			    linux_off_t offset); }
    344 193	STD		{ int linux_sys_truncate64(const char *path, \
    345 			    off_t length); }
    346 194	STD		{ int linux_sys_ftruncate64(unsigned int fd, \
    347 			    off_t length); }
    348 195	STD		{ int linux_sys_stat64(const char *path, \
    349 			    struct linux_stat64 *sp); }
    350 196	STD		{ int linux_sys_lstat64(const char *path, \
    351 			    struct linux_stat64 *sp); }
    352 197	STD		{ int linux_sys_fstat64(int fd, \
    353 			    struct linux_stat64 *sp); }
    354 198	STD		 { int linux_sys_chown(const char *path, uid_t uid, \
    355 			    gid_t gid); }
    356 199	NOARGS		{ uid_t sys_getuid(void); }
    357 200	NOARGS		{ gid_t sys_getgid(void); }
    358 201	NOARGS		{ uid_t sys_geteuid(void); }
    359 202	NOARGS		{ gid_t sys_getegid(void); }
    360 203	NOARGS		{ int sys_setreuid(uid_t ruid, uid_t euid); }
    361 204	NOARGS		{ int sys_setregid(gid_t rgid, gid_t egid); }
    362 205	NOARGS		{ int sys_getgroups(u_int gidsetsize, gid_t *gidset); }
    363 206	NOARGS		{ int sys_setgroups(u_int gidsetsize, gid_t *gidset); }
    364 207	NOARGS		{ int sys___posix_fchown(int fd, uid_t uid, \
    365 			    gid_t gid); }
    366 208	STD		{ int linux_sys_setresuid(uid_t ruid, uid_t euid, \
    367 			    uid_t suid); }
    368 209	STD		{ int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \
    369 			    uid_t *suid); }
    370 210	STD		{ int linux_sys_setresgid(gid_t rgid, gid_t egid, \
    371 			    gid_t sgid); }
    372 211	STD		{ int linux_sys_getresgid(gid_t *rgid, gid_t *egid, \
    373 			    gid_t *sgid); }
    374 212	STD		{ int linux_sys_lchown(const char *path, uid_t uid, \
    375 			    gid_t gid); }
    376 213	NOARGS		{ int sys_setuid(uid_t uid); }
    377 214	NOARGS		{ int sys_setgid(gid_t gid); }
    378 215	STD		{ int linux_sys_setfsuid(uid_t uid); }
    379 216	NOARGS		{ int linux_sys_getfsuid(void); }
    380 217	UNIMPL		/* unused */
    381 218	UNIMPL		/* unused */
    382 219	UNIMPL		/* unused */
    383 220	STD		{ int linux_sys_getdents64(int fd, \
    384 			    struct linux_dirent64 *dent, unsigned int count); }
    385 221	UNIMPL		gettid
    386 222	UNIMPL		tkill
    387 223	UNIMPL		setxattr
    388 224	UNIMPL		lsetxattr
    389 225	UNIMPL		fsetxattr
    390 226	UNIMPL		getxattr
    391 227	UNIMPL		lgetxattr
    392 228	UNIMPL		fgetxattr
    393 229	UNIMPL		listxattr
    394 230	UNIMPL		llistxattr
    395 231	UNIMPL		flistxattr
    396 232	UNIMPL		removexattr
    397 233	UNIMPL		lremovexattr
    398 234	UNIMPL		fremovexattr
    399 235	UNIMPL		futex
    400