Re: [exim] Seeking a new solution to a match_address issue i…

Αρχική Σελίδα
Delete this message
Reply to this message
Συντάκτης: Todd Lyons
Ημερομηνία:  
Προς: Chris Siebenmann
Υ/ο: exim-users
Αντικείμενο: Re: [exim] Seeking a new solution to a match_address issue in 4.77+
On Wed, Jun 25, 2014 at 1:50 PM, Chris Siebenmann <cks@???> wrote:
> We're currently using Exim 4.76 on Ubuntu 12.04, where all of the
> match_* operations applied string expansion to their second argument
> as well as their first ones. In Exim 4.77, this changed. As it happens
> we currently use this feature in order to optionally restrict who can
> send email to local simple mailing lists[*].
>
> This is clearly non-functional in Exim 4.77+ and we now need to find
> another way to do this as we migrate to Ubuntu 14.04. Right now the only
> real way I can think of is to replace the entire match_address portion
> (at least) with a ${run ...} of an external program that does the address
> matching as well as the reading that readposters currently does.


There is the recommended use of inlisti{}{} or forany{}{} to replace
match_* rhs expansion. Occasionally someone asks about it in IRC,
I've not yet hit it in my production systems.

You could maybe use an embedded perl function to do the lookup and all
the logic. I haven't tried to make it return a fail condition, so I
don't know if that's possible. It seems like it should be.

> Can anyone think of a cleverer approach that keeps the address matching
> in Exim, or is the external program doing all the work the best approach?
>
> (This feature is reasonably popular with people here, so we can't just
> take it out when we upgrade our mail machine to Ubuntu 14.04, which uses
> Exim 4.82 and so won't work with the current setup.)


You could also take the Ubuntu source package, add a patch which
uncomments the RHS build option, and then rebuild the deb:

# If you really need to have the old behaviour, know what you are doing and
# will not complain if your system is compromised as a result of doing so, then
# uncomment this option to get the old behaviour back.
# EXPAND_LISTMATCH_RHS=yes

...Todd

--
The total budget at all receivers for solving senders' problems is $0.
If you want them to accept your mail and manage it the way you want,
send it the way the spec says to. --John Levine