Great Circle Associates List-Managers
(December 2000)
 

Indexed By Date: [Previous] [Next] Indexed By Thread: [Previous] [Next]

Subject: Re: How to get reply-all to work
From: Dave Sill <de5-list-managers @ sws5 . ctd . ornl . gov>
Organization: Oak Ridge National Lab, Oak Ridge, Tenn., USA
Date: Thu, 21 Dec 2000 09:13:43 -0500
To: list-managers @ GreatCircle . COM
In-reply-to: <5.0.1.4.0.20001220195622.05bfe9a0@mail.brightmail.com>
References: <5.0.1.4.0.20001220195622.05bfe9a0@mail.brightmail.com>

Ellen Spertus <spertus@mills.edu> wrote:

>The problem is I'm switching to using VERPs 
>(http://cr.yp.to/proto/verp.txt), which require a distinct message for each 
>subscriber.  This would require me to send n messages, each with 2 
>recipients (the real recipient and the list (so reply-all works)).  This 
>would cause me to send n wasteful list->list messages, which I would rather 
>avoid.

I think you're missing the distinction between the header of the
message and the envelope. When a normal user sends mail, the MTA
usually contructs an SMTP envelope based on the header, so they're
probably not aware of the distinction. But a list manager is a very
different critter. The SMTP envelope(s) it creates from the original
message are very little like the header.

For example, take a simple person-to-person message:

  From: joe@tigger
  To: sue@piglet
  Subject: Meeting tomorrow

  blah blah blah...

When tigger's MTA sends the message to piglet, it creates an
"envelope" via the SMTP MAIL, RCPT, and DATA commands:

  Envelope:
    Sender: joe@tigger.example.com
    Recipient: sue@piglet.example.com

  Message:
    From: joe@tigger.example.com
    To: sue@piglet.example.com
    Subject: Meeting tomorrow

    blah blah blah...

If joe had BCC'd the message to pat@pooh, then an additional
envelope/message pair would have been created:
  
  Envelope:
    Sender: joe@tigger.example.com
    Recipient: pat@pooh.example.com

  Message:
    From: joe@tigger.example.com
    To: sue@piglet.example.com
    Subject: Meeting tomorrow

    blah blah blah...

The only difference is the envelope recipient.

Now consider what happens with mail to a mailing list. First, the user 
sends the message to the list manager:

  From: joe@tigger.example.com
  To: joes-group@mailhub.example.com
  Subject: Group meeting tomorrow

  blah blah blah...

That results in an enveleop/message pair like the first example
above. Next, the list manager does its stuff: checking the validity of
the sender, adding headers/footers to the message, etc., and, finally,
it resends the message to the subscribers (sue, pat, etc.). The final
result is a set of envelope/message pairs like:

  Pair 1:
    Envelope:
      Sender: joes-group-owner@tigger.example.com
      Recipient: sue@piglet.example.com
  
    Message:
      From: joe@tigger.example.com
      To: joes-group@mailhub.example.com
      Subject: Group meeting tomorrow
  
      blah blah blah...

  Pair 2:
    Envelope:
      Sender: joes-group-owner@tigger.example.com
      Recipient: pat@pooh.example.com
  
    Message:
      From: joe@tigger.example.com
      To: joes-group@mailhub.example.com
      Subject: Group meeting tomorrow
  
      blah blah blah...

  etc.

I.e., it looks much like the recipients were BCC'd on the original
message. Note that only the envelope recipient changes from one pair
to the next.

The only difference for VERP'd lists is that the envelope sender also
changes for each pair. E.g.:

  Pair 1:
    Envelope:
      Sender: joes-group-return-sue=piglet.example.com@tigger.example.com
      Recipient: sue@piglet.example.com
  
    Message:
      From: joe@tigger.example.com
      To: joes-group@mailhub.example.com
      Subject: Group meeting tomorrow
  
      blah blah blah...

  Pair 2:
    Envelope:
      Sender: joes-group-return-pat=pooh.example.com@tigger.example.com
      Recipient: pat@pooh.example.com
  
    Message:
      From: joe@tigger.example.com
      To: joes-group@mailhub.example.com
      Subject: Group meeting tomorrow
  
      blah blah blah...

  etc.

So the bottom line is that you don't have to send the message to any
addresses just because they appear in header of the message--you just
need to specify the envelope recipient when you inject the message,
rather than letting the mailer construct one from the header.

-Dave



References:
Indexed By Date Previous: eGroups
From: Dorothy Firsching <firschng@cais.com>
Next: Re: eGroups
From: murr rhame <murr@vnet.net>
Indexed By Thread Previous: How to get reply-all to work
From: Ellen Spertus <spertus@mills.edu>
Next: Re: How to get reply-all to work
From: "Roger Smith" <roger@jadebox.com>

Google
 
Search Internet Search www.greatcircle.com