/* Machine-independent support for SVR4 /proc (process file system)

   Copyright (C) 1999-2016 Free Software Foundation, Inc.

   Written by Michael Snyder at Cygnus Solutions.
   Based on work by Fred Fish, Stu Grossman, Geoff Noer, and others.

   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3 of the License, or
   (at your option) any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */

/* Pretty-print "events of interest".

   This module includes pretty-print routines for:
   * faults (hardware exceptions)
   * signals (software interrupts)
   * syscalls

   FIXME: At present, the syscall translation table must be
   initialized, which is not true of the other translation tables.  */

#include "defs.h"

#ifdef NEW_PROC_API
#define _STRUCTURED_PROC 1
#endif

#include <sys/types.h>
#include <sys/procfs.h>
#ifdef HAVE_SYS_SYSCALL_H
#include <sys/syscall.h>
#endif
#ifdef HAVE_SYS_FAULT_H
#include <sys/fault.h>
#endif

#include "proc-utils.h"

/* Much of the information used in the /proc interface, particularly
   for printing status information, is kept as tables of structures of
   the following form.  These tables can be used to map numeric values
   to their symbolic names and to a string that describes their
   specific use.  */

struct trans
{
  int value;                    /* The numeric value.  */
  char *name;                   /* The equivalent symbolic value.  */
  char *desc;                   /* Short description of value.  */
};


/* Pretty print syscalls.  */

/* Syscall translation table.  */

#define MAX_SYSCALLS 262	/* Pretty arbitrary.  */
static char *syscall_table[MAX_SYSCALLS];

