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/poll.h>
15 #include <sys/syscallargs.h>
16 #include <compat/osf1/osf1.h>
17 #include <compat/osf1/osf1_syscallargs.h>
18
19 #define s(type) sizeof(type)
20
21 struct sysent osf1_sysent[] = {
22 { 0, 0,
23 sys_nosys },
24 { 1, s(struct sys_exit_args),
25 sys_exit },
26 { 0, 0,
27 sys_fork },
28 { 3, s(struct sys_read_args),
29 sys_read },
30 { 3, s(struct sys_write_args),
31 sys_write },
32 { 0, 0,
33 sys_nosys },
34 { 1, s(struct sys_close_args),
35 sys_close },
36 { 4, s(struct osf1_sys_wait4_args),
37 osf1_sys_wait4 },
38 { 0, 0,
39 sys_nosys },
40 { 2, s(struct sys_link_args),
41 sys_link },
42 { 1, s(struct sys_unlink_args),
43 sys_unlink },
44 { 0, 0,
45 sys_nosys },
46 { 1, s(struct sys_chdir_args),
47 sys_chdir },
48 { 1, s(struct sys_fchdir_args),
49 sys_fchdir },
50 { 3, s(struct osf1_sys_mknod_args),
51 osf1_sys_mknod },
52 { 2, s(struct sys_chmod_args),
53 sys_chmod },
54 { 3, s(struct sys_chown_args),
55 sys_chown },
56 { 1, s(struct sys_obreak_args),
57 sys_obreak },
58 { 3, s(struct osf1_sys_getfsstat_args),
59 osf1_sys_getfsstat },
60 { 3, s(struct osf1_sys_lseek_args),
61 osf1_sys_lseek },
62 { 0, 0,
63 sys_getpid },
64 { 4, s(struct osf1_sys_mount_args),
65 osf1_sys_mount },
66 { 2, s(struct osf1_sys_unmount_args),
67 osf1_sys_unmount },
68 { 1, s(struct osf1_sys_setuid_args),
69 osf1_sys_setuid },
70 { 0, 0,
71 sys_getuid },
72 { 0, 0,
73 sys_nosys },
74 { 0, 0,
75 sys_nosys },
76 { 3, s(struct osf1_sys_recvmsg_xopen_args),
77 osf1_sys_recvmsg_xopen },
78 { 3, s(struct osf1_sys_sendmsg_xopen_args),
79 osf1_sys_sendmsg_xopen },
80 { 0, 0,
81 sys_nosys },
82 { 0, 0,
83 sys_nosys },
84 { 0, 0,
85 sys_nosys },
86 { 0, 0,
87 sys_nosys },
88 { 2, s(struct osf1_sys_access_args),
89 osf1_sys_access },
90 { 0, 0,
91 sys_nosys },
92 { 0, 0,
93 sys_nosys },
94 { 0, 0,
95 sys_sync },
96 { 2, s(struct sys_kill_args),
97 sys_kill },
98 { 0, 0,
99 sys_nosys },
100 { 2, s(struct sys_setpgid_args),
101 sys_setpgid },
102 { 0, 0,
103 sys_nosys },
104 { 1, s(struct sys_dup_args),
105 sys_dup },
106 { 0, 0,
107 sys_pipe },
108 { 4, s(struct osf1_sys_set_program_attributes_args),
109 osf1_sys_set_program_attributes },
110 { 0, 0,
111 sys_nosys },
112 { 3, s(struct osf1_sys_open_args),
113 osf1_sys_open },
114 { 0, 0,
115 sys_nosys },
116 { 0, 0,
117 sys_getgid },
118 { 2, s(struct sys_sigprocmask_args),
119 sys_sigprocmask },
120 { 2, s(struct sys_getlogin_args),
121 sys_getlogin },
122 { 1, s(struct sys_setlogin_args),
123 sys_setlogin },
124 #ifdef ACCOUNTING
125 { 1, s(struct sys_acct_args),
126 sys_acct },
127 #else
128 { 0, 0,
129 sys_nosys },
130 #endif
131 { 0, 0,
132 sys_nosys },
133 { 4, s(struct osf1_sys_classcntl_args),
134 osf1_sys_classcntl },
135 { 3, s(struct osf1_sys_ioctl_args),
136 osf1_sys_ioctl },
137 { 1, s(struct osf1_sys_reboot_args),
138 osf1_sys_reboot },
139 { 1, s(struct sys_revoke_args),
140 sys_revoke },
141 { 2, s(struct sys_symlink_args),
142 sys_symlink },
143 { 3, s(struct sys_readlink_args),
144 sys_readlink },
145 { 3, s(struct osf1_sys_execve_args),
146 osf1_sys_execve },
147 { 1, s(struct sys_umask_args),
148 sys_umask },
149 { 1, s(struct sys_chroot_args),
150 sys_chroot },
151 { 0, 0,
152 sys_nosys },
153 { 0, 0,
154 sys_getpgrp },
155 { 0, 0,
156 compat_43_sys_getpagesize },
157 { 0, 0,
158 sys_nosys },
159 { 0, 0,
160 sys_vfork },
161 { 2, s(struct osf1_sys_stat_args),
162 osf1_sys_stat },
163 { 2, s(struct osf1_sys_lstat_args),
164 osf1_sys_lstat },
165 { 0, 0,
166 sys_nosys },
167 { 0, 0,
168 sys_nosys },
169 { 6, s(struct osf1_sys_mmap_args),
170 osf1_sys_mmap },
171 { 0, 0,
172 sys_nosys },
173 { 2, s(struct sys_munmap_args),
174 sys_munmap },
175 { 3, s(struct osf1_sys_mprotect_args),
176 osf1_sys_mprotect },
177 { 3, s(struct osf1_sys_madvise_args),
178 osf1_sys_madvise },
179 { 0, 0,
180 sys_nosys },
181 { 0, 0,
182 sys_nosys },
183 { 0, 0,
184 sys_nosys },
185 { 2, s(struct sys_getgroups_args),
186 sys_getgroups },
187 { 2, s(struct sys_setgroups_args),
188 sys_setgroups },
189 { 0, 0,
190 sys_nosys },
191 { 2, s(struct sys_setpgid_args),
192 sys_setpgid },
193 { 3, s(struct osf1_sys_setitimer_args),
194 osf1_sys_setitimer },
195 { 0, 0,
196 sys_nosys },
197 { 0, 0,
198 sys_nosys },
199 { 0, 0,
200 sys_nosys },
201 { 2, s(struct compat_43_sys_gethostname_args),
202 compat_43_sys_gethostname },
203 { 2, s(struct compat_43_sys_sethostname_args),
204 compat_43_sys_sethostname },
205 { 0, 0,
206 compat_43_sys_getdtablesize },
207 { 2, s(struct sys_dup2_args),
208 sys_dup2 },
209 { 2, s(struct osf1_sys_fstat_args),
210 osf1_sys_fstat },
211 { 3, s(struct osf1_sys_fcntl_args),
212 osf1_sys_fcntl },
213 { 5, s(struct osf1_sys_select_args),
214 osf1_sys_select },
215 { 3, s(struct sys_poll_args),
216 sys_poll },
217 { 1, s(struct sys_fsync_args),
218 sys_fsync },
219 { 3, s(struct sys_setpriority_args),
220 sys_setpriority },
221 { 3, s(struct osf1_sys_socket_args),
222 osf1_sys_socket },
223 { 3, s(struct sys_connect_args),
224 sys_connect },
225 { 3, s(struct compat_43_sys_accept_args),
226 compat_43_sys_accept },
227 { 2, s(struct sys_getpriority_args),
228 sys_getpriority },
229 { 4, s(struct compat_43_sys_send_args),
230 compat_43_sys_send },
231 { 4, s(struct compat_43_sys_recv_args),
232 compat_43_sys_recv },
233 { 1, s(struct sys_sigreturn_args),
234 sys_sigreturn },
235 { 3, s(struct sys_bind_args),
236 sys_bind },
237 { 5, s(struct sys_setsockopt_args),
238 sys_setsockopt },
239 { 2, s(struct sys_listen_args),
240 sys_listen },
241 { 0, 0,
242 sys_nosys },
243 { 0, 0,
244 sys_nosys },
245 { 0, 0,
246 sys_nosys },
247 { 0, 0,
248 sys_nosys },
249 { 1, s(struct sys_sigsuspend_args),
250 sys_sigsuspend },
251 { 2, s(struct compat_43_sys_sigstack_args),
252 compat_43_sys_sigstack },
253 { 0, 0,
254 sys_nosys },
255 { 0, 0,
256 sys_nosys },
257 { 0, 0,
258 sys_nosys },
259 { 2, s(struct osf1_sys_gettimeofday_args),
260 osf1_sys_gettimeofday },
261 { 2, s(struct osf1_sys_getrusage_args),
262 osf1_sys_getrusage },
263 { 5, s(struct sys_getsockopt_args),
264 sys_getsockopt },
265 { 0, 0,
266 sys_nosys },
267 { 3, s(struct osf1_sys_readv_args),
268 osf1_sys_readv },
269 { 3, s(struct osf1_sys_writev_args),
270 osf1_sys_writev },
271 { 2, s(struct osf1_sys_settimeofday_args),
272 osf1_sys_settimeofday },
273 { 3, s(struct sys_fchown_args),
274 sys_fchown },
275 { 2, s(struct sys_fchmod_args),
276 sys_fchmod },
277 { 6, s(struct compat_43_sys_recvfrom_args),
278 compat_43_sys_recvfrom },
279 { 2, s(struct sys_setreuid_args),
280 sys_setreuid },
281 { 2, s(struct sys_setregid_args),
282 sys_setregid },
283 { 2, s(struct sys_rename_args),
284 sys_rename },
285 { 2, s(struct osf1_sys_truncate_args),
286 osf1_sys_truncate },
287 { 2, s(struct osf1_sys_ftruncate_args),
288 osf1_sys_ftruncate },
289 { 0, 0,
290 sys_nosys },
291 { 1, s(struct osf1_sys_setgid_args),
292 osf1_sys_setgid },
293 { 6, s(struct osf1_sys_sendto_args),
294 osf1_sys_sendto },
295 { 2, s(struct sys_shutdown_args),
296 sys_shutdown },
297 { 4, s(struct osf1_sys_socketpair_args),
298 osf1_sys_socketpair },
299 { 2, s(struct sys_mkdir_args),
300 sys_mkdir },
301 { 1, s(struct sys_rmdir_args),
302 sys_rmdir },
303 { 2, s(struct osf1_sys_utimes_args),
304 osf1_sys_utimes },
305 { 0, 0,
306 sys_nosys },
307 { 0, 0,
308 sys_nosys },
309 { 3, s(struct compat_43_sys_getpeername_args),
310 compat_43_sys_getpeername },
311 { 0, 0,
312 compat_43_sys_gethostid },
313 { 1, s(struct compat_43_sys_sethostid_args),
314 compat_43_sys_sethostid },
315 { 2, s(struct osf1_sys_getrlimit_args),
316 osf1_sys_getrlimit },
317 { 2, s(struct osf1_sys_setrlimit_args),
318 osf1_sys_setrlimit },
319 { 0, 0,
320 sys_nosys },
321 { 0, 0,
322 sys_setsid },
323 { 0, 0,
324 sys_nosys },
325 { 0, 0,
326 compat_43_sys_quota },
327 { 3, s(struct compat_43_sys_getsockname_args),
328 compat_43_sys_getsockname },
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 { 3, s(struct osf1_sys_sigaction_args),
340 osf1_sys_sigaction },
341 { 0, 0,
342 sys_nosys },
343 { 0, 0,
344 sys_nosys },
345 { 4, s(struct compat_43_sys_getdirentries_args),
346 compat_43_sys_getdirentries },
347 { 3, s(struct osf1_sys_statfs_args),
348 osf1_sys_statfs },
349 { 3, s(struct osf1_sys_fstatfs_args),
350 osf1_sys_fstatfs },
351 { 0, 0,
352 sys_nosys },
353 { 0, 0,
354 sys_nosys },
355 { 0, 0,
356 sys_nosys },
357 { 2, s(struct compat_09_sys_getdomainname_args),
358 compat_09_sys_getdomainname },
359 { 2, s(struct compat_09_sys_setdomainname_args),
360 compat_09_sys_setdomainname },
361 { 0, 0,
362 sys_nosys },
363 { 0, 0,
364 sys_nosys },
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 { 0, 0,
374 sys_nosys },
375 { 0, 0,
376 sys_nosys },
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 { 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 { 0, 0,
408 sys_nosys },
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 { 0, 0,
440 sys_nosys },
441 { 1, s(struct osf1_sys_uname_args),
442 osf1_sys_uname },
443 { 3, s(struct sys_lchown_args),
444 sys_lchown },
445 { 3, s(struct osf1_sys_shmat_args),
446 osf1_sys_shmat },
447 { 3, s(struct osf1_sys_shmctl_args),
448 osf1_sys_shmctl },
449 { 1, s(struct osf1_sys_shmdt_args),
450 osf1_sys_shmdt },
451 { 3, s(struct osf1_sys_shmget_args),
452 osf1_sys_shmget },
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 { 1, s(struct sys_getsid_args),
496 sys_getsid },
497 { 2, s(struct osf1_sys_sigaltstack_args),
498 osf1_sys_sigaltstack },
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 { 3, s(struct osf1_sys_sysinfo_args),
510 osf1_sys_sysinfo },
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 { 2, s(struct osf1_sys_pathconf_args),
522 osf1_sys_pathconf },
523 { 2, s(struct osf1_sys_fpathconf_args),
524 osf1_sys_fpathconf },
525 { 0, 0,
526 sys_nosys },
527 { 0, 0,
528 sys_nosys },
529 { 2, s(struct osf1_sys_usleep_thread_args),
530 osf1_sys_usleep_thread },
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 { 5, s(struct osf1_sys_setsysinfo_args),
542 osf1_sys_setsysinfo },
543 { 0, 0,
544 sys_nosys },
545 { 0, 0,
546 sys_nosys },
547 { 0, 0,
548 sys_nosys },
549 { 0, 0,
550 sys_nosys },
551 };
552