FAQ
I have read the FAQ about modifying the mm_cfg.py file to create a
more "user friendly" subject for confirmations. I implemented this
with my Mailman/Postfix setup. I mainly wanted it for Invitation
confirmations, but I understand that for newer versions of Mailman, it
works for other confirmations as well.

One question- Since the subject line is changed and replaces the
confirmation ID code with other text, does that mean that simple
replying to the message to confirmm will no work? I have tested this
and found that I can confirm by clicking on the link and going to the
web page or by composing a new message with the confirm code in the
body, sent to the list-request address.

By default, Postfix allows VERP to rewrite the subject, but is other
configuration necessary to make the Reply to the confirmation message
work, or is that feature lost when VERPing?

--
Christopher Adams
adamsca at gmail.com

Search Discussions

  • Mark Sapiro at Nov 27, 2007 at 9:35 pm

    Christopher Adams wrote:
    One question- Since the subject line is changed and replaces the
    confirmation ID code with other text, does that mean that simple
    replying to the message to confirmm will no work?

    It will still work if your incoming MTA recognizes addresses of the form

    listname-confirm+xxxxxxxxxxxxxxxxxxxxxxxx at example.com

    as an address to be delivered to listname-confirm at example.com.

    I have tested this
    and found that I can confirm by clicking on the link and going to the
    web page or by composing a new message with the confirm code in the
    body, sent to the list-request address.

    The confirmation message the user receives is From: an address like the
    one above. Simply replying to that message (i.e.sending the reply to
    listname-confirm+xxxxxxxxxxxxxxxxxxxxxxxx at example.com) will work if
    the MTA delivers it to mailman properly.

    By default, Postfix allows VERP to rewrite the subject, but is other
    configuration necessary to make the Reply to the confirmation message
    work, or is that feature lost when VERPing?

    In Postfix, you need

    recipient_delimiter = +

    for this to work. VERP should not affect this as it manipulates the
    envelope sender, not the From: header.

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan
  • Christopher Adams at Nov 27, 2007 at 9:50 pm
    Thank you for clarifying that. I assumed from the Postfix/VERP
    configuration documentation (below) that the '+' delimiter would be
    used regardless of entering it in the Postfix main.cf file. I should
    tried adding it anyway, but I hadn't gotten to that step yet. Thanks,
    it works as it should.

    Quoted from documentation:

    With Postfix, the whole process is controlled by four configuration parameters.

    default_verp_delimiters (default value: +=)
    On Nov 27, 2007 1:35 PM, Mark Sapiro wrote:
    Christopher Adams wrote:
    One question- Since the subject line is changed and replaces the
    confirmation ID code with other text, does that mean that simple
    replying to the message to confirmm will no work?

    It will still work if your incoming MTA recognizes addresses of the form

    listname-confirm+xxxxxxxxxxxxxxxxxxxxxxxx at example.com

    as an address to be delivered to listname-confirm at example.com.

    I have tested this
    and found that I can confirm by clicking on the link and going to the
    web page or by composing a new message with the confirm code in the
    body, sent to the list-request address.

    The confirmation message the user receives is From: an address like the
    one above. Simply replying to that message (i.e.sending the reply to
    listname-confirm+xxxxxxxxxxxxxxxxxxxxxxxx at example.com) will work if
    the MTA delivers it to mailman properly.

    By default, Postfix allows VERP to rewrite the subject, but is other
    configuration necessary to make the Reply to the confirmation message
    work, or is that feature lost when VERPing?

    In Postfix, you need

    recipient_delimiter = +

    for this to work. VERP should not affect this as it manipulates the
    envelope sender, not the From: header.

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan


    --
    Christopher Adams
    adamsca at gmail.com
  • Mark Sapiro at Nov 27, 2007 at 10:23 pm

    Christopher Adams wrote:
    Thank you for clarifying that. I assumed from the Postfix/VERP
    configuration documentation (below) that the '+' delimiter would be
    used regardless of entering it in the Postfix main.cf file. I should
    tried adding it anyway, but I hadn't gotten to that step yet. Thanks,
    it works as it should.

    Quoted from documentation:

    With Postfix, the whole process is controlled by four configuration parameters.

    default_verp_delimiters (default value: +=)

    Yes, one would think that, but you do need to set

    recipient_delimiter = +

    in main.cf, even though the Postfix document doesn't get to that until
    much later.

    BTW, the Postfix/VERP configuration referred to in the Postfix
    documentation is true VERP done by the MTA. What Mailman calls VERP is
    similar, but it is done by Mailman by manipulating envelope senders
    before delivering to the MTA and is more expensive because it requires
    Mailman to send each recipient in a separate SMTP transaction. And,
    what Mailman calls VERP_CONFIRMATIONS is a misnomer and isn't really
    VERP or VERP-like at all.

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan
  • Charles Marcus at Nov 27, 2007 at 11:36 pm

    On 11/27/2007, Mark Sapiro (mark at msapiro.net) wrote:
    Yes, one would think that, but you do need to set

    recipient_delimiter = +

    in main.cf, even though the Postfix document doesn't get to that until
    much later.
    No, you don't - this is the default... you only need to explicitly set
    it if you want to change it.

    --

    Best regards,

    Charles
  • Mark Sapiro at Nov 27, 2007 at 11:50 pm

    Charles Marcus wrote:
    On 11/27/2007, Mark Sapiro (mark at msapiro.net) wrote:
    Yes, one would think that, but you do need to set

    recipient_delimiter = +

    in main.cf, even though the Postfix document doesn't get to that until
    much later.
    No, you don't - this is the default... you only need to explicitly set
    it if you want to change it.

    Quoting from <http://www.postfix.org/postconf.5.html>, aka 'man 5
    postconf'

    recipient_delimiter (default: empty)

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan
  • Charles Marcus at Nov 28, 2007 at 12:08 am

    On 11/27/2007, Mark Sapiro (mark at msapiro.net) wrote:
    On 11/27/2007, Mark Sapiro (mark at msapiro.net) wrote:
    Yes, one would think that, but you do need to set

    recipient_delimiter = +

    in main.cf, even though the Postfix document doesn't get to
    that until much later.
    No, you don't - this is the default... you only need to explicitly
    set it if you want to change it.
    Quoting from <http://www.postfix.org/postconf.5.html>, aka 'man 5
    postconf'

    recipient_delimiter (default: empty)
    Odd... in the default main.cf that was installed on my box, it was
    already set to + but commented out - which, for postfix, means it is the
    default... and I was almost positive that I recall someone on the
    postfix telling me this explicitly, but...

    I see that a postconf -d shows you to be correct...

    Apologies for the noise...

    --

    Best regards,

    Charles
  • Brad Knowles at Nov 28, 2007 at 12:19 am

    On 11/27/07, Mark Sapiro wrote:

    Quoting from <http://www.postfix.org/postconf.5.html>, aka 'man 5
    postconf'

    recipient_delimiter (default: empty)
    That man page may or may not describe the current state of affairs,
    and of course even if it does then you might be dealing with an older
    installation that may not implement the same default status.

    If you want to find out what your current postfix defaults are, you
    use the command "postconf -d". If you want to see what you've got
    configured that is different from the built-in defaults, use the
    command "postconf -n". A plain "postconf" will tell you what is
    configured, but you won't know whether that setting comes from the
    default or is being over-ridden by the configuration file.

    --
    Brad Knowles <brad at shub-internet.org>
    LinkedIn Profile: <http://tinyurl.com/y8kpxu>
  • Christopher Adams at Nov 28, 2007 at 12:56 am
    Geez, now I don't know who to listen to. :>). Anyway, my assumption
    was wrong and I based it on the invitation confirmation not completely
    working. Now it does and I thank you both.

    One concern - Charles mentioned how 'expensive' it was to use VERP
    with Postfix. I am wondering what kind of hit on the responsiveness of
    my Mailman server will be. I have over 500 lists and 250,000
    subscribers. If VERP being used for Mailman causes more mail activity,
    could this result in slowness of list message delivery?
    On Nov 27, 2007 4:19 PM, Brad Knowles wrote:
    On 11/27/07, Mark Sapiro wrote:

    Quoting from <http://www.postfix.org/postconf.5.html>, aka 'man 5
    postconf'

    recipient_delimiter (default: empty)
    That man page may or may not describe the current state of affairs,
    and of course even if it does then you might be dealing with an older
    installation that may not implement the same default status.

    If you want to find out what your current postfix defaults are, you
    use the command "postconf -d". If you want to see what you've got
    configured that is different from the built-in defaults, use the
    command "postconf -n". A plain "postconf" will tell you what is
    configured, but you won't know whether that setting comes from the
    default or is being over-ridden by the configuration file.

    --
    Brad Knowles <brad at shub-internet.org>
    LinkedIn Profile: <http://tinyurl.com/y8kpxu>

    ------------------------------------------------------
    Mailman-Users mailing list
    Mailman-Users at python.org
    http://mail.python.org/mailman/listinfo/mailman-users
    Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py
    Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/
    Unsubscribe: http://mail.python.org/mailman/options/mailman-users/adamsca%40gmail.com

    Security Policy: http://www.python.org/cgi-bin/faqw-mm.py?req=show&amp;file=faq01.027.htp


    --
    Christopher Adams
    adamsca at gmail.com
  • Mark Sapiro at Nov 28, 2007 at 2:26 am

    Christopher Adams wrote:
    One concern - Charles mentioned how 'expensive' it was to use VERP
    with Postfix. I am wondering what kind of hit on the responsiveness of
    my Mailman server will be. I have over 500 lists and 250,000
    subscribers. If VERP being used for Mailman causes more mail activity,
    could this result in slowness of list message delivery?

    The short answer is yes.

    But let's be clear on what we're talking about.

    First, we are not talking about VERP_CONFIRMATIONS = Yes. All this does
    is remove the confirm token from the Subject: and put it in the From:
    address and replace the Subject: with a more user friendly one. It has
    no impact on performance because these messages are sent one recipient
    at a time anyway.

    What we are talking about is Variable Envelope Return Paths. I.e., each
    recipient (e.g. recip at user.example.com) of a message (sent from the
    listname at list.example.com list) gets a message sent with an envelope
    from

    listname-bounces+recip=user.example.com at list.example.com

    Then when a bounce is returned to that address, it is delivered to
    listname-bounces at list.example.com and Mailman knows that the user that
    bounced is recip at user.example.com without having to parse the actual
    bounce message and regardless of where the message might have been
    forwarded/aliased in between.

    If mailman does this VERPing (e.g. by setting VERP_DELIVERY_INTERVAL =
    1), then Mailman is required to send to each recipient in a separate
    SMTP transaction instead of a few transactions with a few hundred
    recipients each, because each recipient has a unique envelope from.
    List personalization also requires this because each recipient gets a
    different message. That's why Mailman has a setting for
    VERP_PERSONALIZED_DELIVERIES since if the deliveries are personalized
    to begin with, Mailman's VERPing doesn't cost extra.

    The alternative is to have the MTA do the VERPing. In this case
    delivery from Mailman to the MTA proceeds just as in the non-VERP
    case, but delivery from the MTA to the recipient domains might require
    more work. I.e., in the non-verp case, Mailman gives a message with
    500 recipient addresses to the MTA in one SMTP transaction. If 25 of
    these are aol.com addresses, the MTA may deliver the message to AOL in
    one transaction with 25 recipients, but if the MTA is VERPing, it is
    required to deliver to AOL in 25 separate transactions. So the impact
    is greater than for non-VERP, but significantly less than if Mailman
    does the VERPing. The problem is that unless the MTA can be configured
    to VERP every outgoing message (which you may not want to do even if
    you can), Mailman has to be patched to request that the MTA does VERP
    for 'this' message.

    As a point of reference however, there are lots of lists on python.org
    and some are quite busy (e.g. Python-list at python.org) and they are
    personalized and it seems to work OK. Brad has posted on this in the
    past
    <http://mail.python.org/pipermail/mailman-users/2007-September/058231.html>.

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan
  • Brad Knowles at Nov 28, 2007 at 4:38 am

    On 11/27/07, Mark Sapiro wrote:

    As a point of reference however, there are lots of lists on python.org
    and some are quite busy (e.g. Python-list at python.org) and they are
    personalized and it seems to work OK. Brad has posted on this in the
    past
    <http://mail.python.org/pipermail/mailman-users/2007-September/058231.html>.
    I also updated FAQ 1.15 with the latest information about python.org.
    See
    <http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.015.htp>.

    --
    Brad Knowles <brad at shub-internet.org>
    LinkedIn Profile: <http://tinyurl.com/y8kpxu>
  • Christopher Adams at Nov 29, 2007 at 8:14 pm
    Thanks to all for the plethora of information about VERP and how it is
    used by the MTAs and Mailman. Just for clarification, I don't have a
    list of 250,000 subscribers, just a site that has a total of 250,000
    subscribers over 500+ lists. I think the largest is about 40,000.

    So, if all I want to do (which was my original question) is to VERP
    confirmations, I only have to add this to Postfix:

    default_verp_delimiters = +=
    verp_delimiter_filter = -+=x

    and this to mm_cfgy.py:

    VERP_CONFIRMATIONS = Yes

    All other VERP setting are whatever is the default in Defaults.py.

    VERPing the confirmations seems to work as expectedc and I assume that
    there is not much of a burden on the server without VERPing every
    message or even VERPing a sample of messages.

    Thanks again for the good information.

    On Nov 27, 2007 8:38 PM, Brad Knowles wrote:
    On 11/27/07, Mark Sapiro wrote:

    As a point of reference however, there are lots of lists on python.org
    and some are quite busy (e.g. Python-list at python.org) and they are
    personalized and it seems to work OK. Brad has posted on this in the
    past
    <http://mail.python.org/pipermail/mailman-users/2007-September/058231.html>.
    I also updated FAQ 1.15 with the latest information about python.org.
    See
    <http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.015.htp>.


    --
    Brad Knowles <brad at shub-internet.org>
    LinkedIn Profile: <http://tinyurl.com/y8kpxu>


    --
    Christopher Adams
    adamsca at gmail.com
  • Brad Knowles at Nov 29, 2007 at 8:20 pm

    On 11/29/07, Christopher Adams wrote:

    Thanks to all for the plethora of information about VERP and how it is
    used by the MTAs and Mailman. Just for clarification, I don't have a
    list of 250,000 subscribers, just a site that has a total of 250,000
    subscribers over 500+ lists. I think the largest is about 40,000.
    That would still make it one of the larger Mailman installations I know of.
    VERPing the confirmations seems to work as expectedc and I assume that
    there is not much of a burden on the server without VERPing every
    message or even VERPing a sample of messages.
    There shouldn't be a whole lot of load resulting from VERP'ing the
    confirmations, no. Those should be going out, at most, once per day
    per recipient who's been identified as needing confirmation. Even if
    all your lists were announce-only lists and you only got one
    announcement per list per month, you should probably see more
    "regular" traffic than the confirmations.

    I'm not sure, but turning on verp_confirmations may result in other
    list administrative functions also being VERP'ed, but again even if
    you put all them together, they should still be a relatively small
    fraction of your overall volume.


    Please let us know if you have any further questions, or if you'd be
    willing to contribute more information to be put into the FAQs.

    --
    Brad Knowles <brad at shub-internet.org>
    LinkedIn Profile: <http://tinyurl.com/y8kpxu>
  • Mark Sapiro at Nov 29, 2007 at 10:39 pm

    Christopher Adams wrote:
    So, if all I want to do (which was my original question) is to VERP
    confirmations, I only have to add this to Postfix:

    default_verp_delimiters = +=
    verp_delimiter_filter = -+=x

    Actually, you don't need either of these. default_verp_delimiters
    specifies the default VERP delimiters to be used in the envelope
    sender address, + to separate the sender from the recipient address
    and = to replace the @ in the recipient address. verp_delimiter_filter
    specifies the characters that a sender is allowed to specify as
    replacements for the defaults.

    They both relate only to 'true' VERP done by Postfix on outgoing mail
    and have nothing to do with Postfix's parsing of incoming mail
    addresses.

    What you do need in Postfix is

    recipient_delimiter = +

    So that when Postfix receives the reply to a 'friendly' confirmation
    addressed to listname-confirm+xxxxxxxxxxxxxxxxxxx at example.com it
    delivers it the same as it would if it were addressed to
    listname-confirm at example.com .

    and this to mm_cfgy.py:

    VERP_CONFIRMATIONS = Yes

    All other VERP setting are whatever is the default in Defaults.py.

    That's correct.

    VERPing the confirmations seems to work as expectedc and I assume that
    there is not much of a burden on the server without VERPing every
    message or even VERPing a sample of messages.

    There is no additional burden on anything (except maybe Postfix address
    parsing on the replies) from setting VERP_CONFIRMATIONS = Yes since
    the confirmations are individual messages sent one at a time to one
    recipient regardless of the VERP_CONFIRMATIONS setting.

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan
  • Brad Knowles at Nov 28, 2007 at 4:18 am

    On 11/27/07, Christopher Adams wrote:

    One concern - Charles mentioned how 'expensive' it was to use VERP
    with Postfix. I am wondering what kind of hit on the responsiveness of
    my Mailman server will be.
    There has been some research on this topic, which is summarized at
    <http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq04.012.htp>.
    I have over 500 lists and 250,000
    subscribers.
    That would be one of the larger mailing lists known to be running
    Mailman, see
    <http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.015.htp>.
    If VERP being used for Mailman causes more mail activity,
    could this result in slowness of list message delivery?
    Well, it all comes down to how much activity your lists have. A list
    that has hundreds of thousands of subscribers but which only gets one
    post per month is not necessarily going to see the same sets of
    performance problems as a site that has a smaller number of lists
    with a smaller number of recipients, but where the lists are very
    active.

    For that second URL shown above, contrast the profiles of
    HostMySite.com and panic.com as compared to lists.apple.com and
    FreeBSD.org.


    Going back to that first URL shown above, I think the most critical
    summary paragraphs are these:

    The network penalty between SMTP_MAX = 1 (effectively VERP) and any
    kind of batching (SMTP > 1) is roughly 50%. To get VERP or customized
    footers or customized anything, you double your network bandwidth.

    There is very little advantage to setting SMTP_MAX > 5, UNLESS your
    subscriber base is heavily stratified onto very few sites. If you
    have really large groups of subscribers on AOL or Hotmail, it can help
    cut network bandwidth, but at best, it seems to be about a 10%
    improvement.

    Keep in mind that this is for the test set described, but we believe
    that this is a reasonably accurate description of many Mailman
    mailing list servers & services.

    --
    Brad Knowles <brad at shub-internet.org>
    LinkedIn Profile: <http://tinyurl.com/y8kpxu>

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupmailman-users @
categoriespython
postedNov 27, '07 at 8:35p
activeNov 29, '07 at 10:39p
posts15
users4
websitelist.org

People

Translate

site design / logo © 2022 Grokbase