envelopes - sender/recipient lists attached to messages


INTRODUCTION

       Electronic mail messages are delivered in envelopes.

       An  envelope  lists  a  sender and one or more recipients.
       Usually these envelope  addresses  are  the  same  as  the
       addresses listed in the message header:

          (envelope) from djb to root
          From: djb
          To: root

       In  more  complicated  situations,  though,  the  envelope
       addresses may differ from the header addresses.


ENVELOPE EXAMPLES

       When a message is delivered to several people at different
       locations, it is first photocopied and placed into several
       envelopes:

          (envelope) from djb to root
          From: djb                          Copy #1 of message
          To: root, god@brl.mil

          (envelope) from djb to god@brl.mil
          From: djb                          Copy #2 of message
          To: root, god@brl.mil

       When a message is delivered to several people at the  same
       location, the sender doesn't have to photocopy it.  He can
       instead stuff it into one envelope with several addresses;
       the recipients will make the photocopy:

          (envelope) from djb to god@brl.mil, angel@brl.mil
          From: djb
          To: god@brl.mil, angel@brl.mil, joe, frde

       Bounced  mail is sent back to the envelope sender address.
       The bounced mail  doesn't  list  an  envelope  sender,  so
       bounce loops are impossible:

          (envelope) from <> to djb
          From: MAILER-DAEMON
          To: djb
          Subject: unknown user frde

       The  recipient of a message may make another copy and for-
       ward it in a new envelope:

          (envelope) from djb to joe
          From: djb                          Original message
          From: djb                          Forwarded message
          To: joe

       A mailing list works almost the same way:

          (envelope) from djb to sos-list
          From: djb                          Original message
          To: sos-list

          (envelope) from sos-owner to god@brl.mil
          From: djb                          Forwarded message
          To: sos-list                       to recipient #1

          (envelope) from sos-owner to frde
          From: djb                          Forwarded message
          To: sos-list                       to recipient #2

       Notice that the mailing list is  set  up  to  replace  the
       envelope sender with something new, sos-owner.  So bounces
       will come back to sos-owner:

          (envelope) from <> to sos-owner
          From: MAILER-DAEMON
          To: sos-owner
          Subject: unknown user frde

       It's a good idea to set up an  extra  address,  sos-owner,
       like  this:  the original envelope sender (djb) has no way
       to fix bad sos-list addresses, and of course bounces  must
       not be sent to sos-list itself.


HOW ENVELOPE ADDRESSES ARE STORED

       Envelope  sender  and  envelope  recipient  addresses  are
       transmitted and recorded in several ways.

       When a user injects mail through qmail-inject, he can sup-
       ply  a  Return-Path  line  or a -f option for the envelope
       sender; by default the envelope sender is his login  name.
       The  envelope  recipient  addresses  can be taken from the
       command line or from various header fields,  depending  on
       the  options  to  qmail-inject.  Similar comments apply to
       sendmail.

       When a message is transferred from one machine to  another
       through  SMTP, the envelope sender is given in a MAIL FROM
       command, the envelope recipients are given in RCPT TO com-
       mands,  and  the  message is supplied separately by a DATA
       command.

       When a message is delivered by qmail  to  a  single  local
       recipient, qmail-alias records the recipient in Delivered-
       To and the envelope sender in Return-Path.  It uses Deliv-
       Path.  It does not record envelope recipient addresses, on
       the theory that they are redundant: you received the mail,
       so you must have been one of the envelope recipients.

       Note that,  if  the  header  doesn't  have  any  recipient
       addresses, sendmail will move envelope recipient addresses
       back into  the  header.   This  situation  occurs  if  all
       addresses  were  originally  listed  as  Bcc, since Bcc is
       automatically removed.  When sendmail sees this,  it  cre-
       ates  a  new  Apparently-To header field with the envelope
       recipient addresses.  This has  the  strange  effect  that
       each  blind-carbon-copy  recipient  will see a list of all
       recipients on the same machine.

       When a message is stored  in  mbox  format,  the  envelope
       sender  is  recorded  at the top of the message as a UUCP-
       style From (no colon) line.  Note that this line  is  less
       reliable than the Return-Path line added by qmail-alias or
       sendmail.


SEE ALSO

       qmail-header(5), qmail-alias(8), qmail-inject(8)