static void
init_syscall_table (void)
{
#ifdef SYS_BSD_getime
  syscall_table[SYS_BSD_getime] = "BSD_getime";
#endif
#ifdef SYS_BSDgetpgrp
  syscall_table[SYS_BSDgetpgrp] = "BSDgetpgrp";
#endif
#ifdef SYS_BSDsetpgrp
  syscall_table[SYS_BSDsetpgrp] = "BSDsetpgrp";
#endif
#ifdef SYS_acancel
  syscall_table[SYS_acancel] = "acancel";
#endif
#ifdef SYS_accept
  syscall_table[SYS_accept] = "accept";
#endif
#ifdef SYS_access
  syscall_table[SYS_access] = "access";
#endif
#ifdef SYS_acct
  syscall_table[SYS_acct] = "acct";
#endif
#ifdef SYS_acl
  syscall_table[SYS_acl] = "acl";
#endif
#ifdef SYS_aclipc
  syscall_table[SYS_aclipc] = "aclipc";
#endif
#ifdef SYS_adjtime
  syscall_table[SYS_adjtime] = "adjtime";
#endif
#ifdef SYS_afs_syscall
  syscall_table[SYS_afs_syscall] = "afs_syscall";
#endif
#ifdef SYS_alarm
  syscall_table[SYS_alarm] = "alarm";
#endif
#ifdef SYS_alt_plock
  syscall_table[SYS_alt_plock] = "alt_plock";
#endif
#ifdef SYS_alt_sigpending
  syscall_table[SYS_alt_sigpending] = "alt_sigpending";
#endif
#ifdef SYS_async
  syscall_table[SYS_async] = "async";
#endif
#ifdef SYS_async_daemon
  syscall_table[SYS_async_daemon] = "async_daemon";
#endif
#ifdef SYS_audcntl
  syscall_table[SYS_audcntl] = "audcntl";
#endif
#ifdef SYS_audgen
  syscall_table[SYS_audgen] = "audgen";
#endif
#ifdef SYS_auditbuf
  syscall_table[SYS_auditbuf] = "auditbuf";
#endif
#ifdef SYS_auditctl
  syscall_table[SYS_auditctl] = "auditctl";
#endif
#ifdef SYS_auditdmp
  syscall_table[SYS_auditdmp] = "auditdmp";
#endif
#ifdef SYS_auditevt
  syscall_table[SYS_auditevt] = "auditevt";
#endif
#ifdef SYS_auditlog
  syscall_table[SYS_auditlog] = "auditlog";
#endif
#ifdef SYS_auditsys
  syscall_table[SYS_auditsys] = "auditsys";
#endif
#ifdef SYS_bind
  syscall_table[SYS_bind] = "bind";
#endif
#ifdef SYS_block
  syscall_table[SYS_block] = "block";
#endif
#ifdef SYS_brk
  syscall_table[SYS_brk] = "brk";
#endif
#ifdef SYS_cachectl
  syscall_table[SYS_cachectl] = "cachectl";
#endif
#ifdef SYS_cacheflush
  syscall_table[SYS_cacheflush] = "cacheflush";
#endif
#ifdef SYS_cancelblock
  syscall_table[SYS_cancelblock] = "cancelblock";
#endif
#ifdef SYS_cg_bind
  syscall_table[SYS_cg_bind] = "cg_bind";
#endif
#ifdef SYS_cg_current
  syscall_table[SYS_cg_current] = "cg_current";
#endif
#ifdef SYS_cg_ids
  syscall_table[SYS_cg_ids] = "cg_ids";
#endif
#ifdef SYS_cg_info
  syscall_table[SYS_cg_info] = "cg_info";
#endif
#ifdef SYS_cg_memloc
  syscall_table[SYS_cg_memloc] = "cg_memloc";
#endif
#ifdef SYS_cg_processors
  syscall_table[SYS_cg_processors] = "cg_processors";
#endif
#ifdef SYS_chdir
  syscall_table[SYS_chdir] = "chdir";
#endif
#ifdef SYS_chflags
  syscall_table[SYS_chflags] = "chflags";
#endif
#ifdef SYS_chmod
  syscall_table[SYS_chmod] = "chmod";
#endif
#ifdef SYS_chown
  syscall_table[SYS_chown] = "chown";
#endif
#ifdef SYS_chroot
  syscall_table[SYS_chroot] = "chroot";
#endif
#ifdef SYS_clocal
  syscall_table[SYS_clocal] = "clocal";
#endif
#ifdef SYS_clock_getres
  syscall_table[SYS_clock_getres] = "clock_getres";
#endif
#ifdef SYS_clock_gettime
  syscall_table[SYS_clock_gettime] = "clock_gettime";
#endif
#ifdef SYS_clock_settime
  syscall_table[SYS_clock_settime] = "clock_settime";
#endif
#ifdef SYS_close
  syscall_table[SYS_close] = "close";
#endif
#ifdef SYS_connect
  syscall_table[SYS_connect] = "connect";
#endif
#ifdef SYS_context
  syscall_table[SYS_context] = "context";
#endif
#ifdef SYS_creat
  syscall_table[SYS_creat] = "creat";
#endif
#ifdef SYS_creat64
  syscall_table[SYS_creat64] = "creat64";
#endif
#ifdef SYS_devstat
  syscall_table[SYS_devstat] = "devstat";
#endif
#ifdef SYS_dmi
  syscall_table[SYS_dmi] = "dmi";
#endif
#ifdef SYS_door
  syscall_table[SYS_door] = "door";
#endif
#ifdef SYS_dshmsys
  syscall_table[SYS_dshmsys] = "dshmsys";
#endif
#ifdef SYS_dup
  syscall_table[SYS_dup] = "dup";
#endif
#ifdef SYS_dup2
  syscall_table[SYS_dup2] = "dup2";
#endif
#ifdef SYS_evsys
  syscall_table[SYS_evsys] = "evsys";
#endif
#ifdef SYS_evtrapret
  syscall_table[SYS_evtrapret] = "evtrapret";
#endif
#ifdef SYS_exec
  syscall_table[SYS_exec] = "exec";
#endif
#ifdef SYS_exec_with_loader
  syscall_table[SYS_exec_with_loader] = "exec_with_loader";
#endif
#ifdef SYS_execv
  syscall_table[SYS_execv] = "execv";
#endif
#ifdef SYS_execve
  syscall_table[SYS_execve] = "execve";
#endif
#ifdef SYS_exit
  syscall_table[SYS_exit] = "exit";
#endif
#ifdef SYS_exportfs
  syscall_table[SYS_exportfs] = "exportfs";
#endif
#ifdef SYS_facl
  syscall_table[SYS_facl] = "facl";
#endif
#ifdef SYS_fchdir
  syscall_table[SYS_fchdir] = "fchdir";
#endif
#ifdef SYS_fchflags
  syscall_table[SYS_fchflags] = "fchflags";
#endif
#ifdef SYS_fchmod
  syscall_table[SYS_fchmod] = "fchmod";
#endif
#ifdef SYS_fchown
  syscall_table[SYS_fchown] = "fchown";
#endif
#ifdef SYS_fchroot
  syscall_table[SYS_fchroot] = "fchroot";
#endif
#ifdef SYS_fcntl
  syscall_table[SYS_fcntl] = "fcntl";
#endif
#ifdef SYS_fdatasync
  syscall_table[SYS_fdatasync] = "fdatasync";
#endif
#ifdef SYS_fdevstat
  syscall_table[SYS_fdevstat] = "fdevstat";
#endif
#ifdef SYS_fdsync
  syscall_table[SYS_fdsync] = "fdsync";
#endif
#ifdef SYS_filepriv
  syscall_table[SYS_filepriv] = "filepriv";
#endif
#ifdef SYS_flock
  syscall_table[SYS_flock] = "flock";
#endif
#ifdef SYS_flvlfile
  syscall_table[SYS_flvlfile] = "flvlfile";
#endif
#ifdef SYS_fork
  syscall_table[SYS_fork] = "fork";
#endif
#ifdef SYS_fork1
  syscall_table[SYS_fork1] = "fork1";
#endif
#ifdef SYS_forkall
  syscall_table[SYS_forkall] = "forkall";
#endif
#ifdef SYS_fpathconf
  syscall_table[SYS_fpathconf] = "fpathconf";
#endif
#ifdef SYS_fstat
  syscall_table[SYS_fstat] = "fstat";
#endif
#ifdef SYS_fstat64
  syscall_table[SYS_fstat64] = "fstat64";
#endif
#ifdef SYS_fstatfs
  syscall_table[SYS_fstatfs] = "fstatfs";
#endif
#ifdef SYS_fstatvfs
  syscall_table[SYS_fstatvfs] = "fstatvfs";
#endif
#ifdef SYS_fstatvfs64
  syscall_table[SYS_fstatvfs64] = "fstatvfs64";
#endif
#ifdef SYS_fsync
  syscall_table[SYS_fsync] = "fsync";
#endif
#ifdef SYS_ftruncate
  syscall_table[SYS_ftruncate] = "ftruncate";
#endif
#ifdef SYS_ftruncate64
  syscall_table[SYS_ftruncate64] = "ftruncate64";
#endif
#ifdef SYS_fuser
  syscall_table[SYS_fuser] = "fuser";
#endif
#ifdef SYS_fxstat
  syscall_table[SYS_fxstat] = "fxstat";
#endif
#ifdef SYS_get_sysinfo
  syscall_table[SYS_get_sysinfo] = "get_sysinfo";
#endif
#ifdef SYS_getaddressconf
  syscall_table[SYS_getaddressconf] = "getaddressconf";
#endif
#ifdef SYS_getcontext
  syscall_table[SYS_getcontext] = "getcontext";
#endif
#ifdef SYS_getdents
  syscall_table[SYS_getdents] = "getdents";
#endif
#ifdef SYS_getdents64
  syscall_table[SYS_getdents64] = "getdents64";
#endif
#ifdef SYS_getdirentries
  syscall_table[SYS_getdirentries] = "getdirentries";
#endif
#ifdef SYS_getdomainname
  syscall_table[SYS_getdomainname] = "getdomainname";
#endif
#ifdef SYS_getdtablesize
  syscall_table[SYS_getdtablesize] = "getdtablesize";
#endif
#ifdef SYS_getfh
  syscall_table[SYS_getfh] = "getfh";
#endif
#ifdef SYS_getfsstat
  syscall_table[SYS_getfsstat] = "getfsstat";
#endif
#ifdef SYS_getgid
  syscall_table[SYS_getgid] = "getgid";
#endif
#ifdef SYS_getgroups
  syscall_table[SYS_getgroups] = "getgroups";
#endif
#ifdef SYS_gethostid
  syscall_table[SYS_gethostid] = "gethostid";
#endif
#ifdef SYS_gethostname
  syscall_table[SYS_gethostname] = "gethostname";
#endif
#ifdef SYS_getitimer
  syscall_table[SYS_getitimer] = "getitimer";
#endif
#ifdef SYS_getksym
  syscall_table[SYS_getksym] = "getksym";
#endif
#ifdef SYS_getlogin
  syscall_table[SYS_getlogin] = "getlogin";
#endif
#ifdef SYS_getmnt
  syscall_table[SYS_getmnt] = "getmnt";
#endif
#ifdef SYS_getmsg
  syscall_table[SYS_getmsg] = "getmsg";
#endif
#ifdef SYS_getpagesize
  syscall_table[SYS_getpagesize] = "getpagesize";
#endif
#ifdef SYS_getpeername
  syscall_table[SYS_getpeername] = "getpeername";
#endif
#ifdef SYS_getpgid
  syscall_table[SYS_getpgid] = "getpgid";
#endif
#ifdef SYS_getpgrp
  syscall_table[SYS_getpgrp] = "getpgrp";
#endif
#ifdef SYS_getpid
  syscall_table[SYS_getpid] = "getpid";
#endif
#ifdef SYS_getpmsg
  syscall_table[SYS_getpmsg] = "getpmsg";
#endif
#ifdef SYS_getpriority
  syscall_table[SYS_getpriority] = "getpriority";
#endif
#ifdef SYS_getrlimit
  syscall_table[SYS_getrlimit] = "getrlimit";
#endif
#ifdef SYS_getrlimit64
  syscall_table[SYS_getrlimit64] = "getrlimit64";
#endif
#ifdef SYS_getrusage
  syscall_table[SYS_getrusage] = "getrusage";
#endif
#ifdef SYS_getsid
  syscall_table[SYS_getsid] = "getsid";
#endif
#ifdef SYS_getsockname
  syscall_table[SYS_getsockname] = "getsockname";
#endif
#ifdef SYS_getsockopt
  syscall_table[SYS_getsockopt] = "getsockopt";
#endif
#ifdef SYS_gettimeofday
  syscall_table[SYS_gettimeofday] = "gettimeofday";
#endif
#ifdef SYS_getuid
  syscall_table[SYS_getuid] = "getuid";
#endif
#ifdef SYS_gtty
  syscall_table[SYS_gtty] = "gtty";
#endif
#ifdef SYS_hrtsys
  syscall_table[SYS_hrtsys] = "hrtsys";
#endif
#ifdef SYS_inst_sync
  syscall_table[SYS_inst_sync] = "inst_sync";
#endif
#ifdef SYS_install_utrap
  syscall_table[SYS_install_utrap] = "install_utrap";
#endif
#ifdef SYS_invlpg
  syscall_table[SYS_invlpg] = "invlpg";
#endif
#ifdef SYS_ioctl
  syscall_table[SYS_ioctl] = "ioctl";
#endif
#ifdef SYS_kaio
  syscall_table[SYS_kaio] = "kaio";
#endif
#ifdef SYS_keyctl
  syscall_table[SYS_keyctl] = "keyctl";
#endif
#ifdef SYS_kill
  syscall_table[SYS_kill] = "kill";
#endif
#ifdef SYS_killpg
  syscall_table[SYS_killpg] = "killpg";
#endif
#ifdef SYS_kloadcall
  syscall_table[SYS_kloadcall] = "kloadcall";
#endif
#ifdef SYS_kmodcall
  syscall_table[SYS_kmodcall] = "kmodcall";
#endif
#ifdef SYS_ksigaction
  syscall_table[SYS_ksigaction] = "ksigaction";
#endif
#ifdef SYS_ksigprocmask
  syscall_table[SYS_ksigprocmask] = "ksigprocmask";
#endif
#ifdef SYS_ksigqueue
  syscall_table[SYS_ksigqueue] = "ksigqueue";
#endif
#ifdef SYS_lchown
  syscall_table[SYS_lchown] = "lchown";
#endif
#ifdef SYS_link
  syscall_table[SYS_link] = "link";
#endif
#ifdef SYS_listen
  syscall_table[SYS_listen] = "listen";
#endif
#ifdef SYS_llseek
  syscall_table[SYS_llseek] = "llseek";
#endif
#ifdef SYS_lseek
  syscall_table[SYS_lseek] = "lseek";
#endif
#ifdef SYS_lseek64
  syscall_table[SYS_lseek64] = "lseek64";
#endif
#ifdef SYS_lstat
  syscall_table[SYS_lstat] = "lstat";
#endif
#ifdef SYS_lstat64
  syscall_table[SYS_lstat64] = "lstat64";
#endif
#ifdef SYS_lvldom
  syscall_table[SYS_lvldom] = "lvldom";
#endif
#ifdef SYS_lvlequal
  syscall_table[SYS_lvlequal] = "lvlequal";
#endif
#ifdef SYS_lvlfile
  syscall_table[SYS_lvlfile] = "lvlfile";
#endif
#ifdef SYS_lvlipc
  syscall_table[SYS_lvlipc] = "lvlipc";
#endif
#ifdef SYS_lvlproc
  syscall_table[SYS_lvlproc] = "lvlproc";
#endif
#ifdef SYS_lvlvfs
  syscall_table[SYS_lvlvfs] = "lvlvfs";
#endif
#ifdef SYS_lwp_alarm
  syscall_table[SYS_lwp_alarm] = "lwp_alarm";
#endif
#ifdef SYS_lwp_cond_broadcast
  syscall_table[SYS_lwp_cond_broadcast] = "lwp_cond_broadcast";
#endif
#ifdef SYS_lwp_cond_signal
  syscall_table[SYS_lwp_cond_signal] = "lwp_cond_signal";
#endif
#ifdef SYS_lwp_cond_wait
  syscall_table[SYS_lwp_cond_wait] = "lwp_cond_wait";
#endif
#ifdef SYS_lwp_continue
  syscall_table[SYS_lwp_continue] = "lwp_continue";
#endif
#ifdef SYS_lwp_create
  syscall_table[SYS_lwp_create] = "lwp_create";
#endif
#ifdef SYS_lwp_exit
  syscall_table[SYS_lwp_exit] = "lwp_exit";
#endif
#ifdef SYS_lwp_getprivate
  syscall_table[SYS_lwp_getprivate] = "lwp_getprivate";
#endif
#ifdef SYS_lwp_info
  syscall_table[SYS_lwp_info] = "lwp_info";
#endif
#ifdef SYS_lwp_kill
  syscall_table[SYS_lwp_kill] = "lwp_kill";
#endif
#ifdef SYS_lwp_mutex_init
  syscall_table[SYS_lwp_mutex_init] = "lwp_mutex_init";
#endif
#ifdef SYS_lwp_mutex_lock
  syscall_table[SYS_lwp_mutex_lock] = "lwp_mutex_lock";
#endif
#ifdef SYS_lwp_mutex_trylock
  syscall_table[SYS_lwp_mutex_trylock] = "lwp_mutex_trylock";
#endif
#ifdef SYS_lwp_mutex_unlock
  syscall_table[SYS_lwp_mutex_unlock] = "lwp_mutex_unlock";
#endif
#ifdef SYS_lwp_private
  syscall_table[SYS_lwp_private] = "lwp_private";
#endif
#ifdef SYS_lwp_self
  syscall_table[SYS_lwp_self] = "lwp_self";
#endif
#ifdef SYS_lwp_sema_post
  syscall_table[SYS_lwp_sema_post] = "lwp_sema_post";
#endif
#ifdef SYS_lwp_sema_trywait
  syscall_table[SYS_lwp_sema_trywait] = "lwp_sema_trywait";
#endif
#ifdef SYS_lwp_sema_wait
  syscall_table[SYS_lwp_sema_wait] = "lwp_sema_wait";
#endif
#ifdef SYS_lwp_setprivate
  syscall_table[SYS_lwp_setprivate] = "lwp_setprivate";
#endif
#ifdef SYS_lwp_sigredirect
  syscall_table[SYS_lwp_sigredirect] = "lwp_sigredirect";
#endif
#ifdef SYS_lwp_suspend
  syscall_table[SYS_lwp_suspend] = "lwp_suspend";
#endif
#ifdef SYS_lwp_wait
  syscall_table[SYS_lwp_wait] = "lwp_wait";
#endif
#ifdef SYS_lxstat
  syscall_table[SYS_lxstat] = "lxstat";
#endif
#ifdef SYS_madvise
  syscall_table[SYS_madvise] = "madvise";
#endif
#ifdef SYS_memcntl
  syscall_table[SYS_memcntl] = "memcntl";
#endif
#ifdef SYS_mincore
  syscall_table[SYS_mincore] = "mincore";
#endif
#ifdef SYS_mincore
  syscall_table[SYS_mincore] = "mincore";
#endif
#ifdef SYS_mkdir
  syscall_table[SYS_mkdir] = "mkdir";
#endif
#ifdef SYS_mkmld
  syscall_table[SYS_mkmld] = "mkmld";
#endif
#ifdef SYS_mknod
  syscall_table[SYS_mknod] = "mknod";
#endif
#ifdef SYS_mldmode
  syscall_table[SYS_mldmode] = "mldmode";
#endif
#ifdef SYS_mmap
  syscall_table[SYS_mmap] = "mmap";
#endif
#ifdef SYS_mmap64
  syscall_table[SYS_mmap64] = "mmap64";
#endif
#ifdef SYS_modadm
  syscall_table[SYS_modadm] = "modadm";
#endif
#ifdef SYS_modctl
  syscall_table[SYS_modctl] = "modctl";
#endif
#ifdef SYS_modload
  syscall_table[SYS_modload] = "modload";
#endif
#ifdef SYS_modpath
  syscall_table[SYS_modpath] = "modpath";
#endif
#ifdef SYS_modstat
  syscall_table[SYS_modstat] = "modstat";
#endif
#ifdef SYS_moduload
  syscall_table[SYS_moduload] = "moduload";
#endif
#ifdef SYS_mount
  syscall_table[SYS_mount] = "mount";
#endif
#ifdef SYS_mprotect
  syscall_table[SYS_mprotect] = "mprotect";
#endif
#ifdef SYS_mremap
  syscall_table[SYS_mremap] = "mremap";
#endif
#ifdef SYS_msfs_syscall
  syscall_table[SYS_msfs_syscall] = "msfs_syscall";
#endif
#ifdef SYS_msgctl
  syscall_table[SYS_msgctl] = "msgctl";
#endif
#ifdef SYS_msgget
  syscall_table[SYS_msgget] = "msgget";
#endif
#ifdef SYS_msgrcv
  syscall_table[SYS_msgrcv] = "msgrcv";
#endif
#ifdef SYS_msgsnd
  syscall_table[SYS_msgsnd] = "msgsnd";
#endif
#ifdef SYS_msgsys
  syscall_table[SYS_msgsys] = "msgsys";
#endif
#ifdef SYS_msleep
  syscall_table[SYS_msleep] = "msleep";
#endif
#ifdef SYS_msync
  syscall_table[SYS_msync] = "msync";
#endif
#ifdef SYS_munmap
  syscall_table[SYS_munmap] = "munmap";
#endif
#ifdef SYS_mvalid
  syscall_table[SYS_mvalid] = "mvalid";
#endif
#ifdef SYS_mwakeup
  syscall_table[SYS_mwakeup] = "mwakeup";
#endif
#ifdef SYS_naccept
  syscall_table[SYS_naccept] = "naccept";
#endif
#ifdef SYS_nanosleep
  syscall_table[SYS_nanosleep] = "nanosleep";
#endif
#ifdef SYS_nfssvc
  syscall_table[SYS_nfssvc] = "nfssvc";
#endif
#ifdef SYS_nfssys
  syscall_table[SYS_nfssys] = "nfssys";
#endif
#ifdef SYS_ngetpeername
  syscall_table[SYS_ngetpeername] = "ngetpeername";
#endif
#ifdef SYS_ngetsockname
  syscall_table[SYS_ngetsockname] = "ngetsockname";
#endif
#ifdef SYS_nice
  syscall_table[SYS_nice] = "nice";
#endif
#ifdef SYS_nrecvfrom
  syscall_table[SYS_nrecvfrom] = "nrecvfrom";
#endif
#ifdef SYS_nrecvmsg
  syscall_table[SYS_nrecvmsg] = "nrecvmsg";
#endif
#ifdef SYS_nsendmsg
  syscall_table[SYS_nsendmsg] = "nsendmsg";
#endif
#ifdef SYS_ntp_adjtime
  syscall_table[SYS_ntp_adjtime] = "ntp_adjtime";
#endif
#ifdef SYS_ntp_gettime
  syscall_table[SYS_ntp_gettime] = "ntp_gettime";
#endif
#ifdef SYS_nuname
  syscall_table[SYS_nuname] = "nuname";
#endif
#ifdef SYS_obreak
  syscall_table[SYS_obreak] = "obreak";
#endif
#ifdef SYS_old_accept
  syscall_table[SYS_old_accept] = "old_accept";
#endif
#ifdef SYS_old_fstat
  syscall_table[SYS_old_fstat] = "old_fstat";
#endif
#ifdef SYS_old_getpeername
  syscall_table[SYS_old_getpeername] = "old_getpeername";
#endif
#ifdef SYS_old_getpgrp
  syscall_table[SYS_old_getpgrp] = "old_getpgrp";
#endif
#ifdef SYS_old_getsockname
  syscall_table[SYS_old_getsockname] = "old_getsockname";
#endif
#ifdef SYS_old_killpg
  syscall_table[SYS_old_killpg] = "old_killpg";
#endif
#ifdef SYS_old_lstat
  syscall_table[SYS_old_lstat] = "old_lstat";
#endif
#ifdef SYS_old_recv
  syscall_table[SYS_old_recv] = "old_recv";
#endif
#ifdef SYS_old_recvfrom
  syscall_table[SYS_old_recvfrom] = "old_recvfrom";
#endif
#ifdef SYS_old_recvmsg
  syscall_table[SYS_old_recvmsg] = "old_recvmsg";
#endif
#ifdef SYS_old_send
  syscall_table[SYS_old_send] = "old_send";
#endif
#ifdef SYS_old_sendmsg
  syscall_table[SYS_old_sendmsg] = "old_sendmsg";
#endif
#ifdef SYS_old_sigblock
  syscall_table[SYS_old_sigblock] = "old_sigblock";
#endif
#ifdef SYS_old_sigsetmask
  syscall_table[SYS_old_sigsetmask] = "old_sigsetmask";
#endif
#ifdef SYS_old_sigvec
  syscall_table[SYS_old_sigvec] = "old_sigvec";
#endif
#ifdef SYS_old_stat
  syscall_table[SYS_old_stat] = "old_stat";
#endif
#ifdef SYS_old_vhangup
  syscall_table[SYS_old_vhangup] = "old_vhangup";
#endif
#ifdef SYS_old_wait
  syscall_table[SYS_old_wait] = "old_wait";
#endif
#ifdef SYS_oldquota
  syscall_table[SYS_oldquota] = "oldquota";
#endif
#ifdef SYS_online
  syscall_table[SYS_online] = "online";
#endif
#ifdef SYS_open
  syscall_table[SYS_open] = "open";
#endif
#ifdef SYS_open64
  syscall_table[SYS_open64] = "open64";
#endif
#ifdef SYS_ovadvise
  syscall_table[SYS_ovadvise] = "ovadvise";
#endif
#ifdef SYS_p_online
  syscall_table[SYS_p_online] = "p_online";
#endif
#ifdef SYS_pagelock
  syscall_table[SYS_pagelock] = "pagelock";
#endif
#ifdef SYS_pathconf
  syscall_table[SYS_pathconf] = "pathconf";
#endif
#ifdef SYS_pause
  syscall_table[SYS_pause] = "pause";
#endif
#ifdef SYS_pgrpsys
  syscall_table[SYS_pgrpsys] = "pgrpsys";
#endif
#ifdef SYS_pid_block
  syscall_table[SYS_pid_block] = "pid_block";
#endif
#ifdef SYS_pid_unblock
  syscall_table[SYS_pid_unblock] = "pid_unblock";
#endif
#ifdef SYS_pipe
  syscall_table[SYS_pipe] = "pipe";
#endif
#ifdef SYS_plock
  syscall_table[SYS_plock] = "plock";
#endif
#ifdef SYS_poll
  syscall_table[SYS_poll] = "poll";
#endif
#ifdef SYS_prctl
  syscall_table[SYS_prctl] = "prctl";
#endif
#ifdef SYS_pread
  syscall_table[SYS_pread] = "pread";
#endif
#ifdef SYS_pread64
  syscall_table[SYS_pread64] = "pread64";
#endif
#ifdef SYS_pread64
  syscall_table[SYS_pread64] = "pread64";
#endif
#ifdef SYS_prepblock
  syscall_table[SYS_prepblock] = "prepblock";
#endif
#ifdef SYS_priocntl
  syscall_table[SYS_priocntl] = "priocntl";
#endif
#ifdef SYS_priocntllst
  syscall_table[SYS_priocntllst] = "priocntllst";
#endif
#ifdef SYS_priocntlset
  syscall_table[SYS_priocntlset] = "priocntlset";
#endif
#ifdef SYS_priocntlsys
  syscall_table[SYS_priocntlsys] = "priocntlsys";
#endif
#ifdef SYS_procblk
  syscall_table[SYS_procblk] = "procblk";
#endif
#ifdef SYS_processor_bind
  syscall_table[SYS_processor_bind] = "processor_bind";
#endif
#ifdef SYS_processor_exbind
  syscall_table[SYS_processor_exbind] = "processor_exbind";
#endif
#ifdef SYS_processor_info
  syscall_table[SYS_processor_info] = "processor_info";
#endif
#ifdef SYS_procpriv
  syscall_table[SYS_procpriv] = "procpriv";
#endif
#ifdef SYS_profil
  syscall_table[SYS_profil] = "profil";
#endif
#ifdef SYS_proplist_syscall
  syscall_table[SYS_proplist_syscall] = "proplist_syscall";
#endif
#ifdef SYS_pset
  syscall_table[SYS_pset] = "pset";
#endif
#ifdef SYS_ptrace
  syscall_table[SYS_ptrace] = "ptrace";
#endif
#ifdef SYS_putmsg
  syscall_table[SYS_putmsg] = "putmsg";
#endif
#ifdef SYS_putpmsg
  syscall_table[SYS_putpmsg] = "putpmsg";
#endif
#ifdef SYS_pwrite
  syscall_table[SYS_pwrite] = "pwrite";
#endif
#ifdef SYS_pwrite64
  syscall_table[SYS_pwrite64] = "pwrite64";
#endif
#ifdef SYS_quotactl
  syscall_table[SYS_quotactl] = "quotactl";
#endif
#ifdef SYS_rdblock
  syscall_table[SYS_rdblock] = "rdblock";
#endif
#ifdef SYS_read
  syscall_table[SYS_read] = "read";
#endif
#ifdef SYS_readlink
  syscall_table[SYS_readlink] = "readlink";
#endif
#ifdef SYS_readv
  syscall_table[SYS_readv] = "readv";
#endif
#ifdef SYS_reboot
  syscall_table[SYS_reboot] = "reboot";
#endif
#ifdef SYS_recv
  syscall_table[SYS_recv] = "recv";
#endif
#ifdef SYS_recvfrom
  syscall_table[SYS_recvfrom] = "recvfrom";
#endif
#ifdef SYS_recvmsg
  syscall_table[SYS_recvmsg] = "recvmsg";
#endif
#ifdef SYS_rename
  syscall_table[SYS_rename] = "rename";
#endif
#ifdef SYS_resolvepath
  syscall_table[SYS_resolvepath] = "resolvepath";
#endif
#ifdef SYS_revoke
  syscall_table[SYS_revoke] = "revoke";
#endif
#ifdef SYS_rfsys
  syscall_table[SYS_rfsys] = "rfsys";
#endif
#ifdef SYS_rmdir
  syscall_table[SYS_rmdir] = "rmdir";
#endif
#ifdef SYS_rpcsys
  syscall_table[SYS_rpcsys] = "rpcsys";
#endif
#ifdef SYS_sbrk
  syscall_table[SYS_sbrk] = "sbrk";
#endif
#ifdef SYS_schedctl
  syscall_table[SYS_schedctl] = "schedctl";
#endif
#ifdef SYS_secadvise
  syscall_table[SYS_secadvise] = "secadvise";
#endif
#ifdef SYS_secsys
  syscall_table[SYS_secsys] = "secsys";
#endif
#ifdef SYS_security
  syscall_table[SYS_security] = "security";
#endif
#ifdef SYS_select
  syscall_table[SYS_select] = "select";
#endif
#ifdef SYS_semctl
  syscall_table[SYS_semctl] = "semctl";
#endif
#ifdef SYS_semget
  syscall_table[SYS_semget] = "semget";
#endif
#ifdef SYS_semop
  syscall_table[SYS_semop] = "semop";
#endif
#ifdef SYS_semsys
  syscall_table[SYS_semsys] = "semsys";
#endif
#ifdef SYS_send
  syscall_table[SYS_send] = "send";
#endif
#ifdef SYS_sendmsg
  syscall_table[SYS_sendmsg] = "sendmsg";
#endif
#ifdef SYS_sendto
  syscall_table[SYS_sendto] = "sendto";
#endif
#ifdef SYS_set_program_attributes
  syscall_table[SYS_set_program_attributes] = "set_program_attributes";
#endif
#ifdef SYS_set_speculative
  syscall_table[SYS_set_speculative] = "set_speculative";
#endif
#ifdef SYS_set_sysinfo
  syscall_table[SYS_set_sysinfo] = "set_sysinfo";
#endif
#ifdef SYS_setcontext
  syscall_table[SYS_setcontext] = "setcontext";
#endif
#ifdef SYS_setdomainname
  syscall_table[SYS_setdomainname] = "setdomainname";
#endif
#ifdef SYS_setegid
  syscall_table[SYS_setegid] = "setegid";
#endif
#ifdef SYS_seteuid
  syscall_table[SYS_seteuid] = "seteuid";
#endif
#ifdef SYS_setgid
  syscall_table[SYS_setgid] = "setgid";
#endif
#ifdef SYS_setgroups
  syscall_table[SYS_setgroups] = "setgroups";
#endif
#ifdef SYS_sethostid
  syscall_table[SYS_sethostid] = "sethostid";
#endif
#ifdef SYS_sethostname
  syscall_table[SYS_sethostname] = "sethostname";
#endif
#ifdef SYS_setitimer
  syscall_table[SYS_setitimer] = "setitimer";
#endif
#ifdef SYS_setlogin
  syscall_table[SYS_setlogin] = "setlogin";
#endif
#ifdef SYS_setpgid
  syscall_table[SYS_setpgid] = "setpgid";
#endif
#ifdef SYS_setpgrp
  syscall_table[SYS_setpgrp] = "setpgrp";
#endif
#ifdef SYS_setpriority
  syscall_table[SYS_setpriority] = "setpriority";
#endif
#ifdef SYS_setregid
  syscall_table[SYS_setregid] = "setregid";
#endif
#ifdef SYS_setreuid
  syscall_table[SYS_setreuid] = "setreuid";
#endif
#ifdef SYS_setrlimit
  syscall_table[SYS_setrlimit] = "setrlimit";
#endif
#ifdef SYS_setrlimit64
  syscall_table[SYS_setrlimit64] = "setrlimit64";
#endif
#ifdef SYS_setsid
  syscall_table[SYS_setsid] = "setsid";
#endif
#ifdef SYS_setsockopt
  syscall_table[SYS_setsockopt] = "setsockopt";
#endif
#ifdef SYS_settimeofday
  syscall_table[SYS_settimeofday] = "settimeofday";
#endif
#ifdef SYS_setuid
  syscall_table[SYS_setuid] = "setuid";
#endif
#ifdef SYS_sgi
  syscall_table[SYS_sgi] = "sgi";
#endif
#ifdef SYS_sgifastpath
  syscall_table[SYS_sgifastpath] = "sgifastpath";
#endif
#ifdef SYS_sgikopt
  syscall_table[SYS_sgikopt] = "sgikopt";
#endif
#ifdef SYS_sginap
  syscall_table[SYS_sginap] = "sginap";
#endif
#ifdef SYS_shmat
  syscall_table[SYS_shmat] = "shmat";
#endif
#ifdef SYS_shmctl
  syscall_table[SYS_shmctl] = "shmctl";
#endif
#ifdef SYS_shmdt
  syscall_table[SYS_shmdt] = "shmdt";
#endif
#ifdef SYS_shmget
  syscall_table[SYS_shmget] = "shmget";
#endif
#ifdef SYS_shmsys
  syscall_table[SYS_shmsys] = "shmsys";
#endif
#ifdef SYS_shutdown
  syscall_table[SYS_shutdown] = "shutdown";
#endif
#ifdef SYS_sigaction
  syscall_table[SYS_sigaction] = "sigaction";
#endif
#ifdef SYS_sigaltstack
  syscall_table[SYS_sigaltstack] = "sigaltstack";
#endif
#ifdef SYS_sigaltstack
  syscall_table[SYS_sigaltstack] = "sigaltstack";
#endif
#ifdef SYS_sigblock
  syscall_table[SYS_sigblock] = "sigblock";
#endif
#ifdef SYS_signal
  syscall_table[SYS_signal] = "signal";
#endif
#ifdef SYS_signotify
  syscall_table[SYS_signotify] = "signotify";
#endif
#ifdef SYS_signotifywait
  syscall_table[SYS_signotifywait] = "signotifywait";
#endif
#ifdef SYS_sigpending
  syscall_table[SYS_sigpending] = "sigpending";
#endif
#ifdef SYS_sigpoll
  syscall_table[SYS_sigpoll] = "sigpoll";
#endif
#ifdef SYS_sigprocmask
  syscall_table[SYS_sigprocmask] = "sigprocmask";
#endif
#ifdef SYS_sigqueue
  syscall_table[SYS_sigqueue] = "sigqueue";
#endif
#ifdef SYS_sigreturn
  syscall_table[SYS_sigreturn] = "sigreturn";
#endif
#ifdef SYS_sigsendset
  syscall_table[SYS_sigsendset] = "sigsendset";
#endif
#ifdef SYS_sigsendsys
  syscall_table[SYS_sigsendsys] = "sigsendsys";
#endif
#ifdef SYS_sigsetmask
  syscall_table[SYS_sigsetmask] = "sigsetmask";
#endif
#ifdef SYS_sigstack
  syscall_table[SYS_sigstack] = "sigstack";
#endif
#ifdef SYS_sigsuspend
  syscall_table[SYS_sigsuspend] = "sigsuspend";
#endif
#ifdef SYS_sigvec
  syscall_table[SYS_sigvec] = "sigvec";
#endif
#ifdef SYS_sigwait
  syscall_table[SYS_sigwait] = "sigwait";
#endif
#ifdef SYS_sigwaitprim
  syscall_table[SYS_sigwaitprim] = "sigwaitprim";
#endif
#ifdef SYS_sleep
  syscall_table[SYS_sleep] = "sleep";
#endif
#ifdef SYS_so_socket
  syscall_table[SYS_so_socket] = "so_socket";
#endif
#ifdef SYS_so_socketpair
  syscall_table[SYS_so_socketpair] = "so_socketpair";
#endif
#ifdef SYS_sockconfig
  syscall_table[SYS_sockconfig] = "sockconfig";
#endif
#ifdef SYS_socket
  syscall_table[SYS_socket] = "socket";
#endif
#ifdef SYS_socketpair
  syscall_table[SYS_socketpair] = "socketpair";
#endif
#ifdef SYS_sproc
  syscall_table[SYS_sproc] = "sproc";
#endif
#ifdef SYS_sprocsp
  syscall_table[SYS_sprocsp] = "sprocsp";
#endif
#ifdef SYS_sstk
  syscall_table[SYS_sstk] = "sstk";
#endif
#ifdef SYS_stat
  syscall_table[SYS_stat] = "stat";
#endif
#ifdef SYS_stat64
  syscall_table[SYS_stat64] = "stat64";
#endif
#ifdef SYS_statfs
  syscall_table[SYS_statfs] = "statfs";
#endif
#ifdef SYS_statvfs
  syscall_table[SYS_statvfs] = "statvfs";
#endif
#ifdef SYS_statvfs64
  syscall_table[SYS_statvfs64] = "statvfs64";
#endif
#ifdef SYS_stime
  syscall_table[SYS_stime] = "stime";
#endif
#ifdef SYS_stty
  syscall_table[SYS_stty] = "stty";
#endif
#ifdef SYS_subsys_info
  syscall_table[SYS_subsys_info] = "subsys_info";
#endif
#ifdef SYS_swapctl
  syscall_table[SYS_swapctl] = "swapctl";
#endif
#ifdef SYS_swapon
  syscall_table[SYS_swapon] = "swapon";
#endif
#ifdef SYS_symlink
  syscall_table[SYS_symlink] = "symlink";
#endif
#ifdef SYS_sync
  syscall_table[SYS_sync] = "sync";
#endif
#ifdef SYS_sys3b
  syscall_table[SYS_sys3b] = "sys3b";
#endif
#ifdef SYS_syscall
  syscall_table[SYS_syscall] = "syscall";
#endif
#ifdef SYS_sysconfig
  syscall_table[SYS_sysconfig] = "sysconfig";
#endif
#ifdef SYS_sysfs
  syscall_table[SYS_sysfs] = "sysfs";
#endif
#ifdef SYS_sysi86
  syscall_table[SYS_sysi86] = "sysi86";
#endif
#ifdef SYS_sysinfo
  syscall_table[SYS_sysinfo] = "sysinfo";
#endif
#ifdef SYS_sysmips
  syscall_table[SYS_sysmips] = "sysmips";
#endif
#ifdef SYS_syssun
  syscall_table[SYS_syssun] = "syssun";
#endif
#ifdef SYS_systeminfo
  syscall_table[SYS_systeminfo] = "systeminfo";
#endif
#ifdef SYS_table
  syscall_table[SYS_table] = "table";
#endif
#ifdef SYS_time
  syscall_table[SYS_time] = "time";
#endif
#ifdef SYS_timedwait
  syscall_table[SYS_timedwait] = "timedwait";
#endif
#ifdef SYS_timer_create
  syscall_table[SYS_timer_create] = "timer_create";
#endif
#ifdef SYS_timer_delete
  syscall_table[SYS_timer_delete] = "timer_delete";
#endif
#ifdef SYS_timer_getoverrun
  syscall_table[SYS_timer_getoverrun] = "timer_getoverrun";
#endif
#ifdef SYS_timer_gettime
  syscall_table[SYS_timer_gettime] = "timer_gettime";
#endif
#ifdef SYS_timer_settime
  syscall_table[SYS_timer_settime] = "timer_settime";
#endif
#ifdef SYS_times
  syscall_table[SYS_times] = "times";
#endif
#ifdef SYS_truncate
  syscall_table[SYS_truncate] = "truncate";
#endif
#ifdef SYS_truncate64
  syscall_table[SYS_truncate64] = "truncate64";
#endif
#ifdef SYS_tsolsys
  syscall_table[SYS_tsolsys] = "tsolsys";
#endif
#ifdef SYS_uadmin
  syscall_table[SYS_uadmin] = "uadmin";
#endif
#ifdef SYS_ulimit
  syscall_table[SYS_ulimit] = "ulimit";
#endif
#ifdef SYS_umask
  syscall_table[SYS_umask] = "umask";
#endif
#ifdef SYS_umount
  syscall_table[SYS_umount] = "umount";
#endif
#ifdef SYS_uname
  syscall_table[SYS_uname] = "uname";
#endif
#ifdef SYS_unblock
  syscall_table[SYS_unblock] = "unblock";
#endif
#ifdef SYS_unlink
  syscall_table[SYS_unlink] = "unlink";
#endif
#ifdef SYS_unmount
  syscall_table[SYS_unmount] = "unmount";
#endif
#ifdef SYS_usleep_thread
  syscall_table[SYS_usleep_thread] = "usleep_thread";
#endif
#ifdef SYS_uswitch
  syscall_table[SYS_uswitch] = "uswitch";
#endif
#ifdef SYS_utc_adjtime
  syscall_table[SYS_utc_adjtime] = "utc_adjtime";
#endif
#ifdef SYS_utc_gettime
  syscall_table[SYS_utc_gettime] = "utc_gettime";
#endif
#ifdef SYS_utime
  syscall_table[SYS_utime] = "utime";
#endif
#ifdef SYS_utimes
  syscall_table[SYS_utimes] = "utimes";
#endif
#ifdef SYS_utssys
  syscall_table[SYS_utssys] = "utssys";
#endif
#ifdef SYS_vfork
  syscall_table[SYS_vfork] = "vfork";
#endif
#ifdef SYS_vhangup
  syscall_table[SYS_vhangup] = "vhangup";
#endif
#ifdef SYS_vtrace
  syscall_table[SYS_vtrace] = "vtrace";
#endif
#ifdef SYS_wait
  syscall_table[SYS_wait] = "wait";
#endif
#ifdef SYS_waitid
  syscall_table[SYS_waitid] = "waitid";
#endif
#ifdef SYS_waitsys
  syscall_table[SYS_waitsys] = "waitsys";
#endif
#ifdef SYS_write
  syscall_table[SYS_write] = "write";
#endif
#ifdef SYS_writev
  syscall_table[SYS_writev] = "writev";
#endif
#ifdef SYS_xenix
  syscall_table[SYS_xenix] = "xenix";
#endif
#ifdef SYS_xmknod
  syscall_table[SYS_xmknod] = "xmknod";
#endif
#ifdef SYS_xstat
  syscall_table[SYS_xstat] = "xstat";
#endif
#ifdef SYS_yield
  syscall_table[SYS_yield] = "yield";
#endif
}

