Differences between revisions 4 and 5
Revision 4 as of 2008-06-11 23:46:33
Size: 5488
Editor: terri
Comment:
Revision 5 as of 2010-05-22 06:57:51
Size: 5399
Editor: msapiro
Comment: Updated for '@listname'.
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
#pragma page-filename DOC/versions/10715358 #pragma page-filename DOC/versions/12812357
Line 24: Line 24:
The first issue is the hardest to deal with. You don't want to open the umbrella list to posting from anyone because you have already arranged for any posts from the umbrella to pass through to the sublists. Ideally, you want to add the sublists to accept_these_nonmembers of the umbrella, but Mailman 2.1 does not allow adding list names here. There is a patch at [[http://sourceforge.net/tracker/index.php?func=detail&aid=1220144&group_id=103&atid=300103]] that implements this function for Mailman 2.1 and it will be included in Mailman 2.2, but for Mailman 2.1 in the absence of the patch, you have to do this outside of Mailman. The first issue can be hardest to deal with. You don't want to open the umbrella list to posting from anyone because you have already arranged for any posts from the umbrella to pass through to the sublists. You want to add the sublists to accept_these_nonmembers of the umbrella, and in Mailman 2.1.10 and newer, you do exactly that using the @Listname syntax. For Mailman 2.1.9 and older, there is a patch at [[https://bugs.launchpad.net/mailman/+bug/558204]] that implements this function. For Mailman 2.1.9 and older, in the absence of the patch, you have to do this outside of Mailman.
Line 48: Line 48:
(footnote) You can have a list with both individual and list members. You do not set it as an umbrella list and you turn off password reminders for the members that are lists. This is not a secure solution though, because someone can always request a reminder for a member list via the web interface. See [[http://mail.python.org/pipermail/mailman-users/2007-February/055687.html]] for more detail.
Line 50: Line 49:
''Last changed on Fri Feb 16 06:26:56 2007 by'' Mark Sapiro {{{#!wiki caution
You can have a list with both individual and list members. You do not set it as an umbrella list and you turn off password reminders for the members that are lists. This is not a secure solution though, because someone can always request a reminder for a member list via the web interface. See [[http://mail.python.org/pipermail/mailman-users/2007-February/055687.html]] for more detail.
}}}

3.69. How do I set up an umbrella list?

This is a companion to FAQ 3.5 What is an Umbrella list - and why doesn't it do what I want?. That FAQ explains how umbrella lists work and provides some information about alternative ways of doing the same thing.

This FAQ discusses some other issues with umbrella lists and tells you how to set up the umbrella list and its member lists so that a post from a member of one of the sublists to the umbrella list will be delivered to all the sublists without being held anywhere for moderator approval. Of course, if you don't want members of the sublists to be able to post to the umbrella, you would set up the umbrella differently than described here - perhaps with just a few authorized posters in accept_these_nonmembers.

Before getting to the setup details, let's look at what's different between umbrella and non-umbrella lists. There is only one difference. If U1@example.com is an umbrella list with members S1@example.com, S2@example.com and S3@example.net, password reminders from U1@example.com will be sent to S1-suffix@example.com, S2-suffix@example.com and S3-suffix@example.net instead of S1@example.com, S2@example.com and S3@example.net. -suffix is settable; the default is -owner.

The purpose of this is to prevent the U1 member passwords for S1, S2, and S3 from being sent to the S1, S2 and S3 lists themselves. However, this makes it difficult to have both lists and individuals as direct members of the same list. (see footnote)

There are three issues in setting up an umbrella list and its member lists. These are:

  • posts from a member of a sublist will be held for moderation by the umbrella list because the poster is not a member of the umbrella.
  • posts from the umbrella list will be held by a sublist because the original poster is not a member of the sublist.
  • posts from the umbrella list will be held for "implicit destination" by a sublist.

Taking these in reverse order, If a sublist's Privacy options...\>Recipient filters\>require\_explicit\_destination = Yes, then the posting address of the umbrella list needs to be in Privacy options...\>Recipient filters\>acceptable\_aliases of the sublist.

The second issue is when a member of one sub-list posts to the umbrella, her post is held by the sublists of which she is not a member. There are two ways to deal with this. if the mm_cfg.py option USE_ENVELOPE_SENDER is Yes or True, you can add the umbrella's -bounces address to accept_these_nonmembers of sublists. In any case, you can add the umbrella's -bounces address as a member with delivery disabled and password reminders off to the sublists.

The reason why adding the umbrella's -bounces address as a member always works, but adding it to accept_these_nonmembers only works if USE_ENVELOPE_SENDER is Yes or True, is that the -bounces address in in Sender: and not in From: and membership is always tested for both Sender: and From:, but *_these_nonmembers is only tested against either Sender: or From: depending on USE_ENVELOPE_SENDER.

You can also deal with this issue by making the umbrella list anonymous and then putting the umbrella posting address or the umbrella -bounces address (depending on USE_ENVELOPE_SENDER) in the sublists' accept_these_nonmembers. Of course, this is not satisfactory if you want to maintain the identity of posters to the umbrella list.

The first issue can be hardest to deal with. You don't want to open the umbrella list to posting from anyone because you have already arranged for any posts from the umbrella to pass through to the sublists. You want to add the sublists to accept_these_nonmembers of the umbrella, and in Mailman 2.1.10 and newer, you do exactly that using the @Listname syntax. For Mailman 2.1.9 and older, there is a patch at https://bugs.launchpad.net/mailman/+bug/558204 that implements this function. For Mailman 2.1.9 and older, in the absence of the patch, you have to do this outside of Mailman.

One way to do this would be the following shell script run sufficiently often by cron. This only works if all the lists are on the same machine.

 #!/bin/bash
 #
 # Set accept_these_nonmembers of list U1 to contain all the members
 # of lists S1, S2 and S3.
 #
 # paths may need adjusting for your installation.
 #
 temp1=`/bin/mktemp`
 temp2=`/bin/mktemp`
 /usr/local/mailman/bin/list_members S1 > $temp1
 /usr/local/mailman/bin/list_members S2 >> $temp1
 /usr/local/mailman/bin/list_members S3 >> $temp1
 /bin/sort -u $temp1 |\
 /bin/sed  -e '1,$s/.*/"&",/'  -e '1i accept_these_nonmembers = [' \
 -e '$a ]' > $temp2
 /usr/local/mailman/bin/config_list -i $temp2 U1
 rm $temp1 $temp2

You can have a list with both individual and list members. You do not set it as an umbrella list and you turn off password reminders for the members that are lists. This is not a secure solution though, because someone can always request a reminder for a member list via the web interface. See http://mail.python.org/pipermail/mailman-users/2007-February/055687.html for more detail.

Converted from the Mailman FAQ Wizard

This is one of many Frequently Asked Questions.

MailmanWiki: DOC/How do I set up an umbrella list? (last edited 2018-06-12 14:11:51 by msapiro)