> So the Wikipedia article basically suggests there are many variants.
> Interesting. It's been my experience that almost all mail systems
> honor the bounces-to (which *sometimes* is based off the From or
> Reply-To unless the field bounces-to is set in the headers, it seems.)
>
> Notice the samples below which prove out my point in that regard:
>
> Return-path: <EverydayFood@???>
> Envelope-to: loot@???
> From: "Everyday Food - MarthaStewart.com"
> <EverydayFood@???>
> To: "loot@???" <loot@???>
> Reply-To: support@???
>
> Return-path: <barney@???>
> Envelope-to: loot@???
> From: Stan <stan@???>
> Bounces-To: barney@???
It's important to understand here that the envelope sender is *not* a
message header. It (and the envelope receiver addresses) are transported
entirely separately from the message headers and the message body; in
SMTP they are the MAIL FROM address and the RCPT TO addresses from
the respective SMTP commands (and the message headers and body are
transmitted in the DATA command). Exim and many other mailers add the
envelope information to messages being delivered to inboxes, processing
programs like procmail, and so on, by adding additional headers. The
names of these additional headers are not formally standardized, but
'Return-Path' and 'Envelope-To' are the dominant names and many programs
that process messages will assume that that is what those headers mean.
(In traditional Unix mbox format, the address in the initial 'From
....' line is also the envelope sender address.)
Actual (Internet) mailers like Exim always send bounces to the envelope
sender address unless you specifically override this somehow in an Exim
router or transport. That is because that's what the standards say for
mailers to do; the envelope sender is specifically where mailer delivery
issues are to be reported.
Other programs that deal with email messages do not necessarily use
the envelope information; in fact, they may not even have the message
information available. There is no particular standard for how these
programs decide on what address to send any automatic replies to. Some
may use Reply-To, some may use To, some may use 'Bounces-To', and so on.
(Some may look for Return-Path and try that if they find it, of course,
and in general it is common for certain sorts of auto-reply systems to
use the envelope sender address if it's available.)
The issues here are exacerbated because not all mail systems even
have the concept of distinct envelope sender addresses (or even envelope
destination addresses); they may only have the concept of 'addresses
in various message headers'. When Internet email transitions into these
environments, headers may be mangled and the envelope sender may disappear
entirely. This could result in fun things like sending email to a popular
mailing list and then getting a blizzard of 'I am out of the office'
replies back from various mail systems that ignored the envelope sender
(which points to the mailing list management system) and sent them to the
From: address. It is possible that some of these environments now look
for and respect 'Bounces-To:' message headers in at least some contexts.
(I believe that past and perhaps current offenders were IBM Notes and
at least some Microsoft mail products.)
- cks