Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > by-pkgid > ec429c0d39c69ec7f62525f3e7954aef > files > 6

mailfilter-0.4.0-2mdk.ppc.rpm

Mailfilter Frequently Asked Questions and Answers

General Questions:

     * What is Mailfilter?
     * Who needs Mailfilter?
     * How does Mailfilter interact with my current e-mail environment?
     * Where do I find out more about Mailfilter?
     * I think, I found a bug in Mailfilter. Will you fix it?
     * I have good ideas for new features. Will you implement them?
     * Mailfilter is wonderful. How can I support this project?

Installation:

     * What are the system's requirements to install and run Mailfilter?
     * What should I know to make Mailfilter run on Windows 9x/2000/NT?
     * How do I install Mailfilter?
     * Running 'configure' doesn't work.
     * Running 'make' doesn't work.
     * Running 'make' was easy, but running 'make install' doesn't work.
     * Why doesn't the compiler like my flex output, or complains about
       wrong declarations?
     * Is there any way to decrease the size of the mailfilter binary?

Configuration:

     * Mailfilter complains that its rcfile ($HOME/.mailfilterrc) is
       missing.
     * Mailfilter complains that its logfile can't be accessed.
     * Mailfilter complains about the syntax of my rcfile.
     * How do these filters work? What are Regular Expressions anyway?
     * Is it possible to define what should be delivered, rather than vice
       versa?
     * Can I override some filters? (How to define 'friends'/trusted lists)
     * Is it possible to split the rcfile into several smaller files?
     * How do I get rid of messages sent in exotic (e.g. Asian) languages
       (unknown to me)?
     * How do I fine tune other programs to work with Mailfilter?
     * I'm using multidrop mail collection with fetchmail and can't get
       Mailfilter to work.
     * Are there any sample rcfiles ($HOME/.mailfilterrc) ?
     * I am scared to try out Mailfilter, cause I might accidently delete
       everything!

Run-time Errors:

     * Because of some missing libraries, Mailfilter won't start.
     * Mailfilter complains that a specific file couldn't be accessed.
     * I get DNS lookup errors.
     * Mailfilter says it sent a specific command to the server, but it
       responded with an error.
     * Mailfilter says that some keyword is deprecated.
     * The compilation of Regular Expressions failed.
     * I frequently get an error message saying that my mail server is not
       responding.
     * Help, Mailfilter hangs!

Special Features:

     * Can Mailfilter check more than one account?
     * Does Mailfilter support any other protocols besides POP3?
     * Is there a way to send encrypted password information to the server?
     * Mailfilter logs are so plain; I'd like to have better
       spam-statistics!
     * How can I get Mailfilter to auto-reply to spam?

Miscellaneous:

     * I think I accidently deleted an important e-mail with Mailfilter.
       Can I get it back somehow?
     * If I make changes to rcfile, does it affect immediately?
     * Sometimes a few (spam-) messages slip through. How come?
     * My question is not covered by this FAQ. Help!!
     ___________________________________________________________________

General Questions:

What is Mailfilter?

   Mailfilter is a flexible utility for UNIX (-like) operating systems to
   get rid of unwanted spam mails, before having to go through the trouble
   of downloading them into the local computer. It offers support for one
   or many POP3 accounts and is especially useful for dialup connections
   via modem, ISDN, etc.
   Mailfilter connects to any POP3 mail box and compares part of its
   content to a set of user defined filter rules. That way the spam gets
   deleted directly on the mail server.
   With Mailfilter you can define your own filters (rules) to determine
   which e-mails should be delivered and which are considered waste. Rules
   are Regular Expressions, so you can make use of familiar options from
   other mail delivery programs such as e.g. procmail.
   Mailfilter is released under the terms of the GNU General Public
   License. For more information, see the README and COPYING documents
   provided with the Mailfilter program.

