1
2
3
4
5
6
7
8
9
10 #include <sys/param.h>
11 #include <sys/systm.h>
12 #include <sys/signal.h>
13 #include <sys/mount.h>
14 #include <sys/syscallargs.h>
15 #include <compat/ultrix/ultrix_syscallargs.h>
16
17 #define s(type) sizeof(type)
18
19 struct sysent ultrix_sysent[] = {
20 { 0, 0,
21 sys_nosys },
22 { 1, s(struct sys_exit_args),
23 sys_exit },
24 { 0, 0,
25 sys_fork },
26 { 3, s(struct sys_read_args),
27 sys_read },
28 { 3, s(struct sys_write_args),
29 sys_write },
30 { 3, s(struct ultrix_sys_open_args),
31 ultrix_sys_open },
32 { 1, s(struct sys_close_args),
33 sys_close },
34 { 0, 0,
35 compat_43_sys_wait },
36 { 2, s(struct ultrix_sys_creat_args),
37 ultrix_sys_creat },
38 { 2, s(struct sys_link_args),
39 sys_link },
40 { 1, s(struct sys_unlink_args),
41 sys_unlink },
42 { 2, s(struct ultrix_sys_execv_args),
43 ultrix_sys_execv },
44 { 1, s(struct sys_chdir_args),
45 sys_chdir },
46 { 0, 0,
47 sys_nosys },
48 { 3, s(struct ultrix_sys_mknod_args),
49 ultrix_sys_mknod },
50 { 2, s(struct sys_chmod_args),
51 sys_chmod },
52 { 3, s(struct sys_lchown_args),
53 sys_lchown },
54 { 1, s(struct sys_obreak_args),
55 sys_obreak },
56 { 0, 0,
57 sys_nosys },
58 { 3, s(struct compat_43_sys_lseek_args),
59 compat_43_sys_lseek },
60 { 0, 0,
61 sys_getpid },
62 { 5, s(struct ultrix_sys_mount_args),
63 ultrix_sys_mount },
64 { 0, 0,
65 sys_nosys },
66 { 1, s(struct sys_setuid_args),
67 sys_setuid },
68 { 0, 0,
69 sys_getuid },
70 { 0, 0,
71 sys_nosys },
72 { 0, 0,
73 sys_nosys },
74 { 0, 0,
75 sys_nosys },
76 { 0, 0,
77 sys_nosys },
78 { 0, 0,
79 sys_nosys },
80 { 0, 0,
81 sys_nosys },
82 { 0, 0,
83 sys_nosys },
84 { 0, 0,
85 sys_nosys },
86 { 2, s(struct ultrix_sys_access_args),
87 ultrix_sys_access },
88 { 0, 0,
89 sys_nosys },
90 { 0, 0,
91 sys_nosys },
92 { 0, 0,
93 sys_sync },
94 { 2, s(struct sys_kill_args),
95 sys_kill },
96 { 2, s(struct ultrix_sys_stat_args),
97 ultrix_sys_stat },
98 { 0, 0,
99 sys_nosys },
100 { 2, s(struct ultrix_sys_lstat_args),
101 ultrix_sys_lstat },
102 { 1, s(struct sys_dup_args),
103 sys_dup },
104 { 0, 0,
105 sys_opipe },
106 { 0, 0,
107 sys_nosys },
108 { 4, s(struct sys_profil_args),
109 sys_profil },
110 { 0, 0,
111 sys_nosys },
112 { 0, 0,
113 sys_nosys },
114 { 0, 0,
115 sys_getgid },
116 { 0, 0,
117 sys_nosys },
118 { 0, 0,
119 sys_nosys },
120 { 0, 0,
121 sys_nosys },
122 #ifdef ACCOUNTING
123 { 1, s(struct sys_acct_args),
124 sys_acct },
125 #else
126 { 0, 0,
127 sys_nosys },
128 #endif
129 { 0, 0,
130 sys_nosys },
131 { 0, 0,
132 sys_nosys },
133 { 3, s(struct ultrix_sys_ioctl_args),
134 ultrix_sys_ioctl },
135 { 1, s(struct sys_reboot_args),
136 sys_reboot },
137 { 0, 0,
138 sys_nosys },
139 { 2, s(struct sys_symlink_args),
140 sys_symlink },
141 { 3, s(struct sys_readlink_args),
142 sys_readlink },
143 { 3, s(struct ultrix_sys_execve_args),
144 ultrix_sys_execve },
145 { 1, s(struct sys_umask_args),
146 sys_umask },
147 { 1, s(struct sys_chroot_args),
148 sys_chroot },
149 { 2, s(struct compat_43_sys_fstat_args),
150 compat_43_sys_fstat },
151 { 0, 0,
152 sys_nosys },
153 { 0, 0,
154 compat_43_sys_getpagesize },
155 { 0, 0,
156 sys_nosys },
157 { 0, 0,
158 sys_vfork },
159 { 0, 0,
160 sys_nosys },
161 { 0, 0,
162 sys_nosys },
163 { 1, s(struct sys_sbrk_args),
164 sys_sbrk },
165 { 1, s(struct sys_sstk_args),
166 sys_sstk },
167 { 6, s(struct ultrix_sys_mmap_args),
168 ultrix_sys_mmap },
169 { 1, s(struct sys_ovadvise_args),
170 sys_ovadvise },
171 { 2, s(struct sys_munmap_args),
172 sys_munmap },
173 { 3, s(struct sys_mprotect_args),
174 sys_mprotect },
175 { 3, s(struct sys_madvise_args),
176 sys_madvise },
177 { 0, 0,
178 ultrix_sys_vhangup },
179 { 0, 0,
180 sys_nosys },
181 { 3, s(struct sys_mincore_args),
182 sys_mincore },
183 { 2, s(struct sys_getgroups_args),
184 sys_getgroups },
185 { 2, s(struct sys_setgroups_args),
186 sys_setgroups },
187 { 0, 0,
188 sys_getpgrp },
189 { 2, s(struct ultrix_sys_setpgrp_args),
190 ultrix_sys_setpgrp },
191 { 3, s(struct sys_setitimer_args),
192 sys_setitimer },
193 { 3, s(struct ultrix_sys_wait3_args),
194 ultrix_sys_wait3 },
195 { 1, s(struct compat_25_sys_swapon_args),
196 compat_25_sys_swapon },
197 { 2, s(struct sys_getitimer_args),
198 sys_getitimer },
199 { 2, s(struct compat_43_sys_gethostname_args),
200 compat_43_sys_gethostname },
201 { 2, s(struct compat_43_sys_sethostname_args),
202 compat_43_sys_sethostname },
203 { 0, 0,
204 compat_43_sys_getdtablesize },
205 { 2, s(struct sys_dup2_args),
206 sys_dup2 },
207 { 0, 0,
208 sys_nosys },
209 { 3, s(struct sys_fcntl_args),
210 sys_fcntl },
211 { 5, s(struct ultrix_sys_select_args),
212 ultrix_sys_select },
213 { 0, 0,
214 sys_nosys },
215 { 1, s(struct sys_fsync_args),
216 sys_fsync },
217 { 3, s(struct sys_setpriority_args),
218 sys_setpriority },
219 { 3, s(struct sys_socket_args),
220 sys_socket },
221 { 3, s(struct sys_connect_args),
222 sys_connect },
223 { 3, s(struct compat_43_sys_accept_args),
224 compat_43_sys_accept },
225 { 2, s(struct sys_getpriority_args),
226 sys_getpriority },
227 { 4, s(struct compat_43_sys_send_args),
228 compat_43_sys_send },
229 { 4, s(struct compat_43_sys_recv_args),
230 compat_43_sys_recv },
231 { 1, s(struct sys_sigreturn_args),
232 sys_sigreturn },
233 { 3, s(struct sys_bind_args),
234 sys_bind },
235 { 5, s(struct ultrix_sys_setsockopt_args),
236 ultrix_sys_setsockopt },
237 { 2, s(struct sys_listen_args),
238 sys_listen },
239 { 0, 0,
240 sys_nosys },
241 { 3, s(struct compat_43_sys_sigvec_args),
242 compat_43_sys_sigvec },
243 { 1, s(struct compat_43_sys_sigblock_args),
244 compat_43_sys_sigblock },
245 { 1, s(struct compat_43_sys_sigsetmask_args),
246 compat_43_sys_sigsetmask },
247 { 1, s(struct sys_sigsuspend_args),
248 sys_sigsuspend },
249 { 2, s(struct compat_43_sys_sigstack_args),
250 compat_43_sys_sigstack },
251 { 3, s(struct compat_43_sys_recvmsg_args),
252 compat_43_sys_recvmsg },
253 { 3, s(struct compat_43_sys_sendmsg_args),
254 compat_43_sys_sendmsg },
255 { 0, 0,
256 sys_nosys },
257 { 2, s(struct sys_gettimeofday_args),
258 sys_gettimeofday },
259 { 2, s(struct sys_getrusage_args),
260 sys_getrusage },
261 { 5, s(struct sys_getsockopt_args),
262 sys_getsockopt },
263 { 0, 0,
264 sys_nosys },
265 { 3, s(struct sys_readv_args),
266 sys_readv },
267 { 3, s(struct sys_writev_args),
268 sys_writev },
269 { 2, s(struct sys_settimeofday_args),
270 sys_settimeofday },
271 { 3, s(struct sys_fchown_args),
272 sys_fchown },
273 { 2, s(struct sys_fchmod_args),
274 sys_fchmod },
275 { 6, s(struct compat_43_sys_recvfrom_args),
276 compat_43_sys_recvfrom },
277 { 2, s(struct sys_setreuid_args),
278 sys_setreuid },
279 { 2, s(struct sys_setregid_args),
280 sys_setregid },
281 { 2, s(struct sys_rename_args),
282 sys_rename },
283 { 2, s(struct compat_43_sys_truncate_args),
284 compat_43_sys_truncate },
285 { 2, s(struct compat_43_sys_ftruncate_args),
286 compat_43_sys_ftruncate },
287 { 2, s(struct sys_flock_args),
288 sys_flock },
289 { 0, 0,
290 sys_nosys },
291 { 6, s(struct sys_sendto_args),
292 sys_sendto },
293 { 2, s(struct sys_shutdown_args),
294 sys_shutdown },
295 { 4, s(struct sys_socketpair_args),
296 sys_socketpair },
297 { 2, s(struct sys_mkdir_args),
298 sys_mkdir },
299 { 1, s(struct sys_rmdir_args),
300 sys_rmdir },
301 { 2, s(struct sys_utimes_args),
302 sys_utimes },
303 { 1, s(struct ultrix_sys_sigcleanup_args),
304 ultrix_sys_sigcleanup },
305 { 2, s(struct sys_adjtime_args),
306 sys_adjtime },
307 { 3, s(struct compat_43_sys_getpeername_args),
308 compat_43_sys_getpeername },
309 { 0, 0,
310 compat_43_sys_gethostid },
311 { 0, 0,
312 sys_nosys },
313 { 2, s(struct compat_43_sys_getrlimit_args),
314 compat_43_sys_getrlimit },
315 { 2, s(struct compat_43_sys_setrlimit_args),
316 compat_43_sys_setrlimit },
317 { 2, s(struct compat_43_sys_killpg_args),
318 compat_43_sys_killpg },
319 { 0, 0,
320 sys_nosys },
321 { 0, 0,
322 sys_nosys },
323 { 0, 0,
324 sys_nosys },
325 { 3, s(struct compat_43_sys_getsockname_args),
326 compat_43_sys_getsockname },
327 { 0, 0,
328 sys_nosys },
329 { 0, 0,
330 sys_nosys },
331 { 0, 0,
332 sys_nosys },
333 { 0, 0,
334 sys_nosys },
335 { 0, 0,
336 sys_nosys },
337 { 0, 0,
338 sys_nosys },
339 { 0, 0,
340 sys_nosys },
341 #ifdef NFSSERVER
342 { 1, s(struct ultrix_sys_nfssvc_args),
343 ultrix_sys_nfssvc },
344 #else
345 { 0, 0,
346 sys_nosys },
347 #endif
348 { 4, s(struct compat_43_sys_getdirentries_args),
349 compat_43_sys_getdirentries },
350 { 2, s(struct ultrix_sys_statfs_args),
351 ultrix_sys_statfs },
352 { 2, s(struct ultrix_sys_fstatfs_args),
353 ultrix_sys_fstatfs },
354 { 0, 0,
355 sys_nosys },
356 #ifdef NFSCLIENT
357 { 0, 0,
358 async_daemon },
359 { 2, s(struct sys_getfh_args),
360 sys_getfh },
361 #else
362 { 0, 0,
363 sys_nosys },
364 { 0, 0,
365 sys_nosys },
366 #endif
367 { 2, s(struct compat_09_sys_getdomainname_args),
368 compat_09_sys_getdomainname },
369 { 2, s(struct compat_09_sys_setdomainname_args),
370 compat_09_sys_setdomainname },
371 { 0, 0,
372 sys_nosys },
373 { 4, s(struct ultrix_sys_quotactl_args),
374 ultrix_sys_quotactl },
375 { 2, s(struct ultrix_sys_exportfs_args),
376 ultrix_sys_exportfs },
377 { 0, 0,
378 sys_nosys },
379 { 0, 0,
380 sys_nosys },
381 { 0, 0,
382 sys_nosys },
383 { 0, 0,
384 sys_nosys },
385 { 0, 0,
386 sys_nosys },
387 { 0, 0,
388 sys_nosys },
389 { 0, 0,
390 sys_nosys },
391 { 0, 0,
392 sys_nosys },
393 { 0, 0,
394 sys_nosys },
395 { 1, s(struct ultrix_sys_uname_args),
396 ultrix_sys_uname },
397 { 0, 0,
398 sys_nosys },
399 { 0, 0,
400 sys_nosys },
401 { 0, 0,
402 sys_nosys },
403 { 2, s(struct ultrix_sys_ustat_args),
404 ultrix_sys_ustat },
405 { 5, s(struct ultrix_sys_getmnt_args),
406 ultrix_sys_getmnt },
407 { 0, 0,
408 sys_nosys },
409 { 0, 0,
410 sys_nosys },
411 { 1, s(struct ultrix_sys_sigpending_args),
412 ultrix_sys_sigpending },
413 { 0, 0,
414 sys_setsid },
415 { 3, s(struct ultrix_sys_waitpid_args),
416 ultrix_sys_waitpid },
417 { 0, 0,
418 sys_nosys },
419 { 0, 0,
420 sys_nosys },
421 { 0, 0,
422 sys_nosys },
423 { 0, 0,
424 sys_nosys },
425 { 0, 0,
426 sys_nosys },
427 { 0, 0,
428 sys_nosys },
429 { 0, 0,
430 sys_nosys },
431 { 0, 0,
432 sys_nosys },
433 { 0, 0,
434 sys_nosys },
435 { 0, 0,
436 sys_nosys },
437 { 0, 0,
438 sys_nosys },
439 { 0, 0,
440 sys_nosys },
441 { 0, 0,
442 sys_nosys },
443 { 0, 0,
444 sys_nosys },
445 { 0, 0,
446 sys_nosys },
447 { 0, 0,
448 sys_nosys },
449 { 0, 0,
450 sys_nosys },
451 { 0, 0,
452 sys_nosys },
453 { 0, 0,
454 sys_nosys },
455 { 0, 0,
456 sys_nosys },
457 { 0, 0,
458 sys_nosys },
459 { 0, 0,
460 sys_nosys },
461 { 0, 0,
462 sys_nosys },
463 { 0, 0,
464 sys_nosys },
465 { 0, 0,
466 sys_nosys },
467 { 0, 0,
468 sys_nosys },
469 { 0, 0,
470 sys_nosys },
471 { 0, 0,
472 sys_nosys },
473 { 0, 0,
474 sys_nosys },
475 { 0, 0,
476 sys_nosys },
477 { 0, 0,
478 sys_nosys },
479 { 0, 0,
480 sys_nosys },
481 { 0, 0,
482 sys_nosys },
483 { 0, 0,
484 sys_nosys },
485 { 0, 0,
486 sys_nosys },
487 { 0, 0,
488 sys_nosys },
489 { 0, 0,
490 sys_nosys },
491 { 0, 0,
492 sys_nosys },
493 { 0, 0,
494 sys_nosys },
495 { 0, 0,
496 sys_nosys },
497 { 0, 0,
498 sys_nosys },
499 { 0, 0,
500 sys_nosys },
501 { 0, 0,
502 sys_nosys },
503 { 0, 0,
504 sys_nosys },
505 { 0, 0,
506 sys_nosys },
507 { 0, 0,
508 sys_nosys },
509 { 0, 0,
510 sys_nosys },
511 { 0, 0,
512 sys_nosys },
513 { 0, 0,
514 sys_nosys },
515 { 0, 0,
516 sys_nosys },
517 { 0, 0,
518 sys_nosys },
519 { 0, 0,
520 sys_nosys },
521 { 0, 0,
522 sys_nosys },
523 { 0, 0,
524 sys_nosys },
525 { 0, 0,
526 sys_nosys },
527 { 0, 0,
528 sys_nosys },
529 { 0, 0,
530 sys_nosys },
531 { 0, 0,
532 sys_nosys },
533 { 0, 0,
534 sys_nosys },
535 { 0, 0,
536 sys_nosys },
537 { 0, 0,
538 sys_nosys },
539 { 0, 0,
540 sys_nosys },
541 { 0, 0,
542 sys_nosys },
543 { 0, 0,
544 sys_nosys },
545 { 0, 0,
546 sys_nosys },
547 { 0, 0,
548 sys_nosys },
549 { 5, s(struct ultrix_sys_getsysinfo_args),
550 ultrix_sys_getsysinfo },
551 { 5, s(struct ultrix_sys_setsysinfo_args),
552 ultrix_sys_setsysinfo },
553 };
554