Changes since 0.8.3 ------------------- Changed include() calls to require_once() calls. Internationalization of the plugin. Changes since 0.8.2 ------------------- Added many new FREE anti-spam databases to lookup from. Removed ORBS since they're off the air. Changes since 0.8.1 ------------------- Added a SpamFilters_DNScache[] array that is useful for 2 reasons: 1. You can put in IPs in the cache that override the SPAMfilter's DNS checking routines -- either to force 'em to NOT filter email coming from a specific IP (ie. for those pesky customers who can't figure out how to make Exchange not be an open relay) or to force 'em to ALWAYS filter email coming from a specific IP (ie. for those pesky sites you KNOW are SPAM sources or relays but that aren't added to any of the DNS databases) 2. Before the SPAMfilters do a DNS query, they check to see if the IP in question is already in the cache. If not and the query is performed, the result is put in the DNS cache. This makes the SPAM filters a LOT faster when you get lots of email from various mailing lists (all coming from a very small number of IPs). The SPAM filters don't have to do a DNS query on every message coming from the squirrelmail-plugins mailing list -- only one the first time through to confirm the list server isn't in any of the DNS databases! :-) Changes since 0.8 ------------------- Just fixed the Bad or malformed FETCH error that occurred when the INBOX was empty. The spamfilter plugin did a FETCH query from MsgNum 1 to * and since there WAS no Msg Num 1 the IMAP server would respond with an error. Now I check the number of messages before calling spam_filters or user_filters Changes since 0.7 -------------------- Tyler made TONS of changes to incorporate the fixes I'd done and posted about, as well as to fix the problem with number of unread messages not showing up in the folder panel. He also added some code to scan the headers for specific IPs in order to scan only IPs on the previous hop in the header. This didn't work well for me (the IP of my gateway wasn't reported on the Received from ... by ... line, and so RSS and DUL still had tons of false hits. I munged it so instead it uses a single string provided at setup/install time to find the right line in the header to find the IPs to look for in the various databases. (see SpamFilters_YourHop in setup.php) This seems to work pretty well for me -- faster enough to turn on all the databases and zero (so far) false hits! (grin) I also found a bug in sqimap_read_data() in functions/imap_general.php. After much discussion with Tyler, I rewrote it and posted it to squirrelmail-devel but it hasn't been accepted/tested/blessed yet NOTE: THIS NEW VERSION OF sqimap_read_data() IS REQUIRED BY FILTERS 0.8 so you'll have to edit functions/imap_general.php and replace the function with the contents of sqimap_read_data.php. As soon as either my version of sqimap_read_data is officially part of the SM 1.1.2 CVS or until a new working version is posted, this is the only way to guarantee filters 0.8 will work.