/* Prettyprint syscall NUM.  */

void
proc_prettyfprint_syscall (FILE *file, int num, int verbose)
{
  if (syscall_table[num])
    fprintf (file, "SYS_%s ", syscall_table[num]);
  else
    fprintf (file, "<Unknown syscall %d> ", num);
}

void
proc_prettyprint_syscall (int num, int verbose)
{
  proc_prettyfprint_syscall (stdout, num, verbose);
}

/* Prettyprint all syscalls in SYSSET.  */

void
proc_prettyfprint_syscalls (FILE *file, sysset_t *sysset, int verbose)
{
  int i;

  for (i = 0; i < MAX_SYSCALLS; i++)
    if (prismember (sysset, i))
      {
	proc_prettyfprint_syscall (file, i, verbose);
      }
  fprintf (file, "\n");
}

void
proc_prettyprint_syscalls (sysset_t *sysset, int verbose)
{
  proc_prettyfprint_syscalls (stdout, sysset, verbose);
}

/* Prettyprint signals.  */

/* Signal translation table, ordered ANSI-standard signals first,
   other signals second, with signals in each block ordered by their
   numerical values on a typical POSIX platform.  */

static struct trans signal_table[] = 
{
  { 0,      "<no signal>", "no signal" }, 

  /* SIGINT, SIGILL, SIGABRT, SIGFPE, SIGSEGV and SIGTERM
     are ANSI-standard signals and are always available.  */

