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