The FreeBSD Ports Archive

Freebsd | Contact
Welcome to FreeBSD Software


FreeBSD devel : ElectricFence

Debugging malloc() that uses the VM hardware to detect buffer overruns

 Electric Fence is a different kind of malloc() debugger. It uses the virtual
memory hardware of your system to detect when software overruns the boundaries
of a malloc() buffer. It will also detect any accesses of memory that has
been released by free(). Because it uses the VM hardware for detection,
Electric Fence stops your program on the first instruction that causes
a bounds violation. It's then trivial to use a debugger to display the
offending statement.

It will probably port to any ANSI/POSIX system that provides mmap(), and
mprotect(), as long as mprotect() has the capability to turn off all access
to a memory page, and mmap() can use /dev/zero or the MAP_ANONYMOUS flag
to create virtual memory pages.

Complete information on the use of Electric Fence is in the manual page
efence(3).
 




ElectricFence history


v. 1.25
date: 2007/07/27 13:00:52;  author: mi;  state: Exp;  lines: +1 -1
Add a patch found on RedHat mailing list. It is quite important,
where size_t is wider than int...

Bump PORTREVISION.

v. 1.24 date: 2007/04/22 12:25:43; author: des; state: Exp; lines: +1 -0 Preserve whitespace in the argument list. This can be tested by running "ef.sh /bin/echo a\ \ b"; the correct output is "a b\n", but before this commit it would print "a b\n" instead.
v. 1.23 date: 2006/08/14 22:55:05; author: clsung; state: Exp; lines: +1 -1 - s,INSTALLS_SHLIB,USE_LDCONFIG,g - these include comms/ converters/ databases/ devel/ maintained by ports@ PR: ports/101916 Submitted by: Gea-Suan Lin
v. 1.22 date: 2005/10/16 15:12:30; author: vs; state: Exp; lines: +2 -2 - Prune MASTER_SITES: this particular flavour is no longer available from perens.com - Nuke 3-line plist while here Noticed by: fenner's magical distfile survey
v. 1.21 date: 2004/05/07 08:31:13; author: vs; state: Exp; lines: +2 -4 - Unbreak on non-std hardware: Use -DPAGE_PROTECTION_VIOLATED_SIGNAL=SIGBUS on all archs except alpha. - Pass CC through while here. PR: ports/65878 Submitted by: Tim Robbins
v. 1.20 date: 2003/12/24 09:27:51; author: linimon; state: Exp; lines: +4 -0 Per bento logs, mark as broken on the 64-bit architectures.
v. 1.19 date: 2003/03/02 16:40:14; author: naddy; state: Exp; lines: +4 -6 Update master sites. PR: 48827 Submitted by: Kimura Fuyuki
v. 1.18 date: 2003/02/20 17:06:38; author: knu; state: Exp; lines: +1 -0 De-pkg-comment.
v. 1.17 date: 2002/11/10 16:45:27; author: lioux; state: Exp; lines: +0 -2 o Rollback PORTCOMMENT modifications while this feature's implementation is better studied o Turn PORTCOMMENT variable in Makefile back into pkg-comment files Approved by: kris (portmgr hat), portmgr, re (silence)
v. 1.16 date: 2002/11/06 22:44:20; author: adamw; state: Exp; lines: +2 -0 Use PORTCOMMENT in the Makefile, and whack the pkg-comment. Approved by: pat
v. 1.15 date: 2002/03/16 17:25:07; author: obrien; state: Exp; lines: +2 -2 Fix bad reference. PR: 35977 Submitted by: Slaven Rezic
v. 1.14 date: 2001/02/28 10:22:59; author: obrien; state: Exp; lines: +4 -1 Install the shared lib version and ef wrapper script. Partically Submitted by: Daniel O'Connor
v. 1.13 date: 2000/09/22 10:30:30; author: kris; state: Exp; lines: +3 -3 Correct PLIST Submitted by: onigiri
v. 1.12 date: 2000/08/27 01:34:15; author: obrien; state: Exp; lines: +7 -3 Update to version 2.2.2.
v. 1.11 date: 2000/04/11 21:26:53; author: mharo; state: Exp; lines: +4 -4 PORTNAME/PORTVERSION update
v. 1.10 date: 2000/03/22 00:26:28; author: obrien; state: Exp; lines: +2 -1 Restore useless version required comments.
v. 1.9 date: 2000/03/20 02:35:59; author: obrien; state: Exp; lines: +1 -2 Remove the "version required" line.
v. 1.8 date: 2000/01/03 01:25:23; author: obrien; state: Exp; lines: +5 -2 I seem to be in the development tool business, so try to keep an eye on this port.
v. 1.7 date: 1999/12/22 17:30:46; author: fenner; state: Exp; lines: +1 -3 Remove jraynard as MAINTAINER, since he no longer has an account. Move distfiles from ~jraynard/public_html/ports/distfiles/ to ~fenner/public_html/distfiles-- this does not imply that I take any responsibility for the ports but I'll at least host the existing distfiles =)
v. 1.6 date: 1999/08/25 05:47:15; author: obrien; state: Exp; lines: +1 -1 Change Id->FreeBSD.
v. 1.5 date: 1998/09/04 14:24:03; author: dt; state: Exp; lines: +1 -6 Unbroke for -current: the build problem seems disappeared.
v. 1.4 date: 1998/05/03 14:57:26; author: jseger; state: Exp; lines: +6 -1 Fails to build under current.
v. 1.3 date: 1997/11/15 10:47:30; author: asami; state: Exp; lines: +2 -1 De-capitalize PKGNAME - a single library can't start with uppercase.
v. 1.2 date: 1997/11/13 19:51:54; author: jraynard; state: Exp; lines: +4 -7 It turns out that the tarball is on Sunsite, but for some reason my local archie server doesn't know about it. Also clean up some careless editing.
v. 1.1 date: 1997/11/12 23:46:30; author: jraynard; state: Exp; branches: 1.1.1; Initial revision
v. 1.1.1.1 date: 1997/11/12 23:46:30; author: jraynard; state: Exp; lines: +0 -0 ElectricFence, the debugging malloc library =============================================================================



Main menu

FreeBSD

Program categories

Freebsd accessibility
Freebsd archivers
Freebsd astro
Freebsd audio
Freebsd benchmarks
Freebsd biology
Freebsd cad
Freebsd chinese
Freebsd comms
Freebsd converters
Freebsd databases
Freebsd deskutils
Freebsd devel
Freebsd dns
Freebsd editors
Freebsd emulators
Freebsd finance
Freebsd french
Freebsd ftp
Freebsd games
Freebsd german
Freebsd graphics
Freebsd hebrew
Freebsd hungarian
Freebsd irc
Freebsd japanese
Freebsd java
Freebsd korean
Freebsd lang
Freebsd mail
Freebsd math
Freebsd mbone
Freebsd misc
Freebsd multimedia
Freebsd net
Freebsd net-im
Freebsd net-mgmt
Freebsd net-p2p
Freebsd news
Freebsd palm
Freebsd polish
Freebsd ports-mgmt
Freebsd portuguese
Freebsd print
Freebsd russian
Freebsd science
Freebsd security
Freebsd shells
Freebsd sysutils
Freebsd textproc
Freebsd ukrainian
Freebsd vietnamese
Freebsd www
Freebsd x11
Freebsd x11-clocks
Freebsd x11-drivers
Freebsd x11-fm
Freebsd x11-fonts
Freebsd x11-servers
Freebsd x11-themes
Freebsd x11-toolkits
Freebsd x11-wm