On Sunday 23 January 2011, Mike Clarke wrote:
[snip]
> This works fine except that messages arriving from the list have
> headers like this:
>
> To: Mike Clarke <admin@???>
> Cc: Members <list@???>
>
> In addition to routing the message locally to me. exim is also
> attempting to relay the message back to the list using the address in
> the Cc header. The message is subsequently rejected by the list
> server when it detects that it is looping.
Many thanks to those who replied to my question, they helped to point me
in the right direction to determine that the cause of the problem was
in fact my fetchmail configuration and not exim.
I appreciate that my use of fetchmail and exim to route my incoming mail
locally may not be ideal and is something of a sledgehammer to crack a
nut but it fits my needs very well and has normally performed without
problems. In order to reduce spam when purchasing online I like to use
unique email names so if I'm buying from somesupplier.example I'll give
my email name as mike-somesupplier@ so I know who to blame and
blacklist if I get spam to that name. To avoid having to keep
reconfiguring my mail system every time I use a new address I wanted
something which would route all these throwaway names to the
appropriate user's mailbox and found that exim was very good for this
with it's ability to handle wildcards in alias names.
Although envelope details are lost when an email arrives in a POP3
mailbox, fetchmail is able to recreate them. For the other servers I
collect from the recipient is picked up from the Envelope-to header but
the server for the mailing list was running qmail which does things
differently. Since fetchmail failed to find an Envelope-to header it
tried to determine the recipient by looking in the To and Cc headers
for email names matching the domain which I was collecting for, it then
passed RCPT data for both names to exim which then, quite correctly,
attempted to delivered one locally and the other via the external
smarthost.
I've now changed the fetchmail config file to tell it to use the
Delivered-To header from this server and everything works fine.
--
Mike Clarke