Fix thinko in previous.

This commit is contained in:
mycroft 1998-09-12 10:48:27 +00:00
parent 584cc642fc
commit 3f2c7263b1
5 changed files with 43 additions and 15 deletions

View File

@ -1,4 +1,4 @@
# $NetBSD: files.i386,v 1.119 1998/08/13 17:55:41 rvb Exp $
# $NetBSD: files.i386,v 1.120 1998/09/12 10:48:27 mycroft Exp $
#
# new style config file for i386 architecture
#
@ -240,6 +240,9 @@ file arch/i386/i386/apmcall.s apm
# VM86 mode
file arch/i386/i386/vm86.c vm86
# Binary compatibility with previous NetBSD releases (COMPAT_XX)
file arch/i386/i386/compat_13_machdep.c compat_13
# SVR4 binary compatibility (COMPAT_SVR4)
include "compat/svr4/files.svr4"
file arch/i386/i386/svr4_machdep.c compat_svr4

View File

@ -1,4 +1,4 @@
/* $NetBSD: compat_13_machdep.c,v 1.1 1998/09/12 00:47:12 mycroft Exp $ */
/* $NetBSD: compat_13_machdep.c,v 1.2 1998/09/12 10:48:27 mycroft Exp $ */
/*-
* Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc.
@ -59,9 +59,9 @@ compat_13_sys_sigreturn(p, v, retval)
register_t *retval;
{
struct compat_13_sys_sigreturn_args /* {
syscallarg(struct sigcontext *) sigcntxp;
syscallarg(struct sigcontext13 *) sigcntxp;
} */ *uap = v;
struct sigcontext *scp, context;
struct sigcontext13 *scp, context;
struct trapframe *tf;
sigset_t mask;
@ -120,7 +120,7 @@ compat_13_sys_sigreturn(p, v, retval)
p->p_sigacts->ps_sigstk.ss_flags &= ~SS_ONSTACK;
/* Restore signal mask. */
native_sigset13_to_sigset(&context.sc_oldmask, &mask);
native_sigset13_to_sigset(&context.sc_mask, &mask);
(void) sigprocmask1(p, SIG_SETMASK, &mask, 0);
return (EJUSTRETURN);

View File

@ -1,4 +1,4 @@
/* $NetBSD: machdep.c,v 1.320 1998/09/12 00:47:12 mycroft Exp $ */
/* $NetBSD: machdep.c,v 1.321 1998/09/12 10:48:28 mycroft Exp $ */
/*-
* Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc.
@ -1176,9 +1176,6 @@ sendsig(catcher, sig, mask, code)
frame.sf_sc.sc_onstack = psp->ps_sigstk.ss_flags & SS_ONSTACK;
/* Save signal mask. */
#ifdef COMPAT_13
native_sigset_to_sigset13(mask, &frame.sf_sc.sc_oldmask);
#endif
frame.sf_sc.sc_mask = *mask;
if (copyout(&frame, fp, sizeof(frame)) != 0) {

View File

@ -1,4 +1,4 @@
/* $NetBSD: signal.h,v 1.9 1998/09/12 00:47:13 mycroft Exp $ */
/* $NetBSD: signal.h,v 1.10 1998/09/12 10:48:28 mycroft Exp $ */
/*
* Copyright (c) 1982, 1986, 1989, 1991 Regents of the University of California.
@ -54,7 +54,8 @@ typedef int sig_atomic_t;
* to the handler to allow it to restore state properly if
* a non-standard exit is performed.
*/
struct sigcontext {
#if defined(__LIBC13_SOURCE__) || defined(_KERNEL)
struct sigcontext13 {
int sc_gs;
int sc_fs;
int sc_es;
@ -74,12 +75,39 @@ struct sigcontext {
int sc_ss;
int sc_onstack; /* sigstack state to restore */
sigset13_t sc_oldmask; /* signal mask to restore (old style) */
sigset13_t sc_mask; /* signal mask to restore (old style) */
int sc_trapno; /* XXX should be above */
int sc_err;
};
#endif
struct sigcontext {
int sc_gs;
int sc_fs;
int sc_es;
int sc_ds;
int sc_edi;
int sc_esi;
int sc_ebp;
int sc_ebx;
int sc_edx;
int sc_ecx;
int sc_eax;
/* XXX */
int sc_eip;
int sc_cs;
int sc_eflags;
int sc_esp;
int sc_ss;
int sc_onstack; /* sigstack state to restore */
int __sc_unused;
int sc_trapno; /* XXX should be above */
int sc_err;
sigset_t sc_mask; /* signal mask to restore */
sigset_t sc_mask; /* signal mask to restore (new style) */
};
#define sc_sp sc_esp

View File

@ -1,4 +1,4 @@
$NetBSD: syscalls.master,v 1.83 1998/09/12 00:47:13 mycroft Exp $
$NetBSD: syscalls.master,v 1.84 1998/09/12 10:48:29 mycroft Exp $
; @(#)syscalls.master 8.2 (Berkeley) 1/13/94
@ -206,7 +206,7 @@
int flags); } osend
102 COMPAT_43 { int sys_recv(int s, caddr_t buf, int len, \
int flags); } orecv
103 COMPAT_13 { int sys_sigreturn(struct sigcontext *sigcntxp); } \
103 COMPAT_13 { int sys_sigreturn(struct sigcontext13 *sigcntxp); } \
sigreturn13
104 STD { int sys_bind(int s, const struct sockaddr *name, \
int namelen); }