Télécharger la liste

Description du projet

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.

Système requise

System requirement is not defined
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-02-03 05:58 Retour à la liste release
2.4.12

Un drapeau préprocesseur EF_NO_GLOBAL_MALLOC_FREE a été ajouté à contourner les environnements buggy. Cela empêche malloc (), free (), realloc () et malloc () d'être mis en l'espace de nommage global de la bibliothèque ÉFENSE, ainsi que les fichiers qui incluent efence.h attirera l'ÉFENSE malloc () des fonctions de remplacement. Ce drapeau est également utile lorsque l'ordre enchaînement peut pas être contrôlé, par exemple lorsque la mémoire est allouée à partir d'une bibliothèque à l'aide ÉFENSE pas, mais libre () est appelée à partir en utilisant ÉFENSE. Il s'agit d'un problème lors de l'utilisation. Bibliothèques DLL lié avec msvcrt.dll et ses malloc / gratuit sous 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