Re: [exim] How to invoke an Exim Filter from an alias file?

Top Page
Delete this message
Reply to this message
Author: Marc Sherman
Date:  
To: exim-users
Subject: Re: [exim] How to invoke an Exim Filter from an alias file?
Marc Sherman wrote:
>
> You can use address_data for this:
>
> special_aliases:
>    driver = redirect
>    allow_fail
>    allow_defer
>    allow_filter
>    address_data = \
>      ${lookup{$local_part}lsearch{/export/mail/special_aliases}}
>    data = ${if eq {:filter:}{${substr_0_8:${address_data}}} \
>      {${readfile{${substr_8:${address_data}}}}} \
>      {${address_data}}}
>    file_transport = address_file
>    pipe_transport = address_pipe
>    reply_transport = address_reply
>    user = mail


And, of course, there's an even simpler way to do it that I realized as
soon as I hit send, using match and $value:

special_aliases:
    driver = redirect
    allow_fail
    allow_defer
    allow_filter
    data = ${lookup{$local_part}lsearch{/export/mail/special_aliases} \
      {${if match{$value}{\N^:filter:(.*)$\N}{$1}{$value}}}fail}
    file_transport = address_file
    pipe_transport = address_pipe
    reply_transport = address_reply
    user = mail