I am using DCC-1.3.23 to do greylisting (dccd greylisting server with
the dccm sendmail milter). As a result DCC checksums are performed prior
to the Spamassassin 3.1.0 scan. Therefore rather than repeat the DCC
checks in Spamassassin I have constructed a custom ruleset to perform
the check off of the X-DCC header added by DCC. Unfortunately the
actually header is of the form X-DCC-*-Metrics: where the "*" can be one
of a myriad of server names (e.g. X-DCC-EATSERVER-Metrics:,
X-DCC-NIET-Metrics:, etc.). As I can not know all the possible public
DCC servers I can not just enumerate the servers by listing specific
rules for each unique header. The best I could come up with is a generic
header rule:
header X_DCC_SCORE ALL =~ /^.*bulk Body=/s
describe X_DCC_SCORE DCC bulk score indicates spam
score X_DCC_SCORE 4.0
which looks for a unique string found in a X-DCC-*-Metrics: header
indicating the message is spam. Unfortunately this test is done over all
headers when the reality is that there will be only a single header of
the form X-DCC-*-Metrics:. Is there a way to write the rule to check
just headers of the form X-DCC-*-Metrics: or does the ALL rule do it as
efficiently as it can possibly be done? The only other thing I can think
to do is to rewrite X-DCC-*-Metrics: to something generic (e.g.
X-DCC-Metrics:) in the MTA and then rewrite my rule to use the header
X-DCC-Metrics: rather than ALL.
Other suggestions or insight are greatly appreciated.
--
Paul ([EMAIL PROTECTED])