summaryrefslogtreecommitdiffstats
path: root/usr.bin/doscmd
diff options
context:
space:
mode:
authorcracauer <cracauer@FreeBSD.org>1999-07-06 07:15:11 +0000
committercracauer <cracauer@FreeBSD.org>1999-07-06 07:15:11 +0000
commitf30679239e214609acc12acfc6e957cf04191fa6 (patch)
tree2d10fd690dd7cf840655c193e95d9a540c4824e8 /usr.bin/doscmd
parent53573bf465904188986e8c982e8019835628d6b2 (diff)
downloadFreeBSD-src-f30679239e214609acc12acfc6e957cf04191fa6.zip
FreeBSD-src-f30679239e214609acc12acfc6e957cf04191fa6.tar.gz
Update to new struct sigcontext after SA_SIGINFO changes
Diffstat (limited to 'usr.bin/doscmd')
-rw-r--r--usr.bin/doscmd/AsyncIO.c3
-rw-r--r--usr.bin/doscmd/signal.c6
-rw-r--r--usr.bin/doscmd/trap.c22
-rw-r--r--usr.bin/doscmd/tty.c7
4 files changed, 20 insertions, 18 deletions
diff --git a/usr.bin/doscmd/AsyncIO.c b/usr.bin/doscmd/AsyncIO.c
index 2e2d8cd..92c7e98 100644
--- a/usr.bin/doscmd/AsyncIO.c
+++ b/usr.bin/doscmd/AsyncIO.c
@@ -268,7 +268,8 @@ if (0)
/*
* STEP 3: Call the handler
*/
- (*handlers[fd].func)(handlers[fd].arg, &sf->sf_sc);
+ (*handlers[fd].func)(handlers[fd].arg,
+ &sf->sf_siginfo.si_sc);
/*
* STEP 4: Just turn SIGIO off. No check.
diff --git a/usr.bin/doscmd/signal.c b/usr.bin/doscmd/signal.c
index c79a24a..f42e4cd 100644
--- a/usr.bin/doscmd/signal.c
+++ b/usr.bin/doscmd/signal.c
@@ -29,7 +29,7 @@
*
* BSDI signal.c,v 2.2 1996/04/08 19:33:06 bostic Exp
*
- * $Id: signal.c,v 1.1 1997/08/09 01:42:55 dyson Exp $
+ * $Id: signal.c,v 1.2 1998/02/28 16:02:24 jraynard Exp $
*/
#include "doscmd.h"
@@ -66,9 +66,9 @@ sanity_check(struct sigframe *sf)
static void
generichandler(struct sigframe sf)
{
- if (sf.sf_sc.sc_efl & PSL_VM) {
+ if (sf.sf_siginfo.si_sc.sc_efl & PSL_VM) {
saved_sigframe = &sf;
- saved_regcontext = (regcontext_t *)&(sf.sf_sc);
+ saved_regcontext = (regcontext_t *)&(sf.sf_siginfo.si_sc);
saved_valid = 1;
if (handler[sf.sf_signum])
(*handler[sf.sf_signum])(&sf);
diff --git a/usr.bin/doscmd/trap.c b/usr.bin/doscmd/trap.c
index a3d5af0..edf8997 100644
--- a/usr.bin/doscmd/trap.c
+++ b/usr.bin/doscmd/trap.c
@@ -29,7 +29,7 @@
*
* BSDI trap.c,v 2.3 1996/04/08 19:33:08 bostic Exp
*
- * $Id: trap.c,v 1.1 1997/08/09 01:42:58 dyson Exp $
+ * $Id: trap.c,v 1.2 1997/09/30 22:04:05 jlemon Exp $
*/
#include "doscmd.h"
@@ -287,14 +287,14 @@ sigbus(struct sigframe *sf)
int intnum;
int port;
callback_t func;
- regcontext_t *REGS = (regcontext_t *)(&sf->sf_sc);
+ regcontext_t *REGS = (regcontext_t *)(&sf->sf_siginfo.si_sc);
if (!(R_EFLAGS && PSL_VM))
fatal("SIGBUS in the emulator\n");
- if (sf->sf_code != 0) {
+ if (sf->sf_arg2 != 0) {
fatal("SIGBUS code %d, trapno: %d, err: %d\n",
- sf->sf_code, sf->sf_sc.sc_trapno, sf->sf_sc.sc_err);
+ sf->sf_arg2, sf->sf_siginfo.si_sc.sc_trapno, sf->sf_siginfo.si_sc.sc_err);
}
addr = (u_char *)GETPTR(R_CS, R_IP);
@@ -500,7 +500,7 @@ void
sigtrace(struct sigframe *sf)
{
int x;
- regcontext_t *REGS = (regcontext_t *)(&sf->sf_sc);
+ regcontext_t *REGS = (regcontext_t *)(&sf->sf_siginfo.si_sc);
if (R_EFLAGS & PSL_VM) {
debug(D_ALWAYS, "Currently in DOS\n");
@@ -519,7 +519,7 @@ sigtrap(struct sigframe *sf)
{
int intnum;
int trapno;
- regcontext_t *REGS = (regcontext_t *)(&sf->sf_sc);
+ regcontext_t *REGS = (regcontext_t *)(&sf->sf_siginfo.si_sc);
if ((R_EFLAGS & PSL_VM) == 0) {
dump_regs(REGS);
@@ -531,7 +531,7 @@ sigtrap(struct sigframe *sf)
goto doh;
#ifdef __FreeBSD__
- trapno = sf->sf_code; /* XXX GROSTIC HACK ALERT */
+ trapno = sf->sf_arg2; /* XXX GROSTIC HACK ALERT */
#else
trapno = sc->sc_trapno;
#endif
@@ -554,7 +554,7 @@ doh:
void
breakpoint(struct sigframe *sf)
{
- regcontext_t *REGS = (regcontext_t *)(&sf->sf_sc);
+ regcontext_t *REGS = (regcontext_t *)(&sf->sf_siginfo.si_sc);
if (R_EFLAGS & PSL_VM)
printf("doscmd ");
@@ -572,7 +572,7 @@ breakpoint(struct sigframe *sf)
void
sigalrm(struct sigframe *sf)
{
- regcontext_t *REGS = (regcontext_t *)(&sf->sf_sc);
+ regcontext_t *REGS = (regcontext_t *)(&sf->sf_siginfo.si_sc);
if (tmode)
resettrace(REGS);
@@ -590,7 +590,7 @@ sigalrm(struct sigframe *sf)
void
sigill(struct sigframe *sf)
{
- regcontext_t *REGS = (regcontext_t *)(&sf->sf_sc);
+ regcontext_t *REGS = (regcontext_t *)(&sf->sf_siginfo.si_sc);
fprintf(stderr, "Signal %d from DOS program\n", sf->sf_signum);
dump_regs(REGS);
@@ -601,7 +601,7 @@ sigill(struct sigframe *sf)
void
sigfpe(struct sigframe *sf)
{
- regcontext_t *REGS = (regcontext_t *)(&sf->sf_sc);
+ regcontext_t *REGS = (regcontext_t *)(&sf->sf_siginfo.si_sc);
if (R_EFLAGS & PSL_VM) {
dump_regs(REGS);
diff --git a/usr.bin/doscmd/tty.c b/usr.bin/doscmd/tty.c
index 4575ed7..ef42817 100644
--- a/usr.bin/doscmd/tty.c
+++ b/usr.bin/doscmd/tty.c
@@ -29,7 +29,7 @@
*
* BSDI tty.c,v 2.4 1996/04/08 22:03:27 prb Exp
*
- * $Id: tty.c,v 1.3 1998/01/21 21:37:02 jlemon Exp $
+ * $Id: tty.c,v 1.4 1998/02/22 23:36:54 msmith Exp $
*/
#ifndef NO_X
@@ -962,7 +962,7 @@ printf("FORCED REDRAW\n");
case 0x14: /* T */
tmode ^= 1;
if (!tmode)
- resettrace(&saved_sigframe->sf_sc);
+ resettrace(&saved_sigframe->sf_siginfo.si_sc);
return(0xffff);
case 0x53: /* DEL */
quit(0);
@@ -1455,7 +1455,8 @@ video_event(XEvent *ev)
if (ks == 'T' || ks == 't') {
tmode ^= 1;
if (!tmode)
- resettrace(&saved_sigframe->sf_sc);
+ resettrace(&saved_sigframe->
+ sf_siginfo.si_sc);
break;
}
if (ks == 'R' || ks == 'r') {
OpenPOWER on IntegriCloud