|
|||||||
|
|||||||
|
|||||||
DieHard automatically hardens software applications against a wide
range of bugs. These bugs — known as memory errors — often
end up as serious security vulnerabilities, cause crashes, or lead to
unpredictable behavior. DieHard either eliminates these bugs altogether, or
avoids them with high probability. In other words, DieHard can take
some buggy programs and make them bug-free (or close to it). DieHard has multiple uses. It has been used to allow buggy programs to run correctly. More importantly, DieHard can be used as a plug-in replacement for malloc to protect your applications from unanticipated errors and vulnerabilities. NEWS: Release 1.0, June 26 2006 - adapts to application memory usage requirements and prevents all standard library-based heap overflows. How do I get DieHard?Download DieHard. It is strongly recommended that you sign up for the DieHard mailing list for information about new releases.
How do I build and use DieHard?The source code for DieHard is in the src/ directory.standaloneTo use the standalone version, just enter compile (Linux, Solaris) or compile-winhard (Windows). On Linux and Solaris, use DieHard by setting the LD_PRELOAD environment variable, as in
replicatedTo use the replicated version, compile with make and invoke your program with (for example):
How well does DieHard work?
Where can I discuss DieHard or get notified about future releases?The right place to do all that is on the DieHard mailing list.How's the performance?DieHard is fast, sometimes faster than the default Windows allocator. Of course, it consumes more memory, but provides much more reliability.Terms of useDieHard is Copyright (C) 2005-6 Emery Berger, University of Massachusetts Amherst, and is free for noncommercial use. |
|||||||