Who needs Mailfilter?

   If you do not pick up your e-mail from a POP3 server, then there is no
   need to install Mailfilter. But if you do get your e-mail from one or
   many POP3 accounts and if you are sick and tired of downloading
   megabytes of worthless spam (usually those are anonymous advertisements,
   chain mails, etc.), then you should give Mailfilter a try.
   It will help save you band width and time by deleting spam directly on
   your server, before you have to download and read those messages. By
   defining your own personal filter rules, you can tell Mailfilter which
   e-mails should be deleted.

How does Mailfilter interact with my current e-mail environment?

   It doesn't matter which programs you use to fetch your mail with,
   because Mailfilter is an independent application. It will not interfere
   with your favourite e-mail client. You may just want to start Mailfilter
   every time you are about to download new e-mail from a POP3 server, or
   maybe just once a day. That's entirely up to you.
   However, if you are using highly configurable mail programs such as
   fetchmail, then there are some clever ways to get Mailfilter cooperate
   with them directly. Section "How do I fine tune other programs to work
   with Mailfilter?" describes this in more detail.

Where do I find out more about Mailfilter?

   All relevant documentation for Mailfilter (including this FAQ) is
   provided with the Mailfilter distribution. Online versions of some of
   these documents are available on the official Mailfilter homepage:

   http://mailfilter.sourceforge.net/

   On this homepage you may also find additional information on Regular
   Expressions and related links to other programs that work well with
   Mailfilter. If you have already installed the program, be sure to read
   the man pages mailfilter(1), mailfilterrc(5) and mailfilterex(5).

I think, I found a bug in Mailfilter. Will you fix it?

   If it's really a bug that you found (and not a feature), then I will of
   course try to do something about it. Generally it's a good idea to
   report bugs to the mailing list mailfilter-dev@lists.sourceforge.net,
   but you can also directly contact the author of Mailfilter. When you
   report bugs, please provide as much additional information as possible
   on what may have caused the problems and what consequences you suffered.
   Such information always includes the name of your operating system and
   hardware platform, description of your network connection and excerpts
   from the Mailfilter log files. When creating a log file, please use the
   highest level of verbosity available.
   mailfilter --verbose=6

   Older versions of Mailfilter do not hide your passwords in the logs.
   Remove these entries before posting anything to the mailing list!

I have good ideas for new features. Will you implement them?

   Of course that depends on the feature you are asking for. There are some
   frequently requested features ('autoreply' ranks very high) that will
   most likely never make it into the source code, but at this point I am
   sure Mailfilter could be expanded with dozens of useful additions and
   I'm glad to hear about them (if they are not too far 'off the track').
   I'm even more glad if you're able to help implement them.

Mailfilter is wonderful. How can I support this project?

   There are many ways to express your appreciation: you could join forces
   and submit code, but even if you are not a programmer, you could still
   contribute by sending bug reports, suggestions or useful add-on scripts
   to our mailing list(s). Every contribution is welcome! Albeit, there is
   also a web page to donate money to the project. The money would help
   immensely in keeping the web pages up to date (i.e. cover ISP costs), in
   answering user feedback and questions via e-mail or mailing lists and in
   affording additional hardware for testing purposes (i.e. extra hard
   disks with alternative operating systems). Mailfilter is free software,
   which means it also depends on the support it gets from the community.
     ___________________________________________________________________

Installation:

What are the system's requirements to install and run Mailfilter?

   Here is an excerpt from the INSTALL file that is part of the source
   archive of Mailfilter:

   "To run Mailfilter it's best to have a UNIX (-like) operating system,
   but it also compiles fine with Windows 9x/NT/2000 if additional
   libraries and tools are installed (e.g. Cygwin or DJGPP). So far
   Mailfilter has been successfully compiled and tested with
     * Solaris 8 / SunOS 5.8
     * Irix 6.5
     * FreeBSD 4.1.1-RELEASE, 4.5-RELEASE
     * Mac OS X 10.0
     * NetBSD 1.5
     * Linux: Mandrake 7.0 - 8.2, Debian 2.1, RedHat 6.2 - 7.1, Slackware
       3.9 (See doc/README.Slackware for further details), SuSE 6.2,
       LinuxPPC
     * Windows NT, 2000 (See doc/README.Windows for further details)

   but it may well work on other platforms, too. (Please report success if
   you have managed to compile it on any other system - thanks.)

   To compile/install Mailfilter you also need to have a fairly recent
   version of a (GNU) C++ compiler (e.g. GCC >= 2.95.2) and your system
   must support BSD-type sockets (in general all UNIX systems do meet this
   criterion). For compilation you will also need the GNU autotools
   (autoconf, automake, gettext, m4) and the programs flex and yacc (or the
   GNU substitute bison)."

