Hi everyone,
Here is a summary of a few messages i already sent within i try to
understand something.
I have read the "processing an address for delivery" chapter in the exim
specification document.
What i have understood is that routers are passed through since one or more
are activated by specific conditions.
I try to set up a thing like that:
router 1 (dns lookup) --> router 2 (aliases) --> router 3 (filtering with
Sieve) --> router 4 (accept local delivery)
^-------------------------|
|
^------------------------------------------------------------
router 2 and 3 are redirect routers, since they are not to match recipient
to transports (according to the doc).
Router 2 is a classical aliasing router that look up into /etc/aliases file
and redirect recipients.
Router 3 is configured that way:
> userforward:
> driver = redirect
> check_local_user
> file = $home/.forward
> allow_filter
> no_verify
> no_expn
> check_ancestor
> directory_transport = address_directory
>
the directory_transport is there because of the Maildir format of my
mailboxes:
> address_directory:
> driver = appendfile
> maildir_format
> maildir_use_size_file
> delivery_date_add
> envelope_to_add
> return_path_add
>
my .forward file:
> #Sieve filter
> require "fileinto";
> if header :contains "subject" ["toto"] {
> fileinto "/home/ftg/Maildir/.ftg_lutix/";
> stop;
> }
> fileinto "/home/ftg/Maildir/";
> stop;
>
i can figure out allo of this by testing recipients with command-line exim
-bt user@??? < test_message
My questions are:
1) despite the fact my filtering router is just a redirect one, why my
userforward router do need a transport option ( directory_transport) ?
2) why, if i don't write the line "fileinto "/home/ftg/Maildir/";" in my
.forward file, exim says that
save inbox <ftg@???> R=userforward defer (-30): file_transport unset
in userforward router
why doesn't exim give the hand to the next router and (local-delivery) and
that's it?
Thanks alot , have a nice day