  { SIGINT, "SIGINT", "Interrupt (rubout)" },
  { SIGILL, "SIGILL", "Illegal instruction" },	/* not reset when caught */
  { SIGABRT, "SIGABRT", "used by abort()" },	/* replaces SIGIOT */
  { SIGFPE, "SIGFPE", "Floating point exception" },
  { SIGSEGV, "SIGSEGV", "Segmentation violation" },
  { SIGTERM, "SIGTERM", "Software termination signal from kill" },

  /* All other signals need preprocessor conditionals.  */

#ifdef SIGHUP
  { SIGHUP, "SIGHUP", "Hangup" },
#endif
#ifdef SIGQUIT
  { SIGQUIT, "SIGQUIT", "Quit (ASCII FS)" },
#endif
#ifdef SIGTRAP
  { SIGTRAP, "SIGTRAP", "Trace trap" },		/* not reset when caught */
#endif
#ifdef SIGIOT
  { SIGIOT, "SIGIOT", "IOT instruction" },
#endif
#ifdef SIGEMT
  { SIGEMT, "SIGEMT", "EMT instruction" },
#endif
#ifdef SIGKILL
  { SIGKILL, "SIGKILL", "Kill" },	/* Solaris: cannot be caught/ignored */
#endif
#ifdef SIGBUS
  { SIGBUS, "SIGBUS", "Bus error" },
#endif
#ifdef SIGSYS
  { SIGSYS, "SIGSYS", "Bad argument to system call" },
#endif
#ifdef SIGPIPE
  { SIGPIPE, "SIGPIPE", "Write to pipe with no one to read it" },
#endif
#ifdef SIGALRM
  { SIGALRM, "SIGALRM", "Alarm clock" },
#endif
#ifdef SIGUSR1
  { SIGUSR1, "SIGUSR1", "User defined signal 1" },
#endif
#ifdef SIGUSR2
  { SIGUSR2, "SIGUSR2", "User defined signal 2" },
#endif
#ifdef SIGCHLD
  { SIGCHLD, "SIGCHLD", "Child status changed" },	/* Posix version */
#endif
#ifdef SIGCLD
  { SIGCLD, "SIGCLD", "Child status changed" },		/* Solaris version */
#endif
#ifdef SIGPWR
  { SIGPWR, "SIGPWR", "Power-fail restart" },
#endif
#ifdef SIGWINCH
  { SIGWINCH, "SIGWINCH", "Window size change" },
#endif
#ifdef SIGURG
  { SIGURG, "SIGURG", "Urgent socket condition" },
#endif
#ifdef SIGPOLL
  { SIGPOLL, "SIGPOLL", "Pollable event" },
#endif
#ifdef SIGIO
  { SIGIO, "SIGIO", "Socket I/O possible" },	/* alias for SIGPOLL */
#endif
#ifdef SIGSTOP
  { SIGSTOP, "SIGSTOP", "Stop, not from tty" },	/* cannot be caught or
						   ignored */
#endif
#ifdef SIGTSTP
  { SIGTSTP, "SIGTSTP", "User stop from tty" },
#endif
#ifdef SIGCONT
  { SIGCONT, "SIGCONT", "Stopped process has been continued" },
#endif
#ifdef SIGTTIN
  { SIGTTIN, "SIGTTIN", "Background tty read attempted" },
#endif
#ifdef SIGTTOU
  { SIGTTOU, "SIGTTOU", "Background tty write attempted" },
#endif
#ifdef SIGVTALRM
  { SIGVTALRM, "SIGVTALRM", "Virtual timer expired" },
#endif
#ifdef SIGPROF
  { SIGPROF, "SIGPROF", "Profiling timer expired" },
#endif
#ifdef SIGXCPU
  { SIGXCPU, "SIGXCPU", "Exceeded CPU limit" },
#endif
#ifdef SIGXFSZ
  { SIGXFSZ, "SIGXFSZ", "Exceeded file size limit" },
#endif
#ifdef SIGWAITING
  { SIGWAITING, "SIGWAITING", "Process's LWPs are blocked" },
#endif
#ifdef SIGLWP
  { SIGLWP, "SIGLWP", "Used by thread library" },
#endif
#ifdef SIGFREEZE
  { SIGFREEZE, "SIGFREEZE", "Used by CPR" },
#endif
#ifdef SIGTHAW
  { SIGTHAW, "SIGTHAW", "Used by CPR" },
#endif
#ifdef SIGCANCEL
  { SIGCANCEL, "SIGCANCEL", "Used by libthread" },
#endif
#ifdef SIGLOST
  { SIGLOST, "SIGLOST", "Resource lost" },
#endif
#ifdef SIG32
  { SIG32, "SIG32", "Reserved for kernel usage (Irix)" },
#endif
#ifdef SIGPTINTR
  { SIGPTINTR, "SIGPTINTR", "Posix 1003.1b" },
#endif
#ifdef SIGTRESCHED
  { SIGTRESCHED, "SIGTRESCHED", "Posix 1003.1b" },
#endif
#ifdef SIGINFO
  { SIGINFO, "SIGINFO", "Information request" },
#endif
#ifdef SIGRESV
  { SIGRESV, "SIGRESV", "Reserved by Digital for future use" },
#endif
#ifdef SIGAIO
  { SIGAIO, "SIGAIO", "Asynchronous I/O signal" },
#endif

