Source code repository - June 3, 2015

The canonical source code repository has been moved from to

Source code repository - January 21, 2015

The canonical source code repository has been moved to
This contains all work that has not been released since 0.60

Spamilter verion 0.60 - November 27, 2005

More memory leak leak fixes
Changes for rfc ignorant hosts
Fixes for Ipfwmtad and support for ipfw2
Add external definition database for filname extensions
Fix for RFC 2821 compliance
As always, see see the Changelog for details

Holly time lag batman... - Nov 21, 2005

Wow, it's been a while since I've done a release!
I've had some emails asking if the project is dead.
Well, I'd have to say.... mm.... paused, not dead.
My job has kept me extremely busy.
I'm working on a release now, and plan to post it by this week end.

Two tidbits... - May 21, 2004

First, Dayne from Complete Web says...

I've put together a nice php page from our main email server for JUST
* domains showing the number of spams, the breakdown,
and our current setup - all dynamically generated! Show it off if you'd


And second, from the "My head is starting to swell" department;
I was vanity surfing Spamilter when I came across a link to
Apparently they use the File attachment, Sender Address Verification, and Invalid
MTA Hostname filter portions of Spamilter as hinted at by their FAQ, in their
Sendmail Plugin product, and with the requsite attribution scattered throughout their documentation.
Very cool!, I wondered if this might happen...

Spamilter verion 0.59 - April 10, 2004

It is highly recommended that all installations update to this version.
Fixes to Spamilter for segfaults on solaris.
Also that elusive socket descriptor leak that shows up under high load systems.
Added support for POP before SMTP to treat the client as a local net host.
Fixes and enhancements to ipfwmtad.
Added two new sub-tests to the MtaHostChk filter. (see the FAQ)
Added SPF via libspf
As always, see the Changelog for details.

Spamilter verion 0.58 RC1 - January 4, 2004

More memory leak and socket descriptor leak fixes
Corrected filter behavior for white listed recipent Accept logic
Fix for handling white space in attachment headers
Updated smtp server error messages and added anchors to the url
Preliminary support for compiling on solaris
For details, see the Changelog

Spamilter verion 0.57 - October 12, 2003

Fixed a memory free() bug
Corrected filter behavior for white listed sender Accept logic
Automatic connection rate limiting via firewall blocking and ipfwmtad
Plus more, see the Changelog for more details.

Spamilter verion 0.56 - September 14, 2003

Spamilter now records the reject reason in field 5 of syslog
ipfwmtad now has cli operators to add and remove entries from the fwblock list

Spamilter verion 0.55 - September 2, 2003

Fixed segfaults from 0.54.
Added the MtaHostIpfw filter to automatically block, via firewall rule injection, further connects from MTAs that fail MTA hostname verification.

Spamilter verion 0.54 - August 21, 2003

Added the MsExtChk filter to reject email that contain attachemnts with a select set of extensions. See Configuration documentation for a list.

Development roadmap posted - August 17, 2003

I have posted a development RoadMap.
Comments and feature suggestions are welcome.

Spamilter verion 0.53 - August 10, 2003

Got rid of a periodic core dump.

Documentation updates.

See the Changelog for more.

Patch for socket descriptor leak - June 21, 2003

A socket descriptor leak that results in an application core dump after a large volume of connections has been identified and patched. Here is the patch. It is recommended that all pre-0.53 installations apply the patch.

Server hard drive failure - June 17, 2003

Long story short, Spamilter is now known to work on FreeBSD 4.8-RELEASE / Sendmail 8.12.8 out of the box, with no need to manually LibMilter "Enable" sendmail, as it is allready done.

Read on for the long story.

Due to a 4:30am - 5:30am violent thunder storm on June 15th that woke me up out of a sound sleep (I am not easily roused when I sleep), I downed the server to protect it and wen't back to sleep. I restarted the server somewhere around 8:00am. After seeing the familiar boot proccess and a login prompt, I went to work.

Some hours later at work I discovered the server was no longer acting normally. Upon arriving home after work, I examined ther server to find that the hard drive had spun down, and the OS was wedged trying to read/write to the hard drive.

A power cycle, and an auto fsck later, I saw a normal login prompt. Minutes later though, I started to hear bad noises coming from the hard drive, and then the OS wedged again after the hard drive spun down.

Mumble mumble, bitch and moan, hard drive is dead, must restore from tape to new drive.

EEEP!... The last backup I did was two weeks previous. If I can't get the data off of the dead hard drive, I'll loose all work since then.

I should use the newest version of the OS instead of a total restore, but can't cause the CDs are at work, and I don't want to drive to work to get them. Down the server, and sulk.

Ok, next day, home from work with OS CDs in hand. It's time to reload/restore the server. I had planned to use my nifty new promise raid card and two new hard drives that I had stashed for just such an occasion, but the OS CD panics in the boot stage. Strange! Take out the raid card and use just one hard drive. The OS CD still panics.

Ok, try an older spare maxtor (that is a result of a warranty exchange. I HATE hard drives!) Progress now, I've gotten the OS loaded, time for tape restore. On the off chance that the old hard drive would co-operate, I'll attempt to copy the data off of it. I was able to fsck it, and mount it read-only. To my joyfull supprise, I was able to copy all data areas off of the old drive to the new. WHEW! Looks like I'll have to upgrade the mobo to use the new raid/hard drive combos. Sigh.

After that, I started to bring up the services and was happily supprised to find that on FreeBSD 4.8 sendmail is libmilter enabled out of the box.

Now I have to see if I can get a warranty exchange on the old drive since it is only 9 months old. Mumble mumble, bitch and moan, I hate hard drives.

I should'a just left the server up, and taken my chances.

RedHat 9.0 - June 10, 2003

Spamilter 0.52 will compile, link, and run on RedHat 9.0 after sendmail has been downloaded and compiled with libmilter enabled, using;

make -f Makefile.linux

Adam Gibson says;

"It seems to be working fine so far.  I have it running on my personal domain [edited] without problems."
Spamilter verion 0.52 - June 3, 2003

Changes so that it does compile on Linux with some Makefile tweaking of library paths.

See the Changelog

Spamilter verion 0.51 - May 27, 2003

Updates include bug fixes, and changes so that it should compile on Linux with some Makefile tweaking of library paths.

See the Changelog

Spamilter verion 0.50 - May 3, 2003

This is the first public release of Spamilter.

I have been using it now for the past couple of months (in various versions) at four different sites. It seems to be stable, and functional. One of the sites (my work) receives easily 1000 emails a day. How it scales/performs beyond that, is as yet, undetermined.

Presently it is known to work on the following configurations, however there is no reason that it shouldn't work with others;

  • FreeBSD 4.5-RELEASE / Sendmail 8.11
  • FreeBSD 4.2-RELEASE / Sendmail 8.11

If someone could help with autoconf configure scripts and a linux port, it would be appreciated.