At 06:09 PM 11/19/03 +0800, Patrick T. Tsang wrote:
From the maillog, I have checked that spamd has successfully filtered the
mail at first.
However, spamd only check email using the last email address found in the
mailling list and check against the user-defined rules in Mysql.
That is, it skips the user-defined of the others in the mailling list.
Of course, spamc also check against the global rules in the mysql.

I would like to know if it is normal??
OR it is the problem in postfix mailler?

It's normal.. in fact, it would be impossible for it to behave any other sensible way, but there are some trade-offs you can make in how you configure your mail handling.


As far as SA is concerned, there is always only one user prefs per message it processes. That's because there's only ONE message, even if there are multiple recipients. Thus, SA can only make one choice. It cannot "mark this message as spam for joe, but not for sally". It can only mark the message or not.

A lot of this boils down to what spamassassin (and spamc) fundamentally is.. a mail filter. As such, spamassassin has no authority whatsoever over transport or delivery of messages. It can never create new messages, delete messages, or change the recipient of a message (although it can influence other programs to do so). Since it cannot create messages, when it receives one message for multiple users, it cannot "break it up" into one message per user and process each separately. It must merely process the one and only message it was given, and return only one email as output.

When hooked into the MTA side of the email world, SA gets called once per message in transport.. You gain speed in that SA only has to scan the message once even if it goes to multiple people, but you loose flexibility in user_preferences when a message goes to multiple people.

One solution to the flexibility side is to integrate SA on the MDA side of things.. Here SA gets called as messages are delivered to each user's mailbox, and can process each user's mail in a completely independent manner. One drawback here are that a 20 recipient message gets processed 20 times, increasing server load. This can also only be done on a mailserver which really does deliver mail to a user's mailbox, not a relaying gateway (there's no delivery happening on a relaying gateway, just transport).

There are some compromise solutions.. One solution on the MailScanner list posted by a sendmail user was to force sendmail to re-queue messages so that each only has one recipient.. You still suffer in efficiency, but you can now do it on a relaying gateway. (you also suffer increased bandwidth between your two mailservers, as a 20 recipient message must be delivered 20 times to the internal server).





-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?  SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
_______________________________________________
Spamassassin-talk mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/spamassassin-talk

Reply via email to