Thanks, but my procmailrc already looks like that. The strange thing is that it won't delete the messages marked spam, but the one that was previously tagged as spam and accidentally got through again was deleted... so it appears that the procmail recipe is correct, but that procmail isn't being called in the order that it should be?
Here is my procmailrc: *************************************************************************************************** LOGFILE=/var/log/procmail.log DROPPRIVS=yes :0fw: spamassassin.lock * < 256000 | /usr/local/bin/spamc :0: * ^X-Spam-Status: Yes /tmp/spam :0 * ^^rom[ ] { LOG="*** Dropped F off From_ header! Fixing up. " :0 fhw | sed -e '1s/^/F/' } ***************************************************************************************************** and my postfix master.cf: ***************************************************************************************************** # Setup Spamassassin spamassassin unix - n n - - pipe user=filter argv=/usr/local/bin/sa-filter.csh -f ${sender} -- ${recipient} # ========================================================================== # service type private unpriv chroot wakeup maxproc command + args # (yes) (yes) (yes) (never) (100) # ========================================================================== smtp inet n - n - - smtpd -o content_filter=spamassassin #628 inet n - n - - qmqpd pickup fifo n - n 60 1 pickup cleanup unix n - n - 0 cleanup qmgr fifo n - n 300 1 qmgr #qmgr fifo n - n 300 1 nqmgr rewrite unix - - n - - trivial-rewrite bounce unix - - n - 0 bounce defer unix - - n - 0 bounce flush unix n - n 1000? 0 flush proxymap unix - - n - - proxymap smtp unix - - n - - smtp -o content_filter=spamassassin relay unix - - n - - smtp # -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 showq unix n - n - - showq error unix - - n - - error local unix - n n - - local virtual unix - n n - - virtual lmtp unix - - n - - lmtp # # Interfaces to non-Postfix software. Be sure to examine the manual # pages of the non-Postfix software to find out what options it wants. # # maildrop. See the Postfix MAILDROP_README file for details. # maildrop unix - n n - - pipe flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient} # # The Cyrus deliver program has changed incompatibly, multiple times. # old-cyrus unix - n n - - pipe flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user} # Cyrus 2.1.5 (Amos Gouaux) cyrus unix - n n - - pipe user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user} uucp unix - n n - - pipe flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) ifmail unix - n n - - pipe flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient) bsmtp unix - n n - - pipe flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient ********************************************************************************************************************* ********************************************************************************************************************* Kyle Reynolds 972-731-4731 [EMAIL PROTECTED] "Mike Jackson" <[EMAIL PROTECTED] To: <users@spamassassin.apache.org> -dog.net> cc: Subject: Re: how to call procmail for spam delete? 01/26/2005 09:12 AM > I created a spam dir in /tmp/spam to test whether or not procmail is > deleting the tagged spam. Nothing ever gets sent there, but then when > someone put a message already tagged spam into a folder I created for > people to report spam to, and the csrip ran sa-learn on those messages, > the > message that had been previously tagged (adn shouldn't have been in the > report spam folder...) got sent to the /tmp/spam folder... So where could > my postfix/procmail config be messed up? If spam assassin tags a message > spam, it doesn't get moved to the /tmp/spam dir, but if I run > (accidentally) sa-learn on one already tagged, it moves it to the folder? > any suggesstions? Try something like this in your system-wide procmailrc file somewhere after your invocation of spamc: :0: * X-Spam-Status: yes /tmp/spam If you are using Bayesian filtering and want to be really aggressive, you could add this rule directly before the other one: :0 * autolearn=yes /dev/null Mike Jackson Editor & Web Developer, DVD Verdict www.dvdverdict.com