Downloadliste

Sponsored link

Projektbeschreibung

Electric Fence (efence) stops your program on the exact instruction that overruns (or underruns) a malloc() memory buffer. GDB will then display the source-code line that causes the bug. It works by using the virtual-memory hardware to create a red-zone at the border of each buffer - touch that, and your program stops. Catch all of those formerly impossible-to-catch overrun bugs that have been bothering you for years.

Systemanforderungen

Die Systemvoraussetzungen sind nicht definiert
Information regarding Project Releases and Project Resources. Note that the information here is a quote from Freecode.com page, and the downloads themselves may not be hosted on OSDN.

2005-08-30 16:43
2.4.16

Der Schwerpunkt dieser Version ist eine bessere Portabilität. Eine standardisierte strerror () wird nun verwendet. Ein Fehler, der auftrat, wenn EF_NO_LEAKDETECTION definiert wurde, wurde behoben. Zuwendungen von Standard-Bibliotheken sind vor ef_init markiert () wird aufgerufen, um eine besondere Behandlung in Leck Kontrolle zu ermöglichen. Die standardmäßig in eftest wurde geändert, um zwei Signale auf einmal verwenden: SIGSEGV und SIGBUS. Alignments größer als Seitengröße sind jetzt für memalign erlaubt (). Die EF_EXPLICIT_INIT Präprozessor Flagge wurde hinzugefügt, um umgehen, Buggy-Umgebungen. Umwelt Lecks sind nicht mehr gemeldet.
Tags: Minor bugfixes
The main focus of this release is better
portability. A standardized strerror() is now
used. An error which occurred when
EF_NO_LEAKDETECTION was defined was fixed.
Allocations from standard libraries are marked
before ef_init() is called to allow special
treatment in leak-checking. The default in eftest
was changed to use two signals at once: SIGSEGV
and SIGBUS. Alignments bigger than page size are
now allowed for memalign(). The EF_EXPLICIT_INIT
preprocessor flag was added to work around buggy
environments. Environment leaks are no longer
reported.

2005-07-25 08:11
2.4.15

Fehler auf der Seite Management unter Windows, in dem virtuellen Adressraum wurde nie veröffentlicht wurde, obwohl dieses Problem zu beheben Speicher-Pooling (unter Windows) vermeidet. Ein ExitOnFail Parameter wurde hinzugefügt, um Page_Create (). Eine Warnung wird nun angezeigt, wenn eine Zuweisung und nicht ExitOnFail ausgeschaltet ist. _eff_allocate () wurde diese erweiterte.
Tags: Major bugfixes
Bugs in page management under Windows where virtual address space was never released was fixed, though this fix avoids memory pooling (under Windows). An ExitOnFail parameter was added to Page_Create(). A warning is now displayed when an allocation failed and ExitOnFail is off. _eff_allocate() was extended for this.

2005-07-16 05:54
2.4.14

Bugfixes wurden in Memory-Management gemacht. Neue Makros sind zwar vorgesehen, new und delete. Funktionen dafür extra Kontrollen wurden für strdup hat (), memcpy (), strcpy (), strncpy (), strcat () und strncat (). Eine neue EF_SHOW_ALLOC Umwelt Schalter wurde aufgenommen.
Tags: Minor feature enhancements
Bugfixes were made in memory management. New macros were provided for new and delete. Functions for doing extra checks were added for strdup(), memcpy(), strcpy(), strncpy(), strcat(), and strncat(). A new EF_SHOW_ALLOC environment switch was included.

2005-02-13 07:20
2.4.13

Diese Version überarbeitet und überarbeitet alle internen Funktionen. Es fügt ein EF_OLD_NEW_MACRO Präprozessor Flagge, um die Kompatibilität zu alten NEW_ELEM halten () / neues_array ()-Makros. Freeing bereits freigegebenen Speicher ist nun erkannt. Es speichert __FILE__ und __LINE__ von free (), um in der Lage, die Position des ersten freien drucken. Diese Version behebt einen Bug, der beim Aufruf eftest mit einer höheren Nummer zB 10000 aufgetreten. Es gab Bugfixes zu memalign (), die nicht exportiert wurde. Makros und Funktionen sind jetzt auch für valloc () definiert.
This release reworks and revises all internal functions. It
adds an EF_OLD_NEW_MACRO preprocessor flag to keep
compatibility to old NEW_ELEM() / NEW_ARRAY() macros.
Freeing already freed memory is now detected. It stores
__FILE__ and __LINE__ of free() to be able to print the
position of first free. This version fixes a bug that occurred
when calling eftest with a higher number e.g. 10000. There
were bugfixes to memalign() which was not exported.
Macros and functions are now also defined for valloc().

2005-02-03 05:58
2.4.12

Ein EF_NO_GLOBAL_MALLOC_FREE Präprozessor Flagge wurde hinzugefügt, um umgehen, Buggy-Umgebungen. Dadurch wird verhindert, malloc (), free (), realloc () und calloc () entfernt, in den globalen Namensraum des efence Bibliothek ablegen, also nur Dateien, die efence.h gehören die efence malloc () aufrufen, Ersatz-Funktionen. Diese Fahne ist auch hilfreich, wenn die Verknüpfung, um nicht kontrolliert werden kann, zum Beispiel, wenn der Speicher ist aus einer Bibliothek zugeordnet efence nicht verwenden, aber frei () ist von der Nutzung efence aufgerufen. Dies ist ein Problem bei der Verwendung. DLL-Bibliotheken gegen msvcrt.dll und seine malloc gelinkten / kostenlos unter MS Windows.
Tags: Minor feature enhancements
A EF_NO_GLOBAL_MALLOC_FREE preprocessor flag was added to work around buggy environments. This prevents malloc(), free(), realloc(), and calloc() from being put into the global namespace of the efence library, thus only files which include efence.h will call the efence malloc() replacement functions. This flag is also helpful where the linking order cannot be controlled, for example when memory is allocated from a library not using efence, but free() is called from using efence. This is a problem when using .dll libraries linked against msvcrt.dll and its malloc/free under MS Windows.

Project Resources