* Matt Bernstein [2003-11-28 10:51]:
> Hi,
>
> I'd quite like to do something like the following (DATA ACL; requires the
> exiscan-acl patch):
>
> warn !authenticated = *
> condition = ${if <{$message_size}{80k}{1}{0}}
> spam = nobody:true
> log_message = spam score: $spam_score
> message = X-Spam-Report: $spam_report
> condition = ${if >{$spam_score_int}{30}{1}{0}}
> delay = {$spam_score_int}s
Are two conditions allowed? If not, following might be a solution
(untested).
accept authenticated = *
accept condition = ${if >{$message_size}{80k}{1}{0}}
warn spam = nobody:true
message = X-Spam-Report: $spam_report
log_message = spam score: $spam_score
condition = ${if >{$spam_score_int}{30}{1}{0}}
delay = {$spam_score_int}s
> It's the last line which is jazzy. It's completely untested, but the idea
> is that before sending "250 OK id=.." a delay proportional to the
> SpamAssassin score occurs. A score of 59 would be within the minimum
> RFC2821-suggested timeout (at this point in the SMTP conversation),
> assuming that Exim takes less than 10 seconds to process it! Nevertheless,
> I should probably include traps for this, and for negative scores.
>
> I don't think the Exim spec (37.11; 6.11) states whether "delay =" values
> are expanded or not. If they're not then of course the above is illegal.
They are expanded. I have
accept ...
delay = ${eval:1+$rcpt_count}s
--
Er en viljeserklæring forvansket ved feiltelegrafering, blir den, som har
avgit den, ikke bundet ved erklæringen i den skikkelse, den er kommet frem.