Michael Holzt wrote:
Sounds rather inefficent, because the same tests are done multiple times
for the same mail. Shouldn't it be possible to have the mail scanned by
spamassassin once and then just use the list of matched rules as given
by spamassassing to have the score calculated for each user?
AFAIK Amavis-new uses that method, scanning once and figuring out the
score based on the user's settings. Amavis solves the "which user takes
precedence" issue by ignoring it. All messages are accepted for
delivery before spam processing, and amavis cannot issue a reject
during the data transaction. It either rejects (actually deletes),
sends back a bounce (to a forged address) or delivers based on the per
user results.
In my case the only feature I want is independent Bayes dictionaries for
each incoming address. Rules and scores can be shared across users.
In the end I'll probably create something inside of the SA plugin that
looks at the recipients and, if there is only one, uses that email
address as the username to spamd. If there is more than one it will
fallback to using the global settings (passing qpsmtpd's user to spamd)
Seems like the simplest fix, and only requires one test added to teh
plugin and one SA run per message.
Mark Farver