Jakob Hirsch wrote:
>
> It's a valid argument. And it's not that hard to do with Exim (topic!)
> itself. This is what I use:
>
>
> system filter:
[snip]
Or, if you prefer routers:
remote_list:
debug_print = "R: remote_list for $local_part@$domain"
driver = redirect
domains = ! +local_domains
require_files = /home/$authenticated_id/.list-folders
condition = ${if and {{def:authenticated_id}{!def:h_Reply-To:}} \
{${lookup {$local_part@$domain} lsearch \
{/home/$authenticated_id/.list-folders}{true}{false}}}}
headers_add = Reply-To: <$local_part@$domain>
data = $local_part@$domain
redirect_router = dnslookup
local_list:
debug_print = "R: local_list for $local_part@$domain"
driver = redirect
domains = +local_domains
check_local_user
directory_transport = local_maildir
require_files = $home/.list-folders
condition = ${if def:h_List-Post:}
address_data = ${if match{$h_List-Post:}{<mailto:(.+)>}{$1}fail}
data = ${lookup{$address_data}lsearch{$home/.list-folders} \
{$home/Maildir/$value/}fail}
headers_add = ${if def:h_Reply-To: \
{X-Orig-Reply-To: $h_Reply-To:\nReply-To: <$address_data>} \
{Reply-To: <$address_data>} }
headers_remove = ${if def:h_Reply-To: {Reply-To}{}}
skip_syntax_errors
syntax_errors_to = real-$local_part@$domain
syntax_errors_text = Error in ~/.list-folders.
$ more ~/.list-folders
developers@???: .Lists.slim-developers
discuss@???: .Lists.slim-discuss
unix@???: .Lists.slim-unix
exim-dev@???: .Lists.exim-dev
exim-users@???: .Lists.exim-users
debian-devel-announce@???: .Lists.debian-announce
debian-security-announce@???: .Lists.debian-announce
secure-testing-announce@???: .Lists.debian-announce
users@???: .Lists.svn-users
dev@???: .Lists.svn-dev
users@???: .Lists.subclipse-users
dev@???: .Lists.subclipse-dev
wikitex-l@???: .Lists.wikitex-l
sare-users@???: .Lists.sare-users
- Marc