linux_sysent.c revision 1.18 1 /* $NetBSD: linux_sysent.c,v 1.18 2000/11/01 20:44:00 jdolecek Exp $ */
2
3 /*
4 * System call switch table.
5 *
6 * DO NOT EDIT-- this file is automatically generated.
7 * created from NetBSD: syscalls.master,v 1.16 2000/11/01 20:38:50 jdolecek Exp
8 */
9
10 #include "opt_compat_netbsd.h"
11 #include "opt_compat_43.h"
12 #include <sys/param.h>
13 #include <sys/poll.h>
14 #include <sys/systm.h>
15 #include <sys/signal.h>
16 #include <sys/mount.h>
17 #include <sys/syscallargs.h>
18 #include <compat/linux/common/linux_types.h>
19 #include <compat/linux/common/linux_signal.h>
20 #include <compat/linux/common/linux_siginfo.h>
21 #include <compat/linux/common/linux_machdep.h>
22 #include <compat/linux/linux_syscallargs.h>
23
24 #define s(type) sizeof(type)
25
26 struct sysent linux_sysent[] = {
27 { 0, 0,
28 sys_nosys }, /* 0 = syscall */
29 { 1, s(struct sys_exit_args),
30 sys_exit }, /* 1 = exit */
31 { 0, 0,
32 sys_fork }, /* 2 = fork */
33 { 3, s(struct sys_read_args),
34 sys_read }, /* 3 = read */
35 { 3, s(struct sys_write_args),
36 sys_write }, /* 4 = write */
37 { 3, s(struct linux_sys_open_args),
38 linux_sys_open }, /* 5 = open */
39 { 1, s(struct sys_close_args),
40 sys_close }, /* 6 = close */
41 { 3, s(struct linux_sys_waitpid_args),
42 linux_sys_waitpid }, /* 7 = waitpid */
43 { 2, s(struct linux_sys_creat_args),
44 linux_sys_creat }, /* 8 = creat */
45 { 2, s(struct sys_link_args),
46 sys_link }, /* 9 = link */
47 { 1, s(struct linux_sys_unlink_args),
48 linux_sys_unlink }, /* 10 = unlink */
49 { 3, s(struct linux_sys_execve_args),
50 linux_sys_execve }, /* 11 = execve */
51 { 1, s(struct linux_sys_chdir_args),
52 linux_sys_chdir }, /* 12 = chdir */
53 { 1, s(struct linux_sys_time_args),
54 linux_sys_time }, /* 13 = time */
55 { 3, s(struct linux_sys_mknod_args),
56 linux_sys_mknod }, /* 14 = mknod */
57 { 2, s(struct linux_sys_chmod_args),
58 linux_sys_chmod }, /* 15 = chmod */
59 { 3, s(struct linux_sys_chown_args),
60 linux_sys_chown }, /* 16 = chown */
61 { 0, 0,
62 sys_nosys }, /* 17 = obsolete break */
63 { 0, 0,
64 sys_nosys }, /* 18 = obsolete ostat */
65 #if !defined(_KERNEL) || defined(COMPAT_43)
66 { 3, s(struct compat_43_sys_lseek_args),
67 compat_43_sys_lseek }, /* 19 = lseek */
68 #else
69 { 0, 0,
70 sys_nosys }, /* 19 = unimplemented compat_43_sys_lseek */
71 #endif
72 { 0, 0,
73 sys_getpid }, /* 20 = getpid */
74 { 0, 0,
75 sys_nosys }, /* 21 = unimplemented mount */
76 { 0, 0,
77 sys_nosys }, /* 22 = obsolete umount */
78 { 1, s(struct sys_setuid_args),
79 sys_setuid }, /* 23 = setuid */
80 { 0, 0,
81 sys_getuid }, /* 24 = getuid */
82 { 1, s(struct linux_sys_stime_args),
83 linux_sys_stime }, /* 25 = stime */
84 { 4, s(struct linux_sys_ptrace_args),
85 linux_sys_ptrace }, /* 26 = ptrace */
86 { 1, s(struct linux_sys_alarm_args),
87 linux_sys_alarm }, /* 27 = alarm */
88 { 0, 0,
89 sys_nosys }, /* 28 = obsolete ofstat */
90 { 0, 0,
91 linux_sys_pause }, /* 29 = pause */
92 { 2, s(struct linux_sys_utime_args),
93 linux_sys_utime }, /* 30 = utime */
94 { 0, 0,
95 sys_nosys }, /* 31 = obsolete stty */
96 { 0, 0,
97 sys_nosys }, /* 32 = obsolete gtty */
98 { 2, s(struct linux_sys_access_args),
99 linux_sys_access }, /* 33 = access */
100 { 1, s(struct linux_sys_nice_args),
101 linux_sys_nice }, /* 34 = nice */
102 { 0, 0,
103 sys_nosys }, /* 35 = obsolete ftime */
104 { 0, 0,
105 sys_sync }, /* 36 = sync */
106 { 2, s(struct linux_sys_kill_args),
107 linux_sys_kill }, /* 37 = kill */
108 { 2, s(struct linux_sys_rename_args),
109 linux_sys_rename }, /* 38 = rename */
110 { 2, s(struct linux_sys_mkdir_args),
111 linux_sys_mkdir }, /* 39 = mkdir */
112 { 1, s(struct linux_sys_rmdir_args),
113 linux_sys_rmdir }, /* 40 = rmdir */
114 { 1, s(struct sys_dup_args),
115 sys_dup }, /* 41 = dup */
116 { 1, s(struct linux_sys_pipe_args),
117 linux_sys_pipe }, /* 42 = pipe */
118 { 1, s(struct linux_sys_times_args),
119 linux_sys_times }, /* 43 = times */
120 { 0, 0,
121 sys_nosys }, /* 44 = obsolete prof */
122 { 1, s(struct linux_sys_brk_args),
123 linux_sys_brk }, /* 45 = brk */
124 { 1, s(struct sys_setgid_args),
125 sys_setgid }, /* 46 = setgid */
126 { 0, 0,
127 sys_getgid }, /* 47 = getgid */
128 { 2, s(struct linux_sys_signal_args),
129 linux_sys_signal }, /* 48 = signal */
130 { 0, 0,
131 sys_geteuid }, /* 49 = geteuid */
132 { 0, 0,
133 sys_getegid }, /* 50 = getegid */
134 { 1, s(struct sys_acct_args),
135 sys_acct }, /* 51 = acct */
136 { 0, 0,
137 sys_nosys }, /* 52 = unimplemented umount */
138 { 0, 0,
139 sys_nosys }, /* 53 = obsolete lock */
140 { 3, s(struct linux_sys_ioctl_args),
141 linux_sys_ioctl }, /* 54 = ioctl */
142 { 3, s(struct linux_sys_fcntl_args),
143 linux_sys_fcntl }, /* 55 = fcntl */
144 { 0, 0,
145 sys_nosys }, /* 56 = obsolete mpx */
146 { 2, s(struct sys_setpgid_args),
147 sys_setpgid }, /* 57 = setpgid */
148 { 0, 0,
149 sys_nosys }, /* 58 = obsolete ulimit */
150 { 0, 0,
151 sys_nosys }, /* 59 = unimplemented oldolduname */
152 { 1, s(struct sys_umask_args),
153 sys_umask }, /* 60 = umask */
154 { 1, s(struct sys_chroot_args),
155 sys_chroot }, /* 61 = chroot */
156 { 0, 0,
157 sys_nosys }, /* 62 = unimplemented ustat */
158 { 2, s(struct sys_dup2_args),
159 sys_dup2 }, /* 63 = dup2 */
160 { 0, 0,
161 sys_getppid }, /* 64 = getppid */
162 { 0, 0,
163 sys_getpgrp }, /* 65 = getpgrp */
164 { 0, 0,
165 sys_setsid }, /* 66 = setsid */
166 { 3, s(struct linux_sys_sigaction_args),
167 linux_sys_sigaction }, /* 67 = sigaction */
168 { 0, 0,
169 linux_sys_siggetmask }, /* 68 = siggetmask */
170 { 1, s(struct linux_sys_sigsetmask_args),
171 linux_sys_sigsetmask }, /* 69 = sigsetmask */
172 { 2, s(struct linux_sys_setreuid_args),
173 linux_sys_setreuid }, /* 70 = setreuid */
174 { 2, s(struct linux_sys_setregid_args),
175 linux_sys_setregid }, /* 71 = setregid */
176 { 3, s(struct linux_sys_sigsuspend_args),
177 linux_sys_sigsuspend }, /* 72 = sigsuspend */
178 { 1, s(struct linux_sys_sigpending_args),
179 linux_sys_sigpending }, /* 73 = sigpending */
180 #if !defined(_KERNEL) || defined(COMPAT_43)
181 { 2, s(struct compat_43_sys_sethostname_args),
182 compat_43_sys_sethostname }, /* 74 = sethostname */
183 { 2, s(struct compat_43_sys_setrlimit_args),
184 compat_43_sys_setrlimit }, /* 75 = setrlimit */
185 { 2, s(struct compat_43_sys_getrlimit_args),
186 compat_43_sys_getrlimit }, /* 76 = getrlimit */
187 #else
188 { 0, 0,
189 sys_nosys }, /* 74 = unimplemented compat_43_sys_sethostname */
190 { 0, 0,
191 sys_nosys }, /* 75 = unimplemented compat_43_sys_setrlimit */
192 { 0, 0,
193 sys_nosys }, /* 76 = unimplemented compat_43_sys_getrlimit */
194 #endif
195 { 2, s(struct sys_getrusage_args),
196 sys_getrusage }, /* 77 = getrusage */
197 { 2, s(struct sys_gettimeofday_args),
198 sys_gettimeofday }, /* 78 = gettimeofday */
199 { 2, s(struct sys_settimeofday_args),
200 sys_settimeofday }, /* 79 = settimeofday */
201 { 2, s(struct sys_getgroups_args),
202 sys_getgroups }, /* 80 = getgroups */
203 { 2, s(struct sys_setgroups_args),
204 sys_setgroups }, /* 81 = setgroups */
205 { 1, s(struct linux_sys_oldselect_args),
206 linux_sys_oldselect }, /* 82 = oldselect */
207 { 2, s(struct linux_sys_symlink_args),
208 linux_sys_symlink }, /* 83 = symlink */
209 #if !defined(_KERNEL) || defined(COMPAT_43)
210 { 2, s(struct compat_43_sys_lstat_args),
211 compat_43_sys_lstat }, /* 84 = oolstat */
212 #else
213 { 0, 0,
214 sys_nosys }, /* 84 = unimplemented compat_43_sys_lstat */
215 #endif
216 { 3, s(struct linux_sys_readlink_args),
217 linux_sys_readlink }, /* 85 = readlink */
218 { 1, s(struct linux_sys_uselib_args),
219 linux_sys_uselib }, /* 86 = uselib */
220 #if !defined(_KERNEL) || defined(COMPAT_12)
221 { 1, s(struct compat_12_sys_swapon_args),
222 compat_12_sys_swapon }, /* 87 = swapon */
223 #else
224 { 0, 0,
225 sys_nosys }, /* 87 = unimplemented compat_12_sys_swapon */
226 #endif
227 { 4, s(struct linux_sys_reboot_args),
228 linux_sys_reboot }, /* 88 = reboot */
229 { 3, s(struct linux_sys_readdir_args),
230 linux_sys_readdir }, /* 89 = readdir */
231 { 1, s(struct linux_sys_old_mmap_args),
232 linux_sys_old_mmap }, /* 90 = old_mmap */
233 { 2, s(struct sys_munmap_args),
234 sys_munmap }, /* 91 = munmap */
235 { 2, s(struct linux_sys_truncate_args),
236 linux_sys_truncate }, /* 92 = truncate */
237 #if !defined(_KERNEL) || defined(COMPAT_43)
238 { 2, s(struct compat_43_sys_ftruncate_args),
239 compat_43_sys_ftruncate }, /* 93 = ftruncate */
240 #else
241 { 0, 0,
242 sys_nosys }, /* 93 = unimplemented compat_43_sys_ftruncate */
243 #endif
244 { 2, s(struct sys_fchmod_args),
245 sys_fchmod }, /* 94 = fchmod */
246 { 3, s(struct linux_sys_fchown_args),
247 linux_sys_fchown }, /* 95 = fchown */
248 { 2, s(struct sys_getpriority_args),
249 sys_getpriority }, /* 96 = getpriority */
250 { 3, s(struct sys_setpriority_args),
251 sys_setpriority }, /* 97 = setpriority */
252 { 4, s(struct sys_profil_args),
253 sys_profil }, /* 98 = profil */
254 { 2, s(struct linux_sys_statfs_args),
255 linux_sys_statfs }, /* 99 = statfs */
256 { 2, s(struct linux_sys_fstatfs_args),
257 linux_sys_fstatfs }, /* 100 = fstatfs */
258 { 0, 0,
259 sys_nosys }, /* 101 = unimplemented ioperm */
260 { 2, s(struct linux_sys_socketcall_args),
261 linux_sys_socketcall }, /* 102 = socketcall */
262 { 0, 0,
263 sys_nosys }, /* 103 = unimplemented syslog */
264 { 3, s(struct sys_setitimer_args),
265 sys_setitimer }, /* 104 = setitimer */
266 { 2, s(struct sys_getitimer_args),
267 sys_getitimer }, /* 105 = getitimer */
268 { 2, s(struct linux_sys_stat_args),
269 linux_sys_stat }, /* 106 = stat */
270 { 2, s(struct linux_sys_lstat_args),
271 linux_sys_lstat }, /* 107 = lstat */
272 { 2, s(struct linux_sys_fstat_args),
273 linux_sys_fstat }, /* 108 = fstat */
274 { 0, 0,
275 sys_nosys }, /* 109 = unimplemented olduname */
276 { 0, 0,
277 sys_nosys }, /* 110 = unimplemented iopl */
278 { 0, 0,
279 sys_nosys }, /* 111 = unimplemented vhangup */
280 { 0, 0,
281 sys_nosys }, /* 112 = unimplemented idle */
282 { 0, 0,
283 sys_nosys }, /* 113 = unimplemented vm86old */
284 { 4, s(struct linux_sys_wait4_args),
285 linux_sys_wait4 }, /* 114 = wait4 */
286 { 0, 0,
287 sys_nosys }, /* 115 = unimplemented swapoff */
288 { 0, 0,
289 sys_nosys }, /* 116 = unimplemented sysinfo */
290 { 5, s(struct linux_sys_ipc_args),
291 linux_sys_ipc }, /* 117 = ipc */
292 { 1, s(struct sys_fsync_args),
293 sys_fsync }, /* 118 = fsync */
294 { 0, 0,
295 linux_sys_sigreturn }, /* 119 = sigreturn */
296 { 2, s(struct linux_sys_clone_args),
297 linux_sys_clone }, /* 120 = clone */
298 #if !defined(_KERNEL) || defined(COMPAT_09)
299 { 2, s(struct compat_09_sys_setdomainname_args),
300 compat_09_sys_setdomainname }, /* 121 = setdomainname */
301 #else
302 { 0, 0,
303 sys_nosys }, /* 121 = unimplemented compat_09_sys_setdomainname */
304 #endif
305 { 1, s(struct linux_sys_uname_args),
306 linux_sys_uname }, /* 122 = uname */
307 { 4, s(struct linux_sys_cacheflush_args),
308 linux_sys_cacheflush }, /* 123 = cacheflush */
309 { 0, 0,
310 sys_nosys }, /* 124 = unimplemented adjtimex */
311 { 3, s(struct sys_mprotect_args),
312 sys_mprotect }, /* 125 = mprotect */
313 { 3, s(struct linux_sys_sigprocmask_args),
314 linux_sys_sigprocmask }, /* 126 = sigprocmask */
315 { 0, 0,
316 sys_nosys }, /* 127 = unimplemented create_module */
317 { 0, 0,
318 sys_nosys }, /* 128 = unimplemented init_module */
319 { 0, 0,
320 sys_nosys }, /* 129 = unimplemented delete_module */
321 { 0, 0,
322 sys_nosys }, /* 130 = unimplemented get_kernel_syms */
323 { 0, 0,
324 sys_nosys }, /* 131 = unimplemented quotactl */
325 { 1, s(struct linux_sys_getpgid_args),
326 linux_sys_getpgid }, /* 132 = getpgid */
327 { 1, s(struct sys_fchdir_args),
328 sys_fchdir }, /* 133 = fchdir */
329 { 0, 0,
330 sys_nosys }, /* 134 = unimplemented bdflush */
331 { 0, 0,
332 sys_nosys }, /* 135 = unimplemented sysfs */
333 { 1, s(struct linux_sys_personality_args),
334 linux_sys_personality }, /* 136 = personality */
335 { 0, 0,
336 sys_nosys }, /* 137 = unimplemented afs_syscall */
337 { 1, s(struct linux_sys_setfsuid_args),
338 linux_sys_setfsuid }, /* 138 = setfsuid */
339 { 0, 0,
340 linux_sys_getfsuid }, /* 139 = getfsuid */
341 { 5, s(struct linux_sys_llseek_args),
342 linux_sys_llseek }, /* 140 = llseek */
343 { 3, s(struct linux_sys_getdents_args),
344 linux_sys_getdents }, /* 141 = getdents */
345 { 5, s(struct linux_sys_select_args),
346 linux_sys_select }, /* 142 = select */
347 { 2, s(struct sys_flock_args),
348 sys_flock }, /* 143 = flock */
349 { 3, s(struct linux_sys_msync_args),
350 linux_sys_msync }, /* 144 = msync */
351 { 3, s(struct sys_readv_args),
352 sys_readv }, /* 145 = readv */
353 { 3, s(struct sys_writev_args),
354 sys_writev }, /* 146 = writev */
355 { 1, s(struct sys_getsid_args),
356 sys_getsid }, /* 147 = getsid */
357 { 1, s(struct linux_sys_fdatasync_args),
358 linux_sys_fdatasync }, /* 148 = fdatasync */
359 { 1, s(struct linux_sys___sysctl_args),
360 linux_sys___sysctl }, /* 149 = __sysctl */
361 { 2, s(struct sys_mlock_args),
362 sys_mlock }, /* 150 = mlock */
363 { 2, s(struct sys_munlock_args),
364 sys_munlock }, /* 151 = munlock */
365 { 1, s(struct sys_mlockall_args),
366 sys_mlockall }, /* 152 = mlockall */
367 { 0, 0,
368 sys_munlockall }, /* 153 = munlockall */
369 { 2, s(struct linux_sys_sched_setparam_args),
370 linux_sys_sched_setparam }, /* 154 = sched_setparam */
371 { 2, s(struct linux_sys_sched_getparam_args),
372 linux_sys_sched_getparam }, /* 155 = sched_getparam */
373 { 3, s(struct linux_sys_sched_setscheduler_args),
374 linux_sys_sched_setscheduler }, /* 156 = sched_setscheduler */
375 { 1, s(struct linux_sys_sched_getscheduler_args),
376 linux_sys_sched_getscheduler }, /* 157 = sched_getscheduler */
377 { 0, 0,
378 linux_sys_sched_yield }, /* 158 = sched_yield */
379 { 1, s(struct linux_sys_sched_get_priority_max_args),
380 linux_sys_sched_get_priority_max }, /* 159 = sched_get_priority_max */
381 { 1, s(struct linux_sys_sched_get_priority_min_args),
382 linux_sys_sched_get_priority_min }, /* 160 = sched_get_priority_min */
383 { 0, 0,
384 sys_nosys }, /* 161 = unimplemented sched_rr_get_interval */
385 { 2, s(struct sys_nanosleep_args),
386 sys_nanosleep }, /* 162 = nanosleep */
387 { 4, s(struct linux_sys_mremap_args),
388 linux_sys_mremap }, /* 163 = mremap */
389 { 3, s(struct linux_sys_setresuid_args),
390 linux_sys_setresuid }, /* 164 = setresuid */
391 { 3, s(struct linux_sys_getresuid_args),
392 linux_sys_getresuid }, /* 165 = getresuid */
393 { 0, 0,
394 sys_nosys }, /* 166 = unimplemented vm86 */
395 { 0, 0,
396 sys_nosys }, /* 167 = unimplemented query_module */
397 { 3, s(struct sys_poll_args),
398 sys_poll }, /* 168 = poll */
399 { 0, 0,
400 sys_nosys }, /* 169 = unimplemented nfsservctl */
401 { 3, s(struct linux_sys_setresgid_args),
402 linux_sys_setresgid }, /* 170 = setresgid */
403 { 3, s(struct linux_sys_getresgid_args),
404 linux_sys_getresgid }, /* 171 = getresgid */
405 { 0, 0,
406 sys_nosys }, /* 172 = unimplemented prctl */
407 { 0, 0,
408 linux_sys_rt_sigreturn }, /* 173 = rt_sigreturn */
409 { 4, s(struct linux_sys_rt_sigaction_args),
410 linux_sys_rt_sigaction }, /* 174 = rt_sigaction */
411 { 4, s(struct linux_sys_rt_sigprocmask_args),
412 linux_sys_rt_sigprocmask }, /* 175 = rt_sigprocmask */
413 { 2, s(struct linux_sys_rt_sigpending_args),
414 linux_sys_rt_sigpending }, /* 176 = rt_sigpending */
415 { 0, 0,
416 sys_nosys }, /* 177 = unimplemented rt_sigtimedwait */
417 { 3, s(struct linux_sys_rt_queueinfo_args),
418 linux_sys_rt_queueinfo }, /* 178 = rt_queueinfo */
419 { 2, s(struct linux_sys_rt_sigsuspend_args),
420 linux_sys_rt_sigsuspend }, /* 179 = rt_sigsuspend */
421 { 4, s(struct linux_sys_pread_args),
422 linux_sys_pread }, /* 180 = pread */
423 { 4, s(struct linux_sys_pwrite_args),
424 linux_sys_pwrite }, /* 181 = pwrite */
425 { 3, s(struct linux_sys_lchown_args),
426 linux_sys_lchown }, /* 182 = lchown */
427 { 2, s(struct sys___getcwd_args),
428 sys___getcwd }, /* 183 = __getcwd */
429 { 0, 0,
430 sys_nosys }, /* 184 = unimplemented capget */
431 { 0, 0,
432 sys_nosys }, /* 185 = unimplemented capset */
433 { 2, s(struct linux_sys_sigaltstack_args),
434 linux_sys_sigaltstack }, /* 186 = sigaltstack */
435 { 0, 0,
436 sys_nosys }, /* 187 = unimplemented sendfile */
437 { 0, 0,
438 sys_nosys }, /* 188 = unimplemented getpmsg */
439 { 0, 0,
440 sys_nosys }, /* 189 = unimplemented putpmsg */
441 { 0, 0,
442 sys___vfork14 }, /* 190 = __vfork14 */
443 };
444
445