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