  /* FIXME: add real-time signals.  */
};

/* Prettyprint signal number SIGNO.  */

void
proc_prettyfprint_signal (FILE *file, int signo, int verbose)
{
  int i;

  for (i = 0; i < sizeof (signal_table) / sizeof (signal_table[0]); i++)
    if (signo == signal_table[i].value)
      {
	fprintf (file, "%s", signal_table[i].name);
	if (verbose)
	  fprintf (file, ": %s\n", signal_table[i].desc);
	else
	  fprintf (file, " ");
	return;
      }
  fprintf (file, "Unknown signal %d%c", signo, verbose ? '\n' : ' ');
}

void
proc_prettyprint_signal (int signo, int verbose)
{
  proc_prettyfprint_signal (stdout, signo, verbose);
}

/* Prettyprint all signals in SIGSET.  */

void
proc_prettyfprint_signalset (FILE *file, sigset_t *sigset, int verbose)
{
  int i;

  /* Loop over all signal numbers from 0 to NSIG, using them as the
     index to prismember.  The signal table had better not contain
     aliases, for if it does they will both be printed.  */

  for (i = 0; i < NSIG; i++)
    if (prismember (sigset, i))
      proc_prettyfprint_signal (file, i, verbose);

  if (!verbose)
    fprintf (file, "\n");
}

