/* This testcase is part of GDB, the GNU debugger.
|
/* This testcase is part of GDB, the GNU debugger.
|
|
|
Copyright 2009, 2010 Free Software Foundation, Inc.
|
Copyright 2009, 2010 Free Software Foundation, Inc.
|
|
|
This program is free software; you can redistribute it and/or modify
|
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
|
it under the terms of the GNU General Public License as published by
|
the Free Software Foundation; either version 3 of the License, or
|
the Free Software Foundation; either version 3 of the License, or
|
(at your option) any later version.
|
(at your option) any later version.
|
|
|
This program is distributed in the hope that it will be useful,
|
This program is distributed in the hope that it will be useful,
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
GNU General Public License for more details.
|
GNU General Public License for more details.
|
|
|
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU General Public License
|
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
|
|
#include <signal.h>
|
#include <signal.h>
|
#include <unistd.h>
|
#include <unistd.h>
|
|
|
#ifdef __sh__
|
#ifdef __sh__
|
#define signal(a,b) /* Signals not supported on this target - make them go away */
|
#define signal(a,b) /* Signals not supported on this target - make them go away */
|
#endif
|
#endif
|
|
|
/* Signal handlers, we set breakpoints in them to make sure that the
|
/* Signal handlers, we set breakpoints in them to make sure that the
|
signals really get delivered. */
|
signals really get delivered. */
|
|
|
void
|
void
|
handle_ABRT (int sig)
|
handle_ABRT (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_HUP (int sig)
|
handle_HUP (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_QUIT (int sig)
|
handle_QUIT (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_ILL (int sig)
|
handle_ILL (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_EMT (int sig)
|
handle_EMT (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_FPE (int sig)
|
handle_FPE (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_BUS (int sig)
|
handle_BUS (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_SEGV (int sig)
|
handle_SEGV (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_SYS (int sig)
|
handle_SYS (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_PIPE (int sig)
|
handle_PIPE (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_ALRM (int sig)
|
handle_ALRM (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_URG (int sig)
|
handle_URG (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_TSTP (int sig)
|
handle_TSTP (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_CONT (int sig)
|
handle_CONT (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_CHLD (int sig)
|
handle_CHLD (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_TTIN (int sig)
|
handle_TTIN (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_TTOU (int sig)
|
handle_TTOU (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_IO (int sig)
|
handle_IO (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_XCPU (int sig)
|
handle_XCPU (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_XFSZ (int sig)
|
handle_XFSZ (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_VTALRM (int sig)
|
handle_VTALRM (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_PROF (int sig)
|
handle_PROF (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_WINCH (int sig)
|
handle_WINCH (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_LOST (int sig)
|
handle_LOST (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_USR1 (int sig)
|
handle_USR1 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_USR2 (int sig)
|
handle_USR2 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_PWR (int sig)
|
handle_PWR (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_POLL (int sig)
|
handle_POLL (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_WIND (int sig)
|
handle_WIND (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_PHONE (int sig)
|
handle_PHONE (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_WAITING (int sig)
|
handle_WAITING (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_LWP (int sig)
|
handle_LWP (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_DANGER (int sig)
|
handle_DANGER (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_GRANT (int sig)
|
handle_GRANT (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_RETRACT (int sig)
|
handle_RETRACT (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_MSG (int sig)
|
handle_MSG (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_SOUND (int sig)
|
handle_SOUND (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_SAK (int sig)
|
handle_SAK (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_PRIO (int sig)
|
handle_PRIO (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_33 (int sig)
|
handle_33 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_34 (int sig)
|
handle_34 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_35 (int sig)
|
handle_35 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_36 (int sig)
|
handle_36 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_37 (int sig)
|
handle_37 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_38 (int sig)
|
handle_38 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_39 (int sig)
|
handle_39 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_40 (int sig)
|
handle_40 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_41 (int sig)
|
handle_41 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_42 (int sig)
|
handle_42 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_43 (int sig)
|
handle_43 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_44 (int sig)
|
handle_44 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_45 (int sig)
|
handle_45 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_46 (int sig)
|
handle_46 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_47 (int sig)
|
handle_47 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_48 (int sig)
|
handle_48 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_49 (int sig)
|
handle_49 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_50 (int sig)
|
handle_50 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_51 (int sig)
|
handle_51 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_52 (int sig)
|
handle_52 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_53 (int sig)
|
handle_53 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_54 (int sig)
|
handle_54 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_55 (int sig)
|
handle_55 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_56 (int sig)
|
handle_56 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_57 (int sig)
|
handle_57 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_58 (int sig)
|
handle_58 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_59 (int sig)
|
handle_59 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_60 (int sig)
|
handle_60 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_61 (int sig)
|
handle_61 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_62 (int sig)
|
handle_62 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_63 (int sig)
|
handle_63 (int sig)
|
{
|
{
|
}
|
}
|
|
|
void
|
void
|
handle_TERM (int sig)
|
handle_TERM (int sig)
|
{
|
{
|
}
|
}
|
|
|
/* Functions to send signals. These also serve as markers. */
|
/* Functions to send signals. These also serve as markers. */
|
int
|
int
|
gen_ABRT (void)
|
gen_ABRT (void)
|
{
|
{
|
kill (getpid (), SIGABRT);
|
kill (getpid (), SIGABRT);
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_HUP (void)
|
gen_HUP (void)
|
{
|
{
|
#ifdef SIGHUP
|
#ifdef SIGHUP
|
kill (getpid (), SIGHUP);
|
kill (getpid (), SIGHUP);
|
#else
|
#else
|
handle_HUP (0);
|
handle_HUP (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_QUIT (void)
|
gen_QUIT (void)
|
{
|
{
|
#ifdef SIGQUIT
|
#ifdef SIGQUIT
|
kill (getpid (), SIGQUIT);
|
kill (getpid (), SIGQUIT);
|
#else
|
#else
|
handle_QUIT (0);
|
handle_QUIT (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_ILL (void)
|
gen_ILL (void)
|
{
|
{
|
#ifdef SIGILL
|
#ifdef SIGILL
|
kill (getpid (), SIGILL);
|
kill (getpid (), SIGILL);
|
#else
|
#else
|
handle_ILL (0);
|
handle_ILL (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_EMT (void)
|
gen_EMT (void)
|
{
|
{
|
#ifdef SIGEMT
|
#ifdef SIGEMT
|
kill (getpid (), SIGEMT);
|
kill (getpid (), SIGEMT);
|
#else
|
#else
|
handle_EMT (0);
|
handle_EMT (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int x;
|
int x;
|
|
|
int
|
int
|
gen_FPE (void)
|
gen_FPE (void)
|
{
|
{
|
/* The intent behind generating SIGFPE this way is to check the mapping
|
/* The intent behind generating SIGFPE this way is to check the mapping
|
from the CPU exception itself to the signals. It would be nice to
|
from the CPU exception itself to the signals. It would be nice to
|
do the same for SIGBUS, SIGSEGV, etc., but I suspect that even this
|
do the same for SIGBUS, SIGSEGV, etc., but I suspect that even this
|
test might turn out to be insufficiently portable. */
|
test might turn out to be insufficiently portable. */
|
|
|
#if 0
|
#if 0
|
/* Loses on the PA because after the signal handler executes we try to
|
/* Loses on the PA because after the signal handler executes we try to
|
re-execute the failing instruction again. Perhaps we could siglongjmp
|
re-execute the failing instruction again. Perhaps we could siglongjmp
|
out of the signal handler? */
|
out of the signal handler? */
|
/* The expect script looks for the word "kill"; don't delete it. */
|
/* The expect script looks for the word "kill"; don't delete it. */
|
return 5 / x; /* and we both started jumping up and down yelling kill */
|
return 5 / x; /* and we both started jumping up and down yelling kill */
|
#else
|
#else
|
kill (getpid (), SIGFPE);
|
kill (getpid (), SIGFPE);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_BUS (void)
|
gen_BUS (void)
|
{
|
{
|
#ifdef SIGBUS
|
#ifdef SIGBUS
|
kill (getpid (), SIGBUS);
|
kill (getpid (), SIGBUS);
|
#else
|
#else
|
handle_BUS (0);
|
handle_BUS (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_SEGV (void)
|
gen_SEGV (void)
|
{
|
{
|
#ifdef SIGSEGV
|
#ifdef SIGSEGV
|
kill (getpid (), SIGSEGV);
|
kill (getpid (), SIGSEGV);
|
#else
|
#else
|
handle_SEGV (0);
|
handle_SEGV (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_SYS (void)
|
gen_SYS (void)
|
{
|
{
|
#ifdef SIGSYS
|
#ifdef SIGSYS
|
kill (getpid (), SIGSYS);
|
kill (getpid (), SIGSYS);
|
#else
|
#else
|
handle_SYS (0);
|
handle_SYS (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_PIPE (void)
|
gen_PIPE (void)
|
{
|
{
|
#ifdef SIGPIPE
|
#ifdef SIGPIPE
|
kill (getpid (), SIGPIPE);
|
kill (getpid (), SIGPIPE);
|
#else
|
#else
|
handle_PIPE (0);
|
handle_PIPE (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_ALRM (void)
|
gen_ALRM (void)
|
{
|
{
|
#ifdef SIGALRM
|
#ifdef SIGALRM
|
kill (getpid (), SIGALRM);
|
kill (getpid (), SIGALRM);
|
#else
|
#else
|
handle_ALRM (0);
|
handle_ALRM (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_URG (void)
|
gen_URG (void)
|
{
|
{
|
#ifdef SIGURG
|
#ifdef SIGURG
|
kill (getpid (), SIGURG);
|
kill (getpid (), SIGURG);
|
#else
|
#else
|
handle_URG (0);
|
handle_URG (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_TSTP (void)
|
gen_TSTP (void)
|
{
|
{
|
#ifdef SIGTSTP
|
#ifdef SIGTSTP
|
kill (getpid (), SIGTSTP);
|
kill (getpid (), SIGTSTP);
|
#else
|
#else
|
handle_TSTP (0);
|
handle_TSTP (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_CONT (void)
|
gen_CONT (void)
|
{
|
{
|
#ifdef SIGCONT
|
#ifdef SIGCONT
|
kill (getpid (), SIGCONT);
|
kill (getpid (), SIGCONT);
|
#else
|
#else
|
handle_CONT (0);
|
handle_CONT (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_CHLD (void)
|
gen_CHLD (void)
|
{
|
{
|
#ifdef SIGCHLD
|
#ifdef SIGCHLD
|
kill (getpid (), SIGCHLD);
|
kill (getpid (), SIGCHLD);
|
#else
|
#else
|
handle_CHLD (0);
|
handle_CHLD (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_TTIN (void)
|
gen_TTIN (void)
|
{
|
{
|
#ifdef SIGTTIN
|
#ifdef SIGTTIN
|
kill (getpid (), SIGTTIN);
|
kill (getpid (), SIGTTIN);
|
#else
|
#else
|
handle_TTIN (0);
|
handle_TTIN (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_TTOU (void)
|
gen_TTOU (void)
|
{
|
{
|
#ifdef SIGTTOU
|
#ifdef SIGTTOU
|
kill (getpid (), SIGTTOU);
|
kill (getpid (), SIGTTOU);
|
#else
|
#else
|
handle_TTOU (0);
|
handle_TTOU (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_IO (void)
|
gen_IO (void)
|
{
|
{
|
#ifdef SIGIO
|
#ifdef SIGIO
|
kill (getpid (), SIGIO);
|
kill (getpid (), SIGIO);
|
#else
|
#else
|
handle_IO (0);
|
handle_IO (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_XCPU (void)
|
gen_XCPU (void)
|
{
|
{
|
#ifdef SIGXCPU
|
#ifdef SIGXCPU
|
kill (getpid (), SIGXCPU);
|
kill (getpid (), SIGXCPU);
|
#else
|
#else
|
handle_XCPU (0);
|
handle_XCPU (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_XFSZ (void)
|
gen_XFSZ (void)
|
{
|
{
|
#ifdef SIGXFSZ
|
#ifdef SIGXFSZ
|
kill (getpid (), SIGXFSZ);
|
kill (getpid (), SIGXFSZ);
|
#else
|
#else
|
handle_XFSZ (0);
|
handle_XFSZ (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_VTALRM (void)
|
gen_VTALRM (void)
|
{
|
{
|
#ifdef SIGVTALRM
|
#ifdef SIGVTALRM
|
kill (getpid (), SIGVTALRM);
|
kill (getpid (), SIGVTALRM);
|
#else
|
#else
|
handle_VTALRM (0);
|
handle_VTALRM (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_PROF (void)
|
gen_PROF (void)
|
{
|
{
|
#ifdef SIGPROF
|
#ifdef SIGPROF
|
kill (getpid (), SIGPROF);
|
kill (getpid (), SIGPROF);
|
#else
|
#else
|
handle_PROF (0);
|
handle_PROF (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_WINCH (void)
|
gen_WINCH (void)
|
{
|
{
|
#ifdef SIGWINCH
|
#ifdef SIGWINCH
|
kill (getpid (), SIGWINCH);
|
kill (getpid (), SIGWINCH);
|
#else
|
#else
|
handle_WINCH (0);
|
handle_WINCH (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_LOST (void)
|
gen_LOST (void)
|
{
|
{
|
#if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
|
#if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
|
kill (getpid (), SIGLOST);
|
kill (getpid (), SIGLOST);
|
#else
|
#else
|
handle_LOST (0);
|
handle_LOST (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_USR1 (void)
|
gen_USR1 (void)
|
{
|
{
|
#ifdef SIGUSR1
|
#ifdef SIGUSR1
|
kill (getpid (), SIGUSR1);
|
kill (getpid (), SIGUSR1);
|
#else
|
#else
|
handle_USR1 (0);
|
handle_USR1 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_USR2 (void)
|
gen_USR2 (void)
|
{
|
{
|
#ifdef SIGUSR2
|
#ifdef SIGUSR2
|
kill (getpid (), SIGUSR2);
|
kill (getpid (), SIGUSR2);
|
#else
|
#else
|
handle_USR2 (0);
|
handle_USR2 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_PWR (void)
|
gen_PWR (void)
|
{
|
{
|
#ifdef SIGPWR
|
#ifdef SIGPWR
|
kill (getpid (), SIGPWR);
|
kill (getpid (), SIGPWR);
|
#else
|
#else
|
handle_PWR (0);
|
handle_PWR (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_POLL (void)
|
gen_POLL (void)
|
{
|
{
|
#if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
|
#if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
|
kill (getpid (), SIGPOLL);
|
kill (getpid (), SIGPOLL);
|
#else
|
#else
|
handle_POLL (0);
|
handle_POLL (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_WIND (void)
|
gen_WIND (void)
|
{
|
{
|
#ifdef SIGWIND
|
#ifdef SIGWIND
|
kill (getpid (), SIGWIND);
|
kill (getpid (), SIGWIND);
|
#else
|
#else
|
handle_WIND (0);
|
handle_WIND (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_PHONE (void)
|
gen_PHONE (void)
|
{
|
{
|
#ifdef SIGPHONE
|
#ifdef SIGPHONE
|
kill (getpid (), SIGPHONE);
|
kill (getpid (), SIGPHONE);
|
#else
|
#else
|
handle_PHONE (0);
|
handle_PHONE (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_WAITING (void)
|
gen_WAITING (void)
|
{
|
{
|
#ifdef SIGWAITING
|
#ifdef SIGWAITING
|
kill (getpid (), SIGWAITING);
|
kill (getpid (), SIGWAITING);
|
#else
|
#else
|
handle_WAITING (0);
|
handle_WAITING (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_LWP (void)
|
gen_LWP (void)
|
{
|
{
|
#ifdef SIGLWP
|
#ifdef SIGLWP
|
kill (getpid (), SIGLWP);
|
kill (getpid (), SIGLWP);
|
#else
|
#else
|
handle_LWP (0);
|
handle_LWP (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_DANGER (void)
|
gen_DANGER (void)
|
{
|
{
|
#ifdef SIGDANGER
|
#ifdef SIGDANGER
|
kill (getpid (), SIGDANGER);
|
kill (getpid (), SIGDANGER);
|
#else
|
#else
|
handle_DANGER (0);
|
handle_DANGER (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_GRANT (void)
|
gen_GRANT (void)
|
{
|
{
|
#ifdef SIGGRANT
|
#ifdef SIGGRANT
|
kill (getpid (), SIGGRANT);
|
kill (getpid (), SIGGRANT);
|
#else
|
#else
|
handle_GRANT (0);
|
handle_GRANT (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_RETRACT (void)
|
gen_RETRACT (void)
|
{
|
{
|
#ifdef SIGRETRACT
|
#ifdef SIGRETRACT
|
kill (getpid (), SIGRETRACT);
|
kill (getpid (), SIGRETRACT);
|
#else
|
#else
|
handle_RETRACT (0);
|
handle_RETRACT (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_MSG (void)
|
gen_MSG (void)
|
{
|
{
|
#ifdef SIGMSG
|
#ifdef SIGMSG
|
kill (getpid (), SIGMSG);
|
kill (getpid (), SIGMSG);
|
#else
|
#else
|
handle_MSG (0);
|
handle_MSG (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_SOUND (void)
|
gen_SOUND (void)
|
{
|
{
|
#ifdef SIGSOUND
|
#ifdef SIGSOUND
|
kill (getpid (), SIGSOUND);
|
kill (getpid (), SIGSOUND);
|
#else
|
#else
|
handle_SOUND (0);
|
handle_SOUND (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_SAK (void)
|
gen_SAK (void)
|
{
|
{
|
#ifdef SIGSAK
|
#ifdef SIGSAK
|
kill (getpid (), SIGSAK);
|
kill (getpid (), SIGSAK);
|
#else
|
#else
|
handle_SAK (0);
|
handle_SAK (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_PRIO (void)
|
gen_PRIO (void)
|
{
|
{
|
#ifdef SIGPRIO
|
#ifdef SIGPRIO
|
kill (getpid (), SIGPRIO);
|
kill (getpid (), SIGPRIO);
|
#else
|
#else
|
handle_PRIO (0);
|
handle_PRIO (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_33 (void)
|
gen_33 (void)
|
{
|
{
|
#ifdef SIG33
|
#ifdef SIG33
|
kill (getpid (), 33);
|
kill (getpid (), 33);
|
#else
|
#else
|
handle_33 (0);
|
handle_33 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_34 (void)
|
gen_34 (void)
|
{
|
{
|
#ifdef SIG34
|
#ifdef SIG34
|
kill (getpid (), 34);
|
kill (getpid (), 34);
|
#else
|
#else
|
handle_34 (0);
|
handle_34 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_35 (void)
|
gen_35 (void)
|
{
|
{
|
#ifdef SIG35
|
#ifdef SIG35
|
kill (getpid (), 35);
|
kill (getpid (), 35);
|
#else
|
#else
|
handle_35 (0);
|
handle_35 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_36 (void)
|
gen_36 (void)
|
{
|
{
|
#ifdef SIG36
|
#ifdef SIG36
|
kill (getpid (), 36);
|
kill (getpid (), 36);
|
#else
|
#else
|
handle_36 (0);
|
handle_36 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_37 (void)
|
gen_37 (void)
|
{
|
{
|
#ifdef SIG37
|
#ifdef SIG37
|
kill (getpid (), 37);
|
kill (getpid (), 37);
|
#else
|
#else
|
handle_37 (0);
|
handle_37 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_38 (void)
|
gen_38 (void)
|
{
|
{
|
#ifdef SIG38
|
#ifdef SIG38
|
kill (getpid (), 38);
|
kill (getpid (), 38);
|
#else
|
#else
|
handle_38 (0);
|
handle_38 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_39 (void)
|
gen_39 (void)
|
{
|
{
|
#ifdef SIG39
|
#ifdef SIG39
|
kill (getpid (), 39);
|
kill (getpid (), 39);
|
#else
|
#else
|
handle_39 (0);
|
handle_39 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_40 (void)
|
gen_40 (void)
|
{
|
{
|
#ifdef SIG40
|
#ifdef SIG40
|
kill (getpid (), 40);
|
kill (getpid (), 40);
|
#else
|
#else
|
handle_40 (0);
|
handle_40 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_41 (void)
|
gen_41 (void)
|
{
|
{
|
#ifdef SIG41
|
#ifdef SIG41
|
kill (getpid (), 41);
|
kill (getpid (), 41);
|
#else
|
#else
|
handle_41 (0);
|
handle_41 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_42 (void)
|
gen_42 (void)
|
{
|
{
|
#ifdef SIG42
|
#ifdef SIG42
|
kill (getpid (), 42);
|
kill (getpid (), 42);
|
#else
|
#else
|
handle_42 (0);
|
handle_42 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_43 (void)
|
gen_43 (void)
|
{
|
{
|
#ifdef SIG43
|
#ifdef SIG43
|
kill (getpid (), 43);
|
kill (getpid (), 43);
|
#else
|
#else
|
handle_43 (0);
|
handle_43 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_44 (void)
|
gen_44 (void)
|
{
|
{
|
#ifdef SIG44
|
#ifdef SIG44
|
kill (getpid (), 44);
|
kill (getpid (), 44);
|
#else
|
#else
|
handle_44 (0);
|
handle_44 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_45 (void)
|
gen_45 (void)
|
{
|
{
|
#ifdef SIG45
|
#ifdef SIG45
|
kill (getpid (), 45);
|
kill (getpid (), 45);
|
#else
|
#else
|
handle_45 (0);
|
handle_45 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_46 (void)
|
gen_46 (void)
|
{
|
{
|
#ifdef SIG46
|
#ifdef SIG46
|
kill (getpid (), 46);
|
kill (getpid (), 46);
|
#else
|
#else
|
handle_46 (0);
|
handle_46 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_47 (void)
|
gen_47 (void)
|
{
|
{
|
#ifdef SIG47
|
#ifdef SIG47
|
kill (getpid (), 47);
|
kill (getpid (), 47);
|
#else
|
#else
|
handle_47 (0);
|
handle_47 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_48 (void)
|
gen_48 (void)
|
{
|
{
|
#ifdef SIG48
|
#ifdef SIG48
|
kill (getpid (), 48);
|
kill (getpid (), 48);
|
#else
|
#else
|
handle_48 (0);
|
handle_48 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_49 (void)
|
gen_49 (void)
|
{
|
{
|
#ifdef SIG49
|
#ifdef SIG49
|
kill (getpid (), 49);
|
kill (getpid (), 49);
|
#else
|
#else
|
handle_49 (0);
|
handle_49 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_50 (void)
|
gen_50 (void)
|
{
|
{
|
#ifdef SIG50
|
#ifdef SIG50
|
kill (getpid (), 50);
|
kill (getpid (), 50);
|
#else
|
#else
|
handle_50 (0);
|
handle_50 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_51 (void)
|
gen_51 (void)
|
{
|
{
|
#ifdef SIG51
|
#ifdef SIG51
|
kill (getpid (), 51);
|
kill (getpid (), 51);
|
#else
|
#else
|
handle_51 (0);
|
handle_51 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_52 (void)
|
gen_52 (void)
|
{
|
{
|
#ifdef SIG52
|
#ifdef SIG52
|
kill (getpid (), 52);
|
kill (getpid (), 52);
|
#else
|
#else
|
handle_52 (0);
|
handle_52 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_53 (void)
|
gen_53 (void)
|
{
|
{
|
#ifdef SIG53
|
#ifdef SIG53
|
kill (getpid (), 53);
|
kill (getpid (), 53);
|
#else
|
#else
|
handle_53 (0);
|
handle_53 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_54 (void)
|
gen_54 (void)
|
{
|
{
|
#ifdef SIG54
|
#ifdef SIG54
|
kill (getpid (), 54);
|
kill (getpid (), 54);
|
#else
|
#else
|
handle_54 (0);
|
handle_54 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_55 (void)
|
gen_55 (void)
|
{
|
{
|
#ifdef SIG55
|
#ifdef SIG55
|
kill (getpid (), 55);
|
kill (getpid (), 55);
|
#else
|
#else
|
handle_55 (0);
|
handle_55 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_56 (void)
|
gen_56 (void)
|
{
|
{
|
#ifdef SIG56
|
#ifdef SIG56
|
kill (getpid (), 56);
|
kill (getpid (), 56);
|
#else
|
#else
|
handle_56 (0);
|
handle_56 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_57 (void)
|
gen_57 (void)
|
{
|
{
|
#ifdef SIG57
|
#ifdef SIG57
|
kill (getpid (), 57);
|
kill (getpid (), 57);
|
#else
|
#else
|
handle_57 (0);
|
handle_57 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_58 (void)
|
gen_58 (void)
|
{
|
{
|
#ifdef SIG58
|
#ifdef SIG58
|
kill (getpid (), 58);
|
kill (getpid (), 58);
|
#else
|
#else
|
handle_58 (0);
|
handle_58 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_59 (void)
|
gen_59 (void)
|
{
|
{
|
#ifdef SIG59
|
#ifdef SIG59
|
kill (getpid (), 59);
|
kill (getpid (), 59);
|
#else
|
#else
|
handle_59 (0);
|
handle_59 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_60 (void)
|
gen_60 (void)
|
{
|
{
|
#ifdef SIG60
|
#ifdef SIG60
|
kill (getpid (), 60);
|
kill (getpid (), 60);
|
#else
|
#else
|
handle_60 (0);
|
handle_60 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_61 (void)
|
gen_61 (void)
|
{
|
{
|
#ifdef SIG61
|
#ifdef SIG61
|
kill (getpid (), 61);
|
kill (getpid (), 61);
|
#else
|
#else
|
handle_61 (0);
|
handle_61 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_62 (void)
|
gen_62 (void)
|
{
|
{
|
#ifdef SIG62
|
#ifdef SIG62
|
kill (getpid (), 62);
|
kill (getpid (), 62);
|
#else
|
#else
|
handle_62 (0);
|
handle_62 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_63 (void)
|
gen_63 (void)
|
{
|
{
|
#ifdef SIG63
|
#ifdef SIG63
|
kill (getpid (), 63);
|
kill (getpid (), 63);
|
#else
|
#else
|
handle_63 (0);
|
handle_63 (0);
|
#endif
|
#endif
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
gen_TERM (void)
|
gen_TERM (void)
|
{
|
{
|
kill (getpid (), SIGTERM);
|
kill (getpid (), SIGTERM);
|
return 0;
|
return 0;
|
}
|
}
|
|
|
int
|
int
|
main ()
|
main ()
|
{
|
{
|
#ifdef usestubs
|
#ifdef usestubs
|
set_debug_traps ();
|
set_debug_traps ();
|
breakpoint ();
|
breakpoint ();
|
#endif
|
#endif
|
|
|
#ifdef SIG_SETMASK
|
#ifdef SIG_SETMASK
|
/* Ensure all the signals aren't blocked.
|
/* Ensure all the signals aren't blocked.
|
The environment in which the testsuite is run may have blocked some
|
The environment in which the testsuite is run may have blocked some
|
for whatever reason. */
|
for whatever reason. */
|
{
|
{
|
sigset_t newset;
|
sigset_t newset;
|
sigemptyset (&newset);
|
sigemptyset (&newset);
|
sigprocmask (SIG_SETMASK, &newset, NULL);
|
sigprocmask (SIG_SETMASK, &newset, NULL);
|
}
|
}
|
#endif
|
#endif
|
|
|
signal (SIGABRT, handle_ABRT);
|
signal (SIGABRT, handle_ABRT);
|
#ifdef SIGHUP
|
#ifdef SIGHUP
|
signal (SIGHUP, handle_HUP);
|
signal (SIGHUP, handle_HUP);
|
#endif
|
#endif
|
#ifdef SIGQUIT
|
#ifdef SIGQUIT
|
signal (SIGQUIT, handle_QUIT);
|
signal (SIGQUIT, handle_QUIT);
|
#endif
|
#endif
|
#ifdef SIGILL
|
#ifdef SIGILL
|
signal (SIGILL, handle_ILL);
|
signal (SIGILL, handle_ILL);
|
#endif
|
#endif
|
#ifdef SIGEMT
|
#ifdef SIGEMT
|
signal (SIGEMT, handle_EMT);
|
signal (SIGEMT, handle_EMT);
|
#endif
|
#endif
|
#ifdef SIGFPE
|
#ifdef SIGFPE
|
signal (SIGFPE, handle_FPE);
|
signal (SIGFPE, handle_FPE);
|
#endif
|
#endif
|
#ifdef SIGBUS
|
#ifdef SIGBUS
|
signal (SIGBUS, handle_BUS);
|
signal (SIGBUS, handle_BUS);
|
#endif
|
#endif
|
#ifdef SIGSEGV
|
#ifdef SIGSEGV
|
signal (SIGSEGV, handle_SEGV);
|
signal (SIGSEGV, handle_SEGV);
|
#endif
|
#endif
|
#ifdef SIGSYS
|
#ifdef SIGSYS
|
signal (SIGSYS, handle_SYS);
|
signal (SIGSYS, handle_SYS);
|
#endif
|
#endif
|
#ifdef SIGPIPE
|
#ifdef SIGPIPE
|
signal (SIGPIPE, handle_PIPE);
|
signal (SIGPIPE, handle_PIPE);
|
#endif
|
#endif
|
#ifdef SIGALRM
|
#ifdef SIGALRM
|
signal (SIGALRM, handle_ALRM);
|
signal (SIGALRM, handle_ALRM);
|
#endif
|
#endif
|
#ifdef SIGURG
|
#ifdef SIGURG
|
signal (SIGURG, handle_URG);
|
signal (SIGURG, handle_URG);
|
#endif
|
#endif
|
#ifdef SIGTSTP
|
#ifdef SIGTSTP
|
signal (SIGTSTP, handle_TSTP);
|
signal (SIGTSTP, handle_TSTP);
|
#endif
|
#endif
|
#ifdef SIGCONT
|
#ifdef SIGCONT
|
signal (SIGCONT, handle_CONT);
|
signal (SIGCONT, handle_CONT);
|
#endif
|
#endif
|
#ifdef SIGCHLD
|
#ifdef SIGCHLD
|
signal (SIGCHLD, handle_CHLD);
|
signal (SIGCHLD, handle_CHLD);
|
#endif
|
#endif
|
#ifdef SIGTTIN
|
#ifdef SIGTTIN
|
signal (SIGTTIN, handle_TTIN);
|
signal (SIGTTIN, handle_TTIN);
|
#endif
|
#endif
|
#ifdef SIGTTOU
|
#ifdef SIGTTOU
|
signal (SIGTTOU, handle_TTOU);
|
signal (SIGTTOU, handle_TTOU);
|
#endif
|
#endif
|
#ifdef SIGIO
|
#ifdef SIGIO
|
signal (SIGIO, handle_IO);
|
signal (SIGIO, handle_IO);
|
#endif
|
#endif
|
#ifdef SIGXCPU
|
#ifdef SIGXCPU
|
signal (SIGXCPU, handle_XCPU);
|
signal (SIGXCPU, handle_XCPU);
|
#endif
|
#endif
|
#ifdef SIGXFSZ
|
#ifdef SIGXFSZ
|
signal (SIGXFSZ, handle_XFSZ);
|
signal (SIGXFSZ, handle_XFSZ);
|
#endif
|
#endif
|
#ifdef SIGVTALRM
|
#ifdef SIGVTALRM
|
signal (SIGVTALRM, handle_VTALRM);
|
signal (SIGVTALRM, handle_VTALRM);
|
#endif
|
#endif
|
#ifdef SIGPROF
|
#ifdef SIGPROF
|
signal (SIGPROF, handle_PROF);
|
signal (SIGPROF, handle_PROF);
|
#endif
|
#endif
|
#ifdef SIGWINCH
|
#ifdef SIGWINCH
|
signal (SIGWINCH, handle_WINCH);
|
signal (SIGWINCH, handle_WINCH);
|
#endif
|
#endif
|
#if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
|
#if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
|
signal (SIGLOST, handle_LOST);
|
signal (SIGLOST, handle_LOST);
|
#endif
|
#endif
|
#ifdef SIGUSR1
|
#ifdef SIGUSR1
|
signal (SIGUSR1, handle_USR1);
|
signal (SIGUSR1, handle_USR1);
|
#endif
|
#endif
|
#ifdef SIGUSR2
|
#ifdef SIGUSR2
|
signal (SIGUSR2, handle_USR2);
|
signal (SIGUSR2, handle_USR2);
|
#endif
|
#endif
|
#ifdef SIGPWR
|
#ifdef SIGPWR
|
signal (SIGPWR, handle_PWR);
|
signal (SIGPWR, handle_PWR);
|
#endif
|
#endif
|
#if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
|
#if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
|
signal (SIGPOLL, handle_POLL);
|
signal (SIGPOLL, handle_POLL);
|
#endif
|
#endif
|
#ifdef SIGWIND
|
#ifdef SIGWIND
|
signal (SIGWIND, handle_WIND);
|
signal (SIGWIND, handle_WIND);
|
#endif
|
#endif
|
#ifdef SIGPHONE
|
#ifdef SIGPHONE
|
signal (SIGPHONE, handle_PHONE);
|
signal (SIGPHONE, handle_PHONE);
|
#endif
|
#endif
|
#ifdef SIGWAITING
|
#ifdef SIGWAITING
|
signal (SIGWAITING, handle_WAITING);
|
signal (SIGWAITING, handle_WAITING);
|
#endif
|
#endif
|
#ifdef SIGLWP
|
#ifdef SIGLWP
|
signal (SIGLWP, handle_LWP);
|
signal (SIGLWP, handle_LWP);
|
#endif
|
#endif
|
#ifdef SIGDANGER
|
#ifdef SIGDANGER
|
signal (SIGDANGER, handle_DANGER);
|
signal (SIGDANGER, handle_DANGER);
|
#endif
|
#endif
|
#ifdef SIGGRANT
|
#ifdef SIGGRANT
|
signal (SIGGRANT, handle_GRANT);
|
signal (SIGGRANT, handle_GRANT);
|
#endif
|
#endif
|
#ifdef SIGRETRACT
|
#ifdef SIGRETRACT
|
signal (SIGRETRACT, handle_RETRACT);
|
signal (SIGRETRACT, handle_RETRACT);
|
#endif
|
#endif
|
#ifdef SIGMSG
|
#ifdef SIGMSG
|
signal (SIGMSG, handle_MSG);
|
signal (SIGMSG, handle_MSG);
|
#endif
|
#endif
|
#ifdef SIGSOUND
|
#ifdef SIGSOUND
|
signal (SIGSOUND, handle_SOUND);
|
signal (SIGSOUND, handle_SOUND);
|
#endif
|
#endif
|
#ifdef SIGSAK
|
#ifdef SIGSAK
|
signal (SIGSAK, handle_SAK);
|
signal (SIGSAK, handle_SAK);
|
#endif
|
#endif
|
#ifdef SIGPRIO
|
#ifdef SIGPRIO
|
signal (SIGPRIO, handle_PRIO);
|
signal (SIGPRIO, handle_PRIO);
|
#endif
|
#endif
|
#ifdef __Lynx__
|
#ifdef __Lynx__
|
/* Lynx doesn't seem to have anything in signal.h for this. */
|
/* Lynx doesn't seem to have anything in signal.h for this. */
|
signal (33, handle_33);
|
signal (33, handle_33);
|
signal (34, handle_34);
|
signal (34, handle_34);
|
signal (35, handle_35);
|
signal (35, handle_35);
|
signal (36, handle_36);
|
signal (36, handle_36);
|
signal (37, handle_37);
|
signal (37, handle_37);
|
signal (38, handle_38);
|
signal (38, handle_38);
|
signal (39, handle_39);
|
signal (39, handle_39);
|
signal (40, handle_40);
|
signal (40, handle_40);
|
signal (41, handle_41);
|
signal (41, handle_41);
|
signal (42, handle_42);
|
signal (42, handle_42);
|
signal (43, handle_43);
|
signal (43, handle_43);
|
signal (44, handle_44);
|
signal (44, handle_44);
|
signal (45, handle_45);
|
signal (45, handle_45);
|
signal (46, handle_46);
|
signal (46, handle_46);
|
signal (47, handle_47);
|
signal (47, handle_47);
|
signal (48, handle_48);
|
signal (48, handle_48);
|
signal (49, handle_49);
|
signal (49, handle_49);
|
signal (50, handle_50);
|
signal (50, handle_50);
|
signal (51, handle_51);
|
signal (51, handle_51);
|
signal (52, handle_52);
|
signal (52, handle_52);
|
signal (53, handle_53);
|
signal (53, handle_53);
|
signal (54, handle_54);
|
signal (54, handle_54);
|
signal (55, handle_55);
|
signal (55, handle_55);
|
signal (56, handle_56);
|
signal (56, handle_56);
|
signal (57, handle_57);
|
signal (57, handle_57);
|
signal (58, handle_58);
|
signal (58, handle_58);
|
signal (59, handle_59);
|
signal (59, handle_59);
|
signal (60, handle_60);
|
signal (60, handle_60);
|
signal (61, handle_61);
|
signal (61, handle_61);
|
signal (62, handle_62);
|
signal (62, handle_62);
|
signal (63, handle_63);
|
signal (63, handle_63);
|
#endif /* lynx */
|
#endif /* lynx */
|
signal (SIGTERM, handle_TERM);
|
signal (SIGTERM, handle_TERM);
|
|
|
x = 0;
|
x = 0;
|
|
|
gen_ABRT ();
|
gen_ABRT ();
|
gen_HUP ();
|
gen_HUP ();
|
gen_QUIT ();
|
gen_QUIT ();
|
gen_ILL ();
|
gen_ILL ();
|
gen_EMT ();
|
gen_EMT ();
|
gen_FPE ();
|
gen_FPE ();
|
gen_BUS ();
|
gen_BUS ();
|
gen_SEGV ();
|
gen_SEGV ();
|
gen_SYS ();
|
gen_SYS ();
|
gen_PIPE ();
|
gen_PIPE ();
|
gen_ALRM ();
|
gen_ALRM ();
|
gen_URG ();
|
gen_URG ();
|
gen_TSTP ();
|
gen_TSTP ();
|
gen_CONT ();
|
gen_CONT ();
|
gen_CHLD ();
|
gen_CHLD ();
|
gen_TTIN ();
|
gen_TTIN ();
|
gen_TTOU ();
|
gen_TTOU ();
|
gen_IO ();
|
gen_IO ();
|
gen_XCPU ();
|
gen_XCPU ();
|
gen_XFSZ ();
|
gen_XFSZ ();
|
gen_VTALRM ();
|
gen_VTALRM ();
|
gen_PROF ();
|
gen_PROF ();
|
gen_WINCH ();
|
gen_WINCH ();
|
gen_LOST ();
|
gen_LOST ();
|
gen_USR1 ();
|
gen_USR1 ();
|
gen_USR2 ();
|
gen_USR2 ();
|
gen_PWR ();
|
gen_PWR ();
|
gen_POLL ();
|
gen_POLL ();
|
gen_WIND ();
|
gen_WIND ();
|
gen_PHONE ();
|
gen_PHONE ();
|
gen_WAITING ();
|
gen_WAITING ();
|
gen_LWP ();
|
gen_LWP ();
|
gen_DANGER ();
|
gen_DANGER ();
|
gen_GRANT ();
|
gen_GRANT ();
|
gen_RETRACT ();
|
gen_RETRACT ();
|
gen_MSG ();
|
gen_MSG ();
|
gen_SOUND ();
|
gen_SOUND ();
|
gen_SAK ();
|
gen_SAK ();
|
gen_PRIO ();
|
gen_PRIO ();
|
gen_33 ();
|
gen_33 ();
|
gen_34 ();
|
gen_34 ();
|
gen_35 ();
|
gen_35 ();
|
gen_36 ();
|
gen_36 ();
|
gen_37 ();
|
gen_37 ();
|
gen_38 ();
|
gen_38 ();
|
gen_39 ();
|
gen_39 ();
|
gen_40 ();
|
gen_40 ();
|
gen_41 ();
|
gen_41 ();
|
gen_42 ();
|
gen_42 ();
|
gen_43 ();
|
gen_43 ();
|
gen_44 ();
|
gen_44 ();
|
gen_45 ();
|
gen_45 ();
|
gen_46 ();
|
gen_46 ();
|
gen_47 ();
|
gen_47 ();
|
gen_48 ();
|
gen_48 ();
|
gen_49 ();
|
gen_49 ();
|
gen_50 ();
|
gen_50 ();
|
gen_51 ();
|
gen_51 ();
|
gen_52 ();
|
gen_52 ();
|
gen_53 ();
|
gen_53 ();
|
gen_54 ();
|
gen_54 ();
|
gen_55 ();
|
gen_55 ();
|
gen_56 ();
|
gen_56 ();
|
gen_57 ();
|
gen_57 ();
|
gen_58 ();
|
gen_58 ();
|
gen_59 ();
|
gen_59 ();
|
gen_60 ();
|
gen_60 ();
|
gen_61 ();
|
gen_61 ();
|
gen_62 ();
|
gen_62 ();
|
gen_63 ();
|
gen_63 ();
|
gen_TERM ();
|
gen_TERM ();
|
|
|
return 0; /* end of main */
|
return 0; /* end of main */
|
}
|
}
|
|
|