1998-05-22 12:32:18 +02:00
|
|
|
/* Set up the signal behavior. */
|
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
#include "signal1.h"
|
|
|
|
|
|
|
|
#ifndef SIGIOT
|
|
|
|
#ifdef SIGABRT
|
|
|
|
#define SIGIOT SIGABRT
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#include <stdlib.h>
|
|
|
|
|
|
|
|
extern void sig_die(char*, int);
|
|
|
|
|
g2c.hin, [...]: Kill VOID, Void and Int.
* g2c.hin, libF77/d_cnjg.c, libF77/main.c, libF77/r_cnjg.c,
libF77/s_cat.c, libF77/s_paus.c, libF77/s_rnge.c, libF77/setarg.c,
libF77/setsig.c, libF77/signal1.h0, libI77/dfe.c, libI77/due.c,
libI77/err.c, libI77/fio.h, libI77/fmt.c, libI77/iio.c,
libI77/ilnw.c, libI77/lread.c, libI77/lwrite.c, libI77/rsfe.c,
libI77/rsli.c, libI77/rsne.c, libI77/sfe.c, libI77/sue.c,
libI77/util.c, libI77/wrtfmt.c, libI77/wsfe.c, libI77/wsle.c,
libI77/xwsne.c, libU77/date_.c: Kill VOID, Void and Int.
From-SVN: r54134
2002-06-01 03:58:10 +02:00
|
|
|
static void
|
|
|
|
sigfdie(Sigarg)
|
1998-05-22 12:32:18 +02:00
|
|
|
{
|
|
|
|
Use_Sigarg;
|
|
|
|
sig_die("Floating Exception", 1);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
g2c.hin, [...]: Kill VOID, Void and Int.
* g2c.hin, libF77/d_cnjg.c, libF77/main.c, libF77/r_cnjg.c,
libF77/s_cat.c, libF77/s_paus.c, libF77/s_rnge.c, libF77/setarg.c,
libF77/setsig.c, libF77/signal1.h0, libI77/dfe.c, libI77/due.c,
libI77/err.c, libI77/fio.h, libI77/fmt.c, libI77/iio.c,
libI77/ilnw.c, libI77/lread.c, libI77/lwrite.c, libI77/rsfe.c,
libI77/rsli.c, libI77/rsne.c, libI77/sfe.c, libI77/sue.c,
libI77/util.c, libI77/wrtfmt.c, libI77/wsfe.c, libI77/wsle.c,
libI77/xwsne.c, libU77/date_.c: Kill VOID, Void and Int.
From-SVN: r54134
2002-06-01 03:58:10 +02:00
|
|
|
static void
|
|
|
|
sigidie(Sigarg)
|
1998-05-22 12:32:18 +02:00
|
|
|
{
|
|
|
|
Use_Sigarg;
|
|
|
|
sig_die("IOT Trap", 1);
|
|
|
|
}
|
|
|
|
|
|
|
|
#ifdef SIGQUIT
|
g2c.hin, [...]: Kill VOID, Void and Int.
* g2c.hin, libF77/d_cnjg.c, libF77/main.c, libF77/r_cnjg.c,
libF77/s_cat.c, libF77/s_paus.c, libF77/s_rnge.c, libF77/setarg.c,
libF77/setsig.c, libF77/signal1.h0, libI77/dfe.c, libI77/due.c,
libI77/err.c, libI77/fio.h, libI77/fmt.c, libI77/iio.c,
libI77/ilnw.c, libI77/lread.c, libI77/lwrite.c, libI77/rsfe.c,
libI77/rsli.c, libI77/rsne.c, libI77/sfe.c, libI77/sue.c,
libI77/util.c, libI77/wrtfmt.c, libI77/wsfe.c, libI77/wsle.c,
libI77/xwsne.c, libU77/date_.c: Kill VOID, Void and Int.
From-SVN: r54134
2002-06-01 03:58:10 +02:00
|
|
|
static void
|
|
|
|
sigqdie(Sigarg)
|
1998-05-22 12:32:18 +02:00
|
|
|
{
|
|
|
|
Use_Sigarg;
|
|
|
|
sig_die("Quit signal", 1);
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
g2c.hin, [...]: Kill VOID, Void and Int.
* g2c.hin, libF77/d_cnjg.c, libF77/main.c, libF77/r_cnjg.c,
libF77/s_cat.c, libF77/s_paus.c, libF77/s_rnge.c, libF77/setarg.c,
libF77/setsig.c, libF77/signal1.h0, libI77/dfe.c, libI77/due.c,
libI77/err.c, libI77/fio.h, libI77/fmt.c, libI77/iio.c,
libI77/ilnw.c, libI77/lread.c, libI77/lwrite.c, libI77/rsfe.c,
libI77/rsli.c, libI77/rsne.c, libI77/sfe.c, libI77/sue.c,
libI77/util.c, libI77/wrtfmt.c, libI77/wsfe.c, libI77/wsle.c,
libI77/xwsne.c, libU77/date_.c: Kill VOID, Void and Int.
From-SVN: r54134
2002-06-01 03:58:10 +02:00
|
|
|
static void
|
|
|
|
sigindie(Sigarg)
|
1998-05-22 12:32:18 +02:00
|
|
|
{
|
|
|
|
Use_Sigarg;
|
|
|
|
sig_die("Interrupt", 0);
|
|
|
|
}
|
|
|
|
|
g2c.hin, [...]: Kill VOID, Void and Int.
* g2c.hin, libF77/d_cnjg.c, libF77/main.c, libF77/r_cnjg.c,
libF77/s_cat.c, libF77/s_paus.c, libF77/s_rnge.c, libF77/setarg.c,
libF77/setsig.c, libF77/signal1.h0, libI77/dfe.c, libI77/due.c,
libI77/err.c, libI77/fio.h, libI77/fmt.c, libI77/iio.c,
libI77/ilnw.c, libI77/lread.c, libI77/lwrite.c, libI77/rsfe.c,
libI77/rsli.c, libI77/rsne.c, libI77/sfe.c, libI77/sue.c,
libI77/util.c, libI77/wrtfmt.c, libI77/wsfe.c, libI77/wsle.c,
libI77/xwsne.c, libU77/date_.c: Kill VOID, Void and Int.
From-SVN: r54134
2002-06-01 03:58:10 +02:00
|
|
|
static void
|
|
|
|
sigtdie(Sigarg)
|
1998-05-22 12:32:18 +02:00
|
|
|
{
|
|
|
|
Use_Sigarg;
|
|
|
|
sig_die("Killed", 0);
|
|
|
|
}
|
|
|
|
|
|
|
|
#ifdef SIGTRAP
|
g2c.hin, [...]: Kill VOID, Void and Int.
* g2c.hin, libF77/d_cnjg.c, libF77/main.c, libF77/r_cnjg.c,
libF77/s_cat.c, libF77/s_paus.c, libF77/s_rnge.c, libF77/setarg.c,
libF77/setsig.c, libF77/signal1.h0, libI77/dfe.c, libI77/due.c,
libI77/err.c, libI77/fio.h, libI77/fmt.c, libI77/iio.c,
libI77/ilnw.c, libI77/lread.c, libI77/lwrite.c, libI77/rsfe.c,
libI77/rsli.c, libI77/rsne.c, libI77/sfe.c, libI77/sue.c,
libI77/util.c, libI77/wrtfmt.c, libI77/wsfe.c, libI77/wsle.c,
libI77/xwsne.c, libU77/date_.c: Kill VOID, Void and Int.
From-SVN: r54134
2002-06-01 03:58:10 +02:00
|
|
|
static void
|
|
|
|
sigtrdie(Sigarg)
|
1998-05-22 12:32:18 +02:00
|
|
|
{
|
|
|
|
Use_Sigarg;
|
|
|
|
sig_die("Trace trap", 1);
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
f_setsig()
|
|
|
|
{
|
|
|
|
signal1(SIGFPE, sigfdie); /* ignore underflow, enable overflow */
|
|
|
|
#ifdef SIGIOT
|
|
|
|
signal1(SIGIOT, sigidie);
|
|
|
|
#endif
|
|
|
|
#ifdef SIGTRAP
|
|
|
|
signal1(SIGTRAP, sigtrdie);
|
|
|
|
#endif
|
|
|
|
#ifdef SIGQUIT
|
|
|
|
if(signal1(SIGQUIT,sigqdie) == SIG_IGN)
|
|
|
|
signal1(SIGQUIT, SIG_IGN);
|
|
|
|
#endif
|
|
|
|
if(signal1(SIGINT, sigindie) == SIG_IGN)
|
|
|
|
signal1(SIGINT, SIG_IGN);
|
|
|
|
signal1(SIGTERM,sigtdie);
|
|
|
|
|
|
|
|
#ifdef pdp11
|
|
|
|
ldfps(01200); /* detect overflow as an exception */
|
|
|
|
#endif
|
|
|
|
}
|