void
proc_prettyprint_signalset (sigset_t *sigset, int verbose)
{
  proc_prettyfprint_signalset (stdout, sigset, verbose);
}


/* Prettyprint faults.  */

/* Fault translation table.  */

static struct trans fault_table[] =
{
#ifdef FLTILL
  { FLTILL, "FLTILL", "Illegal instruction" },
#endif
#ifdef FLTPRIV
  { FLTPRIV, "FLTPRIV", "Privileged instruction" },
#endif
#ifdef FLTBPT
  { FLTBPT, "FLTBPT", "Breakpoint trap" },
#endif
#ifdef FLTTRACE
  { FLTTRACE, "FLTTRACE", "Trace trap" },
#endif
#ifdef FLTACCESS
  { FLTACCESS, "FLTACCESS", "Memory access fault" },
#endif
#ifdef FLTBOUNDS
  { FLTBOUNDS, "FLTBOUNDS", "Memory bounds violation" },
#endif
#ifdef FLTIOVF
  { FLTIOVF, "FLTIOVF", "Integer overflow" },
#endif
#ifdef FLTIZDIV
  { FLTIZDIV, "FLTIZDIV", "Integer zero divide" },
#endif
#ifdef FLTFPE
  { FLTFPE, "FLTFPE", "Floating-point exception" },
#endif
#ifdef FLTSTACK
  { FLTSTACK, "FLTSTACK", "Unrecoverable stack fault" },
#endif
#ifdef FLTPAGE
  { FLTPAGE, "FLTPAGE", "Recoverable page fault" },
#endif
#ifdef FLTPCINVAL
  { FLTPCINVAL, "FLTPCINVAL", "Invalid PC exception" },
#endif
#ifdef FLTWATCH
  { FLTWATCH, "FLTWATCH", "User watchpoint" },
#endif
#ifdef FLTKWATCH
  { FLTKWATCH, "FLTKWATCH", "Kernel watchpoint" },
#endif
#ifdef FLTSCWATCH
  { FLTSCWATCH, "FLTSCWATCH", "Hit a store conditional on a watched page" },
#endif
};

