[Exim] How does an end user use .forward to modify delivery?

Top Page
Delete this message
Reply to this message
Author: Michael Gersten
Date:  
To: exim-users
Subject: [Exim] How does an end user use .forward to modify delivery?
I tried to find this in the archives. I could not. Nor could I find
anything in the FAQ about using .forward files, only about modifying the
transports and routers.

How can I, as an end user with only access to my .forward file, modify
exim's delivery strategy?

Right now, all mail to anyuser at stb dot nccom dot com goes into a
single mailbox file, with an Envelope-To: header. I have a Pop3 email
client, and I have to set up a bunch of mail filter rules that say "If
the Envelope-To matches X, then move to (local) mailbox X" for each X.

I want to have this filtering done at mail delivery time, and use Imap
(instead of Pop3) to find these new folders automatically.

I know I can put a filename into .forward, and have all mail sent to
that filename, or a username and have all mail remailed to that user, or
a program and have all mail send to that program.

Ideally:
    I want to have .forward run a program (probably a script) that returns
a filename. Exim uses that filename as if it were the file specified in
the .forward originally.


Acceptably:
    I want the Envelope-To: line to define the mailbox name.


Probably un-acceptable:
    Requiring .forward to specify a program that is responsible for storing
the message in the target file. This requires my program to manage all
of the mailbox locking protocol, and
        A: That's awfully complicated,
        B: Mailbox locking protocol changes between OS's, releases, delivery
programs, etc.
        C: Since exim might be delivering two messages to me at the same time
in different forks (if I understand correctly), locking is a MUST.


What can an end user do for this?

I am not on this list, so please CC me on your reply. Thank you.