What should I know to make Mailfilter run on Windows 9x/2000/NT?

   Mailfilter was originally designed to only support UNIX (-like)
   operating systems. But if you have additional libraries such as the
   Cygwin environment, DJGPP or MinGW installed, then you should also be
   able to translate the program on your Windows 9x/2000/NT platform. Have
   a look at the doc/README.Windows file that comes with the Mailfilter
   distribution or consult the homepage for additional information and
   pre-compiled binaries.

How do I install Mailfilter?

   If you have downloaded the compressed Mailfilter source code archive,
   then please refer to the INSTALL file provided by that archive. Binary
   packages (if available for a particular program version) should be
   installed as any other package of that kind. For example you could use
   the command 'rpm -U packagename.rpm' for the RedHat packages.
   Note: even if you did not encounter any problems installing the program,
   I strongly recommend reading the INSTALL file anyway in order to find
   out about the set-up of Mailfilter. The program does not work without
   spending a little bit of time on configuration first.

Running 'configure' doesn't work.

   If your system lacks some of the requested features/libraries/compilers,
   then try installing them and run 'configure' again. But don't forget to
   remove the file config.cache first, or the new components can not be
   found. If it's a more serious problem that can't be fixed that way,
   consider reporting it as bug.

Running 'make' doesn't work.

   On Linux systems the command 'make' typically refers to GNU's gmake.
   Various BSD- and Unix-systems ship with different (non-GNU) versions of
   make though. In that case you need to be sure that the right version of
   make is invoked by typing 'gmake', instead of just 'make' (and later
   'gmake install' instead of 'make install').

   Another common reason why 'make' might fail could be related to your
   system's C++ compiler and its libraries. It's easiest to use GNU CC
   (gcc), even though other C++ and C compilers should work as well. But
   keep in mind that GNU CC releases prior 2.95.x don't know C++ namespaces
   and therefore choke on Mailfilter's source code. So, be up to date.

   A not so obvious reason why compilation abords could be related to
   broken versions of the program flex. Please read section 2.7 of this
   document for further information on this issue.

Running 'make' was easy, but running 'make install' doesn't work.

   The most common cause for this behaviour is that you are trying to
   install Mailfilter into a directory where you do not have the necessary
   permissions to write in. Either reconfigure your Makefile with these
   options
   make clean
   ./configure --prefix=/newdir

   where 'newdir' points to the new location for Mailfilter, or simply
   become 'root' and then run 'make install' again. By default this will
   install the software in /usr/local/bin.

Why doesn't the compiler like my flex output, or complains about wrong
declarations?

   Because most likely you are using a broken version of flex. I believe it
   was RedHat who introduced a current, but broken package of it in version
   7.0 of their Linux distribution. While RedHat have isolated and fixed
   the bug, other derivates may not have done so. For example Mandrake 8.1
   still uses a bad package that needs to be replaced, at least if you want
   to work with the CVS version of Mailfilter.
   The problems with the affected flex packages are incompatible function
   declarations: the generated scanner source code contains definitions
   that also appear in unistd.h, but with a different prototype. It is
   generally a good idea to look for the most recent RedHat RPM (in case
   your Linux distribution is RPM based at all) of flex, if you are
   affected by this problem. RedHat offers a detailed description of the
   situation and a program replacement at:
   http://www.redhat.com/support/errata/RHBA-2001-080.html

Is there any way to decrease the size of the Mailfilter binary?

   For users of UNIX-like systems, yes. When installing the program,
   running 'make install-strip' instead of 'make install' will strip the
   binary as it installs it, drastically decreasing its size.
   If you've already installed mailfilter, but still wish to strip the
   binary, become root, and use the strip command. See the manual page of
   strip(1) for more information.
     ___________________________________________________________________

