accept the LDT selector in check_sigcontext32() too.
This commit is contained in:
parent
4cbf2bba33
commit
bf2af3b9b5
|
@ -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))
|
||||
|
|
Loading…
Reference in New Issue