Filters Plugin IMPORTANT: I've noticed at least one version of PHP that has bugs in the checkdnsrr() function that the SPAM filtering code RELIES ON. In my case, the PHP server that comes with Mandrake 8.1 has this problem -- checkdnsrr() NEVER finds the inaddr records, even the ones that really exist. (sigh) NOTE!!! As of the time of this writing, there is a bug in sqimap_read_data() in functions/imap_general.php. I rewrote it (see sqimap_read_data.php) so if the SPAM filters aren't filtering, make a backup copy of functions/imap_general.php, remove the sqimap_read_data() function in there and replace it with the contents of sqimap_read_data.php. Hopefully, either my replacement will be blessed by squirrelmail-devel or some other version will come out soon. Now back to your regularly scheduled README... (grin) This is a poor alternative to procmail or Elm's filter programs. This is a pathetic replacement for good RBL mail scanning when you get the mail. This is more for systems that can't/won't offer that kind of functionality and you still require it. This is slow. Yep. Slow. To configure, first you need to rename config.sample.php to config.php. You should then just take a peek at config.php and set $SpamFilters_YourHop to some string if you want to avoid tons of false hits on the RSS and DUL and ORBS databases. It should also speed up the scan somewhat. If you do not want to enable spam filters for all users, edit config.php and set the $AllowSpamFilters to false. Spam filters can take TONS of time, so if you don't want your users to complain and ask you tons of questions, this is a quick and easy method. If you use UW and if you encounter strange errors while using this plugin on your system, edit config.php and set $UseSeparateImapConnection to true. This may not solve the problem. One problem it might fix is if you run UW 2001 and if you don't see the number of unread messages in your left-hand folder pane, or if you see timeouts or IMAP server error messages. Turning on this feature may slow down the filters a bit more since it has to open a new connection. Lastly, if there are some IPs that you want to refuse email from or some IPs you want to accept email from REGARDLESS of what the DNS databases say, you can put in overrides in the SpamFilters_DNScache[] array. See the comments in config.php for more info on this.