Configuration:

Mailfilter complains that its rcfile ($HOME/.mailfilterrc) is missing.

   Read the INSTALL file provided with Mailfilter, in which you will find
   an example rcfile set-up. Copy and paste this example, modify it to suit
   your own needs and restart Mailfilter. (Alternatively you can also look
   up the official homepage to find a basic set-up that gets you started
   very conveniently.) If the program still complains, then try to start it
   with the '--mailfilterrc' switch, pointing directly to the new location
   of your rcfile.
   Note: you must have a rcfile file installed somewhere.

Mailfilter complains that its logfile can't be accessed.

   Every rcfile must set the LOGFILE option. Check the given path of your
   logfile in the rcfile, or simply start Mailfilter with the '--logfile'
   switch pointing directly to the desired location. If that doesn't help,
   then check the permissions of the directory where you want Mailfilter to
   store its logs in. It has to be writable.

Mailfilter complains about the syntax of my rcfile.

   Not to worry, you probably misspelled a word or two in the rcfile, or
   you have a couple of blanks hidden at the end of your command's
   parameters. Read through your settings carefully and check for redundant
   white space characters. Typically an entry in $HOME/.mailfilterrc looks
   like this
   COMMAND_NAME = MyParameter

   The command (not necessarily written in capitals) is followed by the '='
   and there are no white space symbols (blanks, tabs, etc.) hidden after
   the parameter. Each command has to be in a separate line of the config
   file.

How do these filters work? What are Regular Expressions anyway?

   With Mailfilter you can define your own filter rules to determine which
   e-mails are considered waste and what should be downloaded into your
   local computer. Such rules are defined by using Regular Expressions. It
   is very common for these kinds of programs to employ this technique
   because of its great flexibility. Consider this simple example: if you
   are not interested to get the 200th advertisement containing information
   about Viagra, you might want to add this to the end of your rcfile
   DENY=^Subject:.*Viagra

   Now every e-mail that contains anything about Viagra in the subject line
   gets deleted right away. You can create similar rules for all of the
   other header fields (cc, To, From, etc.), but be aware of the fact that
   Mailfilter does not allow more than one line per rule. So each new
   filter must be placed in its own line starting with 'DENY'. If you don't
   want the filter rules to be case-sensitive then you also have to add
   this line to your rcfile:
   REG_CASE=no

   A comprehensive list of all supported keywords can be found in the
   mailfilterrc(5) man page. More examples and real-life use cases can be
   looked up in the mailfilterex(5) man page. Study these documents
   carefully! If you're eager to know how Regular Expressions work in
   general, use your favourite UNIX book or have a look at the official
   Mailfilter homepage. There you will find some enlightening links on this
   subject.

Is it possible to define what should be delivered, rather than vice versa?

   Yes, by creating a negative filter. Negative Filters are quite
   restrictive, so you should make sure that you have fully understood how
   these are set up and how they work.
   DENY<>^(To|Cc):.*my-email@address\.com

   Having a simple rule like this added to your rcfile, Mailfilter will
   delete every message which is not directly sent to your e-mail account.
   That is, if there is a message that can't be matched to the above, then
   it automatically qualifies as spam.

Can I override some filters? (How to define 'friends'/trusted lists)

   Yes, using the keyword ALLOW you can define which messages should be
   delivered, regardless of any spam filters that might match. This way you
   can not only define 'friends' lists, but also create a very restrictive
   rule set. Consider this example:

   DENY=^From:.*@spam_isp.org
   ALLOW=^From:.*my_friend@spam_isp.org

   Adding these two lines to your rcfile will filter all messages coming
   from the domain 'spam_isp.org', except for those from your friend
   'my_friend' (who should obviously change his ISP). A comprehensive list
   of all supported keywords can be found in the mailfilterrc(5) and
   mailfilterex(5) man pages. Study them carefully!

