]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - gdb/proc-events.c
Updated copyright notices for most files.
[thirdparty/binutils-gdb.git] / gdb / proc-events.c
1 /* Machine-independent support for SVR4 /proc (process file system)
2
3 Copyright (C) 1999, 2000, 2004, 2007, 2008 Free Software Foundation, Inc.
4
5 Written by Michael Snyder at Cygnus Solutions.
6 Based on work by Fred Fish, Stu Grossman, Geoff Noer, and others.
7
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3 of the License, or
11 (at your option) any later version.
12
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <http://www.gnu.org/licenses/>. */
20
21 /* Pretty-print "events of interest".
22
23 This module includes pretty-print routines for:
24 * faults (hardware exceptions)
25 * signals (software interrupts)
26 * syscalls
27
28 FIXME: At present, the syscall translation table must be
29 initialized, which is not true of the other translation tables. */
30
31 #include "defs.h"
32
33 #ifdef NEW_PROC_API
34 #define _STRUCTURED_PROC 1
35 #endif
36
37 #include <stdio.h>
38 #include <sys/types.h>
39 #include <sys/procfs.h>
40 #ifdef HAVE_SYS_SYSCALL_H
41 #include <sys/syscall.h>
42 #endif
43 #ifdef HAVE_SYS_FAULT_H
44 #include <sys/fault.h>
45 #endif
46
47 /* Much of the information used in the /proc interface, particularly
48 for printing status information, is kept as tables of structures of
49 the following form. These tables can be used to map numeric values
50 to their symbolic names and to a string that describes their
51 specific use. */
52
53 struct trans
54 {
55 int value; /* The numeric value. */
56 char *name; /* The equivalent symbolic value. */
57 char *desc; /* Short description of value. */
58 };
59 \f
60
61 /* Pretty print syscalls. */
62
63 /* Ugh -- UnixWare and Solaris spell these differently! */
64
65 #ifdef SYS_lwpcreate
66 #define SYS_lwp_create SYS_lwpcreate
67 #endif
68
69 #ifdef SYS_lwpexit
70 #define SYS_lwp_exit SYS_lwpexit
71 #endif
72
73 #ifdef SYS_lwpwait
74 #define SYS_lwp_wait SYS_lwpwait
75 #endif
76
77 #ifdef SYS_lwpself
78 #define SYS_lwp_self SYS_lwpself
79 #endif
80
81 #ifdef SYS_lwpinfo
82 #define SYS_lwp_info SYS_lwpinfo
83 #endif
84
85 #ifdef SYS_lwpprivate
86 #define SYS_lwp_private SYS_lwpprivate
87 #endif
88
89 #ifdef SYS_lwpkill
90 #define SYS_lwp_kill SYS_lwpkill
91 #endif
92
93 #ifdef SYS_lwpsuspend
94 #define SYS_lwp_suspend SYS_lwpsuspend
95 #endif
96
97 #ifdef SYS_lwpcontinue
98 #define SYS_lwp_continue SYS_lwpcontinue
99 #endif
100
101
102 /* Syscall translation table. */
103
104 #define MAX_SYSCALLS 262 /* Pretty arbitrary. */
105 static char *syscall_table[MAX_SYSCALLS];
106
107 void
108 init_syscall_table (void)
109 {
110 #ifdef SYS_BSD_getime
111 syscall_table[SYS_BSD_getime] = "BSD_getime";
112 #endif
113 #ifdef SYS_BSDgetpgrp
114 syscall_table[SYS_BSDgetpgrp] = "BSDgetpgrp";
115 #endif
116 #ifdef SYS_BSDsetpgrp
117 syscall_table[SYS_BSDsetpgrp] = "BSDsetpgrp";
118 #endif
119 #ifdef SYS_acancel
120 syscall_table[SYS_acancel] = "acancel";
121 #endif
122 #ifdef SYS_accept
123 syscall_table[SYS_accept] = "accept";
124 #endif
125 #ifdef SYS_access
126 syscall_table[SYS_access] = "access";
127 #endif
128 #ifdef SYS_acct
129 syscall_table[SYS_acct] = "acct";
130 #endif
131 #ifdef SYS_acl
132 syscall_table[SYS_acl] = "acl";
133 #endif
134 #ifdef SYS_aclipc
135 syscall_table[SYS_aclipc] = "aclipc";
136 #endif
137 #ifdef SYS_adjtime
138 syscall_table[SYS_adjtime] = "adjtime";
139 #endif
140 #ifdef SYS_afs_syscall
141 syscall_table[SYS_afs_syscall] = "afs_syscall";
142 #endif
143 #ifdef SYS_alarm
144 syscall_table[SYS_alarm] = "alarm";
145 #endif
146 #ifdef SYS_alt_plock
147 syscall_table[SYS_alt_plock] = "alt_plock";
148 #endif
149 #ifdef SYS_alt_sigpending
150 syscall_table[SYS_alt_sigpending] = "alt_sigpending";
151 #endif
152 #ifdef SYS_async
153 syscall_table[SYS_async] = "async";
154 #endif
155 #ifdef SYS_async_daemon
156 syscall_table[SYS_async_daemon] = "async_daemon";
157 #endif
158 #ifdef SYS_audcntl
159 syscall_table[SYS_audcntl] = "audcntl";
160 #endif
161 #ifdef SYS_audgen
162 syscall_table[SYS_audgen] = "audgen";
163 #endif
164 #ifdef SYS_auditbuf
165 syscall_table[SYS_auditbuf] = "auditbuf";
166 #endif
167 #ifdef SYS_auditctl
168 syscall_table[SYS_auditctl] = "auditctl";
169 #endif
170 #ifdef SYS_auditdmp
171 syscall_table[SYS_auditdmp] = "auditdmp";
172 #endif
173 #ifdef SYS_auditevt
174 syscall_table[SYS_auditevt] = "auditevt";
175 #endif
176 #ifdef SYS_auditlog
177 syscall_table[SYS_auditlog] = "auditlog";
178 #endif
179 #ifdef SYS_auditsys
180 syscall_table[SYS_auditsys] = "auditsys";
181 #endif
182 #ifdef SYS_bind
183 syscall_table[SYS_bind] = "bind";
184 #endif
185 #ifdef SYS_block
186 syscall_table[SYS_block] = "block";
187 #endif
188 #ifdef SYS_brk
189 syscall_table[SYS_brk] = "brk";
190 #endif
191 #ifdef SYS_cachectl
192 syscall_table[SYS_cachectl] = "cachectl";
193 #endif
194 #ifdef SYS_cacheflush
195 syscall_table[SYS_cacheflush] = "cacheflush";
196 #endif
197 #ifdef SYS_cancelblock
198 syscall_table[SYS_cancelblock] = "cancelblock";
199 #endif
200 #ifdef SYS_cg_bind
201 syscall_table[SYS_cg_bind] = "cg_bind";
202 #endif
203 #ifdef SYS_cg_current
204 syscall_table[SYS_cg_current] = "cg_current";
205 #endif
206 #ifdef SYS_cg_ids
207 syscall_table[SYS_cg_ids] = "cg_ids";
208 #endif
209 #ifdef SYS_cg_info
210 syscall_table[SYS_cg_info] = "cg_info";
211 #endif
212 #ifdef SYS_cg_memloc
213 syscall_table[SYS_cg_memloc] = "cg_memloc";
214 #endif
215 #ifdef SYS_cg_processors
216 syscall_table[SYS_cg_processors] = "cg_processors";
217 #endif
218 #ifdef SYS_chdir
219 syscall_table[SYS_chdir] = "chdir";
220 #endif
221 #ifdef SYS_chflags
222 syscall_table[SYS_chflags] = "chflags";
223 #endif
224 #ifdef SYS_chmod
225 syscall_table[SYS_chmod] = "chmod";
226 #endif
227 #ifdef SYS_chown
228 syscall_table[SYS_chown] = "chown";
229 #endif
230 #ifdef SYS_chroot
231 syscall_table[SYS_chroot] = "chroot";
232 #endif
233 #ifdef SYS_clocal
234 syscall_table[SYS_clocal] = "clocal";
235 #endif
236 #ifdef SYS_clock_getres
237 syscall_table[SYS_clock_getres] = "clock_getres";
238 #endif
239 #ifdef SYS_clock_gettime
240 syscall_table[SYS_clock_gettime] = "clock_gettime";
241 #endif
242 #ifdef SYS_clock_settime
243 syscall_table[SYS_clock_settime] = "clock_settime";
244 #endif
245 #ifdef SYS_close
246 syscall_table[SYS_close] = "close";
247 #endif
248 #ifdef SYS_connect
249 syscall_table[SYS_connect] = "connect";
250 #endif
251 #ifdef SYS_context
252 syscall_table[SYS_context] = "context";
253 #endif
254 #ifdef SYS_creat
255 syscall_table[SYS_creat] = "creat";
256 #endif
257 #ifdef SYS_creat64
258 syscall_table[SYS_creat64] = "creat64";
259 #endif
260 #ifdef SYS_devstat
261 syscall_table[SYS_devstat] = "devstat";
262 #endif
263 #ifdef SYS_dmi
264 syscall_table[SYS_dmi] = "dmi";
265 #endif
266 #ifdef SYS_door
267 syscall_table[SYS_door] = "door";
268 #endif
269 #ifdef SYS_dshmsys
270 syscall_table[SYS_dshmsys] = "dshmsys";
271 #endif
272 #ifdef SYS_dup
273 syscall_table[SYS_dup] = "dup";
274 #endif
275 #ifdef SYS_dup2
276 syscall_table[SYS_dup2] = "dup2";
277 #endif
278 #ifdef SYS_evsys
279 syscall_table[SYS_evsys] = "evsys";
280 #endif
281 #ifdef SYS_evtrapret
282 syscall_table[SYS_evtrapret] = "evtrapret";
283 #endif
284 #ifdef SYS_exec
285 syscall_table[SYS_exec] = "exec";
286 #endif
287 #ifdef SYS_exec_with_loader
288 syscall_table[SYS_exec_with_loader] = "exec_with_loader";
289 #endif
290 #ifdef SYS_execv
291 syscall_table[SYS_execv] = "execv";
292 #endif
293 #ifdef SYS_execve
294 syscall_table[SYS_execve] = "execve";
295 #endif
296 #ifdef SYS_exit
297 syscall_table[SYS_exit] = "exit";
298 #endif
299 #ifdef SYS_exportfs
300 syscall_table[SYS_exportfs] = "exportfs";
301 #endif
302 #ifdef SYS_facl
303 syscall_table[SYS_facl] = "facl";
304 #endif
305 #ifdef SYS_fchdir
306 syscall_table[SYS_fchdir] = "fchdir";
307 #endif
308 #ifdef SYS_fchflags
309 syscall_table[SYS_fchflags] = "fchflags";
310 #endif
311 #ifdef SYS_fchmod
312 syscall_table[SYS_fchmod] = "fchmod";
313 #endif
314 #ifdef SYS_fchown
315 syscall_table[SYS_fchown] = "fchown";
316 #endif
317 #ifdef SYS_fchroot
318 syscall_table[SYS_fchroot] = "fchroot";
319 #endif
320 #ifdef SYS_fcntl
321 syscall_table[SYS_fcntl] = "fcntl";
322 #endif
323 #ifdef SYS_fdatasync
324 syscall_table[SYS_fdatasync] = "fdatasync";
325 #endif
326 #ifdef SYS_fdevstat
327 syscall_table[SYS_fdevstat] = "fdevstat";
328 #endif
329 #ifdef SYS_fdsync
330 syscall_table[SYS_fdsync] = "fdsync";
331 #endif
332 #ifdef SYS_filepriv
333 syscall_table[SYS_filepriv] = "filepriv";
334 #endif
335 #ifdef SYS_flock
336 syscall_table[SYS_flock] = "flock";
337 #endif
338 #ifdef SYS_flvlfile
339 syscall_table[SYS_flvlfile] = "flvlfile";
340 #endif
341 #ifdef SYS_fork
342 syscall_table[SYS_fork] = "fork";
343 #endif
344 #ifdef SYS_fork1
345 syscall_table[SYS_fork1] = "fork1";
346 #endif
347 #ifdef SYS_forkall
348 syscall_table[SYS_forkall] = "forkall";
349 #endif
350 #ifdef SYS_fpathconf
351 syscall_table[SYS_fpathconf] = "fpathconf";
352 #endif
353 #ifdef SYS_fstat
354 syscall_table[SYS_fstat] = "fstat";
355 #endif
356 #ifdef SYS_fstat64
357 syscall_table[SYS_fstat64] = "fstat64";
358 #endif
359 #ifdef SYS_fstatfs
360 syscall_table[SYS_fstatfs] = "fstatfs";
361 #endif
362 #ifdef SYS_fstatvfs
363 syscall_table[SYS_fstatvfs] = "fstatvfs";
364 #endif
365 #ifdef SYS_fstatvfs64
366 syscall_table[SYS_fstatvfs64] = "fstatvfs64";
367 #endif
368 #ifdef SYS_fsync
369 syscall_table[SYS_fsync] = "fsync";
370 #endif
371 #ifdef SYS_ftruncate
372 syscall_table[SYS_ftruncate] = "ftruncate";
373 #endif
374 #ifdef SYS_ftruncate64
375 syscall_table[SYS_ftruncate64] = "ftruncate64";
376 #endif
377 #ifdef SYS_fuser
378 syscall_table[SYS_fuser] = "fuser";
379 #endif
380 #ifdef SYS_fxstat
381 syscall_table[SYS_fxstat] = "fxstat";
382 #endif
383 #ifdef SYS_get_sysinfo
384 syscall_table[SYS_get_sysinfo] = "get_sysinfo";
385 #endif
386 #ifdef SYS_getaddressconf
387 syscall_table[SYS_getaddressconf] = "getaddressconf";
388 #endif
389 #ifdef SYS_getcontext
390 syscall_table[SYS_getcontext] = "getcontext";
391 #endif
392 #ifdef SYS_getdents
393 syscall_table[SYS_getdents] = "getdents";
394 #endif
395 #ifdef SYS_getdents64
396 syscall_table[SYS_getdents64] = "getdents64";
397 #endif
398 #ifdef SYS_getdirentries
399 syscall_table[SYS_getdirentries] = "getdirentries";
400 #endif
401 #ifdef SYS_getdomainname
402 syscall_table[SYS_getdomainname] = "getdomainname";
403 #endif
404 #ifdef SYS_getdtablesize
405 syscall_table[SYS_getdtablesize] = "getdtablesize";
406 #endif
407 #ifdef SYS_getfh
408 syscall_table[SYS_getfh] = "getfh";
409 #endif
410 #ifdef SYS_getfsstat
411 syscall_table[SYS_getfsstat] = "getfsstat";
412 #endif
413 #ifdef SYS_getgid
414 syscall_table[SYS_getgid] = "getgid";
415 #endif
416 #ifdef SYS_getgroups
417 syscall_table[SYS_getgroups] = "getgroups";
418 #endif
419 #ifdef SYS_gethostid
420 syscall_table[SYS_gethostid] = "gethostid";
421 #endif
422 #ifdef SYS_gethostname
423 syscall_table[SYS_gethostname] = "gethostname";
424 #endif
425 #ifdef SYS_getitimer
426 syscall_table[SYS_getitimer] = "getitimer";
427 #endif
428 #ifdef SYS_getksym
429 syscall_table[SYS_getksym] = "getksym";
430 #endif
431 #ifdef SYS_getlogin
432 syscall_table[SYS_getlogin] = "getlogin";
433 #endif
434 #ifdef SYS_getmnt
435 syscall_table[SYS_getmnt] = "getmnt";
436 #endif
437 #ifdef SYS_getmsg
438 syscall_table[SYS_getmsg] = "getmsg";
439 #endif
440 #ifdef SYS_getpagesize
441 syscall_table[SYS_getpagesize] = "getpagesize";
442 #endif
443 #ifdef SYS_getpeername
444 syscall_table[SYS_getpeername] = "getpeername";
445 #endif
446 #ifdef SYS_getpgid
447 syscall_table[SYS_getpgid] = "getpgid";
448 #endif
449 #ifdef SYS_getpgrp
450 syscall_table[SYS_getpgrp] = "getpgrp";
451 #endif
452 #ifdef SYS_getpid
453 syscall_table[SYS_getpid] = "getpid";
454 #endif
455 #ifdef SYS_getpmsg
456 syscall_table[SYS_getpmsg] = "getpmsg";
457 #endif
458 #ifdef SYS_getpriority
459 syscall_table[SYS_getpriority] = "getpriority";
460 #endif
461 #ifdef SYS_getrlimit
462 syscall_table[SYS_getrlimit] = "getrlimit";
463 #endif
464 #ifdef SYS_getrlimit64
465 syscall_table[SYS_getrlimit64] = "getrlimit64";
466 #endif
467 #ifdef SYS_getrusage
468 syscall_table[SYS_getrusage] = "getrusage";
469 #endif
470 #ifdef SYS_getsid
471 syscall_table[SYS_getsid] = "getsid";
472 #endif
473 #ifdef SYS_getsockname
474 syscall_table[SYS_getsockname] = "getsockname";
475 #endif
476 #ifdef SYS_getsockopt
477 syscall_table[SYS_getsockopt] = "getsockopt";
478 #endif
479 #ifdef SYS_gettimeofday
480 syscall_table[SYS_gettimeofday] = "gettimeofday";
481 #endif
482 #ifdef SYS_getuid
483 syscall_table[SYS_getuid] = "getuid";
484 #endif
485 #ifdef SYS_gtty
486 syscall_table[SYS_gtty] = "gtty";
487 #endif
488 #ifdef SYS_hrtsys
489 syscall_table[SYS_hrtsys] = "hrtsys";
490 #endif
491 #ifdef SYS_inst_sync
492 syscall_table[SYS_inst_sync] = "inst_sync";
493 #endif
494 #ifdef SYS_install_utrap
495 syscall_table[SYS_install_utrap] = "install_utrap";
496 #endif
497 #ifdef SYS_invlpg
498 syscall_table[SYS_invlpg] = "invlpg";
499 #endif
500 #ifdef SYS_ioctl
501 syscall_table[SYS_ioctl] = "ioctl";
502 #endif
503 #ifdef SYS_kaio
504 syscall_table[SYS_kaio] = "kaio";
505 #endif
506 #ifdef SYS_keyctl
507 syscall_table[SYS_keyctl] = "keyctl";
508 #endif
509 #ifdef SYS_kill
510 syscall_table[SYS_kill] = "kill";
511 #endif
512 #ifdef SYS_killpg
513 syscall_table[SYS_killpg] = "killpg";
514 #endif
515 #ifdef SYS_kloadcall
516 syscall_table[SYS_kloadcall] = "kloadcall";
517 #endif
518 #ifdef SYS_kmodcall
519 syscall_table[SYS_kmodcall] = "kmodcall";
520 #endif
521 #ifdef SYS_ksigaction
522 syscall_table[SYS_ksigaction] = "ksigaction";
523 #endif
524 #ifdef SYS_ksigprocmask
525 syscall_table[SYS_ksigprocmask] = "ksigprocmask";
526 #endif
527 #ifdef SYS_ksigqueue
528 syscall_table[SYS_ksigqueue] = "ksigqueue";
529 #endif
530 #ifdef SYS_lchown
531 syscall_table[SYS_lchown] = "lchown";
532 #endif
533 #ifdef SYS_link
534 syscall_table[SYS_link] = "link";
535 #endif
536 #ifdef SYS_listen
537 syscall_table[SYS_listen] = "listen";
538 #endif
539 #ifdef SYS_llseek
540 syscall_table[SYS_llseek] = "llseek";
541 #endif
542 #ifdef SYS_lseek
543 syscall_table[SYS_lseek] = "lseek";
544 #endif
545 #ifdef SYS_lseek64
546 syscall_table[SYS_lseek64] = "lseek64";
547 #endif
548 #ifdef SYS_lstat
549 syscall_table[SYS_lstat] = "lstat";
550 #endif
551 #ifdef SYS_lstat64
552 syscall_table[SYS_lstat64] = "lstat64";
553 #endif
554 #ifdef SYS_lvldom
555 syscall_table[SYS_lvldom] = "lvldom";
556 #endif
557 #ifdef SYS_lvlequal
558 syscall_table[SYS_lvlequal] = "lvlequal";
559 #endif
560 #ifdef SYS_lvlfile
561 syscall_table[SYS_lvlfile] = "lvlfile";
562 #endif
563 #ifdef SYS_lvlipc
564 syscall_table[SYS_lvlipc] = "lvlipc";
565 #endif
566 #ifdef SYS_lvlproc
567 syscall_table[SYS_lvlproc] = "lvlproc";
568 #endif
569 #ifdef SYS_lvlvfs
570 syscall_table[SYS_lvlvfs] = "lvlvfs";
571 #endif
572 #ifdef SYS_lwp_alarm
573 syscall_table[SYS_lwp_alarm] = "lwp_alarm";
574 #endif
575 #ifdef SYS_lwp_cond_broadcast
576 syscall_table[SYS_lwp_cond_broadcast] = "lwp_cond_broadcast";
577 #endif
578 #ifdef SYS_lwp_cond_signal
579 syscall_table[SYS_lwp_cond_signal] = "lwp_cond_signal";
580 #endif
581 #ifdef SYS_lwp_cond_wait
582 syscall_table[SYS_lwp_cond_wait] = "lwp_cond_wait";
583 #endif
584 #ifdef SYS_lwp_continue
585 syscall_table[SYS_lwp_continue] = "lwp_continue";
586 #endif
587 #ifdef SYS_lwp_create
588 syscall_table[SYS_lwp_create] = "lwp_create";
589 #endif
590 #ifdef SYS_lwp_exit
591 syscall_table[SYS_lwp_exit] = "lwp_exit";
592 #endif
593 #ifdef SYS_lwp_getprivate
594 syscall_table[SYS_lwp_getprivate] = "lwp_getprivate";
595 #endif
596 #ifdef SYS_lwp_info
597 syscall_table[SYS_lwp_info] = "lwp_info";
598 #endif
599 #ifdef SYS_lwp_kill
600 syscall_table[SYS_lwp_kill] = "lwp_kill";
601 #endif
602 #ifdef SYS_lwp_mutex_init
603 syscall_table[SYS_lwp_mutex_init] = "lwp_mutex_init";
604 #endif
605 #ifdef SYS_lwp_mutex_lock
606 syscall_table[SYS_lwp_mutex_lock] = "lwp_mutex_lock";
607 #endif
608 #ifdef SYS_lwp_mutex_trylock
609 syscall_table[SYS_lwp_mutex_trylock] = "lwp_mutex_trylock";
610 #endif
611 #ifdef SYS_lwp_mutex_unlock
612 syscall_table[SYS_lwp_mutex_unlock] = "lwp_mutex_unlock";
613 #endif
614 #ifdef SYS_lwp_private
615 syscall_table[SYS_lwp_private] = "lwp_private";
616 #endif
617 #ifdef SYS_lwp_self
618 syscall_table[SYS_lwp_self] = "lwp_self";
619 #endif
620 #ifdef SYS_lwp_sema_post
621 syscall_table[SYS_lwp_sema_post] = "lwp_sema_post";
622 #endif
623 #ifdef SYS_lwp_sema_trywait
624 syscall_table[SYS_lwp_sema_trywait] = "lwp_sema_trywait";
625 #endif
626 #ifdef SYS_lwp_sema_wait
627 syscall_table[SYS_lwp_sema_wait] = "lwp_sema_wait";
628 #endif
629 #ifdef SYS_lwp_setprivate
630 syscall_table[SYS_lwp_setprivate] = "lwp_setprivate";
631 #endif
632 #ifdef SYS_lwp_sigredirect
633 syscall_table[SYS_lwp_sigredirect] = "lwp_sigredirect";
634 #endif
635 #ifdef SYS_lwp_suspend
636 syscall_table[SYS_lwp_suspend] = "lwp_suspend";
637 #endif
638 #ifdef SYS_lwp_wait
639 syscall_table[SYS_lwp_wait] = "lwp_wait";
640 #endif
641 #ifdef SYS_lxstat
642 syscall_table[SYS_lxstat] = "lxstat";
643 #endif
644 #ifdef SYS_madvise
645 syscall_table[SYS_madvise] = "madvise";
646 #endif
647 #ifdef SYS_memcntl
648 syscall_table[SYS_memcntl] = "memcntl";
649 #endif
650 #ifdef SYS_mincore
651 syscall_table[SYS_mincore] = "mincore";
652 #endif
653 #ifdef SYS_mincore
654 syscall_table[SYS_mincore] = "mincore";
655 #endif
656 #ifdef SYS_mkdir
657 syscall_table[SYS_mkdir] = "mkdir";
658 #endif
659 #ifdef SYS_mkmld
660 syscall_table[SYS_mkmld] = "mkmld";
661 #endif
662 #ifdef SYS_mknod
663 syscall_table[SYS_mknod] = "mknod";
664 #endif
665 #ifdef SYS_mldmode
666 syscall_table[SYS_mldmode] = "mldmode";
667 #endif
668 #ifdef SYS_mmap
669 syscall_table[SYS_mmap] = "mmap";
670 #endif
671 #ifdef SYS_mmap64
672 syscall_table[SYS_mmap64] = "mmap64";
673 #endif
674 #ifdef SYS_modadm
675 syscall_table[SYS_modadm] = "modadm";
676 #endif
677 #ifdef SYS_modctl
678 syscall_table[SYS_modctl] = "modctl";
679 #endif
680 #ifdef SYS_modload
681 syscall_table[SYS_modload] = "modload";
682 #endif
683 #ifdef SYS_modpath
684 syscall_table[SYS_modpath] = "modpath";
685 #endif
686 #ifdef SYS_modstat
687 syscall_table[SYS_modstat] = "modstat";
688 #endif
689 #ifdef SYS_moduload
690 syscall_table[SYS_moduload] = "moduload";
691 #endif
692 #ifdef SYS_mount
693 syscall_table[SYS_mount] = "mount";
694 #endif
695 #ifdef SYS_mprotect
696 syscall_table[SYS_mprotect] = "mprotect";
697 #endif
698 #ifdef SYS_mremap
699 syscall_table[SYS_mremap] = "mremap";
700 #endif
701 #ifdef SYS_msfs_syscall
702 syscall_table[SYS_msfs_syscall] = "msfs_syscall";
703 #endif
704 #ifdef SYS_msgctl
705 syscall_table[SYS_msgctl] = "msgctl";
706 #endif
707 #ifdef SYS_msgget
708 syscall_table[SYS_msgget] = "msgget";
709 #endif
710 #ifdef SYS_msgrcv
711 syscall_table[SYS_msgrcv] = "msgrcv";
712 #endif
713 #ifdef SYS_msgsnd
714 syscall_table[SYS_msgsnd] = "msgsnd";
715 #endif
716 #ifdef SYS_msgsys
717 syscall_table[SYS_msgsys] = "msgsys";
718 #endif
719 #ifdef SYS_msleep
720 syscall_table[SYS_msleep] = "msleep";
721 #endif
722 #ifdef SYS_msync
723 syscall_table[SYS_msync] = "msync";
724 #endif
725 #ifdef SYS_munmap
726 syscall_table[SYS_munmap] = "munmap";
727 #endif
728 #ifdef SYS_mvalid
729 syscall_table[SYS_mvalid] = "mvalid";
730 #endif
731 #ifdef SYS_mwakeup
732 syscall_table[SYS_mwakeup] = "mwakeup";
733 #endif
734 #ifdef SYS_naccept
735 syscall_table[SYS_naccept] = "naccept";
736 #endif
737 #ifdef SYS_nanosleep
738 syscall_table[SYS_nanosleep] = "nanosleep";
739 #endif
740 #ifdef SYS_nfssvc
741 syscall_table[SYS_nfssvc] = "nfssvc";
742 #endif
743 #ifdef SYS_nfssys
744 syscall_table[SYS_nfssys] = "nfssys";
745 #endif
746 #ifdef SYS_ngetpeername
747 syscall_table[SYS_ngetpeername] = "ngetpeername";
748 #endif
749 #ifdef SYS_ngetsockname
750 syscall_table[SYS_ngetsockname] = "ngetsockname";
751 #endif
752 #ifdef SYS_nice
753 syscall_table[SYS_nice] = "nice";
754 #endif
755 #ifdef SYS_nrecvfrom
756 syscall_table[SYS_nrecvfrom] = "nrecvfrom";
757 #endif
758 #ifdef SYS_nrecvmsg
759 syscall_table[SYS_nrecvmsg] = "nrecvmsg";
760 #endif
761 #ifdef SYS_nsendmsg
762 syscall_table[SYS_nsendmsg] = "nsendmsg";
763 #endif
764 #ifdef SYS_ntp_adjtime
765 syscall_table[SYS_ntp_adjtime] = "ntp_adjtime";
766 #endif
767 #ifdef SYS_ntp_gettime
768 syscall_table[SYS_ntp_gettime] = "ntp_gettime";
769 #endif
770 #ifdef SYS_nuname
771 syscall_table[SYS_nuname] = "nuname";
772 #endif
773 #ifdef SYS_obreak
774 syscall_table[SYS_obreak] = "obreak";
775 #endif
776 #ifdef SYS_old_accept
777 syscall_table[SYS_old_accept] = "old_accept";
778 #endif
779 #ifdef SYS_old_fstat
780 syscall_table[SYS_old_fstat] = "old_fstat";
781 #endif
782 #ifdef SYS_old_getpeername
783 syscall_table[SYS_old_getpeername] = "old_getpeername";
784 #endif
785 #ifdef SYS_old_getpgrp
786 syscall_table[SYS_old_getpgrp] = "old_getpgrp";
787 #endif
788 #ifdef SYS_old_getsockname
789 syscall_table[SYS_old_getsockname] = "old_getsockname";
790 #endif
791 #ifdef SYS_old_killpg
792 syscall_table[SYS_old_killpg] = "old_killpg";
793 #endif
794 #ifdef SYS_old_lstat
795 syscall_table[SYS_old_lstat] = "old_lstat";
796 #endif
797 #ifdef SYS_old_recv
798 syscall_table[SYS_old_recv] = "old_recv";
799 #endif
800 #ifdef SYS_old_recvfrom
801 syscall_table[SYS_old_recvfrom] = "old_recvfrom";
802 #endif
803 #ifdef SYS_old_recvmsg
804 syscall_table[SYS_old_recvmsg] = "old_recvmsg";
805 #endif
806 #ifdef SYS_old_send
807 syscall_table[SYS_old_send] = "old_send";
808 #endif
809 #ifdef SYS_old_sendmsg
810 syscall_table[SYS_old_sendmsg] = "old_sendmsg";
811 #endif
812 #ifdef SYS_old_sigblock
813 syscall_table[SYS_old_sigblock] = "old_sigblock";
814 #endif
815 #ifdef SYS_old_sigsetmask
816 syscall_table[SYS_old_sigsetmask] = "old_sigsetmask";
817 #endif
818 #ifdef SYS_old_sigvec
819 syscall_table[SYS_old_sigvec] = "old_sigvec";
820 #endif
821 #ifdef SYS_old_stat
822 syscall_table[SYS_old_stat] = "old_stat";
823 #endif
824 #ifdef SYS_old_vhangup
825 syscall_table[SYS_old_vhangup] = "old_vhangup";
826 #endif
827 #ifdef SYS_old_wait
828 syscall_table[SYS_old_wait] = "old_wait";
829 #endif
830 #ifdef SYS_oldquota
831 syscall_table[SYS_oldquota] = "oldquota";
832 #endif
833 #ifdef SYS_online
834 syscall_table[SYS_online] = "online";
835 #endif
836 #ifdef SYS_open
837 syscall_table[SYS_open] = "open";
838 #endif
839 #ifdef SYS_open64
840 syscall_table[SYS_open64] = "open64";
841 #endif
842 #ifdef SYS_ovadvise
843 syscall_table[SYS_ovadvise] = "ovadvise";
844 #endif
845 #ifdef SYS_p_online
846 syscall_table[SYS_p_online] = "p_online";
847 #endif
848 #ifdef SYS_pagelock
849 syscall_table[SYS_pagelock] = "pagelock";
850 #endif
851 #ifdef SYS_pathconf
852 syscall_table[SYS_pathconf] = "pathconf";
853 #endif
854 #ifdef SYS_pause
855 syscall_table[SYS_pause] = "pause";
856 #endif
857 #ifdef SYS_pgrpsys
858 syscall_table[SYS_pgrpsys] = "pgrpsys";
859 #endif
860 #ifdef SYS_pid_block
861 syscall_table[SYS_pid_block] = "pid_block";
862 #endif
863 #ifdef SYS_pid_unblock
864 syscall_table[SYS_pid_unblock] = "pid_unblock";
865 #endif
866 #ifdef SYS_pipe
867 syscall_table[SYS_pipe] = "pipe";
868 #endif
869 #ifdef SYS_plock
870 syscall_table[SYS_plock] = "plock";
871 #endif
872 #ifdef SYS_poll
873 syscall_table[SYS_poll] = "poll";
874 #endif
875 #ifdef SYS_prctl
876 syscall_table[SYS_prctl] = "prctl";
877 #endif
878 #ifdef SYS_pread
879 syscall_table[SYS_pread] = "pread";
880 #endif
881 #ifdef SYS_pread64
882 syscall_table[SYS_pread64] = "pread64";
883 #endif
884 #ifdef SYS_pread64
885 syscall_table[SYS_pread64] = "pread64";
886 #endif
887 #ifdef SYS_prepblock
888 syscall_table[SYS_prepblock] = "prepblock";
889 #endif
890 #ifdef SYS_priocntl
891 syscall_table[SYS_priocntl] = "priocntl";
892 #endif
893 #ifdef SYS_priocntllst
894 syscall_table[SYS_priocntllst] = "priocntllst";
895 #endif
896 #ifdef SYS_priocntlset
897 syscall_table[SYS_priocntlset] = "priocntlset";
898 #endif
899 #ifdef SYS_priocntlsys
900 syscall_table[SYS_priocntlsys] = "priocntlsys";
901 #endif
902 #ifdef SYS_procblk
903 syscall_table[SYS_procblk] = "procblk";
904 #endif
905 #ifdef SYS_processor_bind
906 syscall_table[SYS_processor_bind] = "processor_bind";
907 #endif
908 #ifdef SYS_processor_exbind
909 syscall_table[SYS_processor_exbind] = "processor_exbind";
910 #endif
911 #ifdef SYS_processor_info
912 syscall_table[SYS_processor_info] = "processor_info";
913 #endif
914 #ifdef SYS_procpriv
915 syscall_table[SYS_procpriv] = "procpriv";
916 #endif
917 #ifdef SYS_profil
918 syscall_table[SYS_profil] = "profil";
919 #endif
920 #ifdef SYS_proplist_syscall
921 syscall_table[SYS_proplist_syscall] = "proplist_syscall";
922 #endif
923 #ifdef SYS_pset
924 syscall_table[SYS_pset] = "pset";
925 #endif
926 #ifdef SYS_ptrace
927 syscall_table[SYS_ptrace] = "ptrace";
928 #endif
929 #ifdef SYS_putmsg
930 syscall_table[SYS_putmsg] = "putmsg";
931 #endif
932 #ifdef SYS_putpmsg
933 syscall_table[SYS_putpmsg] = "putpmsg";
934 #endif
935 #ifdef SYS_pwrite
936 syscall_table[SYS_pwrite] = "pwrite";
937 #endif
938 #ifdef SYS_pwrite64
939 syscall_table[SYS_pwrite64] = "pwrite64";
940 #endif
941 #ifdef SYS_quotactl
942 syscall_table[SYS_quotactl] = "quotactl";
943 #endif
944 #ifdef SYS_rdblock
945 syscall_table[SYS_rdblock] = "rdblock";
946 #endif
947 #ifdef SYS_read
948 syscall_table[SYS_read] = "read";
949 #endif
950 #ifdef SYS_readlink
951 syscall_table[SYS_readlink] = "readlink";
952 #endif
953 #ifdef SYS_readv
954 syscall_table[SYS_readv] = "readv";
955 #endif
956 #ifdef SYS_reboot
957 syscall_table[SYS_reboot] = "reboot";
958 #endif
959 #ifdef SYS_recv
960 syscall_table[SYS_recv] = "recv";
961 #endif
962 #ifdef SYS_recvfrom
963 syscall_table[SYS_recvfrom] = "recvfrom";
964 #endif
965 #ifdef SYS_recvmsg
966 syscall_table[SYS_recvmsg] = "recvmsg";
967 #endif
968 #ifdef SYS_rename
969 syscall_table[SYS_rename] = "rename";
970 #endif
971 #ifdef SYS_resolvepath
972 syscall_table[SYS_resolvepath] = "resolvepath";
973 #endif
974 #ifdef SYS_revoke
975 syscall_table[SYS_revoke] = "revoke";
976 #endif
977 #ifdef SYS_rfsys
978 syscall_table[SYS_rfsys] = "rfsys";
979 #endif
980 #ifdef SYS_rmdir
981 syscall_table[SYS_rmdir] = "rmdir";
982 #endif
983 #ifdef SYS_rpcsys
984 syscall_table[SYS_rpcsys] = "rpcsys";
985 #endif
986 #ifdef SYS_sbrk
987 syscall_table[SYS_sbrk] = "sbrk";
988 #endif
989 #ifdef SYS_schedctl
990 syscall_table[SYS_schedctl] = "schedctl";
991 #endif
992 #ifdef SYS_secadvise
993 syscall_table[SYS_secadvise] = "secadvise";
994 #endif
995 #ifdef SYS_secsys
996 syscall_table[SYS_secsys] = "secsys";
997 #endif
998 #ifdef SYS_security
999 syscall_table[SYS_security] = "security";
1000 #endif
1001 #ifdef SYS_select
1002 syscall_table[SYS_select] = "select";
1003 #endif
1004 #ifdef SYS_semctl
1005 syscall_table[SYS_semctl] = "semctl";
1006 #endif
1007 #ifdef SYS_semget
1008 syscall_table[SYS_semget] = "semget";
1009 #endif
1010 #ifdef SYS_semop
1011 syscall_table[SYS_semop] = "semop";
1012 #endif
1013 #ifdef SYS_semsys
1014 syscall_table[SYS_semsys] = "semsys";
1015 #endif
1016 #ifdef SYS_send
1017 syscall_table[SYS_send] = "send";
1018 #endif
1019 #ifdef SYS_sendmsg
1020 syscall_table[SYS_sendmsg] = "sendmsg";
1021 #endif
1022 #ifdef SYS_sendto
1023 syscall_table[SYS_sendto] = "sendto";
1024 #endif
1025 #ifdef SYS_set_program_attributes
1026 syscall_table[SYS_set_program_attributes] = "set_program_attributes";
1027 #endif
1028 #ifdef SYS_set_speculative
1029 syscall_table[SYS_set_speculative] = "set_speculative";
1030 #endif
1031 #ifdef SYS_set_sysinfo
1032 syscall_table[SYS_set_sysinfo] = "set_sysinfo";
1033 #endif
1034 #ifdef SYS_setcontext
1035 syscall_table[SYS_setcontext] = "setcontext";
1036 #endif
1037 #ifdef SYS_setdomainname
1038 syscall_table[SYS_setdomainname] = "setdomainname";
1039 #endif
1040 #ifdef SYS_setegid
1041 syscall_table[SYS_setegid] = "setegid";
1042 #endif
1043 #ifdef SYS_seteuid
1044 syscall_table[SYS_seteuid] = "seteuid";
1045 #endif
1046 #ifdef SYS_setgid
1047 syscall_table[SYS_setgid] = "setgid";
1048 #endif
1049 #ifdef SYS_setgroups
1050 syscall_table[SYS_setgroups] = "setgroups";
1051 #endif
1052 #ifdef SYS_sethostid
1053 syscall_table[SYS_sethostid] = "sethostid";
1054 #endif
1055 #ifdef SYS_sethostname
1056 syscall_table[SYS_sethostname] = "sethostname";
1057 #endif
1058 #ifdef SYS_setitimer
1059 syscall_table[SYS_setitimer] = "setitimer";
1060 #endif
1061 #ifdef SYS_setlogin
1062 syscall_table[SYS_setlogin] = "setlogin";
1063 #endif
1064 #ifdef SYS_setpgid
1065 syscall_table[SYS_setpgid] = "setpgid";
1066 #endif
1067 #ifdef SYS_setpgrp
1068 syscall_table[SYS_setpgrp] = "setpgrp";
1069 #endif
1070 #ifdef SYS_setpriority
1071 syscall_table[SYS_setpriority] = "setpriority";
1072 #endif
1073 #ifdef SYS_setregid
1074 syscall_table[SYS_setregid] = "setregid";
1075 #endif
1076 #ifdef SYS_setreuid
1077 syscall_table[SYS_setreuid] = "setreuid";
1078 #endif
1079 #ifdef SYS_setrlimit
1080 syscall_table[SYS_setrlimit] = "setrlimit";
1081 #endif
1082 #ifdef SYS_setrlimit64
1083 syscall_table[SYS_setrlimit64] = "setrlimit64";
1084 #endif
1085 #ifdef SYS_setsid
1086 syscall_table[SYS_setsid] = "setsid";
1087 #endif
1088 #ifdef SYS_setsockopt
1089 syscall_table[SYS_setsockopt] = "setsockopt";
1090 #endif
1091 #ifdef SYS_settimeofday
1092 syscall_table[SYS_settimeofday] = "settimeofday";
1093 #endif
1094 #ifdef SYS_setuid
1095 syscall_table[SYS_setuid] = "setuid";
1096 #endif
1097 #ifdef SYS_sgi
1098 syscall_table[SYS_sgi] = "sgi";
1099 #endif
1100 #ifdef SYS_sgifastpath
1101 syscall_table[SYS_sgifastpath] = "sgifastpath";
1102 #endif
1103 #ifdef SYS_sgikopt
1104 syscall_table[SYS_sgikopt] = "sgikopt";
1105 #endif
1106 #ifdef SYS_sginap
1107 syscall_table[SYS_sginap] = "sginap";
1108 #endif
1109 #ifdef SYS_shmat
1110 syscall_table[SYS_shmat] = "shmat";
1111 #endif
1112 #ifdef SYS_shmctl
1113 syscall_table[SYS_shmctl] = "shmctl";
1114 #endif
1115 #ifdef SYS_shmdt
1116 syscall_table[SYS_shmdt] = "shmdt";
1117 #endif
1118 #ifdef SYS_shmget
1119 syscall_table[SYS_shmget] = "shmget";
1120 #endif
1121 #ifdef SYS_shmsys
1122 syscall_table[SYS_shmsys] = "shmsys";
1123 #endif
1124 #ifdef SYS_shutdown
1125 syscall_table[SYS_shutdown] = "shutdown";
1126 #endif
1127 #ifdef SYS_sigaction
1128 syscall_table[SYS_sigaction] = "sigaction";
1129 #endif
1130 #ifdef SYS_sigaltstack
1131 syscall_table[SYS_sigaltstack] = "sigaltstack";
1132 #endif
1133 #ifdef SYS_sigaltstack
1134 syscall_table[SYS_sigaltstack] = "sigaltstack";
1135 #endif
1136 #ifdef SYS_sigblock
1137 syscall_table[SYS_sigblock] = "sigblock";
1138 #endif
1139 #ifdef SYS_signal
1140 syscall_table[SYS_signal] = "signal";
1141 #endif
1142 #ifdef SYS_signotify
1143 syscall_table[SYS_signotify] = "signotify";
1144 #endif
1145 #ifdef SYS_signotifywait
1146 syscall_table[SYS_signotifywait] = "signotifywait";
1147 #endif
1148 #ifdef SYS_sigpending
1149 syscall_table[SYS_sigpending] = "sigpending";
1150 #endif
1151 #ifdef SYS_sigpoll
1152 syscall_table[SYS_sigpoll] = "sigpoll";
1153 #endif
1154 #ifdef SYS_sigprocmask
1155 syscall_table[SYS_sigprocmask] = "sigprocmask";
1156 #endif
1157 #ifdef SYS_sigqueue
1158 syscall_table[SYS_sigqueue] = "sigqueue";
1159 #endif
1160 #ifdef SYS_sigreturn
1161 syscall_table[SYS_sigreturn] = "sigreturn";
1162 #endif
1163 #ifdef SYS_sigsendset
1164 syscall_table[SYS_sigsendset] = "sigsendset";
1165 #endif
1166 #ifdef SYS_sigsendsys
1167 syscall_table[SYS_sigsendsys] = "sigsendsys";
1168 #endif
1169 #ifdef SYS_sigsetmask
1170 syscall_table[SYS_sigsetmask] = "sigsetmask";
1171 #endif
1172 #ifdef SYS_sigstack
1173 syscall_table[SYS_sigstack] = "sigstack";
1174 #endif
1175 #ifdef SYS_sigsuspend
1176 syscall_table[SYS_sigsuspend] = "sigsuspend";
1177 #endif
1178 #ifdef SYS_sigvec
1179 syscall_table[SYS_sigvec] = "sigvec";
1180 #endif
1181 #ifdef SYS_sigwait
1182 syscall_table[SYS_sigwait] = "sigwait";
1183 #endif
1184 #ifdef SYS_sigwaitprim
1185 syscall_table[SYS_sigwaitprim] = "sigwaitprim";
1186 #endif
1187 #ifdef SYS_sleep
1188 syscall_table[SYS_sleep] = "sleep";
1189 #endif
1190 #ifdef SYS_so_socket
1191 syscall_table[SYS_so_socket] = "so_socket";
1192 #endif
1193 #ifdef SYS_so_socketpair
1194 syscall_table[SYS_so_socketpair] = "so_socketpair";
1195 #endif
1196 #ifdef SYS_sockconfig
1197 syscall_table[SYS_sockconfig] = "sockconfig";
1198 #endif
1199 #ifdef SYS_socket
1200 syscall_table[SYS_socket] = "socket";
1201 #endif
1202 #ifdef SYS_socketpair
1203 syscall_table[SYS_socketpair] = "socketpair";
1204 #endif
1205 #ifdef SYS_sproc
1206 syscall_table[SYS_sproc] = "sproc";
1207 #endif
1208 #ifdef SYS_sprocsp
1209 syscall_table[SYS_sprocsp] = "sprocsp";
1210 #endif
1211 #ifdef SYS_sstk
1212 syscall_table[SYS_sstk] = "sstk";
1213 #endif
1214 #ifdef SYS_stat
1215 syscall_table[SYS_stat] = "stat";
1216 #endif
1217 #ifdef SYS_stat64
1218 syscall_table[SYS_stat64] = "stat64";
1219 #endif
1220 #ifdef SYS_statfs
1221 syscall_table[SYS_statfs] = "statfs";
1222 #endif
1223 #ifdef SYS_statvfs
1224 syscall_table[SYS_statvfs] = "statvfs";
1225 #endif
1226 #ifdef SYS_statvfs64
1227 syscall_table[SYS_statvfs64] = "statvfs64";
1228 #endif
1229 #ifdef SYS_stime
1230 syscall_table[SYS_stime] = "stime";
1231 #endif
1232 #ifdef SYS_stty
1233 syscall_table[SYS_stty] = "stty";
1234 #endif
1235 #ifdef SYS_subsys_info
1236 syscall_table[SYS_subsys_info] = "subsys_info";
1237 #endif
1238 #ifdef SYS_swapctl
1239 syscall_table[SYS_swapctl] = "swapctl";
1240 #endif
1241 #ifdef SYS_swapon
1242 syscall_table[SYS_swapon] = "swapon";
1243 #endif
1244 #ifdef SYS_symlink
1245 syscall_table[SYS_symlink] = "symlink";
1246 #endif
1247 #ifdef SYS_sync
1248 syscall_table[SYS_sync] = "sync";
1249 #endif
1250 #ifdef SYS_sys3b
1251 syscall_table[SYS_sys3b] = "sys3b";
1252 #endif
1253 #ifdef SYS_syscall
1254 syscall_table[SYS_syscall] = "syscall";
1255 #endif
1256 #ifdef SYS_sysconfig
1257 syscall_table[SYS_sysconfig] = "sysconfig";
1258 #endif
1259 #ifdef SYS_sysfs
1260 syscall_table[SYS_sysfs] = "sysfs";
1261 #endif
1262 #ifdef SYS_sysi86
1263 syscall_table[SYS_sysi86] = "sysi86";
1264 #endif
1265 #ifdef SYS_sysinfo
1266 syscall_table[SYS_sysinfo] = "sysinfo";
1267 #endif
1268 #ifdef SYS_sysmips
1269 syscall_table[SYS_sysmips] = "sysmips";
1270 #endif
1271 #ifdef SYS_syssun
1272 syscall_table[SYS_syssun] = "syssun";
1273 #endif
1274 #ifdef SYS_systeminfo
1275 syscall_table[SYS_systeminfo] = "systeminfo";
1276 #endif
1277 #ifdef SYS_table
1278 syscall_table[SYS_table] = "table";
1279 #endif
1280 #ifdef SYS_time
1281 syscall_table[SYS_time] = "time";
1282 #endif
1283 #ifdef SYS_timedwait
1284 syscall_table[SYS_timedwait] = "timedwait";
1285 #endif
1286 #ifdef SYS_timer_create
1287 syscall_table[SYS_timer_create] = "timer_create";
1288 #endif
1289 #ifdef SYS_timer_delete
1290 syscall_table[SYS_timer_delete] = "timer_delete";
1291 #endif
1292 #ifdef SYS_timer_getoverrun
1293 syscall_table[SYS_timer_getoverrun] = "timer_getoverrun";
1294 #endif
1295 #ifdef SYS_timer_gettime
1296 syscall_table[SYS_timer_gettime] = "timer_gettime";
1297 #endif
1298 #ifdef SYS_timer_settime
1299 syscall_table[SYS_timer_settime] = "timer_settime";
1300 #endif
1301 #ifdef SYS_times
1302 syscall_table[SYS_times] = "times";
1303 #endif
1304 #ifdef SYS_truncate
1305 syscall_table[SYS_truncate] = "truncate";
1306 #endif
1307 #ifdef SYS_truncate64
1308 syscall_table[SYS_truncate64] = "truncate64";
1309 #endif
1310 #ifdef SYS_tsolsys
1311 syscall_table[SYS_tsolsys] = "tsolsys";
1312 #endif
1313 #ifdef SYS_uadmin
1314 syscall_table[SYS_uadmin] = "uadmin";
1315 #endif
1316 #ifdef SYS_ulimit
1317 syscall_table[SYS_ulimit] = "ulimit";
1318 #endif
1319 #ifdef SYS_umask
1320 syscall_table[SYS_umask] = "umask";
1321 #endif
1322 #ifdef SYS_umount
1323 syscall_table[SYS_umount] = "umount";
1324 #endif
1325 #ifdef SYS_uname
1326 syscall_table[SYS_uname] = "uname";
1327 #endif
1328 #ifdef SYS_unblock
1329 syscall_table[SYS_unblock] = "unblock";
1330 #endif
1331 #ifdef SYS_unlink
1332 syscall_table[SYS_unlink] = "unlink";
1333 #endif
1334 #ifdef SYS_unmount
1335 syscall_table[SYS_unmount] = "unmount";
1336 #endif
1337 #ifdef SYS_usleep_thread
1338 syscall_table[SYS_usleep_thread] = "usleep_thread";
1339 #endif
1340 #ifdef SYS_uswitch
1341 syscall_table[SYS_uswitch] = "uswitch";
1342 #endif
1343 #ifdef SYS_utc_adjtime
1344 syscall_table[SYS_utc_adjtime] = "utc_adjtime";
1345 #endif
1346 #ifdef SYS_utc_gettime
1347 syscall_table[SYS_utc_gettime] = "utc_gettime";
1348 #endif
1349 #ifdef SYS_utime
1350 syscall_table[SYS_utime] = "utime";
1351 #endif
1352 #ifdef SYS_utimes
1353 syscall_table[SYS_utimes] = "utimes";
1354 #endif
1355 #ifdef SYS_utssys
1356 syscall_table[SYS_utssys] = "utssys";
1357 #endif
1358 #ifdef SYS_vfork
1359 syscall_table[SYS_vfork] = "vfork";
1360 #endif
1361 #ifdef SYS_vhangup
1362 syscall_table[SYS_vhangup] = "vhangup";
1363 #endif
1364 #ifdef SYS_vtrace
1365 syscall_table[SYS_vtrace] = "vtrace";
1366 #endif
1367 #ifdef SYS_wait
1368 syscall_table[SYS_wait] = "wait";
1369 #endif
1370 #ifdef SYS_waitid
1371 syscall_table[SYS_waitid] = "waitid";
1372 #endif
1373 #ifdef SYS_waitsys
1374 syscall_table[SYS_waitsys] = "waitsys";
1375 #endif
1376 #ifdef SYS_write
1377 syscall_table[SYS_write] = "write";
1378 #endif
1379 #ifdef SYS_writev
1380 syscall_table[SYS_writev] = "writev";
1381 #endif
1382 #ifdef SYS_xenix
1383 syscall_table[SYS_xenix] = "xenix";
1384 #endif
1385 #ifdef SYS_xmknod
1386 syscall_table[SYS_xmknod] = "xmknod";
1387 #endif
1388 #ifdef SYS_xstat
1389 syscall_table[SYS_xstat] = "xstat";
1390 #endif
1391 #ifdef SYS_yield
1392 syscall_table[SYS_yield] = "yield";
1393 #endif
1394 }
1395
1396 /* Prettyprint syscall NUM. */
1397
1398 void
1399 proc_prettyfprint_syscall (FILE *file, int num, int verbose)
1400 {
1401 if (syscall_table[num])
1402 fprintf (file, "SYS_%s ", syscall_table[num]);
1403 else
1404 fprintf (file, "<Unknown syscall %d> ", num);
1405 }
1406
1407 void
1408 proc_prettyprint_syscall (int num, int verbose)
1409 {
1410 proc_prettyfprint_syscall (stdout, num, verbose);
1411 }
1412
1413 /* Prettyprint all syscalls in SYSSET. */
1414
1415 void
1416 proc_prettyfprint_syscalls (FILE *file, sysset_t *sysset, int verbose)
1417 {
1418 int i;
1419
1420 for (i = 0; i < MAX_SYSCALLS; i++)
1421 if (prismember (sysset, i))
1422 {
1423 proc_prettyfprint_syscall (file, i, verbose);
1424 }
1425 fprintf (file, "\n");
1426 }
1427
1428 void
1429 proc_prettyprint_syscalls (sysset_t *sysset, int verbose)
1430 {
1431 proc_prettyfprint_syscalls (stdout, sysset, verbose);
1432 }
1433 \f
1434 /* Prettyprint signals. */
1435
1436 /* Signal translation table. */
1437
1438 static struct trans signal_table[] =
1439 {
1440 { 0, "<no signal>", "no signal" },
1441 #ifdef SIGHUP
1442 { SIGHUP, "SIGHUP", "Hangup" },
1443 #endif
1444 #ifdef SIGINT
1445 { SIGINT, "SIGINT", "Interrupt (rubout)" },
1446 #endif
1447 #ifdef SIGQUIT
1448 { SIGQUIT, "SIGQUIT", "Quit (ASCII FS)" },
1449 #endif
1450 #ifdef SIGILL
1451 { SIGILL, "SIGILL", "Illegal instruction" }, /* not reset when caught */
1452 #endif
1453 #ifdef SIGTRAP
1454 { SIGTRAP, "SIGTRAP", "Trace trap" }, /* not reset when caught */
1455 #endif
1456 #ifdef SIGABRT
1457 { SIGABRT, "SIGABRT", "used by abort()" }, /* replaces SIGIOT */
1458 #endif
1459 #ifdef SIGIOT
1460 { SIGIOT, "SIGIOT", "IOT instruction" },
1461 #endif
1462 #ifdef SIGEMT
1463 { SIGEMT, "SIGEMT", "EMT instruction" },
1464 #endif
1465 #ifdef SIGFPE
1466 { SIGFPE, "SIGFPE", "Floating point exception" },
1467 #endif
1468 #ifdef SIGKILL
1469 { SIGKILL, "SIGKILL", "Kill" }, /* Solaris: cannot be caught/ignored */
1470 #endif
1471 #ifdef SIGBUS
1472 { SIGBUS, "SIGBUS", "Bus error" },
1473 #endif
1474 #ifdef SIGSEGV
1475 { SIGSEGV, "SIGSEGV", "Segmentation violation" },
1476 #endif
1477 #ifdef SIGSYS
1478 { SIGSYS, "SIGSYS", "Bad argument to system call" },
1479 #endif
1480 #ifdef SIGPIPE
1481 { SIGPIPE, "SIGPIPE", "Write to pipe with no one to read it" },
1482 #endif
1483 #ifdef SIGALRM
1484 { SIGALRM, "SIGALRM", "Alarm clock" },
1485 #endif
1486 #ifdef SIGTERM
1487 { SIGTERM, "SIGTERM", "Software termination signal from kill" },
1488 #endif
1489 #ifdef SIGUSR1
1490 { SIGUSR1, "SIGUSR1", "User defined signal 1" },
1491 #endif
1492 #ifdef SIGUSR2
1493 { SIGUSR2, "SIGUSR2", "User defined signal 2" },
1494 #endif
1495 #ifdef SIGCHLD
1496 { SIGCHLD, "SIGCHLD", "Child status changed" }, /* Posix version */
1497 #endif
1498 #ifdef SIGCLD
1499 { SIGCLD, "SIGCLD", "Child status changed" }, /* Solaris version */
1500 #endif
1501 #ifdef SIGPWR
1502 { SIGPWR, "SIGPWR", "Power-fail restart" },
1503 #endif
1504 #ifdef SIGWINCH
1505 { SIGWINCH, "SIGWINCH", "Window size change" },
1506 #endif
1507 #ifdef SIGURG
1508 { SIGURG, "SIGURG", "Urgent socket condition" },
1509 #endif
1510 #ifdef SIGPOLL
1511 { SIGPOLL, "SIGPOLL", "Pollable event" },
1512 #endif
1513 #ifdef SIGIO
1514 { SIGIO, "SIGIO", "Socket I/O possible" }, /* alias for SIGPOLL */
1515 #endif
1516 #ifdef SIGSTOP
1517 { SIGSTOP, "SIGSTOP", "Stop, not from tty" }, /* cannot be caught or ignored */
1518 #endif
1519 #ifdef SIGTSTP
1520 { SIGTSTP, "SIGTSTP", "User stop from tty" },
1521 #endif
1522 #ifdef SIGCONT
1523 { SIGCONT, "SIGCONT", "Stopped process has been continued" },
1524 #endif
1525 #ifdef SIGTTIN
1526 { SIGTTIN, "SIGTTIN", "Background tty read attempted" },
1527 #endif
1528 #ifdef SIGTTOU
1529 { SIGTTOU, "SIGTTOU", "Background tty write attempted" },
1530 #endif
1531 #ifdef SIGVTALRM
1532 { SIGVTALRM, "SIGVTALRM", "Virtual timer expired" },
1533 #endif
1534 #ifdef SIGPROF
1535 { SIGPROF, "SIGPROF", "Profiling timer expired" },
1536 #endif
1537 #ifdef SIGXCPU
1538 { SIGXCPU, "SIGXCPU", "Exceeded CPU limit" },
1539 #endif
1540 #ifdef SIGXFSZ
1541 { SIGXFSZ, "SIGXFSZ", "Exceeded file size limit" },
1542 #endif
1543 #ifdef SIGWAITING
1544 { SIGWAITING, "SIGWAITING", "Process's LWPs are blocked" },
1545 #endif
1546 #ifdef SIGLWP
1547 { SIGLWP, "SIGLWP", "Used by thread library" },
1548 #endif
1549 #ifdef SIGFREEZE
1550 { SIGFREEZE, "SIGFREEZE", "Used by CPR" },
1551 #endif
1552 #ifdef SIGTHAW
1553 { SIGTHAW, "SIGTHAW", "Used by CPR" },
1554 #endif
1555 #ifdef SIGCANCEL
1556 { SIGCANCEL, "SIGCANCEL", "Used by libthread" },
1557 #endif
1558 #ifdef SIGLOST
1559 { SIGLOST, "SIGLOST", "Resource lost" },
1560 #endif
1561 #ifdef SIG32
1562 { SIG32, "SIG32", "Reserved for kernel usage (Irix)" },
1563 #endif
1564 #ifdef SIGPTINTR
1565 { SIGPTINTR, "SIGPTINTR", "Posix 1003.1b" },
1566 #endif
1567 #ifdef SIGTRESCHED
1568 { SIGTRESCHED, "SIGTRESCHED", "Posix 1003.1b" },
1569 #endif
1570 #ifdef SIGINFO
1571 { SIGINFO, "SIGINFO", "Information request" },
1572 #endif
1573 #ifdef SIGRESV
1574 { SIGRESV, "SIGRESV", "Reserved by Digital for future use" },
1575 #endif
1576 #ifdef SIGAIO
1577 { SIGAIO, "SIGAIO", "Asynchronous I/O signal" },
1578 #endif
1579
1580 /* FIXME: add real-time signals. */
1581 };
1582
1583 /* Prettyprint signal number SIGNO. */
1584
1585 void
1586 proc_prettyfprint_signal (FILE *file, int signo, int verbose)
1587 {
1588 int i;
1589
1590 for (i = 0; i < sizeof (signal_table) / sizeof (signal_table[0]); i++)
1591 if (signo == signal_table[i].value)
1592 {
1593 fprintf (file, "%s", signal_table[i].name);
1594 if (verbose)
1595 fprintf (file, ": %s\n", signal_table[i].desc);
1596 else
1597 fprintf (file, " ");
1598 return;
1599 }
1600 fprintf (file, "Unknown signal %d%c", signo, verbose ? '\n' : ' ');
1601 }
1602
1603 void
1604 proc_prettyprint_signal (int signo, int verbose)
1605 {
1606 proc_prettyfprint_signal (stdout, signo, verbose);
1607 }
1608
1609 /* Prettyprint all signals in SIGSET. */
1610
1611 void
1612 proc_prettyfprint_signalset (FILE *file, sigset_t *sigset, int verbose)
1613 {
1614 int i;
1615
1616 /* Loop over all signal numbers from 0 to NSIG, using them as the
1617 index to prismember. The signal table had better not contain
1618 aliases, for if it does they will both be printed. */
1619
1620 for (i = 0; i < NSIG; i++)
1621 if (prismember (sigset, i))
1622 proc_prettyfprint_signal (file, i, verbose);
1623
1624 if (!verbose)
1625 fprintf (file, "\n");
1626 }
1627
1628 void
1629 proc_prettyprint_signalset (sigset_t *sigset, int verbose)
1630 {
1631 proc_prettyfprint_signalset (stdout, sigset, verbose);
1632 }
1633 \f
1634
1635 /* Prettyprint faults. */
1636
1637 /* Fault translation table. */
1638
1639 static struct trans fault_table[] =
1640 {
1641 #ifdef FLTILL
1642 { FLTILL, "FLTILL", "Illegal instruction" },
1643 #endif
1644 #ifdef FLTPRIV
1645 { FLTPRIV, "FLTPRIV", "Privileged instruction" },
1646 #endif
1647 #ifdef FLTBPT
1648 { FLTBPT, "FLTBPT", "Breakpoint trap" },
1649 #endif
1650 #ifdef FLTTRACE
1651 { FLTTRACE, "FLTTRACE", "Trace trap" },
1652 #endif
1653 #ifdef FLTACCESS
1654 { FLTACCESS, "FLTACCESS", "Memory access fault" },
1655 #endif
1656 #ifdef FLTBOUNDS
1657 { FLTBOUNDS, "FLTBOUNDS", "Memory bounds violation" },
1658 #endif
1659 #ifdef FLTIOVF
1660 { FLTIOVF, "FLTIOVF", "Integer overflow" },
1661 #endif
1662 #ifdef FLTIZDIV
1663 { FLTIZDIV, "FLTIZDIV", "Integer zero divide" },
1664 #endif
1665 #ifdef FLTFPE
1666 { FLTFPE, "FLTFPE", "Floating-point exception" },
1667 #endif
1668 #ifdef FLTSTACK
1669 { FLTSTACK, "FLTSTACK", "Unrecoverable stack fault" },
1670 #endif
1671 #ifdef FLTPAGE
1672 { FLTPAGE, "FLTPAGE", "Recoverable page fault" },
1673 #endif
1674 #ifdef FLTPCINVAL
1675 { FLTPCINVAL, "FLTPCINVAL", "Invalid PC exception" },
1676 #endif
1677 #ifdef FLTWATCH
1678 { FLTWATCH, "FLTWATCH", "User watchpoint" },
1679 #endif
1680 #ifdef FLTKWATCH
1681 { FLTKWATCH, "FLTKWATCH", "Kernel watchpoint" },
1682 #endif
1683 #ifdef FLTSCWATCH
1684 { FLTSCWATCH, "FLTSCWATCH", "Hit a store conditional on a watched page" },
1685 #endif
1686 };
1687
1688 /* Work horse. Accepts an index into the fault table, prints it
1689 pretty. */
1690
1691 static void
1692 prettyfprint_faulttable_entry (FILE *file, int i, int verbose)
1693 {
1694 fprintf (file, "%s", fault_table[i].name);
1695 if (verbose)
1696 fprintf (file, ": %s\n", fault_table[i].desc);
1697 else
1698 fprintf (file, " ");
1699 }
1700
1701 /* Prettyprint hardware fault number FAULTNO. */
1702
1703 void
1704 proc_prettyfprint_fault (FILE *file, int faultno, int verbose)
1705 {
1706 int i;
1707
1708 for (i = 0; i < ARRAY_SIZE (fault_table); i++)
1709 if (faultno == fault_table[i].value)
1710 {
1711 prettyfprint_faulttable_entry (file, i, verbose);
1712 return;
1713 }
1714
1715 fprintf (file, "Unknown hardware fault %d%c",
1716 faultno, verbose ? '\n' : ' ');
1717 }
1718
1719 void
1720 proc_prettyprint_fault (int faultno, int verbose)
1721 {
1722 proc_prettyfprint_fault (stdout, faultno, verbose);
1723 }
1724
1725 /* Prettyprint all faults in FLTSET. */
1726
1727 void
1728 proc_prettyfprint_faultset (FILE *file, fltset_t *fltset, int verbose)
1729 {
1730 int i;
1731
1732 /* Loop through the fault table, using the value field as the index
1733 to prismember. The fault table had better not contain aliases,
1734 for if it does they will both be printed. */
1735
1736 for (i = 0; i < ARRAY_SIZE (fault_table); i++)
1737 if (prismember (fltset, fault_table[i].value))
1738 prettyfprint_faulttable_entry (file, i, verbose);
1739
1740 if (!verbose)
1741 fprintf (file, "\n");
1742 }
1743
1744 void
1745 proc_prettyprint_faultset (fltset_t *fltset, int verbose)
1746 {
1747 proc_prettyfprint_faultset (stdout, fltset, verbose);
1748 }
1749
1750 /* TODO: actions, holds... */
1751
1752 void
1753 proc_prettyprint_actionset (struct sigaction *actions, int verbose)
1754 {
1755 }
1756 \f
1757
1758 /* Provide a prototype to silence -Wmissing-prototypes. */
1759 void _initialize_proc_events (void);
1760
1761 void
1762 _initialize_proc_events (void)
1763 {
1764 init_syscall_table ();
1765 }