PROT_EXEC mmap/mprotect, i386 PAE + NX broken, x86-64 2.6.17-rc2

Mike Hearn mike at plan99.net
Sat Apr 22 08:05:40 CDT 2006


On Sat, 22 Apr 2006 11:12:06 +0100, Alistair John Strachan wrote:
> Well, I'm using a "modified" game executable which does not check for the 
> presence of a CD. However, it hooks into the original game executable so that 
> the game can validate itself. Alas, it's probably not the more pure win32 
> application known to man..

Does it work if you use a legit copy?

> http://devzero.co.uk/~alistair/wine/dump.log

It appears to be the .iyhivx section, it's not marked MEM_EXECUTE and
googling it shows people reporting backtraces with offsets just into it
... so looks like Marcus is correct.

In which case this is really a Warcraft bug. But as NX is not really
enforced on Windows I guess we need to fix this in Wine by always marking
sections executable or something. Well it's easy to do but I dunno what AJ
wants and he just went on holiday. For now just hack dlls/ntdll/loader.c
to always mark sections as executable.

thanks -mike




More information about the wine-devel mailing list