Hi, I'm in the process of building a new mail setup based on dspam.
dspam is invoked with the following options: "/usr/bin/dspam --deliver=innocent --user $RCPTS" Dspam delivers innocent mails via SMTP. QuarantineAgent is a small script that use safecat to deliver quarantined mails to a Maildir. In order to know if a mail is considered spam or not I have enabled "Broken ReturnCodes". According to the documentation "'returnCodes' causes DSPAM to return an exit code of 99 if the message is spam, 0 if not, or a negative code if an error has occured." This seems to work almost as expected. Dspam returns '0' after delivering an innocent message and '99' after delivering a spam mail. If dspam for some reason can't deliver an innocent message via SMTP I get a returncode different from '0' and '99' and I can act accordingly and defer the mail. The problem is that, if the QuarantineAgent fails to deliver the spam mail, dspam still returns '99' - which means that the message will be lost. Using a small script that just exits '1' or '0' as QuarantineAgent still makes dspam return '99' :-( Any ideas how to solve this issue? Regards, /Claus A
