accept the LDT selector in check_sigcontext32() too.

This commit is contained in:
chs 2010-09-05 20:52:38 +00:00
parent 4cbf2bba33
commit bf2af3b9b5
1 changed files with 3 additions and 3 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: netbsd32_machdep.c,v 1.66 2010/09/05 20:14:39 chs Exp $ */
/* $NetBSD: netbsd32_machdep.c,v 1.67 2010/09/05 20:52:38 chs Exp $ */
/*
* Copyright (c) 2001 Wasabi Systems, Inc.
@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.66 2010/09/05 20:14:39 chs Exp $");
__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.67 2010/09/05 20:52:38 chs Exp $");
#ifdef _KERNEL_OPT
#include "opt_compat_netbsd.h"
@ -962,7 +962,7 @@ check_sigcontext32(struct lwp *l, const struct netbsd32_sigcontext *scp)
pcb = lwp_getpcb(curlwp);
if (((scp->sc_eflags ^ tf->tf_rflags) & PSL_USERSTATIC) != 0 ||
scp->sc_cs != GSEL(GUCODE32_SEL, SEL_UPL))
!VALID_USER_CSEL32(scp->sc_cs))
return EINVAL;
if (scp->sc_fs != 0 && !VALID_USER_DSEL32(scp->sc_fs) &&
!(scp->sc_fs == GSEL(GUFS_SEL, SEL_UPL) && pcb->pcb_fs != 0))