Main Page | Compound List | File List | Compound Members | File Members

Mail Filter Documentation


A Rule Based SPAM Filter

The Web page for this email filter can be found at An Email Filter for a UNIX Shell Account on

This e-mail filter is designed for email on UNIX/Linux shell accounts.

Installing the SPAM Filter

To install do the following:

  1. Unzip the software. The software is packaged with GNU tar and is compressed using gzip. To unpackage:

    tar xzvf mail_filter.tar.gz

    The software will be unpackaged into the directory mail_filter

  2. Build the software. The Makefile is targeted at UNIX make, or, on Linux pmake. Simply enter the command pmake and the mail_filter executable should be built.

    I developed the software on Windoz, so a Windoz Makefile (for nmake) is included as well (see Makefile_win). To build on Windoz enter:

    nmake -f Makefile_win
  3. The mail filter parameter file SpamFilterParams must be in your home directory. So copy the parameter file mail_filter/SpamFilterParams to your home directory.

  4. Make a symbolic link from your email file to a file in your local directory named inbox. If your email file is /var/mail/iank then make the following symbolic link

    ln -s /var/mail/iank inbox
  5. Set up mail forwarding. Unfortunately this differs on Linux and on UNIX (e.g., freeBSD).

  6. That should do it. Sorry, I can't provide support if this does not work.

Design Objectives

The SPAM filter has the following design objectives:

Rules for Recognizing Email and Spam

The email is treated as a valid email and copied into the inbox file (which, as noted above is a symbolic link to your mail file) if:

Recognizing spam:

The end of the email header is recognized by the first occurance of a blank line. The processing done for the email body includes:

Other Features

Generating the Documentation

The source code documentation for this software is formatted for doxygen, which is available from

Assuming that doxygen is installed on your system, you can regenerate this documentation with the command

make -f Makefile_win doxygen (on Windoz) pmake -f Makefile doxygen (on Linux)

Copyright and Use

This email filter was written by Ian Kaplan, Bear Products International. It is copyrighted by Ian Kaplan, 2004,

You may use this software for any purpose, with the two conditins listed below.

  1. You must preserve this copyright notice in this software and any software derived from it.

  2. You accept any risk entailed in using this software. By using this software, you acknowledge that you have a sophisticated background in software engineering and understand the way this software functions. You further acknowledge that using this software may result in the irretrievable loss of important e-email and you alone are responsible for this loss.

If either of these conditions are unacceptable, you may not use any part of this software.

Please send any bug fixes or suggested source changes to:

Generated on Sat Mar 27 13:07:37 2004 for Mail Filter by doxygen 1.3.3