sysarch

Christer Öberg christer.oberg at ornsat.com
Sat Nov 20 15:30:19 PST 2004


Range verification of LDTs in i386_get_ldt() is wrong (arguments are unsigned)

--- sys/i386/i386/sys_machdep.c	2004-11-20 22:29:50.000000000 +0000
+++ sys/i386/i386/sys_machdep.new.c	2004-11-20 22:33:57.000000000 +0000
@@ -333,7 +333,7 @@
 #endif
 
 	/* verify range of LDTs exist */
-	if ((uap->start < 0) || (uap->num <= 0))
+	if (uap->start > MAX_LD) 
 		return(EINVAL);
 
 	s = splhigh();




More information about the Submit mailing list