*BSD News Article 82328


Return to BSD News archive

Sender: julliard@lrcsuns.epfl.ch
In-reply-to: sastdr@torpid.unx.sas.com's message of Fri, 1 Nov 1996 20:23:50
	GMT
Newsgroups: comp.emulators.ms-windows.wine,comp.unix.bsd.freebsd.misc
Subject: Re: Wine960928 crashed FreeBSD 2.1.5
References: <32762988.167EB0E7@watermarkgroup.com>
	<slrn57ghru.7i.hanspbie@zerium.idgonline.no> <E07Knq.7A9@unx.sas.com>
From: julliard@lrcsuns.epfl.ch (Alexandre Julliard)
Date: 05 Nov 1996 13:50:33 +0100
Message-ID: <1sohhcg0yu.fsf@lrcsuns.epfl.ch>
Organization: Wine Makers Inc.
Lines: 25
X-Newsreader: Gnus v5.1
NNTP-Posting-Host: lrcsuns.epfl.ch
Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!munnari.OZ.AU!news.ecn.uoknor.edu!feed1.news.erols.com!howland.erols.net!math.ohio-state.edu!jussieu.fr!univ-angers.fr!ciril.fr!cnusc.fr!univ-lyon1.fr!in2p3.fr!swidir.switch.ch!epflnews.epfl.ch!lrcsuns.epfl.ch
Xref: euryale.cc.adfa.oz.au comp.emulators.ms-windows.wine:5898 comp.unix.bsd.freebsd.misc:30660

In article <E07Knq.7A9@unx.sas.com> sastdr@torpid.unx.sas.com (Thomas David Rivers) writes:

>  Ah... but remember to run Wine the operating system has to "hand over"
> the LDT to a user-mode program (essentially throwing out the baby
> with the bath water.)

Unlike under Windows, with a real operating system a user-mode program
doesn't have access to the real LDT. It can only request modifications
to the LDT via a system call, so that the kernel can make sure that
unsafe changes, like creating ring 0 selectors, are forbidden.

>  On most systems, this type of operation isn't something that is
> normally done, much less done on purpose.
> 
>  Wine, for instance, could accidently create LDTs that would totally
> scramble things and begin writing all over real memory - crashing whatever
> operating system lie beneath it.

Absolutely not. Unless there is a bug in the kernel, a user-mode
program cannot get access via the LDT to anything it doesn't have
access to via normal pointers.

--
Alexandre Julliard
julliard@lrc.epfl.ch