[Exim] wildlsearch

Pàgina inicial
Delete this message
Reply to this message
Autor: gARetH baBB
Data:  
A: exim-users
Assumpte: [Exim] wildlsearch
exim 4.20.

I have

bounce_list:
driver = redirect
check_local_user
allow_defer
allow_fail
hide_child_in_errmsg
data = :fail: Rejected
senders = ${if exists {$home/.bouncelist} {$home/.bouncelist} }

as a Router, which works fine.

And in .bouncelist I have things like:

^.*@(.*\.|)(cn|tw|es)$

I wanted to extend this to HELO, so I've ended up with:

bounce_helo:
driver = redirect
check_local_user
allow_defer
allow_fail
hide_child_in_errmsg
data = :fail: Rejected
condition = ${if exists {$home/.bouncehelo} {${lookup {$sender_helo_name} wildlsearch{$home/.bouncehelo}{yes}} }}

This fails on regex like the example for senders because of the trailing $.

[BTW it seems odd that senders already does what I want in essence, but to
do it for other things I have to do a recompile with wildlsearch]

I know one answer for this expansion problem is to use /N, but I don't
want to do this - I don't want the string expansion to be possible at all,
I don't want any user scripts allowed to "execute" ${stuff} anyway.

How do I do this so that my wildlsearch check is exactly the same as what
is used for senders = ?