Is it possible to split the rcfile into several smaller files?

   This is a feature, officially supported since version 0.3.3 of
   Mailfilter. Use the keyword INCLUDE in your main rcfile to load
   additional program configuration. However, the nesting may only be one
   level deep, i.e. the files included must not include further files.
   Consider this example:
   # From within $HOME/.mailfilterrc we load three
   # additional config files
   INCLUDE=/home/myusername/.mailfilter/servers
   INCLUDE=/home/myusername/.mailfilter/filters
   INCLUDE=/home/myusername/.mailfilter/friends

How do I get rid of messages sent in exotic (e.g. Asian) languages (unknown to
me)?

   Spam is not only a European or American illness. In fact a lot of it
   comes from Asia and a lot of that reaches people who can not read nor
   understand what arrives in their mail boxes. The following filters will
   help you to get rid of e-mails that contain 'unusual' subject tags.
   Consider some excerpts from a typical logfile:
   Subject: ¹²Ïí·ÓÉÆ÷£¨ADSL/CABLE/ISDN/PSTN/SWITCH£©
   Subject: Ç¿ÁÒÍƼöÊôÓÚÄúµÄÍøÉÏÉçÇø£¡(www.I_am_a_Spammer.com)
   Subject: 70ÍòÆóÒµÐÅÏ¢

   All these subjects have one thing in common: They use characters which
   do not fit into the ordinary range of displayable ASCII symbols. A
   hexdump of the last subject line will help to illustrate this:

   0000 53 75 62 6a 65 63 74 3a 20 37 30 cd f2 c6 f3 d2
   0010 b5 d0 c5 cf a2 .. .. .. .. .. .. .. .. .. .. ..

   Even though it is possible to create filters matching these strings, it
   takes a bit of work, since most Regular Expression libraries that
   today's operating systems provide do not support octal or hex escapes
   (something like [\x80-\xfc]). In fact, the negative (and case sensitive)
   message filters are our weapon of choice here:
