> From: exim-users-bounces+richard.rogers=staffs.ac.uk@???
> [mailto:exim-users-bounces+richard.rogers=staffs.ac.uk@exim.org] On
> Behalf Of Cyborg
> Sent: 21 February 2013 11:57
> To: exim-users@???
> Subject: Re: [exim] forany() with multiply recipients
>
> Am 21.02.2013 12:18, schrieb ROGERS Richard M:
> > We have a case a bit like this here, where individuals can set their own
> preferences/whitelist/blacklist, so handling can change even within the one
> domain.
> >
> > The way we deal with it is to set the message handling according to the first
> recipient's preference; then if the handling is different for later ones they get
> a 4xx (temporary rejection). It introduces some delays but everyone gets the
> message handling they want.
> >
> > Regards
> >
>
> out of curiosity .. how does sending a 4XX help with a logic decision
> with opposite outcomes ?
I'm not entirely sure I understand the question - but the point of the approach is that only one set of preferences can be applied to an accepted message. Issuing a 4xx where the preferences differ allows us to take multiple passes at the message, each with a different preference applied.
Are you referring to your example of "accept condition = ${if forany{<, $recipients}{match{${lookup mysql
{SELECT 1 FROM mail_actions WHERE..."?
In that case the answer is that the case doesn't arise. If the second (or subsequent) recipient has a different spam preference setting from the first, they get a 4xx and all delivery decisions are based on the first recipient's settings alone. The message is then only delivered (in the first pass) to recipients whose preference is equal to the first recipient's.
Regards
Richard