Annoyance Filter

The junk E-mail plague just seems to get worse and worse. Annoyance Filter is a tool which permits individuals to immunise themselves against time-wasting and offensive unsolicited E-mail. It doesn't kill the rats or fleas, but at least it keeps the pathogen they propagate from ever affronting your eyes. Annoyance Filter is an adaptive, trainable E-mail filtering program. You train it to distinguish mail you're interested in reading from junk you don't wish to receive by supplying it with a collection of each kind of mail—the more the better. Then, when a new message arrives, the content of each is compared with statistical profiles of legitimate mail and junk computed from the training collections, and the probability the message's being junk is estimated. If the junk probability exceeds a given threshold, you may wish to automatically discard the message or quarantine it in a containment facility for later review. Junk mail evolves “protective colouration” over time to evade conventional filters, but this is of no avail against Annoyance Filter, which can be re-trained at any time with contemporary mail and junk collections.

Annoyance Filter is written in standard C++ and can be installed on any system with a suitable compiler. On Unix systems, Annoyance Filter can work in conjunction with Procmail. There is nothing Unix- or Procmail- specific about Annoyance Filter; it can be integrated into any mail processing system which permits an external program to filter incoming mail. Developers familiar with Windows, Macintosh, and other proprietary mail clients are encouraged to adapt the program for use with them and contribute their work to this effort.

New release 1.0d builds with GCC 3.4 as well as earlier versions, and adds the ability to parse deliberately mis-formatted MIME headers some junk mail uses to avoid filters.