[Bug 21355] New: Need heap overrun detection
wine-bugs at winehq.org
wine-bugs at winehq.org
Wed Jan 13 12:32:37 CST 2010
http://bugs.winehq.org/show_bug.cgi?id=21355
Summary: Need heap overrun detection
Product: Wine
Version: 1.1.36
Platform: x86
OS/Version: Linux
Status: NEW
Keywords: patch
Severity: normal
Priority: P2
Component: ntdll
AssignedTo: wine-bugs at winehq.org
ReportedBy: dank at kegel.com
Microsoft Windows XP obeys a number of flags that turn on
additional heap sanity checks which detect write-past-end
and write-after-free of heap allocations.
Wine should implement similar overrun detection; apps that
overrun their heap buffers should either get an error from the
heap call, or optionally be terminated aggressively, if we're
feeling really strict (I think Windows 7 does this).
Furthermore, Wine's heap code should contain Valgrind annotations
to let Valgrind produce good error messages even on read-after-free
or read overrun errors.
Patches to implement most of this are in use today
in the wine valgrind bot at http://kegel.com/wine/valgrind/logs
and in the chromium continuous build and test bot.
Here are the latest version of these patches:
(basic check-whether-unused-bytes-were-modified)
http://www.winehq.org/pipermail/wine-patches/2010-January/083609.html
http://www.winehq.org/pipermail/wine-patches/2010-January/083610.html
http://www.winehq.org/pipermail/wine-patches/2010-January/083611.html
(add 8 byte redzone to each allocation; can be increased, as sometimes 32 byte
redzones catch more bugs.)
http://www.winehq.org/pipermail/wine-patches/2009-November/081804.html
(use-after-free check)
http://www.winehq.org/pipermail/wine-patches/2009-November/081855.html
I've been trying to get these committed, but so far without much luck.
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
More information about the wine-bugs
mailing list