DENY_CASE<>^Subject: [][A-Za-z0-9ÄÖÜäöüß
           ^         ^^          ^^^^^^^
           1         23          4

        :;.,!"§$%&/()=?{}_<>#~´'` |@*+°^\-]+$
                              ^^         ^^^^
                              5          6278

   There are some important issues in this expression, numbered from 1 - 8:
    1. See 8.
    2. These brackets '[]' enclose a character class.
    3. We want to allow these brackets, too. The only position where to put
       the closing bracket into a character class is the first one.
    4. For those who want to allow German subjects. (Modify this to fit
       your own needs for Scandinavian languages, etc.)
    5. Attention: There are two different single quotes from the upper
       right to the lower left.
    6. Inside a character class the hyphen '-' is a meta symbol to set a
       range of characters (take a look at the beginning). In order to get
       the actual literal '-', it must be positioned at the end of the
       class.
    7. Indicates that the preceding character or character class has to be
       present at least once.
    8. In order to force the mail's originator to only use these characters
       in the subject line, there must not exist any preceding or following
       characters. That is the preceding character has to be the start of
       the line, the following character has to be the end of the line.

   On a UNIX-like system you usually need to switch off the locale first
   ('handling of different country characteristics'), so the internal
   Regular Expression compile-process does not get confused. If you are
   calling a script for filtering and getting messages, you could use
   something similar to this:
   #!/bin/sh
   # Remove locale
   L=$LANG
   unset LANG
   # Get mails
   /usr/local/bin/fetchmail $*
   # Restore locale
   LANG=$L

   Alternatively it is also possible to create a straight forward filter
   that matches non-ISO-8859-1 messages (or at least almost). The standard
   ISO-8859-1 is an extension to the ASCII character set (i.e. the first
   128 characters are the same, greater numbers encode symbols, accents,
   etc.) and supports the following languages: Afrikaans, Basque, Catalan,
   Danish, Dutch, English, Faeroese, Finnish, French, Galician, German,
   Icelandic, Irish, Italian, Norwegian, Portuguese, Spanish and Swedish.
   There is a draw back though: the filter we're presenting here accepts
   only special German characters (umlauts) as extension and is therefore
   not fully ISO-8859-1 compliant. However, you might consider it useful
   anyway. Read the filter as one single line:
   # A filter that only accepts ASCII characters and also
   # German umlauts as extension
   DENY_NOCASE=^Subject:.*=\?ISO-8859-1\?Q\?.*=
   ([0189][[:xdigit:]]|[7F]F|A[0189A-F]|
   B[1235-9A-F]|[CE][0-35-9A-F]|[DF][0-5789ABDE])

   Needless to say, you need to have extended Regular Expressions enabled
   (Mailfilter's default are basic expressions) in order to create such
   complex rules. (This truly frequently asked question was patiently
   worked out and answered by Til Schubbe.)

How do I fine tune other programs to work with Mailfilter?

   As always, there are various ways to achieve this. I have chosen the
   commonly used application fetchmail to explain how this works. (Similar
   options are available in other mail programs, such as KMail.) Fetchmail
   is a nifty program that downloads e-mail from POP3 accounts (it also
   supports other protocols). Therefore it's a very tempting idea to use
   the clean up services of Mailfilter before we're starting to receive
   huge amounts of junk in between our normal e-mail messages. Adding one
   single line to the fetchmail set-up file does the trick:
   poll my.mailserver.de via "my.mailserver.de"
    with proto POP3
    localdomains mailserver.de
    user "username" there with password "pass" is tuxuser here options
   forcecr warnings 3600
    preconnect "mailfilter"
   poll my2.mailserver.de via "my2.mailserver.de"
    with proto POP3
    localdomains mailserver.de
    user "anotherusername" there with password "other_pass" is tuxuser here
   options forcecr warnings 3600

   The line 'preconnect "mailfilter"' tells fetchmail to invoke Mailfilter
   each time the user requests the download of new e-mail messages. If
   Mailfilter is set up to check both of the given accounts then calling it
   merely once is sufficient.
   Another very good (and popular) way of using Mailfilter is to call it
   via cron, or just once upon login. That way you won't see much of it
   either and can work with your favourite e-mail program just as you are
   used to - except you won't be disturbed by spam anymore.

I'm using multidrop mail collection with fetchmail and can't get Mailfilter to
work.

   Peter T. Garner contributed this one: consider an environment in which
   six users collect mail via fetchmail's multidrop mechanism, but want
   their messages checked for spam first. That's no problem if you mind the
   right syntax and add something like this to your fetchmail set-up:
   set postmaster "root"
   set properties ""
   set bouncemail
   set syslog
   poll pop.something.net with proto POP3
     envelope Envelope-to
     aka something.rather.co.uk
     user anything.anyone.co.uk there with password TOP_SECRET
   to
   peterg = peterg
   annie = annie
   gemma = gemma
   lizzy = lizzy
   bob = bob
   here
   options
   preconnect "mailfilter --mailfilterrc=/etc/mailfilter.rc"

Are there any sample rcfiles ($HOME/.mailfilterrc) ?

   Yes, there are. You can find one in the INSTALL guide provided with
   Mailfilter, or check the rest of the documentation for additional
   'rcfile.example' files. A comprehensive list of all supported keywords
   can be found in the mailfilterrc(5) and mailfilterex(5) man pages. Study
   them carefully!

I am scared to try out Mailfilter, cause I might accidently delete everything!

   No, you won't. If you are new to Mailfilter, place this line in your
   rcfile before running the program for the very first time:
   TEST=yes

   This makes sure you are not losing any mail at all, including spam. When
   Mailfilter is in test mode it only simulates the deletion of e-mail and
   you can see how good your filters would work - in theory. Once you have
   come to a point where you are happy about their behaviour you can remove
   this command from your rcfile again and start to seriously kill the
   spam.
     ___________________________________________________________________

Run-time Errors:

Because of some missing libraries, Mailfilter won't start.

   So far I have only witnessed this behaviour on a poorly administered
   Solaris machine. If you get an error message similar to this

   ld.so.1: ./mailfilter: fatal: libstdc++.so.2.10.0: open failed: No such
   file or directory

   then your library path is not set properly. To fix the problem, simply
   type something like this in your shell (if it's bash - otherwise you may
   have to use 'set' instead of 'export') depending on the path of your
   libraries (sometimes they're also in /opt/lib)
   export LD_LIBRARY_PATH=/usr/lib:/usr/local/lib:$LD_LIBRARY_PATH

Mailfilter complains that a specific file couldn't be accessed.

   Most likely you need to fix up your Mailfilter configuration. Please
   refer to the "Configuration" section in this FAQ.

I get DNS lookup errors.

   Such errors occur when the Domain Name Server failed to resolve the name
   of your POP3 server. This either happens when you have misspelled the
   server name in your rcfile, or when you are trying to start Mailfilter
   even though you have not established a network connection first.

Mailfilter says it sent a specific command to the server, but it responded
with an error.

   Usually these errors occur when you are trying to get your mail from a
   server that does not fully support the POP3 transfer protocol. But you
   can also get this behaviour if your network connection (or only the
   connection to the POP3 server) drops during a mail box examination. In
   this case, simply try to invoke Mailfilter again. If that doesn't fix
   it, consider reporting a bug.

Mailfilter says that some keyword is deprecated.

   This may happen occasionally when updating from an old version of
   Mailfilter to a new one. Usually the program suggests a new keyword in
   its error message though. But you can also look up the proper definition
   in the documentation files that come with the Mailfilter distribution,
   or consult the mailfilterrc(5) man page. It contains a comprehensive
   list of all supported and deprecated keywords.

The compilation of Regular Expressions failed.

   Extended Regular Expressions are not 100% compatible to the basic kind
   of expressions. Check if you have set Mailfilter to support extended
   expressions (keyword REG_TYPE) and adjust your filters if necessary.

I frequently get an error message saying that my mail server is not
responding.

   You have to use the keyword TIMEOUT in order to increase the response
   time out value. The default is set to 30 seconds, but in some occasions
   a higher value might be necessary, because some mail servers take longer
   to send a response, than others. This behaviour can also be experienced
   on slow or extremely busy network connections.

Help, Mailfilter hangs!

   Depending on your machine's operating system and configuration you might
   run into trouble with the deployed Regular Expression library.
   Mailfilter depends on that component to match the user defined spam
   filters.
   It has been reported that certain library implementations do not like
   (very) large strings and therefore stop Mailfilter when it tries to
   process e-mails with big headers. The Internet standard RFC 822
   explicitly forbids any header description to exceed the 998 byte limit.
   So, you should use MAXLENGTH in your rcfile to make sure no strings
   larger than 998 characters are being processed by Mailfilter. All the
   different Regular Expression libraries should be able to happily handle
   that size, too.
   Please note that MAXLENGTH also overrides your friendly ALLOW rules. So
   it's probably a good idea to deploy this feature only if you have
   experienced this peculiar program behaviour yourself!
     ___________________________________________________________________

Special Features:

Can Mailfilter check more than one account?

   Of course it can. Personally, I despise all e-mail programs that have
   such stupid limitations. How many users nowadays have only one account
   anyway?

Does Mailfilter support any other protocols besides POP3?

   Not in the current version, but support for the IMAP protocol is
   planned.

Is there a way to send encrypted password information to the server?

   It is possible to tunnel Mailfilter through ssh (Secure-Shell). Brian
   Hall has provided a shell script and some comments on this issue. This
   solution requires a password-less login to your server/shell account
   though.
   #!/bin/sh
   # Script to restart the ssh tunnel if tunneled ports are failed
   /usr/local/bin/mailfilter -M /home/hallb/.mailfilterrc | \
       grep "timed out" > /dev/null 2>&1 || exit
   # Find pid of sleeping ssh tunnel process
   /bin/kill `/bin/ps wx | /bin/grep -v grep| /bin/grep \
       "ssh -i /root/.ssh/script_id -g shell.pcisys.net -f" | \
       /bin/awk '{print $1}'` > /dev/null 2>&1
   # Start ssh tunnel process
   /usr/bin/ssh -i /root/.ssh/script_id -g shell.pcisys.net -f \
       /bin/sleep 999999999 < /dev/null > /dev/null 2>&1

Mailfilter logs are so plain; I'd like to have better spam-statistics!

   Roland Smith has come up with a simple, yet efficient way to create nice
   monthly spam-statistics. This shell script summarises the main log file:
   #!/bin/sh
   # -*- shell-script -*-
   # Id: spamsort,v 1.3 2002/03/14 18:47:39 rsmith Exp rsmith
   LOG=/var/log/mailfilter
   cat $LOG |awk '/Deleted/ {print $NF}'|sed 's/]//g'| \
   sort|uniq -c|sort -r

   The output of this script looks something like this:
 384 '^Content-Type:.*text/html.*'
 261 '<>^(To|Cc):.*rsmith@xs4all.nl'
 189 '^(From|Received):.*hotmail.com.*'
 110 '^(From|Received|Reply-To):.*yahoo.com.*'
  51 '^(From|Received|Reply-To):.*hotmail.com.*'
  40 '^Subject:.*adult.*'
  36 '^(From|Received|Reply-To):.*yahoo.*'
  26 '^(From|Received):.*aol.com.*'
  21 duplicate
  18 '^(From|Received):.*listmanpro.com.*'
  17 '^From:.*e.*direct.com.*'
  14 '^Mailing-List:.*double-optin.*'
  12 '^(From|Received):.*investorsalley.com.*'
  11 '.*hardcore.*sex.*'
  10 '^From:.*optmailing.com.*'
  10 '^From:.*freeoptinfo.com.*'
   7 '^From:.*horny18.net.*'
   5 '^Subject:.*rsmith@xs4all.nl.*'
   5 '^Received:.*listbuilder.com.*'
   5 '^From:.*msn.com.*'
   2 '^From:.*thenewpornsite.com.*'
   1 material.*'
   1 '^From:.*insync-palm.com.*'
   1 '^(From|Received):.*sexrave.com.*'
   1 '<>^From:.*@.*'

How can I get Mailfilter to auto-reply to spam?

   You can't and this is a feature that will never be implemented either. I
   started the Mailfilter project to prevent e-mail abuse in general not to
   give people a weapon to fight fire with fire. Apart from that it would
   be considered a criminal offense in most countries (including the one
   I'm living in) to answer a mail bomb with your own mail bomb.
     ___________________________________________________________________

Miscellaneous:

I think I accidently deleted an important e-mail with Mailfilter. Can I get it
back somehow?

   Tough. Once Mailfilter deleted an e-mail, all you get to see of it is
   where it came from, what it was about and when it was sent. Have a look
   in your logfile and ask the author to send it again. If that's not an
   option for you, you may want to ask your ISP to recover this message for
   you, though I doubt this would be a very successful undertaking.

If I make changes to the rcfile, does it affect immediately?

   If you are changing Mailfilter's settings while it's active, nothing
   special will happen. All changes you make in the rcfile will be
   considered next time you run the application.

Sometimes a few (spam-) messages slip through. How come?

   This is not a bug in Mailfilter. Consider this a feature of every POP3
   e-mail server. Once you start checking for spam or downloading messages,
   the server locks your mail box. If new messages arrive during the locked
   state, they will be queued and provided for further processing after the
   lock has been removed.
   So Mailfilter does not see incoming messages while it checks for spam
   and sometimes it happens that a message or two arrive just in time to be
   too late for filtering, but in time for download. That's life.

My question is not covered by this FAQ. Help!!

   This FAQ can never be a 100% complete guide, covering all possible
   aspects of the Mailfilter program. That is the reason why we have
   created a mailing list where we discuss the various aspects of spam
   killing and how to use Mailfilter. Feel free to subscribe and ask your
   questions. In urgent or very special cases, however, you can also
   contact me directly, the author of Mailfilter. Maybe the question will
   be just another candidate for the FAQ.