/* Work horse.  Accepts an index into the fault table, prints it
   pretty.  */

static void
prettyfprint_faulttable_entry (FILE *file, int i, int verbose)
{
  fprintf (file, "%s", fault_table[i].name);
  if (verbose)
    fprintf (file, ": %s\n", fault_table[i].desc);
  else
    fprintf (file, " ");
}

/* Prettyprint hardware fault number FAULTNO.  */

void
proc_prettyfprint_fault (FILE *file, int faultno, int verbose)
{
  int i;

  for (i = 0; i < ARRAY_SIZE (fault_table); i++)
    if (faultno == fault_table[i].value)
      {
	prettyfprint_faulttable_entry (file, i, verbose);
	return;
      }

  fprintf (file, "Unknown hardware fault %d%c", 
	   faultno, verbose ? '\n' : ' ');
}

void
proc_prettyprint_fault (int faultno, int verbose)
{
  proc_prettyfprint_fault (stdout, faultno, verbose);
}

/* Prettyprint all faults in FLTSET.  */

void
proc_prettyfprint_faultset (FILE *file, fltset_t *fltset, int verbose)
{
  int i;

  /* Loop through the fault table, using the value field as the index
     to prismember.  The fault table had better not contain aliases,
     for if it does they will both be printed.  */

  for (i = 0; i < ARRAY_SIZE (fault_table); i++)
    if (prismember (fltset, fault_table[i].value))
      prettyfprint_faulttable_entry (file, i, verbose);

  if (!verbose)
    fprintf (file, "\n");
}

void
proc_prettyprint_faultset (fltset_t *fltset, int verbose)
{
  proc_prettyfprint_faultset (stdout, fltset, verbose);
}

/* TODO: actions, holds...  */

void
proc_prettyprint_actionset (struct sigaction *actions, int verbose)
{
}


/* Provide a prototype to silence -Wmissing-prototypes.  */
void _initialize_proc_events (void);

void
_initialize_proc_events (void)
{
  init_syscall_table ();
}
