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/exec.h>
15 #include <sys/syscallargs.h>
16 #include <compat/hpux/hpux.h>
17 #include <compat/hpux/m68k/hpux_syscallargs.h>
18 #include <machine/hpux_machdep.h>
19
20 #define s(type) sizeof(type)
21
22 struct sysent hpux_sysent[] = {
23 { 0, 0,
24 sys_nosys },
25 { 1, s(struct sys_exit_args),
26 sys_exit },
27 { 0, 0,
28 hpux_sys_fork },
29 { 3, s(struct hpux_sys_read_args),
30 hpux_sys_read },
31 { 3, s(struct hpux_sys_write_args),
32 hpux_sys_write },
33 { 3, s(struct hpux_sys_open_args),
34 hpux_sys_open },
35 { 1, s(struct sys_close_args),
36 sys_close },
37 { 1, s(struct hpux_sys_wait_args),
38 hpux_sys_wait },
39 { 2, s(struct hpux_sys_creat_args),
40 hpux_sys_creat },
41 { 2, s(struct sys_link_args),
42 sys_link },
43 { 1, s(struct hpux_sys_unlink_args),
44 hpux_sys_unlink },
45 { 2, s(struct hpux_sys_execv_args),
46 hpux_sys_execv },
47 { 1, s(struct hpux_sys_chdir_args),
48 hpux_sys_chdir },
49 { 1, s(struct hpux_sys_time_6x_args),
50 hpux_sys_time_6x },
51 { 3, s(struct hpux_sys_mknod_args),
52 hpux_sys_mknod },
53 { 2, s(struct hpux_sys_chmod_args),
54 hpux_sys_chmod },
55 { 3, s(struct hpux_sys_chown_args),
56 hpux_sys_chown },
57 { 1, s(struct sys_obreak_args),
58 sys_obreak },
59 { 2, s(struct hpux_sys_stat_6x_args),
60 hpux_sys_stat_6x },
61 { 3, s(struct compat_43_sys_lseek_args),
62 compat_43_sys_lseek },
63 { 0, 0,
64 sys_getpid },
65 { 0, 0,
66 sys_nosys },
67 { 0, 0,
68 sys_nosys },
69 { 1, s(struct sys_setuid_args),
70 sys_setuid },
71 { 0, 0,
72 sys_getuid },
73 { 1, s(struct hpux_sys_stime_6x_args),
74 hpux_sys_stime_6x },
75 #ifdef PTRACE
76 { 4, s(struct hpux_sys_ptrace_args),
77 hpux_sys_ptrace },
78 #else
79 { 0, 0,
80 sys_nosys },
81 #endif
82 { 1, s(struct hpux_sys_alarm_6x_args),
83 hpux_sys_alarm_6x },
84 { 2, s(struct hpux_sys_fstat_6x_args),
85 hpux_sys_fstat_6x },
86 { 0, 0,
87 hpux_sys_pause_6x },
88 { 2, s(struct hpux_sys_utime_6x_args),
89 hpux_sys_utime_6x },
90 { 2, s(struct hpux_sys_stty_6x_args),
91 hpux_sys_stty_6x },
92 { 2, s(struct hpux_sys_gtty_6x_args),
93 hpux_sys_gtty_6x },
94 { 2, s(struct hpux_sys_access_args),
95 hpux_sys_access },
96 { 1, s(struct hpux_sys_nice_6x_args),
97 hpux_sys_nice_6x },
98 { 1, s(struct hpux_sys_ftime_6x_args),
99 hpux_sys_ftime_6x },
100 { 0, 0,
101 sys_sync },
102 { 2, s(struct hpux_sys_kill_args),
103 hpux_sys_kill },
104 { 2, s(struct hpux_sys_stat_args),
105 hpux_sys_stat },
106 { 0, 0,
107 hpux_sys_setpgrp_6x },
108 { 2, s(struct hpux_sys_lstat_args),
109 hpux_sys_lstat },
110 { 1, s(struct sys_dup_args),
111 sys_dup },
112 { 0, 0,
113 sys_opipe },
114 { 1, s(struct hpux_sys_times_6x_args),
115 hpux_sys_times_6x },
116 { 4, s(struct sys_profil_args),
117 sys_profil },
118 { 0, 0,
119 sys_nosys },
120 { 1, s(struct sys_setgid_args),
121 sys_setgid },
122 { 0, 0,
123 sys_getgid },
124 { 2, s(struct hpux_sys_ssig_6x_args),
125 hpux_sys_ssig_6x },
126 { 0, 0,
127 sys_nosys },
128 { 0, 0,
129 sys_nosys },
130 { 0, 0,
131 sys_nosys },
132 { 0, 0,
133 sys_nosys },
134 { 0, 0,
135 sys_nosys },
136 { 3, s(struct hpux_sys_ioctl_args),
137 hpux_sys_ioctl },
138 { 0, 0,
139 sys_nosys },
140 { 2, s(struct hpux_sys_symlink_args),
141 hpux_sys_symlink },
142 { 3, s(struct hpux_sys_utssys_args),
143 hpux_sys_utssys },
144 { 3, s(struct hpux_sys_readlink_args),
145 hpux_sys_readlink },
146 { 3, s(struct hpux_sys_execve_args),
147 hpux_sys_execve },
148 { 1, s(struct sys_umask_args),
149 sys_umask },
150 { 1, s(struct sys_chroot_args),
151 sys_chroot },
152 { 3, s(struct hpux_sys_fcntl_args),
153 hpux_sys_fcntl },
154 { 2, s(struct hpux_sys_ulimit_args),
155 hpux_sys_ulimit },
156 { 0, 0,
157 sys_nosys },
158 { 0, 0,
159 sys_nosys },
160 { 0, 0,
161 hpux_sys_vfork },
162 { 3, s(struct hpux_sys_read_args),
163 hpux_sys_read },
164 { 3, s(struct hpux_sys_write_args),
165 hpux_sys_write },
166 { 0, 0,
167 sys_nosys },
168 { 0, 0,
169 sys_nosys },
170 { 6, s(struct hpux_sys_mmap_args),
171 hpux_sys_mmap },
172 { 0, 0,
173 sys_nosys },
174 { 2, s(struct sys_munmap_args),
175 sys_munmap },
176 { 3, s(struct sys_mprotect_args),
177 sys_mprotect },
178 { 0, 0,
179 sys_nosys },
180 { 0, 0,
181 sys_nosys },
182 { 0, 0,
183 sys_nosys },
184 { 0, 0,
185 sys_nosys },
186 { 2, s(struct sys_getgroups_args),
187 sys_getgroups },
188 { 2, s(struct sys_setgroups_args),
189 sys_setgroups },
190 { 1, s(struct hpux_sys_getpgrp2_args),
191 hpux_sys_getpgrp2 },
192 { 2, s(struct hpux_sys_setpgrp2_args),
193 hpux_sys_setpgrp2 },
194 { 3, s(struct sys_setitimer_args),
195 sys_setitimer },
196 { 3, s(struct hpux_sys_wait3_args),
197 hpux_sys_wait3 },
198 { 0, 0,
199 sys_nosys },
200 { 2, s(struct sys_getitimer_args),
201 sys_getitimer },
202 { 0, 0,
203 sys_nosys },
204 { 0, 0,
205 sys_nosys },
206 { 0, 0,
207 sys_nosys },
208 { 2, s(struct sys_dup2_args),
209 sys_dup2 },
210 { 0, 0,
211 sys_nosys },
212 { 2, s(struct hpux_sys_fstat_args),
213 hpux_sys_fstat },
214 { 5, s(struct sys_select_args),
215 sys_select },
216 { 0, 0,
217 sys_nosys },
218 { 1, s(struct sys_fsync_args),
219 sys_fsync },
220 { 0, 0,
221 sys_nosys },
222 { 0, 0,
223 sys_nosys },
224 { 0, 0,
225 sys_nosys },
226 { 0, 0,
227 sys_nosys },
228 { 0, 0,
229 sys_nosys },
230 { 0, 0,
231 sys_nosys },
232 { 0, 0,
233 sys_nosys },
234 { 1, s(struct hpux_sys_sigreturn_args),
235 hpux_sys_sigreturn },
236 { 0, 0,
237 sys_nosys },
238 { 0, 0,
239 sys_nosys },
240 { 0, 0,
241 sys_nosys },
242 { 0, 0,
243 sys_nosys },
244 { 3, s(struct hpux_sys_sigvec_args),
245 hpux_sys_sigvec },
246 { 1, s(struct hpux_sys_sigblock_args),
247 hpux_sys_sigblock },
248 { 1, s(struct hpux_sys_sigsetmask_args),
249 hpux_sys_sigsetmask },
250 { 1, s(struct hpux_sys_sigpause_args),
251 hpux_sys_sigpause },
252 { 2, s(struct compat_43_sys_sigstack_args),
253 compat_43_sys_sigstack },
254 { 0, 0,
255 sys_nosys },
256 { 0, 0,
257 sys_nosys },
258 { 0, 0,
259 sys_nosys },
260 { 1, s(struct sys_gettimeofday_args),
261 sys_gettimeofday },
262 { 0, 0,
263 sys_nosys },
264 { 0, 0,
265 sys_nosys },
266 { 0, 0,
267 sys_nosys },
268 { 3, s(struct hpux_sys_readv_args),
269 hpux_sys_readv },
270 { 3, s(struct hpux_sys_writev_args),
271 hpux_sys_writev },
272 { 2, s(struct sys_settimeofday_args),
273 sys_settimeofday },
274 { 3, s(struct sys_fchown_args),
275 sys_fchown },
276 { 2, s(struct sys_fchmod_args),
277 sys_fchmod },
278 { 0, 0,
279 sys_nosys },
280 { 3, s(struct sys_setresuid_args),
281 sys_setresuid },
282 { 3, s(struct sys_setresgid_args),
283 sys_setresgid },
284 { 2, s(struct hpux_sys_rename_args),
285 hpux_sys_rename },
286 { 2, s(struct hpux_sys_truncate_args),
287 hpux_sys_truncate },
288 { 2, s(struct compat_43_sys_ftruncate_args),
289 compat_43_sys_ftruncate },
290 { 0, 0,
291 sys_nosys },
292 { 1, s(struct hpux_sys_sysconf_args),
293 hpux_sys_sysconf },
294 { 0, 0,
295 sys_nosys },
296 { 0, 0,
297 sys_nosys },
298 { 0, 0,
299 sys_nosys },
300 { 2, s(struct hpux_sys_mkdir_args),
301 hpux_sys_mkdir },
302 { 1, s(struct hpux_sys_rmdir_args),
303 hpux_sys_rmdir },
304 { 0, 0,
305 sys_nosys },
306 { 0, 0,
307 sys_nosys },
308 { 0, 0,
309 sys_nosys },
310 { 0, 0,
311 sys_nosys },
312 { 0, 0,
313 sys_nosys },
314 { 0, 0,
315 sys_nosys },
316 { 2, s(struct hpux_sys_getrlimit_args),
317 hpux_sys_getrlimit },
318 { 2, s(struct hpux_sys_setrlimit_args),
319 hpux_sys_setrlimit },
320 { 0, 0,
321 sys_nosys },
322 { 0, 0,
323 sys_nosys },
324 { 0, 0,
325 sys_nosys },
326 { 0, 0,
327 sys_nosys },
328 { 0, 0,
329 sys_nosys },
330 { 0, 0,
331 sys_nosys },
332 { 2, s(struct hpux_sys_rtprio_args),
333 hpux_sys_rtprio },
334 { 0, 0,
335 sys_nosys },
336 { 2, s(struct hpux_sys_netioctl_args),
337 hpux_sys_netioctl },
338 { 3, s(struct hpux_sys_lockf_args),
339 hpux_sys_lockf },
340 #ifdef SYSVSEM
341 { 3, s(struct sys_semget_args),
342 sys_semget },
343 { 4, s(struct sys___semctl_args),
344 sys___semctl },
345 { 3, s(struct sys_semop_args),
346 sys_semop },
347 #else
348 { 0, 0,
349 sys_nosys },
350 { 0, 0,
351 sys_nosys },
352 { 0, 0,
353 sys_nosys },
354 #endif
355 #ifdef SYSVMSG
356 { 2, s(struct sys_msgget_args),
357 sys_msgget },
358 { 3, s(struct sys_msgctl_args),
359 sys_msgctl },
360 { 4, s(struct sys_msgsnd_args),
361 sys_msgsnd },
362 { 5, s(struct sys_msgrcv_args),
363 sys_msgrcv },
364 #else
365 { 0, 0,
366 sys_nosys },
367 { 0, 0,
368 sys_nosys },
369 { 0, 0,
370 sys_nosys },
371 { 0, 0,
372 sys_nosys },
373 #endif
374 #ifdef SYSVSHM
375 { 3, s(struct sys_shmget_args),
376 sys_shmget },
377 { 3, s(struct hpux_sys_shmctl_args),
378 hpux_sys_shmctl },
379 { 3, s(struct sys_shmat_args),
380 sys_shmat },
381 { 1, s(struct sys_shmdt_args),
382 sys_shmdt },
383 #else
384 { 0, 0,
385 sys_nosys },
386 { 0, 0,
387 sys_nosys },
388 { 0, 0,
389 sys_nosys },
390 { 0, 0,
391 sys_nosys },
392 #endif
393 { 1, s(struct hpux_sys_advise_args),
394 hpux_sys_advise },
395 { 0, 0,
396 sys_nosys },
397 { 0, 0,
398 sys_nosys },
399 { 0, 0,
400 sys_nosys },
401 { 0, 0,
402 sys_nosys },
403 { 0, 0,
404 sys_nosys },
405 { 0, 0,
406 sys_nosys },
407 { 2, s(struct hpux_sys_getcontext_args),
408 hpux_sys_getcontext },
409 { 0, 0,
410 sys_nosys },
411 { 0, 0,
412 sys_nosys },
413 { 0, 0,
414 sys_nosys },
415 { 0, 0,
416 sys_nosys },
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 { 6, s(struct hpux_sys_getaccess_args),
440 hpux_sys_getaccess },
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 { 4, s(struct hpux_sys_waitpid_args),
460 hpux_sys_waitpid },
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 { 2, s(struct sys_pathconf_args),
510 sys_pathconf },
511 { 2, s(struct sys_fpathconf_args),
512 sys_fpathconf },
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 { 4, s(struct compat_43_sys_getdirentries_args),
522 compat_43_sys_getdirentries },
523 { 2, s(struct compat_09_sys_getdomainname_args),
524 compat_09_sys_getdomainname },
525 { 0, 0,
526 sys_nosys },
527 { 0, 0,
528 sys_nosys },
529 { 0, 0,
530 sys_nosys },
531 { 2, s(struct compat_09_sys_setdomainname_args),
532 compat_09_sys_setdomainname },
533 { 0, 0,
534 sys_nosys },
535 { 0, 0,
536 sys_nosys },
537 { 3, s(struct hpux_sys_sigaction_args),
538 hpux_sys_sigaction },
539 { 3, s(struct hpux_sys_sigprocmask_args),
540 hpux_sys_sigprocmask },
541 { 1, s(struct hpux_sys_sigpending_args),
542 hpux_sys_sigpending },
543 { 1, s(struct hpux_sys_sigsuspend_args),
544 hpux_sys_sigsuspend },
545 { 0, 0,
546 sys_nosys },
547 { 0, 0,
548 sys_nosys },
549 { 0, 0,
550 sys_nosys },
551 { 0, 0,
552 sys_nosys },
553 { 0, 0,
554 sys_nosys },
555 { 0, 0,
556 sys_nosys },
557 { 0, 0,
558 sys_nosys },
559 { 0, 0,
560 sys_nosys },
561 { 0, 0,
562 sys_nosys },
563 { 0, 0,
564 sys_nosys },
565 { 0, 0,
566 sys_nosys },
567 { 0, 0,
568 sys_nosys },
569 { 0, 0,
570 sys_nosys },
571 { 0, 0,
572 sys_nosys },
573 { 0, 0,
574 sys_nosys },
575 { 0, 0,
576 sys_nosys },
577 { 0, 0,
578 sys_nosys },
579 { 0, 0,
580 sys_nosys },
581 { 0, 0,
582 sys_nosys },
583 { 0, 0,
584 sys_nosys },
585 { 0, 0,
586 sys_nosys },
587 { 0, 0,
588 sys_nosys },
589 { 0, 0,
590 sys_nosys },
591 { 0, 0,
592 sys_nosys },
593 { 0, 0,
594 sys_nosys },
595 { 0, 0,
596 compat_43_sys_getdtablesize },
597 { 3, s(struct sys_poll_args),
598 sys_poll },
599 { 0, 0,
600 sys_nosys },
601 { 0, 0,
602 sys_nosys },
603 { 1, s(struct sys_fchdir_args),
604 sys_fchdir },
605 { 0, 0,
606 sys_nosys },
607 { 0, 0,
608 sys_nosys },
609 { 3, s(struct compat_43_sys_accept_args),
610 compat_43_sys_accept },
611 { 3, s(struct sys_bind_args),
612 sys_bind },
613 { 3, s(struct sys_connect_args),
614 sys_connect },
615 { 3, s(struct compat_43_sys_getpeername_args),
616 compat_43_sys_getpeername },
617 { 3, s(struct compat_43_sys_getsockname_args),
618 compat_43_sys_getsockname },
619 { 5, s(struct sys_getsockopt_args),
620 sys_getsockopt },
621 { 2, s(struct sys_listen_args),
622 sys_listen },
623 { 4, s(struct compat_43_sys_recv_args),
624 compat_43_sys_recv },
625 { 6, s(struct compat_43_sys_recvfrom_args),
626 compat_43_sys_recvfrom },
627 { 3, s(struct compat_43_sys_recvmsg_args),
628 compat_43_sys_recvmsg },
629 { 4, s(struct compat_43_sys_send_args),
630 compat_43_sys_send },
631 { 3, s(struct compat_43_sys_sendmsg_args),
632 compat_43_sys_sendmsg },
633 { 6, s(struct sys_sendto_args),
634 sys_sendto },
635 { 5, s(struct hpux_sys_setsockopt_args),
636 hpux_sys_setsockopt },
637 { 2, s(struct sys_shutdown_args),
638 sys_shutdown },
639 { 3, s(struct sys_socket_args),
640 sys_socket },
641 { 4, s(struct sys_socketpair_args),
642 sys_socketpair },
643 { 0, 0,
644 sys_nosys },
645 { 0, 0,
646 sys_nosys },
647 { 0, 0,
648 sys_nosys },
649 { 0, 0,
650 sys_nosys },
651 { 0, 0,
652 sys_nosys },
653 { 0, 0,
654 sys_nosys },
655 { 0, 0,
656 sys_nosys },
657 { 0, 0,
658 sys_nosys },
659 { 0, 0,
660 sys_nosys },
661 { 0, 0,
662 sys_nosys },
663 { 0, 0,
664 sys_nosys },
665 { 0, 0,
666 sys_nosys },
667 { 0, 0,
668 sys_nosys },
669 { 0, 0,
670 sys_nosys },
671 { 0, 0,
672 sys_nosys },
673 { 0, 0,
674 sys_nosys },
675 { 0, 0,
676 sys_nosys },
677 { 0, 0,
678 sys_nosys },
679 { 0, 0,
680 sys_nosys },
681 { 0, 0,
682 sys_nosys },
683 #ifdef SYSVSEM
684 { 4, s(struct sys___semctl_args),
685 sys___semctl },
686 #else
687 { 0, 0,
688 sys_nosys },
689 #endif
690 #ifdef SYSVMSG
691 { 3, s(struct sys_msgctl_args),
692 sys_msgctl },
693 #else
694 { 0, 0,
695 sys_nosys },
696 #endif
697 #ifdef SYSVSHM
698 { 3, s(struct hpux_sys_nshmctl_args),
699 hpux_sys_nshmctl },
700 #else
701 { 0, 0,
702 sys_nosys },
703 #endif
704 { 0, 0,
705 sys_nosys },
706 { 0, 0,
707 sys_nosys },
708 { 0, 0,
709 sys_nosys },
710 { 0, 0,
711 sys_nosys },
712 { 0, 0,
713 sys_nosys },
714 { 0, 0,
715 sys_nosys },
716 { 0, 0,
717 sys_nosys },
718 { 0, 0,
719 sys_nosys },
720 { 0, 0,
721 sys_nosys },
722 { 0, 0,
723 sys_nosys },
724 };
725