diff options
author | Jason Downs <downsj@cvs.openbsd.org> | 1997-09-08 22:51:37 +0000 |
---|---|---|
committer | Jason Downs <downsj@cvs.openbsd.org> | 1997-09-08 22:51:37 +0000 |
commit | 387b0909e893132ff2b83a418dbacdcad2e9c7c0 (patch) | |
tree | edf4f8fcf386680e1209bdc81cbf93299c90d557 /sys/arch | |
parent | 8e02cee662322b53c6e802056ae164751afd4478 (diff) |
Fix SYS__syscall handler for BSD/OS.
Diffstat (limited to 'sys/arch')
-rw-r--r-- | sys/arch/i386/i386/trap.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/sys/arch/i386/i386/trap.c b/sys/arch/i386/i386/trap.c index 3a125b30574..721e3ba9406 100644 --- a/sys/arch/i386/i386/trap.c +++ b/sys/arch/i386/i386/trap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: trap.c,v 1.24 1997/07/25 01:46:11 mickey Exp $ */ +/* $OpenBSD: trap.c,v 1.25 1997/09/08 22:51:36 downsj Exp $ */ /* $NetBSD: trap.c,v 1.95 1996/05/05 06:50:02 mycroft Exp $ */ #undef DEBUG @@ -84,6 +84,9 @@ extern struct emul emul_linux_aout, emul_linux_elf; #ifdef COMPAT_FREEBSD extern struct emul emul_freebsd; #endif +#ifdef COMPAT_BSDOS +extern struct emul emul_bsdos; +#endif #include "npx.h" @@ -585,12 +588,14 @@ syscall(frame) * Like syscall, but code is a quad, so as to maintain * quad alignment for the rest of the arguments. */ + if (callp != sysent #ifdef COMPAT_FREEBSD - /* FreeBSD has a same function in SYS___syscall */ - if (callp != sysent && p->p_emul != &emul_freebsd) -#else - if (callp != sysent) + && p->p_emul != &emul_freebsd +#endif +#ifdef COMPAT_BSDOS + && p->p_emul != &emul_bsdos #endif + ) break; code = fuword(params + _QUAD_LOWWORD * sizeof(int)); params += sizeof(quad_t); |