[Pkg-mailman-hackers] Pkg-mailman commit - rev 716 - in trunk: . Mailman Mailman/Bouncers Mailman/Cgi Mailman/Commands Mailman/Gui Mailman/Handlers Mailman/MTA Mailman/Queue bin contrib cron debian doc doc/mailman-admin doc/mailman-install doc/mailman-member doc/mailman-member-es messages messages/ar/LC_MESSAGES messages/ast/LC_MESSAGES messages/ca/LC_MESSAGES messages/cs/LC_MESSAGES messages/da/LC_MESSAGES messages/de/LC_MESSAGES messages/el messages/el/LC_MESSAGES messages/es/LC_MESSAGES messages/et/LC_MESSAGES messages/eu/LC_MESSAGES messages/fi/LC_MESSAGES messages/fr/LC_MESSAGES messages/gl/LC_MESSAGES messages/he/LC_MESSAGES messages/hr/LC_MESSAGES messages/hu/LC_MESSAGES messages/ia/LC_MESSAGES messages/it/LC_MESSAGES messages/ja/LC_MESSAGES messages/ko/LC_MESSAGES messages/lt/LC_MESSAGES messages/nl/LC_MESSAGES messages/no/LC_MESSAGES messages/pl/LC_MESSAGES messages/pt/LC_MESSAGES messages/pt_BR/LC_MESSAGES messages/ro/LC_MESSAGES messages/ru/LC_MESSAGES messages/sk/LC_MESSAGES messages/sl/LC_MESSAGES messages/sr/LC_MESSAGES messages/sv/LC_MESSAGES messages/tr/LC_MESSAGES messages/uk/LC_MESSAGES messages/vi/LC_MESSAGES messages/zh_CN/LC_MESSAGES messages/zh_TW/LC_MESSAGES misc src templates templates/ar templates/ast templates/ca templates/cs templates/da templates/de templates/el templates/en templates/es templates/et templates/eu templates/fi templates/fr templates/gl templates/he templates/hr templates/hu templates/ia templates/it templates/ja templates/ko templates/lt templates/nl templates/no templates/pl templates/pt templates/pt_BR templates/ro templates/ru templates/sk templates/sl templates/sr templates/sv templates/tr templates/uk templates/vi templates/zh_CN templates/zh_TW tests tests/bounces

Thijs Kinkhorst thijs at alioth.debian.org
Sun May 20 12:09:35 UTC 2012


Author: thijs
Date: 2012-05-20 12:09:31 +0000 (Sun, 20 May 2012)
New Revision: 716

Added:
   trunk/Mailman/CSRFcheck.py
   trunk/messages/el/
   trunk/messages/el/LC_MESSAGES/
   trunk/messages/el/LC_MESSAGES/mailman.po
   trunk/templates/de/archidxentry.html
   trunk/templates/de/archidxfoot.html
   trunk/templates/de/archidxhead.html
   trunk/templates/de/archlistend.html
   trunk/templates/de/archliststart.html
   trunk/templates/de/archtoc.html
   trunk/templates/de/archtocentry.html
   trunk/templates/de/archtocnombox.html
   trunk/templates/de/emptyarchive.html
   trunk/templates/de/nomoretoday.txt
   trunk/templates/de/probe.txt
   trunk/templates/de/unsubauth.txt
   trunk/templates/el/
   trunk/templates/el/admindbdetails.html
   trunk/templates/el/admindbpreamble.html
   trunk/templates/el/admindbsummary.html
   trunk/templates/el/adminsubscribeack.txt
   trunk/templates/el/adminunsubscribeack.txt
   trunk/templates/el/admlogin.html
   trunk/templates/el/approve.txt
   trunk/templates/el/archidxentry.html
   trunk/templates/el/archidxfoot.html
   trunk/templates/el/archidxhead.html
   trunk/templates/el/archlistend.html
   trunk/templates/el/archliststart.html
   trunk/templates/el/archtoc.html
   trunk/templates/el/archtocentry.html
   trunk/templates/el/archtocnombox.html
   trunk/templates/el/article.html
   trunk/templates/el/bounce.txt
   trunk/templates/el/checkdbs.txt
   trunk/templates/el/convert.txt
   trunk/templates/el/cronpass.txt
   trunk/templates/el/disabled.txt
   trunk/templates/el/emptyarchive.html
   trunk/templates/el/headfoot.html
   trunk/templates/el/help.txt
   trunk/templates/el/invite.txt
   trunk/templates/el/listinfo.html
   trunk/templates/el/masthead.txt
   trunk/templates/el/newlist.txt
   trunk/templates/el/nomoretoday.txt
   trunk/templates/el/options.html
   trunk/templates/el/postack.txt
   trunk/templates/el/postauth.txt
   trunk/templates/el/postheld.txt
   trunk/templates/el/private.html
   trunk/templates/el/probe.txt
   trunk/templates/el/refuse.txt
   trunk/templates/el/roster.html
   trunk/templates/el/subauth.txt
   trunk/templates/el/subscribe.html
   trunk/templates/el/subscribeack.txt
   trunk/templates/el/unsub.txt
   trunk/templates/el/unsubauth.txt
   trunk/templates/el/userpass.txt
   trunk/templates/el/verify.txt
   trunk/tests/bounces/qmail_07.txt
   trunk/tests/bounces/simple_38.txt
Removed:
   trunk/doc/mailman-install/node6.html
Modified:
   trunk/Mailman/Bouncer.py
   trunk/Mailman/Bouncers/Qmail.py
   trunk/Mailman/Bouncers/SimpleMatch.py
   trunk/Mailman/Cgi/admin.py
   trunk/Mailman/Cgi/admindb.py
   trunk/Mailman/Cgi/confirm.py
   trunk/Mailman/Cgi/edithtml.py
   trunk/Mailman/Cgi/options.py
   trunk/Mailman/Cgi/private.py
   trunk/Mailman/Cgi/roster.py
   trunk/Mailman/Cgi/subscribe.py
   trunk/Mailman/Commands/cmd_confirm.py
   trunk/Mailman/Defaults.py.in
   trunk/Mailman/Gui/General.py
   trunk/Mailman/Gui/NonDigest.py
   trunk/Mailman/Handlers/Approve.py
   trunk/Mailman/Handlers/CalcRecips.py
   trunk/Mailman/Handlers/CookHeaders.py
   trunk/Mailman/Handlers/Hold.py
   trunk/Mailman/Handlers/MimeDel.py
   trunk/Mailman/Handlers/Moderate.py
   trunk/Mailman/Handlers/SMTPDirect.py
   trunk/Mailman/Handlers/Scrubber.py
   trunk/Mailman/Handlers/SpamDetect.py
   trunk/Mailman/Handlers/Tagger.py
   trunk/Mailman/Handlers/ToDigest.py
   trunk/Mailman/ListAdmin.py
   trunk/Mailman/MTA/Postfix.py
   trunk/Mailman/MailList.py
   trunk/Mailman/Mailbox.py
   trunk/Mailman/Message.py
   trunk/Mailman/Queue/CommandRunner.py
   trunk/Mailman/Queue/OutgoingRunner.py
   trunk/Mailman/Queue/Runner.py
   trunk/Mailman/SecurityManager.py
   trunk/Mailman/Utils.py
   trunk/Mailman/Version.py
   trunk/Mailman/htmlformat.py
   trunk/Mailman/versions.py
   trunk/NEWS
   trunk/README
   trunk/bin/add_members
   trunk/bin/export.py
   trunk/bin/genaliases
   trunk/bin/rmlist
   trunk/configure
   trunk/configure.in
   trunk/contrib/README.courier_to_mailman
   trunk/contrib/README.mm-handler-2.1.10
   trunk/contrib/mm-handler-2.1.10
   trunk/cron/checkdbs
   trunk/cron/gate_news
   trunk/debian/changelog
   trunk/doc/mailman-admin.ps
   trunk/doc/mailman-admin.txt
   trunk/doc/mailman-admin/about.html
   trunk/doc/mailman-admin/contents.html
   trunk/doc/mailman-admin/front.html
   trunk/doc/mailman-admin/index.html
   trunk/doc/mailman-admin/mailman-admin.html
   trunk/doc/mailman-admin/node10.html
   trunk/doc/mailman-admin/node11.html
   trunk/doc/mailman-admin/node12.html
   trunk/doc/mailman-admin/node13.html
   trunk/doc/mailman-admin/node14.html
   trunk/doc/mailman-admin/node15.html
   trunk/doc/mailman-admin/node16.html
   trunk/doc/mailman-admin/node17.html
   trunk/doc/mailman-admin/node18.html
   trunk/doc/mailman-admin/node19.html
   trunk/doc/mailman-admin/node20.html
   trunk/doc/mailman-admin/node21.html
   trunk/doc/mailman-admin/node22.html
   trunk/doc/mailman-admin/node23.html
   trunk/doc/mailman-admin/node24.html
   trunk/doc/mailman-admin/node25.html
   trunk/doc/mailman-admin/node26.html
   trunk/doc/mailman-admin/node27.html
   trunk/doc/mailman-admin/node28.html
   trunk/doc/mailman-admin/node29.html
   trunk/doc/mailman-admin/node3.html
   trunk/doc/mailman-admin/node30.html
   trunk/doc/mailman-admin/node31.html
   trunk/doc/mailman-admin/node32.html
   trunk/doc/mailman-admin/node33.html
   trunk/doc/mailman-admin/node34.html
   trunk/doc/mailman-admin/node35.html
   trunk/doc/mailman-admin/node4.html
   trunk/doc/mailman-admin/node5.html
   trunk/doc/mailman-admin/node6.html
   trunk/doc/mailman-admin/node7.html
   trunk/doc/mailman-admin/node8.html
   trunk/doc/mailman-admin/node9.html
   trunk/doc/mailman-install.ps
   trunk/doc/mailman-install.txt
   trunk/doc/mailman-install/about.html
   trunk/doc/mailman-install/bsd-issues.html
   trunk/doc/mailman-install/create-install-dir.html
   trunk/doc/mailman-install/customizing.html
   trunk/doc/mailman-install/exim3-transport.html
   trunk/doc/mailman-install/front.html
   trunk/doc/mailman-install/index.html
   trunk/doc/mailman-install/internals.pl
   trunk/doc/mailman-install/labels.pl
   trunk/doc/mailman-install/mail-server.html
   trunk/doc/mailman-install/mailman-install.html
   trunk/doc/mailman-install/node10.html
   trunk/doc/mailman-install/node12.html
   trunk/doc/mailman-install/node15.html
   trunk/doc/mailman-install/node16.html
   trunk/doc/mailman-install/node17.html
   trunk/doc/mailman-install/node18.html
   trunk/doc/mailman-install/node2.html
   trunk/doc/mailman-install/node20.html
   trunk/doc/mailman-install/node21.html
   trunk/doc/mailman-install/node22.html
   trunk/doc/mailman-install/node23.html
   trunk/doc/mailman-install/node24.html
   trunk/doc/mailman-install/node25.html
   trunk/doc/mailman-install/node26.html
   trunk/doc/mailman-install/node27.html
   trunk/doc/mailman-install/node28.html
   trunk/doc/mailman-install/node29.html
   trunk/doc/mailman-install/node3.html
   trunk/doc/mailman-install/node30.html
   trunk/doc/mailman-install/node31.html
   trunk/doc/mailman-install/node32.html
   trunk/doc/mailman-install/node33.html
   trunk/doc/mailman-install/node34.html
   trunk/doc/mailman-install/node36.html
   trunk/doc/mailman-install/node37.html
   trunk/doc/mailman-install/node38.html
   trunk/doc/mailman-install/node4.html
   trunk/doc/mailman-install/node41.html
   trunk/doc/mailman-install/node42.html
   trunk/doc/mailman-install/node43.html
   trunk/doc/mailman-install/node44.html
   trunk/doc/mailman-install/node45.html
   trunk/doc/mailman-install/node47.html
   trunk/doc/mailman-install/node48.html
   trunk/doc/mailman-install/node50.html
   trunk/doc/mailman-install/node7.html
   trunk/doc/mailman-install/node8.html
   trunk/doc/mailman-install/node9.html
   trunk/doc/mailman-install/postfix-integration.html
   trunk/doc/mailman-install/postfix-virtual.html
   trunk/doc/mailman-install/qmail-issues.html
   trunk/doc/mailman-install/site-list.html
   trunk/doc/mailman-install/troubleshooting.html
   trunk/doc/mailman-member-es.ps
   trunk/doc/mailman-member-es.txt
   trunk/doc/mailman-member-es/about.html
   trunk/doc/mailman-member-es/contents.html
   trunk/doc/mailman-member-es/front.html
   trunk/doc/mailman-member-es/index.html
   trunk/doc/mailman-member-es/mailman-member-es.html
   trunk/doc/mailman-member-es/node10.html
   trunk/doc/mailman-member-es/node11.html
   trunk/doc/mailman-member-es/node12.html
   trunk/doc/mailman-member-es/node13.html
   trunk/doc/mailman-member-es/node14.html
   trunk/doc/mailman-member-es/node15.html
   trunk/doc/mailman-member-es/node16.html
   trunk/doc/mailman-member-es/node17.html
   trunk/doc/mailman-member-es/node18.html
   trunk/doc/mailman-member-es/node19.html
   trunk/doc/mailman-member-es/node20.html
   trunk/doc/mailman-member-es/node21.html
   trunk/doc/mailman-member-es/node22.html
   trunk/doc/mailman-member-es/node23.html
   trunk/doc/mailman-member-es/node24.html
   trunk/doc/mailman-member-es/node25.html
   trunk/doc/mailman-member-es/node26.html
   trunk/doc/mailman-member-es/node27.html
   trunk/doc/mailman-member-es/node28.html
   trunk/doc/mailman-member-es/node29.html
   trunk/doc/mailman-member-es/node3.html
   trunk/doc/mailman-member-es/node30.html
   trunk/doc/mailman-member-es/node31.html
   trunk/doc/mailman-member-es/node32.html
   trunk/doc/mailman-member-es/node33.html
   trunk/doc/mailman-member-es/node34.html
   trunk/doc/mailman-member-es/node35.html
   trunk/doc/mailman-member-es/node36.html
   trunk/doc/mailman-member-es/node37.html
   trunk/doc/mailman-member-es/node38.html
   trunk/doc/mailman-member-es/node39.html
   trunk/doc/mailman-member-es/node4.html
   trunk/doc/mailman-member-es/node40.html
   trunk/doc/mailman-member-es/node41.html
   trunk/doc/mailman-member-es/node42.html
   trunk/doc/mailman-member-es/node5.html
   trunk/doc/mailman-member-es/node6.html
   trunk/doc/mailman-member-es/node7.html
   trunk/doc/mailman-member-es/node8.html
   trunk/doc/mailman-member-es/node9.html
   trunk/doc/mailman-member.ps
   trunk/doc/mailman-member.txt
   trunk/doc/mailman-member/about.html
   trunk/doc/mailman-member/contents.html
   trunk/doc/mailman-member/front.html
   trunk/doc/mailman-member/index.html
   trunk/doc/mailman-member/mailman-member.html
   trunk/doc/mailman-member/node10.html
   trunk/doc/mailman-member/node11.html
   trunk/doc/mailman-member/node12.html
   trunk/doc/mailman-member/node13.html
   trunk/doc/mailman-member/node14.html
   trunk/doc/mailman-member/node15.html
   trunk/doc/mailman-member/node16.html
   trunk/doc/mailman-member/node17.html
   trunk/doc/mailman-member/node18.html
   trunk/doc/mailman-member/node19.html
   trunk/doc/mailman-member/node20.html
   trunk/doc/mailman-member/node21.html
   trunk/doc/mailman-member/node22.html
   trunk/doc/mailman-member/node23.html
   trunk/doc/mailman-member/node24.html
   trunk/doc/mailman-member/node25.html
   trunk/doc/mailman-member/node26.html
   trunk/doc/mailman-member/node27.html
   trunk/doc/mailman-member/node28.html
   trunk/doc/mailman-member/node29.html
   trunk/doc/mailman-member/node3.html
   trunk/doc/mailman-member/node30.html
   trunk/doc/mailman-member/node31.html
   trunk/doc/mailman-member/node32.html
   trunk/doc/mailman-member/node33.html
   trunk/doc/mailman-member/node34.html
   trunk/doc/mailman-member/node35.html
   trunk/doc/mailman-member/node36.html
   trunk/doc/mailman-member/node37.html
   trunk/doc/mailman-member/node38.html
   trunk/doc/mailman-member/node39.html
   trunk/doc/mailman-member/node4.html
   trunk/doc/mailman-member/node40.html
   trunk/doc/mailman-member/node41.html
   trunk/doc/mailman-member/node42.html
   trunk/doc/mailman-member/node5.html
   trunk/doc/mailman-member/node6.html
   trunk/doc/mailman-member/node7.html
   trunk/doc/mailman-member/node8.html
   trunk/doc/mailman-member/node9.html
   trunk/messages/Makefile.in
   trunk/messages/ar/LC_MESSAGES/mailman.po
   trunk/messages/ast/LC_MESSAGES/mailman.po
   trunk/messages/ca/LC_MESSAGES/mailman.po
   trunk/messages/cs/LC_MESSAGES/mailman.po
   trunk/messages/da/LC_MESSAGES/mailman.po
   trunk/messages/de/LC_MESSAGES/mailman.po
   trunk/messages/es/LC_MESSAGES/mailman.po
   trunk/messages/et/LC_MESSAGES/mailman.po
   trunk/messages/eu/LC_MESSAGES/mailman.po
   trunk/messages/fi/LC_MESSAGES/mailman.po
   trunk/messages/fr/LC_MESSAGES/mailman.po
   trunk/messages/gl/LC_MESSAGES/mailman.po
   trunk/messages/he/LC_MESSAGES/mailman.po
   trunk/messages/hr/LC_MESSAGES/mailman.po
   trunk/messages/hu/LC_MESSAGES/mailman.po
   trunk/messages/ia/LC_MESSAGES/mailman.po
   trunk/messages/it/LC_MESSAGES/mailman.po
   trunk/messages/ja/LC_MESSAGES/mailman.po
   trunk/messages/ko/LC_MESSAGES/mailman.po
   trunk/messages/lt/LC_MESSAGES/mailman.po
   trunk/messages/mailman.pot
   trunk/messages/marked.files
   trunk/messages/nl/LC_MESSAGES/mailman.po
   trunk/messages/no/LC_MESSAGES/mailman.po
   trunk/messages/pl/LC_MESSAGES/mailman.po
   trunk/messages/pt/LC_MESSAGES/mailman.po
   trunk/messages/pt_BR/LC_MESSAGES/mailman.po
   trunk/messages/ro/LC_MESSAGES/mailman.po
   trunk/messages/ru/LC_MESSAGES/mailman.po
   trunk/messages/sk/LC_MESSAGES/mailman.po
   trunk/messages/sl/LC_MESSAGES/mailman.po
   trunk/messages/sr/LC_MESSAGES/mailman.po
   trunk/messages/sv/LC_MESSAGES/mailman.po
   trunk/messages/tr/LC_MESSAGES/mailman.po
   trunk/messages/uk/LC_MESSAGES/mailman.po
   trunk/messages/vi/LC_MESSAGES/mailman.po
   trunk/messages/zh_CN/LC_MESSAGES/mailman.po
   trunk/messages/zh_TW/LC_MESSAGES/mailman.po
   trunk/misc/Makefile.in
   trunk/src/Makefile.in
   trunk/templates/Makefile.in
   trunk/templates/ar/admlogin.html
   trunk/templates/ar/private.html
   trunk/templates/ast/admlogin.html
   trunk/templates/ast/private.html
   trunk/templates/ca/admlogin.html
   trunk/templates/ca/private.html
   trunk/templates/cs/admlogin.html
   trunk/templates/cs/private.html
   trunk/templates/da/admlogin.html
   trunk/templates/da/private.html
   trunk/templates/de/admindbdetails.html
   trunk/templates/de/admlogin.html
   trunk/templates/de/cronpass.txt
   trunk/templates/de/disabled.txt
   trunk/templates/de/invite.txt
   trunk/templates/de/listinfo.html
   trunk/templates/de/newlist.txt
   trunk/templates/de/options.html
   trunk/templates/de/private.html
   trunk/templates/de/subscribeack.txt
   trunk/templates/de/unsub.txt
   trunk/templates/de/verify.txt
   trunk/templates/en/admlogin.html
   trunk/templates/en/private.html
   trunk/templates/es/admlogin.html
   trunk/templates/es/private.html
   trunk/templates/et/admlogin.html
   trunk/templates/et/private.html
   trunk/templates/eu/admlogin.html
   trunk/templates/eu/article.html
   trunk/templates/eu/private.html
   trunk/templates/fi/admlogin.html
   trunk/templates/fi/private.html
   trunk/templates/fr/admlogin.html
   trunk/templates/fr/private.html
   trunk/templates/gl/admlogin.html
   trunk/templates/gl/private.html
   trunk/templates/he/admlogin.html
   trunk/templates/he/private.html
   trunk/templates/hr/admlogin.html
   trunk/templates/hr/private.html
   trunk/templates/hu/admlogin.html
   trunk/templates/hu/private.html
   trunk/templates/ia/admlogin.html
   trunk/templates/ia/private.html
   trunk/templates/it/admlogin.html
   trunk/templates/it/private.html
   trunk/templates/ja/admlogin.html
   trunk/templates/ja/private.html
   trunk/templates/ko/admlogin.html
   trunk/templates/ko/private.html
   trunk/templates/lt/admlogin.html
   trunk/templates/lt/private.html
   trunk/templates/nl/admlogin.html
   trunk/templates/nl/private.html
   trunk/templates/no/admlogin.html
   trunk/templates/no/private.html
   trunk/templates/pl/admlogin.html
   trunk/templates/pl/private.html
   trunk/templates/pt/admlogin.html
   trunk/templates/pt/private.html
   trunk/templates/pt_BR/admlogin.html
   trunk/templates/pt_BR/private.html
   trunk/templates/ro/admlogin.html
   trunk/templates/ro/private.html
   trunk/templates/ru/admlogin.html
   trunk/templates/ru/private.html
   trunk/templates/sk/admlogin.html
   trunk/templates/sk/private.html
   trunk/templates/sl/admlogin.html
   trunk/templates/sl/private.html
   trunk/templates/sr/admlogin.html
   trunk/templates/sr/private.html
   trunk/templates/sv/admlogin.html
   trunk/templates/sv/private.html
   trunk/templates/tr/admlogin.html
   trunk/templates/tr/private.html
   trunk/templates/uk/admlogin.html
   trunk/templates/uk/private.html
   trunk/templates/vi/admlogin.html
   trunk/templates/vi/private.html
   trunk/templates/zh_CN/admlogin.html
   trunk/templates/zh_CN/private.html
   trunk/templates/zh_TW/admlogin.html
   trunk/tests/test_bounces.py
   trunk/tests/test_handlers.py
Log:
New upstream source 2.1.15 rc 1


Modified: trunk/Mailman/Bouncer.py
===================================================================
--- trunk/Mailman/Bouncer.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Bouncer.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2012 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -307,7 +307,8 @@
         # set the Subject this way.
         del msg['subject']
         msg['Subject'] = 'confirm ' + info.cookie
-        msg.send(self)
+        # Send without Precedence: bulk.  Bug #808821.
+        msg.send(self, noprecedence=True)
         info.noticesleft -= 1
         info.lastnotice = time.localtime()[:3]
         # In case the MemberAdaptor stores bounce info externally to

Modified: trunk/Mailman/Bouncers/Qmail.py
===================================================================
--- trunk/Mailman/Bouncers/Qmail.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Bouncers/Qmail.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2009 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -36,7 +36,8 @@
     "We're sorry. There's a problem",
     'Check your send e-mail address.',
     'This is the mail delivery agent at',
-    'Unfortunately, your mail was not delivered'
+    'Unfortunately, your mail was not delivered',
+    'Your mail message to the following',
     ]
 acre = re.compile(r'<(?P<addr>[^>]*)>:')
 

Modified: trunk/Mailman/Bouncers/SimpleMatch.py
===================================================================
--- trunk/Mailman/Bouncers/SimpleMatch.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Bouncers/SimpleMatch.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2009 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -178,6 +178,12 @@
     (_c('--------Message not delivered'),
      _c('--------Error Detail'),
      _c('^\s*(?P<addr>[^\s@]+@[^\s@]+)\s*$')),
+    # Dovecot LDA Over quota MDN (bogus - should be DSN).
+    (_c('^Your message'),
+     _c('^Reporting'),
+     _c(
+        'Your message to (?P<addr>[^\s@]+@[^\s@]+) was automatically rejected'
+       )),
     # Next one goes here...
     ]
 

Added: trunk/Mailman/CSRFcheck.py
===================================================================
--- trunk/Mailman/CSRFcheck.py	                        (rev 0)
+++ trunk/Mailman/CSRFcheck.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -0,0 +1,73 @@
+# Copyright (C) 2011-2012 by the Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+# USA.
+
+""" Cross-Site Request Forgery checker """
+
+import time
+import marshal
+import binascii
+
+from Mailman import mm_cfg
+from Mailman.Utils import sha_new
+
+keydict = {
+    'user':      mm_cfg.AuthUser,
+    'poster':    mm_cfg.AuthListPoster,
+    'moderator': mm_cfg.AuthListModerator,
+    'admin':     mm_cfg.AuthListAdmin,
+    'site':      mm_cfg.AuthSiteAdmin,
+}
+
+
+
+def csrf_token(mlist, contexts, user=None):
+    """ create token by mailman cookie generation algorithm """
+
+    for context in contexts:
+        key, secret = mlist.AuthContextInfo(context, user)
+        if key:
+            break
+    else:
+        return None     # not authenticated
+    issued = int(time.time())
+    mac = sha_new(secret + `issued`).hexdigest()
+    keymac = '%s:%s' % (key, mac)
+    token = binascii.hexlify(marshal.dumps((issued, keymac)))
+    return token
+
+def csrf_check(mlist, token):
+    """ check token by mailman cookie validation algorithm """
+
+    try:
+        issued, keymac = marshal.loads(binascii.unhexlify(token))
+        key, received_mac = keymac.split(':', 1)
+        klist, key = key.split('+', 1)
+        assert klist == mlist.internal_name()
+        if '+' in key:
+            key, user = key.split('+', 1)
+        else:
+            user = None
+        context = keydict.get(key)
+        key, secret = mlist.AuthContextInfo(context, user)
+        assert key
+        mac = sha_new(secret + `issued`).hexdigest()
+        if (mac == received_mac 
+            and 0 < time.time() - issued < mm_cfg.FORM_LIFETIME):
+            return True
+        return False
+    except (AssertionError, ValueError, TypeError):
+        return False

Modified: trunk/Mailman/Cgi/admin.py
===================================================================
--- trunk/Mailman/Cgi/admin.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Cgi/admin.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2012 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -41,6 +41,7 @@
 from Mailman.Cgi import Auth
 from Mailman.Logging.Syslog import syslog
 from Mailman.Utils import sha_new
+from Mailman.CSRFcheck import csrf_check
 
 # Set up i18n
 _ = i18n._
@@ -55,7 +56,9 @@
     True = 1
     False = 0
 
+AUTH_CONTEXTS = (mm_cfg.AuthListAdmin, mm_cfg.AuthSiteAdmin)
 
+
 
 def main():
     # Try to find out which list is being administered
@@ -83,6 +86,19 @@
     # If the user is not authenticated, we're done.
     cgidata = cgi.FieldStorage(keep_blank_values=1)
 
+    # CSRF check
+    safe_params = ['VARHELP', 'adminpw', 'admlogin',
+                   'letter', 'chunk', 'findmember']
+    params = cgidata.keys()
+    if set(params) - set(safe_params):
+        csrf_checked = csrf_check(mlist, cgidata.getvalue('csrf_token'))
+    else:
+        csrf_checked = True
+    # if password is present, void cookie to force password authentication.
+    if cgidata.getvalue('adminpw'):
+        os.environ['HTTP_COOKIE'] = ''
+        csrf_checked = True
+
     if not mlist.WebAuthenticate((mm_cfg.AuthListAdmin,
                                   mm_cfg.AuthSiteAdmin),
                                  cgidata.getvalue('adminpw', '')):
@@ -107,6 +123,9 @@
 
     # Is this a log-out request?
     if category == 'logout':
+        # site-wide admin should also be able to logout.
+        if mlist.AuthContextInfo(mm_cfg.AuthSiteAdmin)[0] == 'site':
+            print mlist.ZapCookie(mm_cfg.AuthSiteAdmin)
         print mlist.ZapCookie(mm_cfg.AuthListAdmin)
         Auth.loginpage(mlist, 'admin', frontpage=1)
         return
@@ -171,8 +190,12 @@
         signal.signal(signal.SIGTERM, sigterm_handler)
 
         if cgidata.keys():
-            # There are options to change
-            change_options(mlist, category, subcat, cgidata, doc)
+            if csrf_checked:
+                # There are options to change
+                change_options(mlist, category, subcat, cgidata, doc)
+            else:
+                doc.addError(
+                  _('The form lifetime has expired. (request forgery check)'))
             # Let the list sanity check the changed values
             mlist.CheckValues()
         # Additional sanity checks
@@ -184,16 +207,20 @@
                 non-digest delivery or your mailing list will basically be
                 unusable.'''), tag=_('Warning: '))
 
-        if not mlist.digestable and mlist.getDigestMemberKeys():
+        dm = mlist.getDigestMemberKeys()
+        if not mlist.digestable and dm:
             doc.addError(
                 _('''You have digest members, but digests are turned
-                off. Those people will not receive mail.'''),
+                off. Those people will not receive mail.
+                Affected member(s) %(dm)r.'''),
                 tag=_('Warning: '))
-        if not mlist.nondigestable and mlist.getRegularMemberKeys():
+        rm = mlist.getRegularMemberKeys()
+        if not mlist.nondigestable and rm:
             doc.addError(
                 _('''You have regular list members but non-digestified mail is
                 turned off.  They will receive non-digestified mail until you
-                fix this problem.'''), tag=_('Warning: '))
+                fix this problem. Affected member(s) %(rm)r.'''),
+                tag=_('Warning: '))
         # Glom up the results page and print it out
         show_results(mlist, doc, category, subcat, cgidata)
         print doc.Format()
@@ -355,7 +382,7 @@
         url = '%s/%s/%s' % (mlist.GetScriptURL('admin'), category, subcat)
     else:
         url = '%s/%s' % (mlist.GetScriptURL('admin'), category)
-    form = Form(url)
+    form = Form(url, mlist=mlist, contexts=AUTH_CONTEXTS)
     valtab = Table(cellspacing=3, cellpadding=4, width='100%')
     add_options_table_item(mlist, category, subcat, valtab, item, detailsp=0)
     form.AddItem(valtab)
@@ -401,9 +428,10 @@
         encoding = 'multipart/form-data'
     if subcat:
         form = Form('%s/%s/%s' % (adminurl, category, subcat),
-                    encoding=encoding)
+                    encoding=encoding, mlist=mlist, contexts=AUTH_CONTEXTS)
     else:
-        form = Form('%s/%s' % (adminurl, category), encoding=encoding)
+        form = Form('%s/%s' % (adminurl, category), 
+                    encoding=encoding, mlist=mlist, contexts=AUTH_CONTEXTS)
     # This holds the two columns of links
     linktable = Table(valign='top', width='100%')
     linktable.AddRow([Center(Bold(_("Configuration Categories"))),
@@ -1251,6 +1279,22 @@
                    PasswordBox('confirmmodpw', size=20)])
     # Add these tables to the overall password table
     table.AddRow([atable, mtable])
+    table.AddRow([_("""\
+In addition to the above passwords you may specify a password for
+pre-approving posts to the list. Either of the above two passwords can
+be used in an Approved: header or first body line pseudo-header to
+pre-approve a post that would otherwise be held for moderation. In
+addition, the password below, if set, can be used for that purpose and
+no other.""")])
+    table.AddCellInfo(table.GetCurrentRowIndex(), 0, colspan=2)
+    # Set up the post password table
+    ptable = Table(border=0, cellspacing=3, cellpadding=4,
+                   bgcolor=mm_cfg.WEB_ADMINPW_COLOR)
+    ptable.AddRow([Label(_('Enter new poster password:')),
+                   PasswordBox('newpostpw', size=20)])
+    ptable.AddRow([Label(_('Confirm poster password:')),
+                   PasswordBox('confirmpostpw', size=20)])
+    table.AddRow([ptable])
     return table
 
 
@@ -1281,6 +1325,17 @@
             # password doesn't get you into these pages.
         else:
             doc.addError(_('Moderator passwords did not match'))
+    # Handle changes to the list poster password.  Do this before checking
+    # the new admin password, since the latter will force a reauthentication.
+    new = cgidata.getvalue('newpostpw', '').strip()
+    confirm = cgidata.getvalue('confirmpostpw', '').strip()
+    if new or confirm:
+        if new == confirm:
+            mlist.post_password = sha_new(new).hexdigest()
+            # No re-authentication necessary because the poster's
+            # password doesn't get you into these pages.
+        else:
+            doc.addError(_('Poster passwords did not match'))
     # Handle changes to the list administrator password
     new = cgidata.getvalue('newpw', '').strip()
     confirm = cgidata.getvalue('confirmpw', '').strip()

Modified: trunk/Mailman/Cgi/admindb.py
===================================================================
--- trunk/Mailman/Cgi/admindb.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Cgi/admindb.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -112,6 +112,19 @@
         Auth.loginpage(mlist, 'admindb', msg=msg)
         return
 
+    # Add logout function. Note that admindb may be accessed with
+    # site-wide admin, moderator and list admin privileges.
+    # site admin may have site or admin cookie. (or both?)
+    # See if this is a logout request
+    if len(parts) >= 2 and parts[1] == 'logout':
+        if mlist.AuthContextInfo(mm_cfg.AuthSiteAdmin)[0] == 'site':
+            print mlist.ZapCookie(mm_cfg.AuthSiteAdmin)
+        if mlist.AuthContextInfo(mm_cfg.AuthListModerator)[0]:
+            print mlist.ZapCookie(mm_cfg.AuthListModerator)
+        print mlist.ZapCookie(mm_cfg.AuthListAdmin)
+        Auth.loginpage(mlist, 'admindb', frontpage=1)
+        return
+
     # Set up the results document
     doc = Document()
     doc.set_language(mlist.preferred_language)
@@ -167,20 +180,24 @@
             process_form(mlist, doc, cgidata)
         # Now print the results and we're done.  Short circuit for when there
         # are no pending requests, but be sure to save the results!
+        admindburl = mlist.GetScriptURL('admindb', absolute=1)
         if not mlist.NumRequestsPending():
             title = _('%(realname)s Administrative Database')
             doc.SetTitle(title)
             doc.AddItem(Header(2, title))
             doc.AddItem(_('There are no pending requests.'))
             doc.AddItem(' ')
-            doc.AddItem(Link(mlist.GetScriptURL('admindb', absolute=1),
+            doc.AddItem(Link(admindburl,
                              _('Click here to reload this page.')))
+            # Put 'Logout' link before the footer
+            doc.AddItem(Link('%s/logout' % admindburl,
+                '<div align="right"><font size="+2"><b>%s</b></font></div>' %
+                _('Logout')))
             doc.AddItem(mlist.GetMailmanFooter())
             print doc.Format()
             mlist.Save()
             return
 
-        admindburl = mlist.GetScriptURL('admindb', absolute=1)
         form = Form(admindburl)
         # Add the instructions template
         if details == 'instructions':
@@ -249,6 +266,10 @@
                     _('Discard all messages marked <em>Defer</em>')
                     ))
             form.AddItem(Center(SubmitButton('submit', _('Submit All Data'))))
+        # Put 'Logout' link before the footer
+        doc.AddItem(Link('%s/logout' % admindburl,
+            '<div align="right"><font size="+2"><b>%s</b></font></div>' %
+            _('Logout')))
         doc.AddItem(mlist.GetMailmanFooter())
         print doc.Format()
         # Commit all changes
@@ -610,11 +631,20 @@
     else:
         body = EMPTYSTRING.join(lines)
     # Get message charset and try encode in list charset
-    mcset = msg.get_param('charset', 'us-ascii').lower()
+    # We get it from the first text part.
+    # We need to replace invalid characters here or we can throw an uncaught
+    # exception in doc.Format().
+    for part in msg.walk():
+        if part.get_content_maintype() == 'text':
+            # Watchout for charset= with no value.
+            mcset = part.get_content_charset() or 'us-ascii'
+            break
+    else:
+        mcset = 'us-ascii'
     lcset = Utils.GetCharSet(mlist.preferred_language)
     if mcset <> lcset:
         try:
-            body = unicode(body, mcset).encode(lcset)
+            body = unicode(body, mcset).encode(lcset, 'replace')
         except (LookupError, UnicodeError, ValueError):
             pass
     hdrtxt = NL.join(['%s: %s' % (k, v) for k, v in msg.items()])

Modified: trunk/Mailman/Cgi/confirm.py
===================================================================
--- trunk/Mailman/Cgi/confirm.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Cgi/confirm.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 2001-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -471,7 +471,7 @@
     if fullname is None:
         fullname = _('<em>Not available</em>')
     else:
-        fullname = Utils.uncanonstr(fullname, lang)
+        fullname = Utils.websafe(Utils.uncanonstr(fullname, lang))
     table.AddRow([_("""Your confirmation is required in order to complete the
     unsubscription request from the mailing list <em>%(listname)s</em>.  You
     are currently subscribed with
@@ -573,7 +573,7 @@
     if fullname is None:
         fullname = _('<em>Not available</em>')
     else:
-        fullname = Utils.uncanonstr(fullname, lang)
+        fullname = Utils.websafe(Utils.uncanonstr(fullname, lang))
     if globally:
         globallys = _('globally')
     else:
@@ -634,6 +634,7 @@
         try:
             # Do this in two steps so we can get the preferred language for
             # the user who posted the message.
+            subject = 'n/a'
             op, id = mlist.pend_confirm(cookie)
             ign, sender, msgsubject, ign, ign, ign = mlist.GetRecord(id)
             lang = mlist.getMemberLanguage(sender)
@@ -644,7 +645,7 @@
             # Discard the message
             mlist.HandleRequest(id, mm_cfg.DISCARD,
                                 _('Sender discarded message via web.'))
-        except Errors.LostHeldMessage:
+        except (Errors.LostHeldMessage, KeyError):
             bad_confirmation(doc, _('''The held message with the Subject:
             header <em>%(subject)s</em> could not be found.  The most likely
             reason for this is that the list moderator has already approved or
@@ -814,7 +815,7 @@
     if username is None:
         username = _('<em>not available</em>')
     else:
-        username = Utils.uncanonstr(username, lang)
+        username = Utils.websafe(Utils.uncanonstr(username, lang))
 
     table.AddRow([_("""Your membership in the %(realname)s mailing list is
     currently disabled due to excessive bounces.  Your confirmation is

Modified: trunk/Mailman/Cgi/edithtml.py
===================================================================
--- trunk/Mailman/Cgi/edithtml.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Cgi/edithtml.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2007 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -46,6 +46,7 @@
         ('subscribe.html',   _('Subscribe results page')),
         ('options.html',     _('User specific options page')),
         ('subscribeack.txt', _('Welcome email text file')),
+        ('masthead.txt',     _('Digest masthead')),
         )
 
     _ = i18n._

Modified: trunk/Mailman/Cgi/options.py
===================================================================
--- trunk/Mailman/Cgi/options.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Cgi/options.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -298,8 +298,14 @@
         # the user is a member.  If so, add it to the list.
         onlists = []
         for gmlist in lists_of_member(mlist, user) + [mlist]:
+            extra = ''
             url = gmlist.GetOptionsURL(user)
             link = Link(url, gmlist.real_name)
+            if gmlist.getDeliveryStatus(user) <> MemberAdaptor.ENABLED:
+                extra += ', ' + _('nomail')
+            if user in gmlist.getDigestMemberKeys():
+                extra += ', ' + _('digest')
+            link = HTMLFormatObject(link, 0) + extra
             onlists.append((gmlist.real_name, link))
         onlists.sort()
         items = OrderedList(*[link for name, link in onlists])
@@ -434,8 +440,8 @@
             options_page(mlist, doc, user, cpuser, userlang)
             print doc.Format()
             return
-        newpw = cgidata.getvalue('newpw')
-        confirmpw = cgidata.getvalue('confpw')
+        newpw = cgidata.getvalue('newpw', '').strip()
+        confirmpw = cgidata.getvalue('confpw', '').strip()
         if not newpw or not confirmpw:
             options_page(mlist, doc, user, cpuser, userlang,
                          _('Passwords may not be blank'))

Modified: trunk/Mailman/Cgi/private.py
===================================================================
--- trunk/Mailman/Cgi/private.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Cgi/private.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2012 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -135,6 +135,27 @@
             message = Bold(FontSize('+1', _('Authorization failed.'))).Format()
             # give an HTTP 401 for authentication failure
             print 'Status: 401 Unauthorized'
+        # Are we processing a password reminder from the login screen?
+        if cgidata.has_key('login-remind'):
+            if username:
+                message = Bold(FontSize('+1', _("""If you are a list member,
+                          your password has been emailed to you."""))).Format()
+            else:
+                message = Bold(FontSize('+1',
+                                _('Please enter your email address'))).Format()
+            if mlist.isMember(username):
+                mlist.MailUserPassword(username)
+            elif username:
+                # Not a member
+                if mlist.private_roster == 0:
+                    # Public rosters
+                    safeuser = Utils.websafe(username)
+                    message = Bold(FontSize('+1',
+                                  _('No such member: %(safeuser)s.'))).Format()
+                else:
+                    syslog('mischief',
+                       'Reminder attempt of non-member w/ private rosters: %s',
+                       username)
         # Output the password form
         charset = Utils.GetCharSet(mlist.preferred_language)
         print 'Content-type: text/html; charset=' + charset + '\n\n'
@@ -185,6 +206,7 @@
         msg = _('Private archive file not found')
         doc.SetTitle(msg)
         doc.AddItem(Header(2, msg))
+        print 'Status: 404 Not Found'
         print doc.Format()
         syslog('error', 'Private archive file not found: %s', true_filename)
     else:

Modified: trunk/Mailman/Cgi/roster.py
===================================================================
--- trunk/Mailman/Cgi/roster.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Cgi/roster.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -73,8 +73,8 @@
     # "admin"-only, then we try to cookie authenticate the user, and failing
     # that, we check roster-email and roster-pw fields for a valid password.
     # (also allowed: the list moderator, the list admin, and the site admin).
-    password = cgidata.getvalue('roster-pw', '')
-    addr = cgidata.getvalue('roster-email', '')
+    password = cgidata.getvalue('roster-pw', '').strip()
+    addr = cgidata.getvalue('roster-email', '').strip()
     list_hidden = (not mlist.WebAuthenticate((mm_cfg.AuthUser,),
                                              password, addr)
                    and mlist.WebAuthenticate((mm_cfg.AuthListModerator,

Modified: trunk/Mailman/Cgi/subscribe.py
===================================================================
--- trunk/Mailman/Cgi/subscribe.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Cgi/subscribe.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2009 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -109,7 +109,7 @@
     results = []
 
     # The email address being subscribed, required
-    email = cgidata.getvalue('email', '')
+    email = cgidata.getvalue('email', '').strip()
     if not email:
         results.append(_('You must supply a valid email address.'))
 
@@ -125,12 +125,12 @@
         syslog('mischief', 'Attempt to self subscribe %s: %s', email, remote)
         results.append(_('You may not subscribe a list to itself!'))
     # If the user did not supply a password, generate one for him
-    password = cgidata.getvalue('pw')
-    confirmed = cgidata.getvalue('pw-conf')
+    password = cgidata.getvalue('pw', '').strip()
+    confirmed = cgidata.getvalue('pw-conf', '').strip()
 
-    if password is None and confirmed is None:
+    if not password and not confirmed:
         password = Utils.MakeRandomPassword()
-    elif password is None or confirmed is None:
+    elif not password or not confirmed:
         results.append(_('If you supply a password, you must confirm it.'))
     elif password <> confirmed:
         results.append(_('Your passwords did not match.'))

Modified: trunk/Mailman/Commands/cmd_confirm.py
===================================================================
--- trunk/Mailman/Commands/cmd_confirm.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Commands/cmd_confirm.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 2002-2005 by the Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -84,14 +84,25 @@
             # We don't also need to send a confirmation succeeded message
             res.respond = 0
         else:
-            res.results.append(_('Confirmation succeeded'))
+            if results[0] == Pending.HELD_MESSAGE:
+                if results[1] == mm_cfg.APPROVE:
+                    res.results.append(_('Confirmation succeeded') + 
+                               ' (' + _('Approve') + ')')
+                else:
+                    res.results.append(_('Confirmation succeeded') + 
+                               ' (' + _('Discard') + ')')
+            else:
+                res.results.append(_('Confirmation succeeded'))
             # Consume any other confirmation strings with the same cookie so
             # the user doesn't get a misleading "unprocessed" message.
+            # Also consume any Approve(d): line as it was processed.
             match = 'confirm ' + cookie
             unprocessed = []
             for line in res.commands:
                 try:
-                    if line.lstrip() == match:
+                    if (line.lstrip() == match or
+                            line.lstrip().lower().startswith('approved:') or
+                            line.lstrip().lower().startswith('approve:')):
                         continue
                 except UnicodeError:
                     pass

Modified: trunk/Mailman/Defaults.py.in
===================================================================
--- trunk/Mailman/Defaults.py.in	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Defaults.py.in	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,6 +1,6 @@
 # -*- python -*-
 
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2012 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -104,6 +104,13 @@
 # the site.  Set this value to Yes to allow site admin cookies.
 ALLOW_SITE_ADMIN_COOKIES = No
 
+# If the following is set to a non-zero value, web authentication cookies will
+# expire that many seconds following their last use.
+AUTHENTICATION_COOKIE_LIFETIME = 0
+
+# Form lifetime is set against Cross Site Request Forgery.
+FORM_LIFETIME = hours(1)
+
 # Command that is used to convert text/html parts into plain text.  This
 # should output results to standard output.  %(filename)s will contain the
 # name of the temporary file that the program should operate on.
@@ -197,6 +204,31 @@
 WEB_HIGHLIGHT_COLOR = '#dddddd'                   # If true, alternating rows
                                                   # in listinfo & admin display
 
+# User entered data is escaped for redisplay in web responses to avoid Cross
+# Site Scripting (XSS) attacks. The normal escaping replaces the characters
+# <, >, & and " with the respective HTML entities <, >, & and
+# ".  There are apparently some older, broken browsers that misinterpret
+# certain non-ascii characters as <, > or ".  The following two settings
+# control whether additional characters are escaped, and what characters are
+# replaced with what.  Note that in character sets that represent some
+# characters as multi-byte sequences, enabling the escaping of additional
+# characters can replace part of a multi-byte sequence with an HTML entity,
+# thus breaking an otherwise harmless character.
+#
+# Enable the replacement of additional characters when escaping strings for
+# the web.
+BROKEN_BROWSER_WORKAROUND = No
+#
+# If the above setting is Yes, the following dictionary definition determines
+# what additional characters are replaced with what.
+BROKEN_BROWSER_REPLACEMENTS = {'\x8b': '‹',  # single left angle quote
+                               '\x9b': '›',  # single right angle quote
+                               '\xbc': '¼',   # < plus high order bit
+                               '\xbe': '¾',   # > plus high order bit
+                               '\xa2': '¢',   # " plus high order bit
+                              }
+
+
 
 #####
 # Archive defaults
@@ -690,7 +722,7 @@
 # To: "local_part at host" <local_part at host>
 # and may even fold the header when replying, so we skip everything up to '<'
 # if any and include ($s) so dot will match the newline in a folded header.
-VERP_CONFIRM_REGEXP = r'(?s)^(.*<)?(?P<addr>.+)\+(?P<cookie>[^@+]+)@.*$'
+VERP_CONFIRM_REGEXP = r'(?s)^(.*<)?(?P<addr>.+)\+(?P<cookie>[0-9a-f]{40})@.*$'
 
 # Set this to Yes to enable VERP-like (more user friendly) confirmations
 VERP_CONFIRMATIONS = No
@@ -707,6 +739,36 @@
 
 
 #####
+# Backscatter mitigation
+#####
+
+# This controls whether a message to the -request address without any
+# commands or a message to -confirm whose To: address doesn't match
+# VERP_CONFIRM_REGEXP above is responded to or just logged.
+DISCARD_MESSAGE_WITH_NO_COMMAND = Yes
+
+# This controls how much of the original message is included in automatic
+# responses to email commands.  The values are:
+# 0 - Do not include any unprocessed or ignored commands.  Do not include
+#     the original message.
+# 1 - Do not include any unprocessed or ignored commands.  Include only the
+#     headers from the original message.
+# 2 - Include unprocessed and ignored commands.  Include the complete original
+#     message.
+#
+# In order to minimize the effect of backscatter due to spam sent to
+# administrative addresses, it is recommended to set this to 0, however the
+# default is 2 for backwards compatibility.
+RESPONSE_INCLUDE_LEVEL = 2
+
+# This sets the default for respond_to_post_requests for new lists.  It is
+# set to Yes for backwards compatibility, but it is recommended that serious
+# consideration be given to setting it to No.
+DEFAULT_RESPOND_TO_POST_REQUESTS = Yes
+
+
+
+#####
 # Qrunner defaults
 #####
 
@@ -965,6 +1027,7 @@
 # Exclude/include (sibling) lists for non-digest delivery.
 DEFAULT_REGULAR_EXCLUDE_LISTS = []
 DEFAULT_REGULAR_INCLUDE_LISTS = []
+DEFAULT_REGULAR_EXCLUDE_IGNORE = True
 ALLOW_CROSS_DOMAIN_SIBLING = False
 
 # This variable controls whether monthly password reminders are sent.
@@ -1330,6 +1393,9 @@
            'notmetoo': DontReceiveOwnPosts,
            'digest'  : 0,
            'plain'   : DisableMime,
+           'noremind': SuppressPasswordReminder,
+           'nmtopics': ReceiveNonmatchingTopics,
+           'mod'     : Moderate,
            'nodupes' : DontReceiveDuplicates
            }
 
@@ -1341,6 +1407,11 @@
 #   option settings
 # - List creator, someone who can create and delete lists, but cannot
 #   (necessarily) configure the list.
+# - List poster, someone who can pre-approve her/his own posts to the list by
+#   including an Approved: or X-Approved: header or first body line pseudo-
+#   header containing the poster password. The list admin and moderator
+#   passwords can also be used for this purpose, but the poster password can
+#   only be used for this and nothing else.
 # - List moderator, someone who can tend to pending requests such as
 #   subscription requests, or held messages
 # - List administrator, someone who has total control over a list, can
@@ -1356,6 +1427,7 @@
 AuthListAdmin = 3     # List Administrator (total control over list)
 AuthListModerator = 4 # List Moderator (can only handle held requests)
 AuthSiteAdmin = 5     # Site Administrator (total control over everything)
+AuthListPoster = 6    # List poster (Approved: <pw> header in posts only)
 
 # Useful directories
 LIST_DATA_DIR   = os.path.join(VAR_PREFIX, 'lists')
@@ -1420,6 +1492,7 @@
 add_language('fi',    _('Finnish'),             'iso-8859-1',  'ltr')
 add_language('fr',    _('French'),              'iso-8859-1',  'ltr')
 add_language('gl',    _('Galician'),            'utf-8',       'ltr')
+add_language('el',    _('Greek'),               'iso-8859-7',  'ltr')
 add_language('he',    _('Hebrew'),              'utf-8',       'rtl')
 add_language('hr',    _('Croatian'),            'iso-8859-2',  'ltr')
 add_language('hu',    _('Hungarian'),           'iso-8859-2',  'ltr')

Modified: trunk/Mailman/Gui/General.py
===================================================================
--- trunk/Mailman/Gui/General.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Gui/General.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 2001-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -25,6 +25,7 @@
 from Mailman import Utils
 from Mailman import Errors
 from Mailman.i18n import _
+from Mailman.htmlformat import Document
 from Mailman.Gui.GUIBase import GUIBase
 
 OPTIONS = ('hide', 'ack', 'notmetoo', 'nodupes')
@@ -455,11 +456,22 @@
             changed!  It must differ from the list's name by case
             only."""))
         elif property == 'new_member_options':
-            newopts = 0
-            for opt in OPTIONS:
+            # Get current value because there are valid bits not in OPTIONS.
+            # If we're the admin CGI, we then process the bits in OPTIONS,
+            # turning them on or off as appropriate.  Otherwise we process all
+            # the bits in mm_cfg.OPTINFO so that config_list can set and reset
+            # them.
+            newopts = mlist.new_member_options
+            if isinstance(doc, Document):
+                opts = OPTIONS
+            else:
+                opts = mm_cfg.OPTINFO
+            for opt in opts:
                 bitfield = mm_cfg.OPTINFO[opt]
                 if opt in val:
                     newopts |= bitfield
+                else:
+                    newopts &= ~bitfield
             mlist.new_member_options = newopts
         elif property == 'subject_prefix':
             # Convert any html entities to Unicode

Modified: trunk/Mailman/Gui/NonDigest.py
===================================================================
--- trunk/Mailman/Gui/NonDigest.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Gui/NonDigest.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -159,6 +159,17 @@
              Note also that the site administrator may prohibit cross domain
              siblings.""")),
 
+            ('regular_exclude_ignore', mm_cfg.Toggle, (_('No'), _('Yes')), 0,
+             _("""Ignore regular_exlude_lists of which the poster is not a
+             member."""),
+             _("""If a post is addressed to this list and to one or more of
+             the exclude lists, regular members of those lists will not be
+             sent the post from this list, but if the poster is not a member
+             of an excluded list, the post may not be accepted by that list
+             which leaves the members of that list with no copy of the post.
+             Setting this to Yes ignores any of the exclude lists of which the
+             poster is not a member.""")),
+
             ('regular_include_lists', mm_cfg.EmailList, (3, WIDTH), 0,
              _("""Other mailing lists on this site whose members are
              included in the regular (non-digest) delivery if those

Modified: trunk/Mailman/Handlers/Approve.py
===================================================================
--- trunk/Mailman/Handlers/Approve.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/Approve.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -39,7 +39,17 @@
 
 NL = '\n'
 
+def _(s):
+    # message is translated when used.
+    return s
+REJECT = _("""Message rejected.
+It appears that this message contains an HTML part with the
+Approved: password line, but due to the way it is coded in the
+HTML it can't be safely removed.
+""")
+del _
 
+
 
 def process(mlist, msg, msgdata):
     # Short circuits
@@ -100,7 +110,8 @@
             # text part.  We make a pattern from the Approved line and delete
             # it from all text/* parts in which we find it.  It would be
             # better to just iterate forward, but email compatability for pre
-            # Python 2.2 returns a list, not a true iterator.
+            # Python 2.2 returns a list, not a true iterator.  Also, there
+            # are pathological MUAs that put the HTML part first.
             #
             # This will process all the multipart/alternative parts in the
             # message as well as all other text parts.  We shouldn't find the
@@ -111,13 +122,20 @@
             # line of HTML or other fancy text may include additional message
             # text.  This pattern works with HTML.  It may not work with rtf
             # or whatever else is possible.
+            #
+            # If we don't find the pattern in the decoded part, but we do
+            # find it after stripping HTML tags, we don't know how to remove
+            # it, so we just reject the post.
             pattern = name + ':(\xA0|\s| )*' + re.escape(passwd)
             for part in typed_subpart_iterator(msg, 'text'):
                 if part is not None and part.get_payload() is not None:
                     lines = part.get_payload(decode=True)
                     if re.search(pattern, lines):
                         reset_payload(part, re.sub(pattern, '', lines))
-    if passwd is not missing and mlist.Authenticate((mm_cfg.AuthListModerator,
+                    elif re.search(pattern, re.sub('(?s)<.*?>', '', lines)):
+                        raise Errors.RejectMessage, REJECT
+    if passwd is not missing and mlist.Authenticate((mm_cfg.AuthListPoster,
+                                                     mm_cfg.AuthListModerator,
                                                      mm_cfg.AuthListAdmin),
                                                     passwd):
         # BAW: should we definitely deny if the password exists but does not

Modified: trunk/Mailman/Handlers/CalcRecips.py
===================================================================
--- trunk/Mailman/Handlers/CalcRecips.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/CalcRecips.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -179,6 +179,12 @@
             syslog('error', 'Exclude list %s is not in the same domain.',
                     listname)
             continue
+        if mlist.regular_exclude_ignore:
+            for sender in msg.get_senders():
+                if slist.isMember(sender):
+                    break
+            else:
+                continue
         srecips = set([slist.getMemberCPAddress(m)
                    for m in slist.getRegularMemberKeys()
                    if slist.getDeliveryStatus(m) == ENABLED])

Modified: trunk/Mailman/Handlers/CookHeaders.py
===================================================================
--- trunk/Mailman/Handlers/CookHeaders.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/CookHeaders.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -215,8 +215,6 @@
         # Add this header if we're archiving
         if mlist.archive:
             archiveurl = mlist.GetBaseArchiveURL()
-            if archiveurl.endswith('/'):
-                archiveurl = archiveurl[:-1]
             headers['List-Archive'] = '<%s>' % archiveurl
     # First we delete any pre-existing headers because the RFC permits only
     # one copy of each, and we want to be sure it's ours.
@@ -274,7 +272,7 @@
     else:
         old_style = mm_cfg.OLD_STYLE_PREFIXING
     subject = re.sub(prefix_pattern, '', subject)
-    rematch = re.match('((RE|AW|SV|VS)(\[\d+\])?:\s*)+', subject, re.I)
+    rematch = re.match('((RE|AW|SV|VS)\s*(\[\d+\])?\s*:\s*)+', subject, re.I)
     if rematch:
         subject = subject[rematch.end():]
         recolon = 'Re:'

Modified: trunk/Mailman/Handlers/Hold.py
===================================================================
--- trunk/Mailman/Handlers/Hold.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/Hold.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -237,9 +237,6 @@
     # languages (the user's preferred and the list's preferred for the admin),
     # we need to play some i18n games here.  Since the current language
     # context ought to be set up for the user, let's craft his message first.
-    #
-    # This message should appear to come from <list>-admin so as to handle any
-    # bounce processing that might be needed.
     cookie = mlist.pend_new(Pending.HELD_MESSAGE, id)
     if not fromusenet and ackp(msg) and mlist.respond_to_post_requests and \
            mlist.autorespondToSender(sender, mlist.getMemberLanguage(sender)):
@@ -249,7 +246,7 @@
         lang = msgdata.get('lang', mlist.getMemberLanguage(sender))
         subject = _('Your message to %(listname)s awaits moderator approval')
         text = Utils.maketext('postheld.txt', d, lang=lang, mlist=mlist)
-        nmsg = Message.UserNotification(sender, adminaddr, subject, text, lang)
+        nmsg = Message.UserNotification(sender, owneraddr, subject, text, lang)
         nmsg.send(mlist)
     # Now the message for the list owners.  Be sure to include the list
     # moderators in this message.  This one should appear to come from

Modified: trunk/Mailman/Handlers/MimeDel.py
===================================================================
--- trunk/Mailman/Handlers/MimeDel.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/MimeDel.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 2002-2009 by the Free Software Foundation, Inc.
+# Copyright (C) 2002-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -96,6 +96,11 @@
         if ctype == 'multipart/alternative':
             firstalt = msg.get_payload(0)
             reset_payload(msg, firstalt)
+    # Now that we've collapsed the MPA parts, go through the message
+    # and recast any multipart parts with only one sub-part as just
+    # the sub-part.
+    if msg.is_multipart():
+        recast_multipart(msg)
     # If we removed some parts, make note of this
     changedp = 0
     if numparts <> len([subpart for subpart in msg.walk()]):
@@ -182,7 +187,14 @@
         if subpart.get_content_type() == 'multipart/alternative':
             try:
                 firstalt = subpart.get_payload(0)
-                newpayload.append(firstalt)
+                if msg.get_content_type() == 'message/rfc822':
+                    # This is a multipart/alternative message in a
+                    # message/rfc822 part. We treat it specially so as not to
+                    # lose the headers.
+                    reset_payload(subpart, firstalt)
+                    newpayload.append(subpart)
+                else:
+                    newpayload.append(firstalt)
             except (IndexError, TypeError):
                 pass
         elif subpart.is_multipart():
@@ -194,6 +206,23 @@
 
 
 
+def recast_multipart(msg):
+    # If we're left with a multipart message with only one sub-part, recast
+    # the message to just the sub-part, but not if the part is message/rfc822
+    # because we don't want to lose the headers.
+    if msg.is_multipart():
+        if (len(msg.get_payload()) == 1 and
+                msg.get_content_type() <> 'message/rfc822'):
+            reset_payload(msg, msg.get_payload(0))
+            # now that we've recast this part, check the subordinate parts
+            recast_multipart(msg)
+        else:
+            # This part's OK but check deeper.
+            for part in msg.get_payload():
+                recast_multipart(part)
+
+
+
 def to_plaintext(msg):
     changedp = 0
     for subpart in typed_subpart_iterator(msg, 'text', 'html'):

Modified: trunk/Mailman/Handlers/Moderate.py
===================================================================
--- trunk/Mailman/Handlers/Moderate.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/Moderate.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 2001-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -136,19 +136,20 @@
         elif are.startswith('@'):
             # XXX Needs to be reviewed for list at domain names.
             try:
-                if are[1:] == listname:
+                mname = are[1:].lower().strip()
+                if mname == listname:
                     # don't reference your own list
                     syslog('error',
                         '*_these_nonmembers in %s references own list',
                         listname)
                 else:
-                    mother = MailList(are[1:], lock=0)
+                    mother = MailList(mname, lock=0)
                     if mother.isMember(sender):
                         return 1
             except Errors.MMUnknownListError:
                 syslog('error',
                   '*_these_nonmembers in %s references non-existent list %s',
-                  listname, are[1:])
+                  listname, mname)
     return 0
 
 

Modified: trunk/Mailman/Handlers/SMTPDirect.py
===================================================================
--- trunk/Mailman/Handlers/SMTPDirect.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/SMTPDirect.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -363,7 +363,8 @@
     # lists, depending on how often they accidentally reply to it.  Also, when
     # forwarding mail inline, the sender is replaced with the string "Full 
     # Name (on behalf bounce at addr.ess)", essentially losing the original
-    # sender address.
+    # sender address.  To partially mitigate this, we add the list name as a
+    # display-name in the Sender: header that we add.
     # 
     # The drawback of not touching the Sender: header is that some MTAs might
     # still send bounces to it, so by not trapping it, we can miss bounces.
@@ -374,7 +375,7 @@
     msg['Errors-To'] = envsender
     if mlist.include_sender_header:
         del msg['sender']
-        msg['Sender'] = envsender
+        msg['Sender'] = '"%s" <%s>' % (mlist.real_name, envsender)
     # Get the plain, flattened text of the message, sans unixfrom
     # using our as_string() method to not mangle From_ and not fold
     # sub-part headers possibly breaking signatures.

Modified: trunk/Mailman/Handlers/Scrubber.py
===================================================================
--- trunk/Mailman/Handlers/Scrubber.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/Scrubber.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2009 by the Free Software Foundation, Inc.
+# Copyright (C) 2001-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -314,7 +314,7 @@
     # We still have to sanitize multipart messages to flat text because
     # Pipermail can't handle messages with list payloads.  This is a kludge;
     # def (n) clever hack ;).
-    if msg.is_multipart() and sanitize <> 2:
+    if msg.is_multipart():
         # By default we take the charset of the first text/plain part in the
         # message, but if there was none, we'll use the list's preferred
         # language's charset.
@@ -335,9 +335,12 @@
             # MAS test payload - if part may fail if there are no headers.
             if not part.get_payload() or part.is_multipart():
                 continue
-            # All parts should be scrubbed to text/plain by now.
+            # All parts should be scrubbed to text/plain by now, except
+            # if sanitize == 2, there could be text/html parts so keep them
+            # but skip any other parts.
             partctype = part.get_content_type()
-            if partctype <> 'text/plain':
+            if partctype <> 'text/plain' and (partctype <> 'text/html' or
+                                              sanitize <> 2):
                 text.append(_('Skipped content of type %(partctype)s\n'))
                 continue
             try:

Modified: trunk/Mailman/Handlers/SpamDetect.py
===================================================================
--- trunk/Mailman/Handlers/SpamDetect.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/SpamDetect.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2007 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2012 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -26,13 +26,13 @@
 """
 
 import re
-from cStringIO import StringIO
 
-from email.Generator import Generator
+from email.Header import decode_header
 
 from Mailman import mm_cfg
 from Mailman import Errors
 from Mailman import i18n
+from Mailman.Utils import GetCharSet
 from Mailman.Handlers.Hold import hold_for_approval
 
 try:
@@ -60,36 +60,23 @@
 
 
 
-class Tee:
-    def __init__(self, outfp_a, outfp_b):
-        self._outfp_a = outfp_a
-        self._outfp_b = outfp_b
+def getDecodedHeaders(msg, cset='utf-8'):
+    """Returns a string containing all the headers of msg, unfolded and
+    RFC 2047 decoded and encoded in cset.
+    """
 
-    def write(self, s):
-        self._outfp_a.write(s)
-        self._outfp_b.write(s)
+    headers = ''
+    for h, v in msg.items():
+        uvalue = u''
+        v = decode_header(re.sub('\n\s', ' ', v))
+        for frag, cs in v:
+            if not cs:
+                cs = 'us-ascii'
+            uvalue += unicode(frag, cs, 'replace')
+        headers += '%s: %s\n' % (h, uvalue.encode(cset, 'replace'))
+    return headers
 
 
-# Class to capture the headers separate from the message body
-class HeaderGenerator(Generator):
-    def __init__(self, outfp, mangle_from_=True, maxheaderlen=78):
-        Generator.__init__(self, outfp, mangle_from_, maxheaderlen)
-        self._headertxt = ''
-
-    def _write_headers(self, msg):
-        sfp = StringIO()
-        oldfp = self._fp
-        self._fp = Tee(oldfp, sfp)
-        try:
-            Generator._write_headers(self, msg)
-        finally:
-            self._fp = oldfp
-        self._headertxt = sfp.getvalue()
-
-    def header_text(self):
-        return self._headertxt
-
-
 
 def process(mlist, msg, msgdata):
     if msgdata.get('approved'):
@@ -106,13 +93,10 @@
     # TK: Collect headers in sub-parts because attachment filename
     # extension may be a clue to possible virus/spam.
     headers = ''
+    # Get the character set of the lists preferred language for headers
+    lcset = GetCharSet(mlist.preferred_language)
     for p in msg.walk():
-        g = HeaderGenerator(StringIO())
-        g.flatten(p)
-        headers += g.header_text()
-    # Now reshape headers (remove extra CR and connect multiline).
-    headers = re.sub('\n+', '\n', headers)
-    headers = re.sub('\n\s', ' ', headers)
+        headers += getDecodedHeaders(p, lcset)
     for patterns, action, empty in mlist.header_filter_rules:
         if action == mm_cfg.DEFER:
             continue

Modified: trunk/Mailman/Handlers/Tagger.py
===================================================================
--- trunk/Mailman/Handlers/Tagger.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/Tagger.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 2001-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -23,6 +23,9 @@
 import email.Iterators
 import email.Parser
 
+from email.Header import decode_header
+
+from Mailman import Utils
 from Mailman.Logging.Syslog import syslog
 
 CRNL = '\r\n'
@@ -34,10 +37,16 @@
 def process(mlist, msg, msgdata):
     if not mlist.topics_enabled:
         return
+    # Helper function.  Return RFC 2047 decoded header as a string in the
+    # charset of the list's preferred language.
+    def _decode(h):
+        if not h:
+            return h
+        return Utils.oneline(h, Utils.GetCharSet(mlist.preferred_language))
     # Extract the Subject:, Keywords:, and possibly body text
     matchlines = []
-    matchlines.append(msg.get('subject', None))
-    matchlines.append(msg.get('keywords', None))
+    matchlines.append(_decode(msg.get('subject', None)))
+    matchlines.append(_decode(msg.get('keywords', None)))
     if mlist.topics_bodylines_limit == 0:
         # Don't scan any body lines
         pass
@@ -84,7 +93,7 @@
     # the first numlines of body text.
     lines = []
     lineno = 0
-    reader = list(email.Iterators.body_line_iterator(msg))
+    reader = list(email.Iterators.body_line_iterator(msg, decode=True))
     while numlines is None or lineno < numlines:
         try:
             line = reader.pop(0)

Modified: trunk/Mailman/Handlers/ToDigest.py
===================================================================
--- trunk/Mailman/Handlers/ToDigest.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Handlers/ToDigest.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -361,16 +361,17 @@
         footer['Content-Description'] = _('Digest Footer')
         mimemsg.attach(footer)
         # RFC 1153
-        # BAW: This is not strictly conformant RFC 1153.  The trailer is only
-        # supposed to contain two lines, i.e. the "End of ... Digest" line and
-        # the row of asterisks.  If this screws up MUAs, the solution is to
-        # add the footer as the last message in the RFC 1153 digest.  I just
-        # hate the way that VM does that and I think it's confusing to users,
-        # so don't do it unless there's a clamor.
+        # MAS: There is no real place for the digest_footer in an RFC 1153
+        # compliant digest, so add it as an additional message with
+        # Subject: Digest Footer
         print >> plainmsg, separator30
         print >> plainmsg
+        print >> plainmsg, 'Subject: ' + _('Digest Footer')
+        print >> plainmsg
         print >> plainmsg, footertxt
         print >> plainmsg
+        print >> plainmsg, separator30
+        print >> plainmsg
     # Do the last bit of stuff for each digest type
     signoff = _('End of ') + digestid
     # MIME

Modified: trunk/Mailman/ListAdmin.py
===================================================================
--- trunk/Mailman/ListAdmin.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/ListAdmin.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2009 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -221,6 +221,8 @@
         # an additional dictionary of message metadata
         #
         msgsubject = msg.get('subject', _('(no subject)'))
+        if not sender:
+            sender = _('<missing>')
         data = time.time(), sender, msgsubject, reason, filename, msgdata
         self.__db[id] = (HELDMSG, data)
         return id
@@ -388,6 +390,7 @@
                self.internal_name(), addr)
         # Possibly notify the administrator in default list language
         if self.admin_immed_notify:
+            i18n.set_language(self.preferred_language)
             realname = self.real_name
             subject = _(
                 'New subscription request to list %(realname)s from %(addr)s')
@@ -404,6 +407,8 @@
             msg = Message.UserNotification(owneraddr, owneraddr, subject, text,
                                            self.preferred_language)
             msg.send(self, **{'tomoderators': 1})
+            # Restore the user's preferred language.
+            i18n.set_language(lang)
 
     def __handlesubscription(self, record, value, comment):
         stime, addr, fullname, password, digest, lang = record

Modified: trunk/Mailman/MTA/Postfix.py
===================================================================
--- trunk/Mailman/MTA/Postfix.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/MTA/Postfix.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 2001-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -235,7 +235,10 @@
         _do_create(mlist, ALIASFILE, _addlist)
         if mlist and mlist.host_name in mm_cfg.POSTFIX_STYLE_VIRTUAL_DOMAINS:
             _do_create(mlist, VIRTFILE, _addvirtual)
-        _update_maps()
+        # bin/genaliases is the only one that calls create with nolock = True.
+        # Use that to only update the maps at the end of genaliases.
+        if not nolock:
+            _update_maps()
     finally:
         if lock:
             lock.unlock(unconditionally=True)

Modified: trunk/Mailman/MailList.py
===================================================================
--- trunk/Mailman/MailList.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/MailList.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2012 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -314,7 +314,7 @@
         self.new_member_options = mm_cfg.DEFAULT_NEW_MEMBER_OPTIONS
 
         # This stuff is configurable
-        self.respond_to_post_requests = 1
+        self.respond_to_post_requests = mm_cfg.DEFAULT_RESPOND_TO_POST_REQUESTS
         self.advertised = mm_cfg.DEFAULT_LIST_ADVERTISED
         self.max_num_recipients = mm_cfg.DEFAULT_MAX_NUM_RECIPIENTS
         self.max_message_size = mm_cfg.DEFAULT_MAX_MESSAGE_SIZE
@@ -339,6 +339,7 @@
         self.umbrella_member_suffix = \
                 mm_cfg.DEFAULT_UMBRELLA_MEMBER_ADMIN_SUFFIX
         self.regular_exclude_lists = mm_cfg.DEFAULT_REGULAR_EXCLUDE_LISTS
+        self.regular_exclude_ignore = mm_cfg.DEFAULT_REGULAR_EXCLUDE_IGNORE
         self.regular_include_lists = mm_cfg.DEFAULT_REGULAR_INCLUDE_LISTS
         self.send_reminders = mm_cfg.DEFAULT_SEND_REMINDERS
         self.send_welcome_msg = mm_cfg.DEFAULT_SEND_WELCOME_MSG
@@ -599,8 +600,16 @@
             # file doesn't exist, we'll get an EnvironmentError with errno set
             # to ENOENT (EnvironmentError is the base class of IOError and
             # OSError).
+            # We test strictly less than here because the resolution is whole
+            # seconds and we have seen cases of the file being updated by
+            # another process in the same second.
+            # Even this is not sufficient in shared file system environments
+            # if there is time skew between servers.  In those cases, the test
+            # could be
+            # if mtime + MAX_SKEW < self.__timestamp:
+            # or the "if ...: return" just deleted.
             mtime = os.path.getmtime(dbfile)
-            if mtime <= self.__timestamp:
+            if mtime < self.__timestamp:
                 # File is not newer
                 return None, None
             fp = open(dbfile)
@@ -618,8 +627,9 @@
                 return None, e
         finally:
             fp.close()
-        # Update timestamp
-        self.__timestamp = mtime
+        # Update the timestamp.  We use current time here rather than mtime
+        # so the test above might succeed the next time.
+        self.__timestamp = int(time.time())
         return dict, None
 
     def Load(self, check_version=True):
@@ -810,6 +820,8 @@
         subj = self.GetConfirmJoinSubject(listname, cookie)
         del msg['subject']
         msg['Subject'] = subj
+        del msg['auto-submitted']
+        msg['Auto-Submitted'] = 'auto-generated'
         msg.send(self)
 
     def AddMember(self, userdesc, remote=None):
@@ -911,6 +923,14 @@
             del msg['subject']
             msg['Subject'] = self.GetConfirmJoinSubject(realname, cookie)
             msg['Reply-To'] = self.GetRequestEmail(cookie)
+            # Is this confirmation a reply to an email subscribe from this
+            # address?
+            if remote.lower().endswith(email.lower()):
+                autosub = 'auto-replied'
+            else:
+                autosub = 'auto-generated'
+            del msg['auto-submitted']
+            msg['Auto-Submitted'] = autosub
             msg.send(self)
             who = formataddr((name, email))
             syslog('subscribe', '%s: pending %s %s',
@@ -1258,7 +1278,7 @@
                     except IndexError:
                         subpart = None
                     if subpart:
-                        s = StringIO(subpart.get_payload())
+                        s = StringIO(subpart.get_payload(decode=True))
                         while True:
                             line = s.readline()
                             if not line:
@@ -1267,8 +1287,8 @@
                                 continue
                             i = line.find(':')
                             if i > 0:
-                                if (line[:i].lower() == 'approve' or
-                                    line[:i].lower() == 'approved'):
+                                if (line[:i].strip().lower() == 'approve' or
+                                    line[:i].strip().lower() == 'approved'):
                                     # then
                                     approved = line[i+1:].strip()
                             break
@@ -1293,7 +1313,7 @@
                 # Most likely because the message has already been disposed of
                 # via the admindb page.
                 syslog('error', 'Could not process HELD_MESSAGE: %s', id)
-            return (op,)
+            return op, action
         elif op == Pending.RE_ENABLE:
             member = data[1]
             self.setDeliveryStatus(member, MemberAdaptor.ENABLED)
@@ -1332,6 +1352,8 @@
         del msg['subject']
         msg['Subject'] = self.GetConfirmLeaveSubject(realname, cookie)
         msg['Reply-To'] = self.GetRequestEmail(cookie)
+        del msg['auto-submitted']
+        msg['Auto-Submitted'] = 'auto-generated'
         msg.send(self)
 
 

Modified: trunk/Mailman/Mailbox.py
===================================================================
--- trunk/Mailman/Mailbox.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Mailbox.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2009 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -12,7 +12,8 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+# USA.
 
 """Extend mailbox.UnixMailbox.
 """
@@ -63,7 +64,7 @@
             if self.fp.read(1) <> '\n':
                 self.fp.write('\n')
         # Seek to the last char of the mailbox
-        self.fp.seek(1, 2)
+        self.fp.seek(0, 2)
         # Create a Generator instance to write the message to the file
         g = Generator(self.fp)
         g.flatten(msg, unixfrom=True)

Modified: trunk/Mailman/Message.py
===================================================================
--- trunk/Mailman/Message.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Message.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2009 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2012 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -149,9 +149,11 @@
             if not fieldval:
                 continue
             # Work around bug in email 2.5.8 (and ?) involving getaddresses()
-            # from multi-line header values.  Note that cset='us-ascii' is OK
-            # since the address itself can't be RFC 2047 encoded.
-            fieldval = Utils.oneline(fieldval, 'us-ascii')
+            # from multi-line header values.
+            # Don't use Utils.oneline() here because the header must not be
+            # decoded before parsing since the decoded header may contain
+            # an unquoted comma or other delimiter in a real name.
+            fieldval = ''.join(fieldval.splitlines())
             addrs = email.Utils.getaddresses([fieldval])
             try:
                 realname, address = addrs[0]
@@ -207,7 +209,7 @@
                 if fieldvals:
                     # See comment above in get_sender() regarding
                     # getaddresses() and multi-line headers
-                    fieldvals = [Utils.oneline(fv, 'us-ascii')
+                    fieldvals = [''.join(fv.splitlines())
                                  for fv in fieldvals]
                     pairs.extend(email.Utils.getaddresses(fieldvals))
         authors = []
@@ -266,7 +268,7 @@
             self['To'] = recip
             self.recips = [recip]
 
-    def send(self, mlist, **_kws):
+    def send(self, mlist, noprecedence=False, **_kws):
         """Sends the message by enqueuing it to the `virgin' queue.
 
         This is used for all internally crafted messages.
@@ -282,7 +284,7 @@
         # UserNotifications are typically for admin messages, and for messages
         # other than list explosions.  Send these out as Precedence: bulk, but
         # don't override an existing Precedence: header.
-        if not self.has_key('precedence'):
+        if not (self.has_key('precedence') or noprecedence):
             self['Precedence'] = 'bulk'
         self._enqueue(mlist, **_kws)
 

Modified: trunk/Mailman/Queue/CommandRunner.py
===================================================================
--- trunk/Mailman/Queue/CommandRunner.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Queue/CommandRunner.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2009 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -46,6 +46,10 @@
 from email.MIMEMessage import MIMEMessage
 
 NL = '\n'
+CONTINUE = 0
+STOP = 1
+BADCMD = 2
+BADSUBJ = 3
 
 try:
     True, False
@@ -76,7 +80,8 @@
         try:
             subj = make_header(decode_header(subj)).__unicode__()
             # TK: Currently we don't allow 8bit or multibyte in mail command.
-            subj = subj.encode('us-ascii')
+            # MAS: However, an l10n 'Re:' may contain non-ascii so ignore it.
+            subj = subj.encode('us-ascii', 'ignore')
             # Always process the Subject: header first
             self.commands.append(subj)
         except (HeaderParseError, UnicodeError, LookupError):
@@ -104,15 +109,19 @@
     def process(self):
         # Now, process each line until we find an error.  The first
         # non-command line found stops processing.
-        stop = False
+        found = BADCMD
+        ret = CONTINUE
         for line in self.commands:
             if line and line.strip():
                 args = line.split()
                 cmd = args.pop(0).lower()
-                stop = self.do_command(cmd, args)
+                ret = self.do_command(cmd, args)
+                if ret == STOP or ret == CONTINUE:
+                    found = ret
             self.lineno += 1
-            if stop:
+            if ret == STOP or ret == BADCMD:
                 break
+        return found
 
     def do_command(self, cmd, args=None):
         if args is None:
@@ -135,8 +144,14 @@
                 self.subjcmdretried += 1
                 cmd = args.pop(0)
                 return self.do_command(cmd, args)
-            return self.lineno <> 0
-        return handler.process(self, args)
+            if self.lineno <> 0:
+                return BADCMD
+            else:
+                return BADSUBJ
+        if handler.process(self, args):
+            return STOP
+        else:
+            return CONTINUE
 
     def send_response(self):
         # Helper
@@ -155,7 +170,7 @@
         # Ignore empty lines
         unprocessed = [line for line in self.commands[self.lineno:]
                        if line and line.strip()]
-        if unprocessed:
+        if unprocessed and mm_cfg.RESPONSE_INCLUDE_LEVEL >= 2:
             resp.append(_('\n- Unprocessed:'))
             resp.extend(indent(unprocessed))
         if not unprocessed and not self.results:
@@ -164,7 +179,7 @@
 No commands were found in this message.
 To obtain instructions, send a message containing just the word "help".
 """)))
-        if self.ignored:
+        if self.ignored and mm_cfg.RESPONSE_INCLUDE_LEVEL >= 2:
             resp.append(_('\n- Ignored:'))
             resp.extend(indent(self.ignored))
         resp.append(_('\n- Done.\n\n'))
@@ -195,7 +210,15 @@
             lang=self.msgdata['lang'])
         msg.set_type('multipart/mixed')
         msg.attach(results)
-        orig = MIMEMessage(self.msg)
+        if mm_cfg.RESPONSE_INCLUDE_LEVEL == 1:
+            self.msg.set_payload(
+                _('Message body suppressed by Mailman site configuration\n'))
+        if mm_cfg.RESPONSE_INCLUDE_LEVEL == 0:
+            orig = MIMEText(_(
+                'Original message suppressed by Mailman site configuration\n'
+                ), _charset=charset)
+        else:
+            orig = MIMEMessage(self.msg)
         msg.attach(orig)
         msg.send(self.mlist)
 
@@ -235,17 +258,23 @@
         # mylist-join, or mylist-leave, and the message metadata will contain
         # a key to which one was used.
         try:
+            ret = BADCMD
             if msgdata.get('torequest'):
-                res.process()
+                ret = res.process()
             elif msgdata.get('tojoin'):
-                res.do_command('join')
+                ret = res.do_command('join')
             elif msgdata.get('toleave'):
-                res.do_command('leave')
+                ret = res.do_command('leave')
             elif msgdata.get('toconfirm'):
                 mo = re.match(mm_cfg.VERP_CONFIRM_REGEXP, msg.get('to', ''))
                 if mo:
-                    res.do_command('confirm', (mo.group('cookie'),))
-            res.send_response()
-            mlist.Save()
+                    ret = res.do_command('confirm', (mo.group('cookie'),))
+            if ret == BADCMD and mm_cfg.DISCARD_MESSAGE_WITH_NO_COMMAND:
+                syslog('vette',
+                       'No command, message discarded, msgid: %s',
+                       msg.get('message-id', 'n/a'))
+            else:
+                res.send_response()
+                mlist.Save()
         finally:
             mlist.Unlock()

Modified: trunk/Mailman/Queue/OutgoingRunner.py
===================================================================
--- trunk/Mailman/Queue/OutgoingRunner.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Queue/OutgoingRunner.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 2000-2007 by the Free Software Foundation, Inc.
+# Copyright (C) 2000-2012 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -89,6 +89,7 @@
                 syslog('error', 'Cannot connect to SMTP server %s on port %s',
                        mm_cfg.SMTPHOST, port)
                 self.__logged = True
+            self._snooze(0)
             return True
         except Errors.SomeRecipientsFailed, e:
             # Handle local rejects of probe messages differently.

Modified: trunk/Mailman/Queue/Runner.py
===================================================================
--- trunk/Mailman/Queue/Runner.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Queue/Runner.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -20,7 +20,6 @@
 
 import time
 import traceback
-import weakref
 from cStringIO import StringIO
 
 from Mailman import mm_cfg
@@ -198,22 +197,18 @@
         if keepqueued:
             self._switchboard.enqueue(msg, msgdata)
 
-    # Mapping of listnames to MailList instances as a weak value dictionary.
-    _listcache = weakref.WeakValueDictionary()
-
     def _open_list(self, listname):
-        # Cache the open list so that any use of the list within this process
-        # uses the same object.  We use a WeakValueDictionary so that when the
-        # list is no longer necessary, its memory is freed.
-        mlist = self._listcache.get(listname)
-        if not mlist:
-            try:
-                mlist = MailList.MailList(listname, lock=False)
-            except Errors.MMListError, e:
-                syslog('error', 'error opening list: %s\n%s', listname, e)
-                return None
-            else:
-                self._listcache[listname] = mlist
+        # We no longer cache the list instances.  Because of changes to
+        # MailList.py needed to avoid not reloading an updated list, caching
+        # is not as effective as it once was.  Also, with OldStyleMemberships
+        # as the MemberAdaptor, there was a self-reference to the list which
+        # kept all lists in the cache.  Changing this reference to a
+        # weakref.proxy created other issues.
+        try:
+            mlist = MailList.MailList(listname, lock=False)
+        except Errors.MMListError, e:
+            syslog('error', 'error opening list: %s\n%s', listname, e)
+            return None
         return mlist
 
     def _log(self, exc):

Modified: trunk/Mailman/SecurityManager.py
===================================================================
--- trunk/Mailman/SecurityManager.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/SecurityManager.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -83,6 +83,7 @@
         # self.password is really a SecurityManager attribute, but it's set in
         # MailList.InitVars().
         self.mod_password = None
+        self.post_password = None
         # Non configurable
         self.passwords = {}
 
@@ -106,6 +107,9 @@
             secret = self.getMemberPassword(user)
             userdata = urllib.quote(Utils.ObscureEmail(user), safe='')
             key += 'user+%s' % userdata
+        elif authcontext == mm_cfg.AuthListPoster:
+            secret = self.post_password
+            key += 'poster'
         elif authcontext == mm_cfg.AuthListModerator:
             secret = self.mod_password
             key += 'moderator'
@@ -200,6 +204,11 @@
                 key, secret = self.AuthContextInfo(ac)
                 if secret and sha_new(response).hexdigest() == secret:
                     return ac
+            elif ac == mm_cfg.AuthListPoster:
+                # The list poster password must be sha'd
+                key, secret = self.AuthContextInfo(ac)
+                if secret and sha_new(response).hexdigest() == secret:
+                    return ac
             elif ac == mm_cfg.AuthUser:
                 if user is not None:
                     try:
@@ -245,8 +254,13 @@
         c[key] = binascii.hexlify(marshal.dumps((issued, mac)))
         # The path to all Mailman stuff, minus the scheme and host,
         # i.e. usually the string `/mailman'
-        path = urlparse(self.web_page_url)[2]
+        parsed = urlparse(self.web_page_url)
+        path = parsed[2]
         c[key]['path'] = path
+        # Make sure to set the 'secure' flag on the cookie if mailman is
+        # accessed by an https url.
+        if parsed[0] == 'https':
+            c[key]['secure'] = True
         # We use session cookies, so don't set `expires' or `max-age' keys.
         # Set the RFC 2109 required header.
         c[key]['version'] = 1
@@ -305,6 +319,8 @@
                          for u in usernames]:
                 ok = self.__checkone(c, authcontext, user)
                 if ok:
+                    # Refresh the cookie
+                    print self.MakeCookie(authcontext, user)
                     return True
             return False
         else:
@@ -337,6 +353,9 @@
         now = time.time()
         if now < issued:
             return False
+        if (mm_cfg.AUTHENTICATION_COOKIE_LIFETIME and
+                issued + mm_cfg.AUTHENTICATION_COOKIE_LIFETIME < now):
+            return False
         # Calculate what the mac ought to be based on the cookie's timestamp
         # and the shared secret.
         mac = sha_new(secret + `issued`).hexdigest()

Modified: trunk/Mailman/Utils.py
===================================================================
--- trunk/Mailman/Utils.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Utils.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -212,10 +212,11 @@
 
 
 # TBD: what other characters should be disallowed?
-_badchars = re.compile(r'[][()<>|;^,\000-\037\177-\377]')
-# characters in addition to _badchars which are not allowed in
-# unquoted local parts.
-_specials = re.compile(r'[:\\"]')
+_badchars = re.compile(r'[][()<>|:;^,\\"\000-\037\177-\377]')
+# Strictly speaking, some of the above are allowed in quoted local parts, but
+# this can open the door to certain web exploits so we don't allow them.
+# Only characters allowed in domain parts.
+_valid_domain = re.compile('[-a-z0-9]', re.IGNORECASE)
 
 def ValidateEmail(s):
     """Verify that an email address isn't grossly evil."""
@@ -230,10 +231,10 @@
         raise Errors.MMBadEmailError, s
     if len(domain_parts) < 2:
         raise Errors.MMBadEmailError, s
-    if not (user.startswith('"') and user.endswith('"')):
-        # local part is not quoted so it can't contain specials
-        if _specials.search(user):
-            raise Errors.MMBadEmailError, s
+    # domain parts may only contain ascii letters, digits and hyphen
+    for p in domain_parts:
+        if len(_valid_domain.sub('', p)) > 0:
+            raise Errors.MMHostileAddress, s
 
 
 
@@ -426,6 +427,12 @@
 
 _ampre = re.compile('&((?:#[0-9]+|[a-z]+);)', re.IGNORECASE)
 def websafe(s):
+    if mm_cfg.BROKEN_BROWSER_WORKAROUND:
+        # Archiver can pass unicode here. Just skip them as the
+        # archiver escapes non-ascii anyway.
+        if isinstance(s, str):
+            for k in mm_cfg.BROKEN_BROWSER_REPLACEMENTS:
+                s = s.replace(k, mm_cfg.BROKEN_BROWSER_REPLACEMENTS[k])
     # Don't double escape html entities
     return _ampre.sub(r'&\1', cgi.escape(s, quote=True))
 
@@ -593,7 +600,7 @@
     'set':         (3, 3),
     'subscribe':   (0, 3),
     'unsubscribe': (0, 1),
-    'who':         (0, 2),
+    'who':         (0, 1),
     }
 
 # Given a Message.Message object, test for administrivia (eg subscribe,

Modified: trunk/Mailman/Version.py
===================================================================
--- trunk/Mailman/Version.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/Version.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -16,7 +16,7 @@
 # USA.
 
 # Mailman version
-VERSION = '2.1.14'
+VERSION = '2.1.15rc1'
 
 # And as a hex number in the manner of PY_VERSION_HEX
 ALPHA = 0xa
@@ -28,16 +28,16 @@
 
 MAJOR_REV = 2
 MINOR_REV = 1
-MICRO_REV = 14
-REL_LEVEL = FINAL
+MICRO_REV = 15
+REL_LEVEL = GAMMA
 # at most 15 beta releases!
-REL_SERIAL = 0
+REL_SERIAL = 1
 
 HEX_VERSION = ((MAJOR_REV << 24) | (MINOR_REV << 16) | (MICRO_REV << 8) |
                (REL_LEVEL << 4)  | (REL_SERIAL << 0))
 
 # config.pck schema version number
-DATA_FILE_VERSION = 98
+DATA_FILE_VERSION = 100
 
 # qfile/*.db schema version number
 QFILE_SCHEMA_VERSION = 3

Modified: trunk/Mailman/htmlformat.py
===================================================================
--- trunk/Mailman/htmlformat.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/htmlformat.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2007 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2012 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -34,6 +34,8 @@
 from Mailman import Utils
 from Mailman.i18n import _
 
+from Mailman.CSRFcheck import csrf_token
+
 SPACE = ' '
 EMPTYSTRING = ''
 NL = '\n'
@@ -298,7 +300,7 @@
 
     def Format(self, indent=0, **kws):
         charset = 'us-ascii'
-        if self.language:
+        if self.language and Utils.IsLanguage(self.language):
             charset = Utils.GetCharSet(self.language)
         output = ['Content-Type: text/html; charset=%s\n' % charset]
         if not self.suppress_head:
@@ -402,11 +404,14 @@
     tag = 'center'
 
 class Form(Container):
-    def __init__(self, action='', method='POST', encoding=None, *items):
+    def __init__(self, action='', method='POST', encoding=None, 
+                       mlist=None, contexts=None, *items):
         apply(Container.__init__, (self,) +  items)
         self.action = action
         self.method = method
         self.encoding = encoding
+        self.mlist = mlist
+        self.contexts = contexts
 
     def set_action(self, action):
         self.action = action
@@ -418,6 +423,10 @@
             encoding = 'enctype="%s"' % self.encoding
         output = '\n%s<FORM action="%s" method="%s" %s>\n' % (
             spaces, self.action, self.method, encoding)
+        if self.mlist:
+            output = output + \
+                '<input type="hidden" name="csrf_token" value="%s">\n' \
+                % csrf_token(self.mlist, self.contexts)
         output = output + Container.Format(self, indent+2)
         output = '%s\n%s</FORM>\n' % (output, spaces)
         return output

Modified: trunk/Mailman/versions.py
===================================================================
--- trunk/Mailman/versions.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/Mailman/versions.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -339,6 +339,7 @@
                         mm_cfg.DEFAULT_DIGEST_VOLUME_FREQUENCY)
     add_only_if_missing('digest_last_sent_at', 0)
     add_only_if_missing('mod_password', None)
+    add_only_if_missing('post_password', None)
     add_only_if_missing('moderator', [])
     add_only_if_missing('topics', [])
     add_only_if_missing('topics_enabled', 0)
@@ -415,6 +416,8 @@
                         mm_cfg.DEFAULT_REGULAR_EXCLUDE_LISTS)
     add_only_if_missing('regular_include_lists',
                         mm_cfg.DEFAULT_REGULAR_INCLUDE_LISTS)
+    add_only_if_missing('regular_exclude_ignore',
+                        mm_cfg.DEFAULT_REGULAR_EXCLUDE_IGNORE)
 
 
 

Modified: trunk/NEWS
===================================================================
--- trunk/NEWS	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/NEWS	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,9 +1,270 @@
+-*- coding: iso-8859-1 -*-
 Mailman - The GNU Mailing List Management System
-Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
+Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
 
 Here is a history of user visible changes to Mailman.
 
+2.1.15rc1 (15-May-2012)
+
+  Security
+
+    - Strengthened the validation of email addresses.
+
+    - An XSS vulnerability, CVE-2011-0707, has been fixed.
+
+    - The web admin interface has been hardened against CSRF attacks by adding
+      a hidden, encrypted token with a time stamp to form submissions and not
+      accepting authentication by cookie if the token is missing, invalid or
+      older than the new mm_cfg.py setting FORM_LIFETIME which defaults to one
+      hour.  Posthumous thanks go to Tokio Kikuchi for this implementation
+      which is only one of his many contributions to Mailman prior to his
+      death from cancer on 14 January 2012.
+
+  New Features
+
+    - Added a password reminder button to the private archive login page.
+      Backported from the 2.2 branch.
+
+    - There is a new list attribute regular_exclude_ignore set from mm_cfg.py
+      DEFAULT_REGULAR_EXCLUDE_IGNORE.  This defaults to True even though the
+      prior behavior is equivalent to False.  A True setting will ignore an
+      exclude list if the poster is not a member of that list.  The False
+      setting can result in list members not receiving posts if the nonmember
+      post is not accepted by the exclude list.  Backported from 2.2 branch.
+
+    - Eliminated the list cache from the qrunners.  Indirect self-references
+      caused lists to never be dropped from the cache which in turn caused
+      the qrunners to grow very large in installations with many lists or
+      multiple large lists.  Bug #862683.
+
+    - The user options 'list my other subscriptions' page now indicates for
+      each list if the subscription is 'nomail' or 'digest'.  Bug #793669.
+
+    - A new list poster password has been implemented.  This password may only
+      be used in Approved: or X-Approved: headers for pre-approving posts.
+      Using this password for that purpose precludes compromise of a more
+      valuable password sent in plain text email.  Bug #770581.
+
+    - A new mm_cfg.py setting AUTHENTICATION_COOKIE_LIFETIME has been added.
+      If this is set to a non-zero value, web authentication cookies will
+      expire that many seconds following their last use.  Its default value is
+      zero to preserve current behavior.
+
+    - A new mm_cfg.py setting RESPONSE_INCLUDE_LEVEL has been added to control
+      how much of the original message is included in automatic responses to
+      email commands.  The default is 2 to preserve the prior behavior of
+      including the full message.  Setting this to 1 in mm_cfg.py will include
+      only the original headers, and 0 will include none of the original.  It
+      is recommended to set this to 0 in mm_cfg.py to minimize the effects of
+      backscatter.  Bug #265835.
+
+    - A new mm_cfg.py setting DEFAULT_RESPOND_TO_POST_REQUESTS has been added
+      to control the default for respond_to_post_requests for new lists.  It is
+      set to Yes for backwards compatibility, but it is recommended that
+      serious consideration be given to setting it to No.  Bug #266051.
+
+    - A new mm_cfg.py setting DISCARD_MESSAGE_WITH_NO_COMMAND has been added to
+      control whether a message to the -request address without any commands or
+      a message to -confirm whose To: address doesn't match VERP_CONFIRM_REGEXP
+      is responded to or just logged.  It defaults to Yes which is different
+      from prior behavior.  Bug #410236.
+
+    - Two new mm_cfg.py settings, BROKEN_BROWSER_WORKAROUND and
+      BROKEN_BROWSER_REPLACEMENTS, have been added to control escaping of
+      additional characters beyond the standard <, >, &, and " in the web UI.
+      See the documentation of these settings in Defaults.py.  The default
+      values for these settings result in no change from the prior release.
+      Bug #774588.
+
+  i18n
+
+    - Added some missing German templates from Egon Frerich.
+
+    - Added Greek translation from Antonis Limperis.
+
+    - A few errors in the Basque translation are fixed.  Bug #836861.
+
+    - Fixed a misspelling in the German invite.txt template.  Bug #815444.
+
+    - Fixed a missing format character in the Spanish translation.
+      Bug #670988.
+
+    - Thanks go to the following for updating translations for the changes in
+      this release.
+        Thijs Kinkhorst
+        Stefan Förster
+        Fabian Wenk
+
+  Bug Fixes and other patches
+
+    - Fixed a bug that could send an admin notice of a held subscription with
+      the subject in the user's preferred language instead of the list's
+      preferred language and possibly not properly RFC 2047 encoded.
+      (LP: #998949)
+
+    - Fixed a possible CPU bound loop in OutgoingRunner if the attempt to
+      Connect to the SMTP server throws a socket.error.  (LP: #966531)
+
+    - Fixed a potential crash in the web UI if a language is removed from the
+      LC_DESCRIPTIONS dictionary.  (LP: #966565)
+
+    - Added an Auto-Submitted: header to invitations and (un)subscription
+      confirmation requests to reduce the possibility of an autoresponder
+      confirming the request.  (LP: #265831)
+
+    - Added javascript to the private.html and admlogin.html templates to
+      focus the cursor on the entry field.  (LP: #266054)
+
+    - Added CPPFLAGS and LDFLAGS to src/Makefile to support their use.
+      (LP: #637652)
+
+    - Stopped removing the trailing slash from the List-Archive: header URL.
+      (LP: #964190)
+
+    - A configured version of contrib/courier-to-mailman.py is now created in
+      build/contrib/courier-to-mailman.py.  (LP: #999250)
+
+    - Subscription disabled warnings are now sent without a Precedence:
+      header.  Bug #808821.
+
+    - Backported 2.2 branch fix for a problem in SpamDetect.py that could
+      cause header_filter_rules to fail to match RFC 2047 encoded headers.
+
+    - Fix for bug #629738 could cause a crash in the admindb details display
+      if the decoded message body contained characters not in the character
+      set of the list's preferred language.  Fixed.  Bug #910440.
+
+    - Added recognition for another Qmail bounce format.
+
+    - Fixed an erroneous seek in the Mailman.Mailbox.Mailbox.AppendMessage
+      method that could cause a corrupt mailbox for files opened 'w+'.
+      Bug #901957.
+
+    - A held message with a null sender caused a crash in the admindb
+      interface.  This is fixed by changing the sender to <missing>.
+      Bug #897103.
+
+    - Changed subject prefixing to allow for possible whitespace between an
+      'Re' and the following colon when determining how to add the prefix.
+      Bug #893290.
+
+    - Fixed a problem where topics regexps would not match RFC 2047 encoded
+      Keywords: and/or Subject: headers.  Bug #891676.
+
+    - Fixed misleading response to an email approval of a held message.
+      Bug #889968.
+
+    - Added masthead.txt to the list of templates that can be edited via the
+      web admin interface.  Bug #266805.
+
+    - Changed the way digest_footer is added to the RFC 1153 (plain) format
+      digest for RFC compliance.  Bug #887610.
+
+    - Fixed cron/checkdbs to report unsubscriptions waiting approval.
+      Bug #873821.
+
+    - The fix for BUG #266220 (sf1181161) has been enhanced so that if there
+      is a pathological HTML part such that the Approved: password text isn't
+      found, but it is found after stripping out HTML tags, the post is
+      rejected with an informative message.
+
+    - A bug that would cause reset of any new_member_options bits other than
+      the four displayed as checkboxes on the list admin General Options page
+      whenever the page was updated or bin/config_list attempted to update
+      new_member_options has been fixed.  Bug #865825.
+
+    - A problem with the logic avoiding unnecessarily reloading a current list
+      object from the config.pck arises if the list is updated by another
+      process within the same second that it was last read/written.  That can
+      cause the reading of latest version of the list to be skipped.  This has
+      been fixed.  Bug #862675.
+
+    - Fixed bin/export.py to accept case insensitive password schemes.
+      Bug #833134.
+
+    - Added Tokio Kikuchi's icons to the misc/ and installed icons/
+      directories.  Bug #782474.
+
+    - Fixed a problem which could result in raw, undecoded message bodies
+      appearing in plain digests and archives.  Bug #787790.
+
+    - Fixed a problem in admindb.py where the character set for the display of
+      the message body excerpt was not correctly determined.  Bug #779751.
+
+    - Prevented setting user passwords with leading/trailing whitespace.
+      Bug #778088.
+
+    - Mailman now sets the 'secure' flag in cookies set via https URLs.
+      Bug #770377.
+
+    - Added a logout link to the admindb interface and made both admin and
+      admindb logout effective for a site admin cookie if allowed.
+      Bug #769318.
+
+    - Replaced the old Mailman logos and icon that install to Mailman's icons
+      directory with the new ones.  If you copy these elsewhere on your
+      server, please copy these new ones.
+
+    - Changed bin/genaliases to only call the POSTFIX_*_CMD commands once when
+      MTA = 'Postfix'.  Bug #266408.
+
+    - Added a report of the affected members to the warnings issued when
+      setting a list with digest members digestable=No and when setting a list
+      with non-digest members nondigestable=no.  Bug #761232.
+
+    - Fixed a problem where content filtering could remove the headers from
+      an attached message/rfc822 part if the message in that part is
+      multipart/alternative and collapse_alternatives is Yes.  Bug #757062.
+
+    - Changed the subscribe CGI to strip leading and trailing whitespace from
+      the supplied email address.  Bug #745432.
+
+    - Changed the maximum number of arguments for the who command to be
+      considered administrivia from 2 to 1 to help avoid false positives.
+      Bug #739524.
+
+    - Added the list name as 'display-name' in added Sender: headers to help
+      mitigate Outlook et al 'on behalf of' displays.  Bug #736849.
+
+    - Fixed a typo in the usage() definition cron/gate_news.  Bug #721015.
+
+    - Fixed an uncaught KeyError when poster tries to cancel a post which was
+      already handled.  Bug #266224.
+
+    - Held message user notifications now come From: list-owner instead of
+      list-bounces.  Bug #714424.
+
+    - Issue an HTTP 404 status for private archive file not found.
+
+    - @listname entries in *_these_nonmembers are no longer case sensitive.
+      Bug #705715.
+
+    - Changed bin/rmlist to also remove heldmsg files for the removed list and
+      fixed a problem with removal of stale locks for the list.  Bug #700528.
+
+    - Fixed a bug where content filtering could leave a multipart message or
+      part with just one sub-part. These should be recast to just the sub-part.
+      Bug #701558.
+
+    - Fixed a bug that could erroneously handle posts from addresses in
+      *_these_nonmembers and send held/rejected notices to bogus addresses when
+      The From or other sender header is RFC 2047 encoded.  Bug #702516.
+
+    - Updated contrib/mm-handler-2.1.10 to better handle lists with names that
+      look like admin addresses.  Bug #697161.
+
+    - Added bounce recognition for a bogus Dovecot MDN.  Bug #693134.
+
+    - Fixed a problem where an emailed command in the Subject: header with a
+      non-ascii l10n of an 'Re:' prefix is ignored.  Bug #685261.
+
+    - Fixed a problem with approving a post by email when the body of the
+      approval mail is base64 encoded.  Bug #677115.
+
+    - Fixed the host name in the From: address of the owner notification from
+      bin/add_members.  Bug #666181.
+
 2.1.14 (20-Sep-2010)
 
   Security

Modified: trunk/README
===================================================================
--- trunk/README	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/README	2012-05-20 12:09:31 UTC (rev 716)
@@ -33,11 +33,12 @@
 
         http://www.python.org
 
-    It is recommended that you use Python 2.5.2, the latest release as of this
-    writing (26-Feb-2008).  
+    It is recommended that you use Python 2.6.7, the latest 2.6 patch release
+    as of this writing (25-Oct-2011).  Mailman has not yet been tested with
+    Python 2.7.
 
-    Mailman 2.1 is not compatible with Python 2.2 or any earlier
-    version.
+    Mailman 2.1 is not compatible with Python 2.2 or any earlier version and
+    not all features may work with Python 2.3.
 
     You will also need an ANSI C compiler to build both Python and Mailman;
     gcc (the GNU C compiler) works just fine.  Mailman currently works only on

Modified: trunk/bin/add_members
===================================================================
--- trunk/bin/add_members	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/bin/add_members	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,6 +1,6 @@
 #! @PYTHON@
 #
-# Copyright (C) 1998-2003 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2010 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -244,7 +244,10 @@
             realname = mlist.real_name
             subject = _('%(realname)s subscription notification')
             msg = Message.UserNotification(
-                mlist.owner, Utils.get_site_email(), subject, s.getvalue(),
+                mlist.owner,
+                Utils.get_site_email(mlist.host_name),
+                subject,
+                s.getvalue(),
                 mlist.preferred_language)
             msg.send(mlist)
 

Modified: trunk/bin/export.py
===================================================================
--- trunk/bin/export.py	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/bin/export.py	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,6 +1,6 @@
 #! @PYTHON@
 #
-# Copyright (C) 2006-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 2006-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -369,7 +369,7 @@
             listnames = opts.listnames
         else:
             listnames = Utils.list_names()
-        dumper.dump(listnames, SCHEMES[opts.password_scheme])
+        dumper.dump(listnames, SCHEMES[opts.password_scheme.lower()])
         dumper.close()
     finally:
         if fp is not sys.stdout:

Modified: trunk/bin/genaliases
===================================================================
--- trunk/bin/genaliases	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/bin/genaliases	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,6 +1,6 @@
 #! @PYTHON@
 #
-# Copyright (C) 2001-2003 by the Free Software Foundation, Inc.
+# Copyright (C) 2001-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -113,8 +113,10 @@
                     # Be verbose for only the first printed list
                     quiet = True
     finally:
+        lock.unlock(unconditionally=True)
+        # Postfix has not been updating the maps. This call will do it.
+        MTA.create(None, quiet=True)
         os.umask(omask)
-        lock.unlock(unconditionally=True)
 
 
 

Modified: trunk/bin/rmlist
===================================================================
--- trunk/bin/rmlist	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/bin/rmlist	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,6 +1,6 @@
 #! @PYTHON@
 #
-# Copyright (C) 1998-2003 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -37,6 +37,7 @@
 """
 
 import os
+import re
 import sys
 import getopt
 import shutil
@@ -121,7 +122,7 @@
             sys.modules[modname].remove(mlist)
 
         REMOVABLES = [
-            (os.path.join('lists', listname), _('list info')),
+            (os.path.join(mm_cfg.LIST_DATA_DIR, listname), _('list info')),
             ]
 
     # Remove any stale locks associated with the list
@@ -131,20 +132,27 @@
             REMOVABLES.append((os.path.join(mm_cfg.LOCK_DIR, filename),
                                _('stale lock file')))
 
+    # Remove any held messages for this list
+    for filename in os.listdir(mm_cfg.DATA_DIR):
+        cre = re.compile('^heldmsg-%s-\d+\.(pck|txt)$' % listname,
+                         re.IGNORECASE)
+        if cre.match(filename):
+            REMOVABLES.append((os.path.join(mm_cfg.DATA_DIR, filename),
+                               _('held message file')))
+
     if removeArchives:
         REMOVABLES.extend([
-            (os.path.join('archives', 'private', listname),
+            (os.path.join(mm_cfg.PRIVATE_ARCHIVE_FILE_DIR, listname),
              _('private archives')),
-            (os.path.join('archives', 'private', listname + '.mbox'),
+            (os.path.join(mm_cfg.PRIVATE_ARCHIVE_FILE_DIR, listname + '.mbox'),
              _('private archives')),
-            (os.path.join('archives', 'public', listname),
+            (os.path.join(mm_cfg.PUBLIC_ARCHIVE_FILE_DIR, listname),
              _('public archives')),
-            (os.path.join('archives', 'public', listname + '.mbox'),
+            (os.path.join(mm_cfg.PUBLIC_ARCHIVE_FILE_DIR, listname + '.mbox'),
              _('public archives')),
             ])
 
-    for dirtmpl, msg in REMOVABLES:
-        dir = os.path.join(mm_cfg.VAR_PREFIX, dirtmpl)
+    for dir, msg in REMOVABLES:
         remove_it(listname, dir, msg)
 
 

Modified: trunk/configure
===================================================================
--- trunk/configure	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/configure	2012-05-20 12:09:31 UTC (rev 716)
@@ -5022,6 +5022,7 @@
 build/bin/rb-archfix:bin/rb-archfix \
 build/contrib/check_perms_grsecurity.py:contrib/check_perms_grsecurity.py \
 build/contrib/qmail-to-mailman.py:contrib/qmail-to-mailman.py \
+build/contrib/courier-to-mailman.py:contrib/courier-to-mailman.py \
 build/contrib/rotatelogs.py:contrib/rotatelogs.py \
 build/cron/bumpdigests:cron/bumpdigests \
 build/cron/checkdbs:cron/checkdbs \

Modified: trunk/configure.in
===================================================================
--- trunk/configure.in	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/configure.in	2012-05-20 12:09:31 UTC (rev 716)
@@ -681,6 +681,7 @@
 bin/rb-archfix \
 contrib/check_perms_grsecurity.py \
 contrib/qmail-to-mailman.py \
+contrib/courier-to-mailman.py \
 contrib/rotatelogs.py \
 cron/bumpdigests \
 cron/checkdbs \

Modified: trunk/contrib/README.courier_to_mailman
===================================================================
--- trunk/contrib/README.courier_to_mailman	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/contrib/README.courier_to_mailman	2012-05-20 12:09:31 UTC (rev 716)
@@ -10,5 +10,5 @@
 in the attached script with actual paths.
 
 Courier is actively supported and development on it is ongoing, whereas qmail
-is unsupported and largely depreciated for use in new mail server
+is unsupported and largely deprecated for use in new mail server
 installations.

Modified: trunk/contrib/README.mm-handler-2.1.10
===================================================================
--- trunk/contrib/README.mm-handler-2.1.10	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/contrib/README.mm-handler-2.1.10	2012-05-20 12:09:31 UTC (rev 716)
@@ -27,3 +27,5 @@
 at <http://mail.python.org/pipermail/mailman-developers/2008-March/thread.html>
 for background and further information.
 
+Note - 2011-01-04: mm-handler-2.1.10 has been patched with the patch in the
+bug report at <https://bugs.launchpad.net/mailman/+bug/697161> which see.

Modified: trunk/contrib/mm-handler-2.1.10
===================================================================
--- trunk/contrib/mm-handler-2.1.10	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/contrib/mm-handler-2.1.10	2012-05-20 12:09:31 UTC (rev 716)
@@ -176,7 +176,12 @@
 		# If an undefined action, restore list name
 		$list = $addr;
 		$cmd = "post";
+	} elsif (! list_exists($list) and list_exists("$list-$cmd")) {
+	# Supposed command is actually part of list name, restore list name
+		$list = $addr;
+		$cmd = "post";
 	}
+
 	## Otherwise use $list and $cmd as already assigned
 
 	return ($list, $cmd);
@@ -186,8 +191,8 @@
 sub list_exists {
 	my ($name) = @_;
 
-	return 1 if (-f "$MMLISTDIR/$list/config.pck");
-	return 1 if (-f "$MMLISTDIR/$list/config.db");
+	return 1 if (-f "$MMLISTDIR/$name/config.pck");
+	return 1 if (-f "$MMLISTDIR/$name/config.db");
 	return 0;
 }
 

Modified: trunk/cron/checkdbs
===================================================================
--- trunk/cron/checkdbs	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/cron/checkdbs	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,6 +1,6 @@
 #! @PYTHON@
 #
-# Copyright (C) 1998-2003 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -14,7 +14,8 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+# USA.
 
 """Check for pending admin requests and mail the list owners if necessary.
 
@@ -149,6 +150,13 @@
             fullname = ' (%s)' % fullname
         pending.append('    %s%s %s' % (addr, fullname, time.ctime(when)))
     first = 1
+    for id in mlist.GetUnsubscriptionIds():
+        if first:
+            pending.append(_('Pending unsubscriptions:'))
+            first = 0
+        addr = mlist.GetRecord(id)
+        pending.append('    %s' % addr)
+    first = 1
     for id in mlist.GetHeldMessageIds():
         if first:
             pending.append(_('\nPending posts:'))

Modified: trunk/cron/gate_news
===================================================================
--- trunk/cron/gate_news	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/cron/gate_news	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,6 +1,6 @@
 #! @PYTHON@
 #
-# Copyright (C) 1998-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2011 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -75,7 +75,7 @@
 
 
 
-def usage(status, msg=''):
+def usage(code, msg=''):
     if code:
         fd = sys.stderr
     else:

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/debian/changelog	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,4 +1,4 @@
-mailman (1:2.1.14-5) UNRELEASED; urgency=low
+mailman (1:2.1.15~rc1-1) UNRELEASED; urgency=low
 
   [ Thijs Kinkhorst ]
   * Remove obsolete patches:
@@ -9,8 +9,11 @@
   [ Thorsten Glaser ]
   * Update the watch file for Launchpad
 
- -- Thorsten Glaser <tg at mirbsd.de>  Tue, 27 Mar 2012 15:19:42 +0200
+  [ Thijs Kinkhorst ]
+  * New upstream release
 
+ -- Thijs Kinkhorst <thijs at speeltuin>  Sun, 20 May 2012 14:01:42 +0200
+
 mailman (1:2.1.14-4) unstable; urgency=low
 
   * Ensure CPPFLAGS and LDFLAGS are actually used during build,

Modified: trunk/doc/mailman-admin/about.html
===================================================================
--- trunk/doc/mailman-admin/about.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/about.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -48,7 +48,7 @@
 About this document ...</a>
 </h1>
  <strong>GNU Mailman - List Administration Manual</strong>,
-September 9, 2010, Release 2.1
+May 15, 2012, Release 2.1
 <p> This document was generated using the <a
     href="http://saftsack.fs.uni-bayreuth.de/~latex2ht/">
     <strong>LaTeX</strong>2<tt>HTML</tt></a> translator.
@@ -104,7 +104,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/contents.html
===================================================================
--- trunk/doc/mailman-admin/contents.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/contents.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -118,7 +118,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/front.html
===================================================================
--- trunk/doc/mailman-admin/front.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/front.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -106,7 +106,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/index.html
===================================================================
--- trunk/doc/mailman-admin/index.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/index.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -45,7 +45,7 @@
 <h1>GNU Mailman - List Administration Manual</h1>
 <p><b><font size="+2">Barry A. Warsaw</font></b></p>
 <p><strong>Release 2.1</strong><br />
-<strong>September 9, 2010</strong></p>
+<strong>May 15, 2012</strong></p>
 <p></p>
 </div>
 </div>
@@ -122,7 +122,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/mailman-admin.html
===================================================================
--- trunk/doc/mailman-admin/mailman-admin.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/mailman-admin.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -45,7 +45,7 @@
 <h1>GNU Mailman - List Administration Manual</h1>
 <p><b><font size="+2">Barry A. Warsaw</font></b></p>
 <p><strong>Release 2.1</strong><br />
-<strong>September 9, 2010</strong></p>
+<strong>May 15, 2012</strong></p>
 <p></p>
 </div>
 </div>
@@ -122,7 +122,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node10.html
===================================================================
--- trunk/doc/mailman-admin/node10.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node10.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -68,7 +68,7 @@
     public information and email responses, such as in the general
     list overview.  The real name can differ from the posting name by
     case only.  For example, if the posting name is <code>mylist</code>, the
-    real name can be <code>Posting</code>.
+    real name can be <code>MyList</code>.
 
 <p>
 </dd>
@@ -191,7 +191,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node11.html
===================================================================
--- trunk/doc/mailman-admin/node11.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node11.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -192,7 +192,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node12.html
===================================================================
--- trunk/doc/mailman-admin/node12.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node12.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -92,7 +92,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node13.html
===================================================================
--- trunk/doc/mailman-admin/node13.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node13.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -176,7 +176,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node14.html
===================================================================
--- trunk/doc/mailman-admin/node14.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node14.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -199,7 +199,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node15.html
===================================================================
--- trunk/doc/mailman-admin/node15.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node15.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -112,7 +112,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node16.html
===================================================================
--- trunk/doc/mailman-admin/node16.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node16.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -148,7 +148,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node17.html
===================================================================
--- trunk/doc/mailman-admin/node17.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node17.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -100,7 +100,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node18.html
===================================================================
--- trunk/doc/mailman-admin/node18.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node18.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -310,7 +310,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node19.html
===================================================================
--- trunk/doc/mailman-admin/node19.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node19.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -218,7 +218,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node20.html
===================================================================
--- trunk/doc/mailman-admin/node20.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node20.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -171,7 +171,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node21.html
===================================================================
--- trunk/doc/mailman-admin/node21.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node21.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -196,7 +196,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node22.html
===================================================================
--- trunk/doc/mailman-admin/node22.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node22.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -207,7 +207,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node23.html
===================================================================
--- trunk/doc/mailman-admin/node23.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node23.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -125,7 +125,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node24.html
===================================================================
--- trunk/doc/mailman-admin/node24.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node24.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -123,7 +123,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node25.html
===================================================================
--- trunk/doc/mailman-admin/node25.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node25.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -188,7 +188,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node26.html
===================================================================
--- trunk/doc/mailman-admin/node26.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node26.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -129,7 +129,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node27.html
===================================================================
--- trunk/doc/mailman-admin/node27.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node27.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -93,7 +93,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node28.html
===================================================================
--- trunk/doc/mailman-admin/node28.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node28.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -86,7 +86,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node29.html
===================================================================
--- trunk/doc/mailman-admin/node29.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node29.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -86,7 +86,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node3.html
===================================================================
--- trunk/doc/mailman-admin/node3.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node3.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -121,7 +121,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node30.html
===================================================================
--- trunk/doc/mailman-admin/node30.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node30.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -87,7 +87,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node31.html
===================================================================
--- trunk/doc/mailman-admin/node31.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node31.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -86,7 +86,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node32.html
===================================================================
--- trunk/doc/mailman-admin/node32.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node32.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -86,7 +86,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node33.html
===================================================================
--- trunk/doc/mailman-admin/node33.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node33.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -86,7 +86,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node34.html
===================================================================
--- trunk/doc/mailman-admin/node34.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node34.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -90,7 +90,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node35.html
===================================================================
--- trunk/doc/mailman-admin/node35.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node35.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -105,7 +105,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node4.html
===================================================================
--- trunk/doc/mailman-admin/node4.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node4.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -152,7 +152,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node5.html
===================================================================
--- trunk/doc/mailman-admin/node5.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node5.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -118,7 +118,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node6.html
===================================================================
--- trunk/doc/mailman-admin/node6.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node6.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -127,7 +127,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node7.html
===================================================================
--- trunk/doc/mailman-admin/node7.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node7.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -139,7 +139,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node8.html
===================================================================
--- trunk/doc/mailman-admin/node8.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node8.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -169,7 +169,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin/node9.html
===================================================================
--- trunk/doc/mailman-admin/node9.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin/node9.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -109,7 +109,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-admin.ps
===================================================================
--- trunk/doc/mailman-admin.ps	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin.ps	2012-05-20 12:09:31 UTC (rev 716)
@@ -11,7 +11,7 @@
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -N0 -o mailman-admin.ps mailman-admin
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2010.09.09:0924
+%DVIPSSource:  TeX output 2012.05.15:2027
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -291,8 +291,8 @@
 rf /Fe 202[29 29 29 29 29 49[{TeXBase1Encoding ReEncodeFont}5
 58.1154 /Times-Roman rf /Ff 133[50 50 50 50 50 50 50
 50 50 50 50 50 50 50 50 1[50 50 50 50 50 50 50 50 50
-50 1[50 1[50 1[50 10[50 1[50 50 50 11[50 5[50 10[50 50
-50 2[50 50 50 2[50 37[{TeXBase1Encoding ReEncodeFont}41
+50 1[50 1[50 1[50 12[50 50 50 11[50 5[50 10[50 50 50
+2[50 50 50 2[50 37[{TeXBase1Encoding ReEncodeFont}40
 83.022 /Courier rf /Fg 134[42 1[60 42 46 23 42 28 1[46
 46 46 69 18 2[18 46 46 1[46 46 42 46 46 11[60 51 55 60
 1[55 65 60 69 46 2[23 1[65 51 1[60 60 55 55 7[46 46 46
@@ -346,11 +346,11 @@
 TeXDict begin 1 0 bop 0 83 3901 9 v 2 357 a Fr(GNU)57
 b(Mailman)g(-)g(List)h(Administr)n(ation)f(Man)n(ual)3368
 504 y Fq(Release)30 b(2.1)3007 859 y Fp(Barr)t(y)i(A.)h(W)-5
-b(arsa)n(w)3275 1213 y Fo(September)19 b(9,)h(2010)1811
-1435 y Fn(Abstract)208 1586 y Fm(This)e(document)i(describes)f(the)g
-(list)f(administrator')l(s)h(interf)o(ace)g(for)g(GNU)f(Mailman)h(2.1.)
-k(It)18 b(contains)i(information)f(a)g(list)f(o)n(wner)208
-1677 y(w)o(ould)k(need)h(to)f(con\002gure)h(their)f(list,)g(either)g
+b(arsa)n(w)3436 1213 y Fo(May)20 b(15,)g(2012)1811 1435
+y Fn(Abstract)208 1586 y Fm(This)e(document)i(describes)f(the)g(list)f
+(administrator')l(s)h(interf)o(ace)g(for)g(GNU)f(Mailman)h(2.1.)k(It)18
+b(contains)i(information)f(a)g(list)f(o)n(wner)208 1677
+y(w)o(ould)k(need)h(to)f(con\002gure)h(their)f(list,)g(either)g
 (through)h(the)f(web)h(interf)o(ace)f(or)g(through)i(email.)32
 b(It)21 b(also)i(co)o(v)o(ers)f(the)h(moderator')l(s)208
 1768 y(interf)o(ace)d(for)g(appro)o(ving)i(held)e(messages)i(and)e
@@ -759,7 +759,7 @@
 b(The)23 b(real)h(name)f(can)g(dif)n(fer)f(from)g(the)i(posting)e(name)
 h(by)g(case)208 1014 y(only)-5 b(.)23 b(F)o(or)d(e)o(xample,)f(if)h
 (the)g(posting)g(name)f(is)i Ff(mylist)p Fo(,)f(the)g(real)g(name)g
-(can)g(be)g Ff(Posting)p Fo(.)0 1180 y Fl(o)o(wner)41
+(can)g(be)g Ff(MyList)p Fo(.)0 1180 y Fl(o)o(wner)41
 b Fo(This)24 b(v)n(ariable)e(contains)h(a)h(list)h(of)e(email)h
 (addresses,)g(one)f(address)g(per)g(line,)i(of)e(the)h(list)g(o)n
 (wners.)35 b(These)23 b(addresses)h(are)208 1280 y(used)18

Modified: trunk/doc/mailman-admin.txt
===================================================================
--- trunk/doc/mailman-admin.txt	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-admin.txt	2012-05-20 12:09:31 UTC (rev 716)
@@ -11,7 +11,7 @@
    Barry A. Warsaw
 
    Release 2.1
-   September 9, 2010
+   May 15, 2012
 
                                  Front Matter
 
@@ -280,7 +280,7 @@
           and email responses, such as in the general list overview. The
           real name can differ from the posting name by case only. For
           example, if the posting name is mylist, the real name can be
-          Posting.
+          MyList.
 
    owner
           This variable contains a list of email addresses, one address
@@ -1316,8 +1316,7 @@
 
                             About this document ...
 
-   GNU Mailman - List Administration Manual, September 9, 2010, Release
-   2.1
+   GNU Mailman - List Administration Manual, May 15, 2012, Release 2.1
 
    This document was generated using the LaTeX2HTML translator.
 
@@ -1362,4 +1361,4 @@
                                    Manual
      _________________________________________________________________
 
-   Release 2.1, documentation updated on September 9, 2010.
+   Release 2.1, documentation updated on May 15, 2012.

Modified: trunk/doc/mailman-install/about.html
===================================================================
--- trunk/doc/mailman-install/about.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/about.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -46,7 +46,7 @@
 About this document ...</a>
 </h1>
  <strong>GNU Mailman - Installation Manual</strong>,
-September 9, 2010, Release 2.1
+May 15, 2012, Release 2.1
 <p> This document was generated using the <a
     href="http://saftsack.fs.uni-bayreuth.de/~latex2ht/">
     <strong>LaTeX</strong>2<tt>HTML</tt></a> translator.
@@ -101,7 +101,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/bsd-issues.html
===================================================================
--- trunk/doc/mailman-install/bsd-issues.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/bsd-issues.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -106,7 +106,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/create-install-dir.html
===================================================================
--- trunk/doc/mailman-install/create-install-dir.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/create-install-dir.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -7,7 +7,7 @@
 <link rel='help' href='about.html' title='About this document...' />
 <link rel="prev" href="node4.html" />
 <link rel="parent" href="node3.html" />
-<link rel="next" href="node6.html" />
+<link rel="next" href="building.html" />
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <meta name='aesop' content='information' />
 <title>2.2 Create the installation directory</title>
@@ -24,7 +24,7 @@
   href="node3.html"><img src='up.png'
   border='0' height='32'  alt='Up one Level' width='32' /></a></td>
 <td class='online-navigation'><a rel="next" title="3 build and install"
-  href="node6.html"><img src='next.png'
+  href="building.html"><img src='next.png'
   border='0' height='32'  alt='Next Page' width='32' /></a></td>
 <td align="center" width="100%">GNU Mailman - Installation Manual</td>
 <td class='online-navigation'><img src='blank.png'
@@ -40,7 +40,7 @@
 <b class="navlabel">Up:</b>
 <a class="sectref" rel="parent" href="node3.html">2 Set up your</a>
 <b class="navlabel">Next:</b>
-<a class="sectref" rel="next" href="node6.html">3 Build and install</a>
+<a class="sectref" rel="next" href="building.html">3 Build and install</a>
 </div>
 <hr /></div>
 </div>
@@ -59,7 +59,7 @@
 <p>
 The default is to install all of Mailman to
 <span class="file">/usr/local/mailman</span><a name="tex2html2"
-  href="#foot726"><sup>2</sup></a>.  You can change this base installation directory (referred to here
+  href="#foot728"><sup>2</sup></a>.  You can change this base installation directory (referred to here
 as <var>$prefix</var>) by specifying the directory with the
 <b class="programopt">--prefix</b> <b class="program">configure</b> option.  If you're upgrading from
 a previous version of Mailman, you may want to use the <b class="programopt">--prefix</b>
@@ -78,7 +78,7 @@
 Make sure the installation directory is set to group <code>mailman</code> (or
 whatever you're going to specify with <b class="programopt">--with-groupname</b>) and has
 the setgid bit set<a name="tex2html3"
-  href="#foot727"><sup>3</sup></a>.  You probably also want to guarantee that this
+  href="#foot729"><sup>3</sup></a>.  You probably also want to guarantee that this
 directory is readable and executable by everyone.  For example, these shell
 commands will accomplish this:
 
@@ -104,14 +104,14 @@
 <p>
 <br><hr><h4>Footnotes</h4>
 <dl>
-<dt><a name="foot726">.../usr/local/mailman</a><A
+<dt><a name="foot728">.../usr/local/mailman</a><A
  href="create-install-dir.html#tex2html2"><sup>2</sup></a></dt>
 <dd>This is the default for Mailman 2.1.
 Earlier versions of Mailman installed everything under <span class="file">/home/mailman</span> by
 default.
 
 </dd>
-<dt><a name="foot727">... set</a><A
+<dt><a name="foot729">... set</a><A
  href="create-install-dir.html#tex2html3"><sup>3</sup></a></dt>
 <dd>BSD users should see the <a href="bsd-issues.html#bsd-issues">15.2</a> section
 for additional information.
@@ -130,7 +130,7 @@
   href="node3.html"><img src='up.png'
   border='0' height='32'  alt='Up one Level' width='32' /></a></td>
 <td class='online-navigation'><a rel="next" title="3 build and install"
-  href="node6.html"><img src='next.png'
+  href="building.html"><img src='next.png'
   border='0' height='32'  alt='Next Page' width='32' /></a></td>
 <td align="center" width="100%">GNU Mailman - Installation Manual</td>
 <td class='online-navigation'><img src='blank.png'
@@ -146,11 +146,11 @@
 <b class="navlabel">Up:</b>
 <a class="sectref" rel="parent" href="node3.html">2 Set up your</a>
 <b class="navlabel">Next:</b>
-<a class="sectref" rel="next" href="node6.html">3 Build and install</a>
+<a class="sectref" rel="next" href="building.html">3 Build and install</a>
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/customizing.html
===================================================================
--- trunk/doc/mailman-install/customizing.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/customizing.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -57,7 +57,7 @@
 now review and change according to your needs.  Some of the options control
 how Mailman interacts with your environment, and other options select defaults
 for newly created lists<a name="tex2html5"
-  href="#foot753"><sup>5</sup></a>.
+  href="#foot755"><sup>5</sup></a>.
 There are system tuning parameters and integration options.
 
 <p>
@@ -85,12 +85,12 @@
 
 <p>
 You should make any changes to <span class="file">mm_cfg.py</span> using the account you
-installed Mailman under in the <a href="troubleshooting.html#building">14</a> section.
+installed Mailman under in the <a href="building.html#building">3</a> section.
 
 <p>
 <br><hr><h4>Footnotes</h4>
 <dl>
-<dt><a name="foot753">... lists</a><A
+<dt><a name="foot755">... lists</a><A
  href="customizing.html#tex2html5"><sup>5</sup></a></dt>
 <dd>In general, changing the list defaults
 described in this section will not affect any already created lists.  To make
@@ -131,7 +131,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/exim3-transport.html
===================================================================
--- trunk/doc/mailman-install/exim3-transport.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/exim3-transport.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -105,7 +105,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/front.html
===================================================================
--- trunk/doc/mailman-install/front.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/front.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -80,7 +80,7 @@
 <li><a href="node4.html">2.1 Add the group and user</a>
 <li><a href="create-install-dir.html">2.2 Create the installation directory</a>
 </ul>
-<li><a href="node6.html">3 Build and install Mailman</a>
+<li><a href="building.html">3 Build and install Mailman</a>
 <ul>
 <li><a href="node7.html">3.1 Run <b class="program">configure</b></a>
 <li><a href="node8.html">3.2 Make and install</a>
@@ -174,7 +174,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/index.html
===================================================================
--- trunk/doc/mailman-install/index.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/index.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -46,7 +46,7 @@
 <p><b><font size="+2">Barry Warsaw</font></b></p>
 <p><span class="email">barry (at) list dot org</span></p>
 <p><strong>Release 2.1</strong><br />
-<strong>September 9, 2010</strong></p>
+<strong>May 15, 2012</strong></p>
 <p></p>
 </div>
 </div>
@@ -67,7 +67,7 @@
 <li><a href="node4.html">2.1 Add the group and user</a>
 <li><a href="create-install-dir.html">2.2 Create the installation directory</a>
 </ul>
-<li><a href="node6.html">3 Build and install Mailman</a>
+<li><a href="building.html">3 Build and install Mailman</a>
 <ul>
 <li><a href="node7.html">3.1 Run <b class="program">configure</b></a>
 <li><a href="node8.html">3.2 Make and install</a>
@@ -127,7 +127,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/internals.pl
===================================================================
--- trunk/doc/mailman-install/internals.pl	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/internals.pl	2012-05-20 12:09:31 UTC (rev 716)
@@ -39,7 +39,7 @@
 $noresave{$key} = "$nosave";
 
 $key = q/building/;
-$ref_files{$key} = "$dir".q|node46.html|; 
+$ref_files{$key} = "$dir".q|node6.html|; 
 $noresave{$key} = "$nosave";
 
 $key = q/about/;

Modified: trunk/doc/mailman-install/labels.pl
===================================================================
--- trunk/doc/mailman-install/labels.pl	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/labels.pl	2012-05-20 12:09:31 UTC (rev 716)
@@ -39,7 +39,7 @@
 $noresave{$key} = "$nosave";
 
 $key = q/building/;
-$external_labels{$key} = "$URL/" . q|node46.html|; 
+$external_labels{$key} = "$URL/" . q|node6.html|; 
 $noresave{$key} = "$nosave";
 
 $key = q/about/;
@@ -94,7 +94,7 @@
 $noresave{$key} = "$nosave";
 
 $key = q/building/;
-$external_latex_labels{$key} = q|14|; 
+$external_latex_labels{$key} = q|3|; 
 $noresave{$key} = "$nosave";
 
 $key = q/postfix-virtual/;

Modified: trunk/doc/mailman-install/mail-server.html
===================================================================
--- trunk/doc/mailman-install/mail-server.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/mail-server.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -156,7 +156,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/mailman-install.html
===================================================================
--- trunk/doc/mailman-install/mailman-install.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/mailman-install.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -46,7 +46,7 @@
 <p><b><font size="+2">Barry Warsaw</font></b></p>
 <p><span class="email">barry (at) list dot org</span></p>
 <p><strong>Release 2.1</strong><br />
-<strong>September 9, 2010</strong></p>
+<strong>May 15, 2012</strong></p>
 <p></p>
 </div>
 </div>
@@ -67,7 +67,7 @@
 <li><a href="node4.html">2.1 Add the group and user</a>
 <li><a href="create-install-dir.html">2.2 Create the installation directory</a>
 </ul>
-<li><a href="node6.html">3 Build and install Mailman</a>
+<li><a href="building.html">3 Build and install Mailman</a>
 <ul>
 <li><a href="node7.html">3.1 Run <b class="program">configure</b></a>
 <li><a href="node8.html">3.2 Make and install</a>
@@ -127,7 +127,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node10.html
===================================================================
--- trunk/doc/mailman-install/node10.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node10.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -185,7 +185,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node12.html
===================================================================
--- trunk/doc/mailman-install/node12.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node12.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -136,7 +136,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node15.html
===================================================================
--- trunk/doc/mailman-install/node15.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node15.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -103,7 +103,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node16.html
===================================================================
--- trunk/doc/mailman-install/node16.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node16.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -56,8 +56,9 @@
 
 This section is derived from Nigel Metheringham's ``HOWTO - Using Exim and
 Mailman together'', which covers Mailman 2.0.x and Exim 3.  It has been
-updated to cover Mailman 2.1 and Exim 4.  The original document is here:
-<a class="url" href="http://www.exim.org/howto/mailman.html">http://www.exim.org/howto/mailman.html</a>.
+updated to cover Mailman 2.1 and Exim 4.  The updated document is here:
+<a class="url" href="http://www.exim.org/howto/mailman21.html">http://www.exim.org/howto/mailman21.html</a> and is recommended over
+the information in the subsections below if you are using Exim 4.
 </div>
 
 <p>
@@ -124,7 +125,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node17.html
===================================================================
--- trunk/doc/mailman-install/node17.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node17.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -144,7 +144,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node18.html
===================================================================
--- trunk/doc/mailman-install/node18.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node18.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -103,7 +103,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node2.html
===================================================================
--- trunk/doc/mailman-install/node2.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node2.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -122,7 +122,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node20.html
===================================================================
--- trunk/doc/mailman-install/node20.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node20.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -107,7 +107,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node21.html
===================================================================
--- trunk/doc/mailman-install/node21.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node21.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -106,7 +106,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node22.html
===================================================================
--- trunk/doc/mailman-install/node22.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node22.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -90,7 +90,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node23.html
===================================================================
--- trunk/doc/mailman-install/node23.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node23.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -94,7 +94,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node24.html
===================================================================
--- trunk/doc/mailman-install/node24.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node24.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -120,7 +120,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node25.html
===================================================================
--- trunk/doc/mailman-install/node25.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node25.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -127,7 +127,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node26.html
===================================================================
--- trunk/doc/mailman-install/node26.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node26.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -130,7 +130,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node27.html
===================================================================
--- trunk/doc/mailman-install/node27.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node27.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -102,7 +102,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node28.html
===================================================================
--- trunk/doc/mailman-install/node28.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node28.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -114,7 +114,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node29.html
===================================================================
--- trunk/doc/mailman-install/node29.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node29.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -116,7 +116,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node3.html
===================================================================
--- trunk/doc/mailman-install/node3.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node3.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -5,7 +5,7 @@
 <link rel="first" href="mailman-install.html" title='GNU mailman - installation Manual' />
 <link rel='last' href='about.html' title='About this document...' />
 <link rel='help' href='about.html' title='About this document...' />
-<link rel="next" href="node6.html" />
+<link rel="next" href="building.html" />
 <link rel="prev" href="node2.html" />
 <link rel="parent" href="front.html" />
 <link rel="next" href="node4.html" />
@@ -102,7 +102,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node30.html
===================================================================
--- trunk/doc/mailman-install/node30.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node30.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -90,7 +90,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node31.html
===================================================================
--- trunk/doc/mailman-install/node31.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node31.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -60,7 +60,7 @@
 command line based message handoff scheme as opposed to the SMTP scheme used
 in <span class="file">SMTPDirect.py</span> (the default).  <span class="file">Sendmail.py</span> has known security
 holes and is provided as a proof-of-concept only<a name="tex2html4"
-  href="#foot414"><sup>4</sup></a>.  If you are having problems
+  href="#foot416"><sup>4</sup></a>.  If you are having problems
 using <span class="file">SMTPDirect.py</span> fix those instead of using <span class="file">Sendmail.py</span>, or
 you may open your system up to security exploits.
 </div>
@@ -68,7 +68,7 @@
 <p>
 <br><hr><h4>Footnotes</h4>
 <dl>
-<dt><a name="foot414">... only</a><A
+<dt><a name="foot416">... only</a><A
  HREF="node31.html#tex2html4"><sup>4</sup></a></dt>
 <dd>In fact, in later
 versions of Mailman, this module is explicitly sabotaged.  You have to know
@@ -121,7 +121,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node32.html
===================================================================
--- trunk/doc/mailman-install/node32.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node32.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -140,7 +140,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node33.html
===================================================================
--- trunk/doc/mailman-install/node33.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node33.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -108,7 +108,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node34.html
===================================================================
--- trunk/doc/mailman-install/node34.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node34.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -93,7 +93,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node36.html
===================================================================
--- trunk/doc/mailman-install/node36.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node36.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -108,7 +108,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node37.html
===================================================================
--- trunk/doc/mailman-install/node37.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node37.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -94,7 +94,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node38.html
===================================================================
--- trunk/doc/mailman-install/node38.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node38.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -90,7 +90,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node4.html
===================================================================
--- trunk/doc/mailman-install/node4.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node4.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -122,7 +122,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node41.html
===================================================================
--- trunk/doc/mailman-install/node41.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node41.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -54,7 +54,7 @@
 <p>
 Several Mailman features occur on a regular schedule, so you must set up
 <b class="program">cron</b> to run the right programs at the right time<a name="tex2html6"
-  href="#foot563"><sup>6</sup></a>.
+  href="#foot565"><sup>6</sup></a>.
 
 <p>
 If your version of crontab supports the <b class="programopt">-u</b> option, you must be
@@ -110,7 +110,7 @@
 <p>
 <br><hr><h4>Footnotes</h4>
 <dl>
-<dt><a name="foot563">... time</a><A
+<dt><a name="foot565">... time</a><A
  HREF="node41.html#tex2html6"><sup>6</sup></a></dt>
 <dd>Note that
 if you're upgrading from a previous version of Mailman, you'll want to install
@@ -152,7 +152,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node42.html
===================================================================
--- trunk/doc/mailman-install/node42.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node42.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -151,7 +151,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node43.html
===================================================================
--- trunk/doc/mailman-install/node43.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node43.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -101,7 +101,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node44.html
===================================================================
--- trunk/doc/mailman-install/node44.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node44.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -120,7 +120,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node45.html
===================================================================
--- trunk/doc/mailman-install/node45.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node45.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -146,7 +146,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node47.html
===================================================================
--- trunk/doc/mailman-install/node47.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node47.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -105,7 +105,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node48.html
===================================================================
--- trunk/doc/mailman-install/node48.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node48.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -147,7 +147,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node50.html
===================================================================
--- trunk/doc/mailman-install/node50.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node50.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -221,7 +221,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Deleted: trunk/doc/mailman-install/node6.html
===================================================================
--- trunk/doc/mailman-install/node6.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node6.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -1,106 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
-<link rel="STYLESHEET" href="mailman-install.css" type='text/css' />
-<link rel="first" href="mailman-install.html" title='GNU mailman - installation Manual' />
-<link rel='last' href='about.html' title='About this document...' />
-<link rel='help' href='about.html' title='About this document...' />
-<link rel="next" href="node9.html" />
-<link rel="prev" href="node3.html" />
-<link rel="parent" href="front.html" />
-<link rel="next" href="node7.html" />
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name='aesop' content='information' />
-<title>3 Build and install Mailman</title>
-</head>
-<body>
-<div class="navigation">
-<div id='top-navigation-panel' xml:id='top-navigation-panel'>
-<table align="center" width="100%" cellpadding="0" cellspacing="2">
-<tr>
-<td class='online-navigation'><a rel="prev" title="2.2 create the installation"
-  href="create-install-dir.html"><img src='previous.png'
-  border='0' height='32'  alt='Previous Page' width='32' /></a></td>
-<td class='online-navigation'><a rel="parent" title="Front Matter"
-  href="front.html"><img src='up.png'
-  border='0' height='32'  alt='Up one Level' width='32' /></a></td>
-<td class='online-navigation'><a rel="next" title="3.1 run configure"
-  href="node7.html"><img src='next.png'
-  border='0' height='32'  alt='Next Page' width='32' /></a></td>
-<td align="center" width="100%">GNU Mailman - Installation Manual</td>
-<td class='online-navigation'><img src='blank.png'
-  border='0' height='32'  alt='' width='32' /></td>
-<td class='online-navigation'><img src='blank.png'
-  border='0' height='32'  alt='' width='32' /></td>
-<td class='online-navigation'><img src='blank.png'
-  border='0' height='32'  alt='' width='32' /></td>
-</tr></table>
-<div class='online-navigation'>
-<b class="navlabel">Previous:</b>
-<a class="sectref" rel="prev" href="create-install-dir.html">2.2 Create the installation</a>
-<b class="navlabel">Up:</b>
-<a class="sectref" rel="parent" href="front.html">Front Matter</a>
-<b class="navlabel">Next:</b>
-<a class="sectref" rel="next" href="node7.html">3.1 Run configure</a>
-</div>
-<hr /></div>
-</div>
-<!--End of Navigation Panel-->
-
-<h1><a name="SECTION001300000000000000000"></a><a name="building"></a>
-<br>
-3 Build and install Mailman
-</h1>
-
-<p>
-
-<p><br /></p><hr class='online-navigation' />
-<div class='online-navigation'>
-<!--Table of Child-Links-->
-<a name="CHILD_LINKS"><strong>Subsections</strong></a>
-
-<ul class="ChildLinks">
-<li><a href="node7.html">3.1 Run <b class="program">configure</b></a>
-<li><a href="node8.html">3.2 Make and install</a>
-</ul>
-<!--End of Table of Child-Links-->
-</div>
-
-<div class="navigation">
-<div class='online-navigation'>
-<p></p><hr />
-<table align="center" width="100%" cellpadding="0" cellspacing="2">
-<tr>
-<td class='online-navigation'><a rel="prev" title="2.2 create the installation"
-  href="create-install-dir.html"><img src='previous.png'
-  border='0' height='32'  alt='Previous Page' width='32' /></a></td>
-<td class='online-navigation'><a rel="parent" title="Front Matter"
-  href="front.html"><img src='up.png'
-  border='0' height='32'  alt='Up one Level' width='32' /></a></td>
-<td class='online-navigation'><a rel="next" title="3.1 run configure"
-  href="node7.html"><img src='next.png'
-  border='0' height='32'  alt='Next Page' width='32' /></a></td>
-<td align="center" width="100%">GNU Mailman - Installation Manual</td>
-<td class='online-navigation'><img src='blank.png'
-  border='0' height='32'  alt='' width='32' /></td>
-<td class='online-navigation'><img src='blank.png'
-  border='0' height='32'  alt='' width='32' /></td>
-<td class='online-navigation'><img src='blank.png'
-  border='0' height='32'  alt='' width='32' /></td>
-</tr></table>
-<div class='online-navigation'>
-<b class="navlabel">Previous:</b>
-<a class="sectref" rel="prev" href="create-install-dir.html">2.2 Create the installation</a>
-<b class="navlabel">Up:</b>
-<a class="sectref" rel="parent" href="front.html">Front Matter</a>
-<b class="navlabel">Next:</b>
-<a class="sectref" rel="next" href="node7.html">3.1 Run configure</a>
-</div>
-</div>
-<hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
-</div>
-<!--End of Navigation Panel-->
-
-</body>
-</html>

Modified: trunk/doc/mailman-install/node7.html
===================================================================
--- trunk/doc/mailman-install/node7.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node7.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -6,8 +6,8 @@
 <link rel='last' href='about.html' title='About this document...' />
 <link rel='help' href='about.html' title='About this document...' />
 <link rel="next" href="node8.html" />
-<link rel="prev" href="node6.html" />
-<link rel="parent" href="node6.html" />
+<link rel="prev" href="building.html" />
+<link rel="parent" href="building.html" />
 <link rel="next" href="node8.html" />
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <meta name='aesop' content='information' />
@@ -19,10 +19,10 @@
 <table align="center" width="100%" cellpadding="0" cellspacing="2">
 <tr>
 <td class='online-navigation'><a rel="prev" title="3 build and install"
-  href="node6.html"><img src='previous.png'
+  href="building.html"><img src='previous.png'
   border='0' height='32'  alt='Previous Page' width='32' /></a></td>
 <td class='online-navigation'><a rel="parent" title="3 build and install"
-  href="node6.html"><img src='up.png'
+  href="building.html"><img src='up.png'
   border='0' height='32'  alt='Up one Level' width='32' /></a></td>
 <td class='online-navigation'><a rel="next" title="3.2 make and install"
   href="node8.html"><img src='next.png'
@@ -37,9 +37,9 @@
 </tr></table>
 <div class='online-navigation'>
 <b class="navlabel">Previous:</b>
-<a class="sectref" rel="prev" href="node6.html">3 Build and install</a>
+<a class="sectref" rel="prev" href="building.html">3 Build and install</a>
 <b class="navlabel">Up:</b>
-<a class="sectref" rel="parent" href="node6.html">3 Build and install</a>
+<a class="sectref" rel="parent" href="building.html">3 Build and install</a>
 <b class="navlabel">Next:</b>
 <a class="sectref" rel="next" href="node8.html">3.2 Make and install</a>
 </div>
@@ -217,10 +217,10 @@
 <table align="center" width="100%" cellpadding="0" cellspacing="2">
 <tr>
 <td class='online-navigation'><a rel="prev" title="3 build and install"
-  href="node6.html"><img src='previous.png'
+  href="building.html"><img src='previous.png'
   border='0' height='32'  alt='Previous Page' width='32' /></a></td>
 <td class='online-navigation'><a rel="parent" title="3 build and install"
-  href="node6.html"><img src='up.png'
+  href="building.html"><img src='up.png'
   border='0' height='32'  alt='Up one Level' width='32' /></a></td>
 <td class='online-navigation'><a rel="next" title="3.2 make and install"
   href="node8.html"><img src='next.png'
@@ -235,15 +235,15 @@
 </tr></table>
 <div class='online-navigation'>
 <b class="navlabel">Previous:</b>
-<a class="sectref" rel="prev" href="node6.html">3 Build and install</a>
+<a class="sectref" rel="prev" href="building.html">3 Build and install</a>
 <b class="navlabel">Up:</b>
-<a class="sectref" rel="parent" href="node6.html">3 Build and install</a>
+<a class="sectref" rel="parent" href="building.html">3 Build and install</a>
 <b class="navlabel">Next:</b>
 <a class="sectref" rel="next" href="node8.html">3.2 Make and install</a>
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node8.html
===================================================================
--- trunk/doc/mailman-install/node8.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node8.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -6,7 +6,7 @@
 <link rel='last' href='about.html' title='About this document...' />
 <link rel='help' href='about.html' title='About this document...' />
 <link rel="prev" href="node7.html" />
-<link rel="parent" href="node6.html" />
+<link rel="parent" href="building.html" />
 <link rel="next" href="node9.html" />
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <meta name='aesop' content='information' />
@@ -21,7 +21,7 @@
   href="node7.html"><img src='previous.png'
   border='0' height='32'  alt='Previous Page' width='32' /></a></td>
 <td class='online-navigation'><a rel="parent" title="3 build and install"
-  href="node6.html"><img src='up.png'
+  href="building.html"><img src='up.png'
   border='0' height='32'  alt='Up one Level' width='32' /></a></td>
 <td class='online-navigation'><a rel="next" title="4 check your installation"
   href="node9.html"><img src='next.png'
@@ -38,7 +38,7 @@
 <b class="navlabel">Previous:</b>
 <a class="sectref" rel="prev" href="node7.html">3.1 Run configure</a>
 <b class="navlabel">Up:</b>
-<a class="sectref" rel="parent" href="node6.html">3 Build and install</a>
+<a class="sectref" rel="parent" href="building.html">3 Build and install</a>
 <b class="navlabel">Next:</b>
 <a class="sectref" rel="next" href="node9.html">4 Check your installation</a>
 </div>
@@ -65,7 +65,7 @@
   href="node7.html"><img src='previous.png'
   border='0' height='32'  alt='Previous Page' width='32' /></a></td>
 <td class='online-navigation'><a rel="parent" title="3 build and install"
-  href="node6.html"><img src='up.png'
+  href="building.html"><img src='up.png'
   border='0' height='32'  alt='Up one Level' width='32' /></a></td>
 <td class='online-navigation'><a rel="next" title="4 check your installation"
   href="node9.html"><img src='next.png'
@@ -82,13 +82,13 @@
 <b class="navlabel">Previous:</b>
 <a class="sectref" rel="prev" href="node7.html">3.1 Run configure</a>
 <b class="navlabel">Up:</b>
-<a class="sectref" rel="parent" href="node6.html">3 Build and install</a>
+<a class="sectref" rel="parent" href="building.html">3 Build and install</a>
 <b class="navlabel">Next:</b>
 <a class="sectref" rel="next" href="node9.html">4 Check your installation</a>
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/node9.html
===================================================================
--- trunk/doc/mailman-install/node9.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/node9.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -6,7 +6,7 @@
 <link rel='last' href='about.html' title='About this document...' />
 <link rel='help' href='about.html' title='About this document...' />
 <link rel="next" href="node10.html" />
-<link rel="prev" href="node6.html" />
+<link rel="prev" href="building.html" />
 <link rel="parent" href="front.html" />
 <link rel="next" href="node10.html" />
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
@@ -139,7 +139,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/postfix-integration.html
===================================================================
--- trunk/doc/mailman-install/postfix-integration.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/postfix-integration.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -200,7 +200,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/postfix-virtual.html
===================================================================
--- trunk/doc/mailman-install/postfix-virtual.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/postfix-virtual.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -53,6 +53,16 @@
 </h3>
 
 <p>
+<div class="note"><b class="label">Note:</b>
+
+This section describes how to integrate Mailman with Postfix for automatic
+generation of Postfix virtual_alias_maps for Mailman list addresses. Mailman's
+support of virtual domains is limited in that list names must be globally
+unique within a single Mailman instance, i.e., two lists may not have the same
+name even if they are in different domains.
+</div>
+
+<p>
 Postfix 2.0 supports ``virtual alias domains'', essentially what used to be
 called ``Postfix-style virtual domains'' in earlier Postfix versions.  To make
 virtual alias domains work with Mailman, you need to do some setup in both
@@ -65,9 +75,11 @@
 First, you need to set up the Postfix virtual alias domains as described in
 the Postfix documentation (see Postfix's <code>virtual(5)</code> manpage).  Note
 that it's your responsibility to include the <code>virtual-alias.domain
-anything</code> line as described manpage; Mailman will not include this line in
-<span class="file">virtual-mailman</span>.  You are highly encouraged to make sure your virtual
-alias domains are working properly before integrating with Mailman.
+anything</code> line as described manpage (in recent Postfix this is not required
+if the domain is included in virtual_alias_domains in main.cf); Mailman will
+not include this line in <span class="file">virtual-mailman</span>.  You are highly encouraged to
+make sure your virtual alias domains are working properly before integrating
+with Mailman.
 
 <p>
 Next, add a path to Postfix's <var>virtual_alias_maps</var> variable, pointing to
@@ -189,7 +201,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/qmail-issues.html
===================================================================
--- trunk/doc/mailman-install/qmail-issues.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/qmail-issues.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -301,7 +301,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/site-list.html
===================================================================
--- trunk/doc/mailman-install/site-list.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/site-list.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -123,7 +123,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install/troubleshooting.html
===================================================================
--- trunk/doc/mailman-install/troubleshooting.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install/troubleshooting.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -67,7 +67,7 @@
 and in Mailman's <span class="file"><var>$prefix</var>/logs/error</span> file.  If you're still
 having problems, you should send a message to the
 <span class="email">mailman-users at python.org</span> mailing list<a name="tex2html7"
-  href="#foot634"><sup>7</sup></a>; see
+  href="#foot636"><sup>7</sup></a>; see
 <a class="url" href="http://mail.python.org/mailman/listinfo/mailman-users">http://mail.python.org/mailman/listinfo/mailman-users</a> for more
 information.
 
@@ -122,7 +122,7 @@
 
 <p>
 you will need to reinstall Mailman, specifying the proper CGI group id,
-      as described in the <a name="building"></a> section.
+      as described in the <a href="building.html#building">3</a> section.
 
 <p>
 </li>
@@ -153,7 +153,7 @@
 
 <p>
 you will need to reinstall Mailman, specifying the proper mail group id
-      as described in the <a name="building"></a> section.
+      as described in the <a href="building.html#building">3</a> section.
 
 <p>
 </li>
@@ -212,7 +212,7 @@
 <p>
 <br><hr><h4>Footnotes</h4>
 <dl>
-<dt><a name="foot634">... list</a><A
+<dt><a name="foot636">... list</a><A
  href="troubleshooting.html#tex2html7"><sup>7</sup></a></dt>
 <dd>You must subscribe to
 this mailing list in order to post to it, but the mailing list's archives are
@@ -252,7 +252,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-install.ps
===================================================================
--- trunk/doc/mailman-install.ps	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install.ps	2012-05-20 12:09:31 UTC (rev 716)
@@ -11,7 +11,7 @@
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -N0 -o mailman-install.ps mailman-install
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2010.09.09:0924
+%DVIPSSource:  TeX output 2012.05.15:2027
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -363,11 +363,11 @@
 %%Page: 1 1
 TeXDict begin 1 0 bop 0 83 3901 9 v 700 357 a Fz(GNU)57
 b(Mailman)g(-)g(Installation)h(Man)n(ual)3368 504 y Fy(Release)30
-b(2.1)3153 859 y Fx(Barr)t(y)i(W)-5 b(arsa)n(w)3275 1213
-y Fw(September)19 b(9,)h(2010)3229 1360 y Fv(barr)r(y)g(\(at\))g(list)g
-(dot)g(org)1811 1581 y Fu(Abstract)208 1732 y Ft(This)30
-b(document)j(describes)f(ho)n(w)g(to)f(install)f(GNU)h(Mailman)h(on)f
-(a)g(POSIX-based)g(system)h(such)g(as)h(U)t Fs(N)t(I)t(X)r
+b(2.1)3153 859 y Fx(Barr)t(y)i(W)-5 b(arsa)n(w)3436 1213
+y Fw(May)20 b(15,)g(2012)3229 1360 y Fv(barr)r(y)g(\(at\))g(list)g(dot)
+g(org)1811 1581 y Fu(Abstract)208 1732 y Ft(This)30 b(document)j
+(describes)f(ho)n(w)g(to)f(install)f(GNU)h(Mailman)h(on)f(a)g
+(POSIX-based)g(system)h(such)g(as)h(U)t Fs(N)t(I)t(X)r
 Ft(,)f(MacOSX,)f(or)208 1824 y(GNU/Linux.)45 b(It)26
 b(will)g(co)o(v)o(er)h(basic)g(installation)f(instructions,)j(as)e
 (well)f(as)g(guidelines)i(for)e(inte)o(grating)h(Mailman)g(with)f(your)
@@ -431,10 +431,10 @@
 4880 y(T)m(ransports)19 b(for)h(Exim)g(4)30 b(.)42 b(.)f(.)g(.)g(.)h(.)
 f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g
 (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
-g(.)g(.)102 b(12)315 4979 y(Additional)19 b(notes)25
+g(.)g(.)102 b(13)315 4979 y(Additional)19 b(notes)25
 b(.)42 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)
 f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g
-(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(12)315
+(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(13)315
 5079 y(Problems)76 b(.)41 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
 (.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)
 h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
@@ -445,7 +445,7 @@
 y(SMTP)21 b(Callback)43 b(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g
 (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
 g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102
-b(13)315 5378 y(Doing)20 b(VERP)h(with)f(Exim)g(and)f(Mailman)53
+b(14)315 5378 y(Doing)20 b(VERP)h(with)f(Exim)g(and)f(Mailman)53
 b(.)41 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
 g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102
 b(14)p eop end
@@ -453,14 +453,14 @@
 TeXDict begin 2 1 bop 315 83 a Fw(V)-5 b(irtual)20 b(Domains)25
 b(.)42 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)
 f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g
-(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(14)315
+(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(15)315
 183 y(List)21 b(V)-9 b(eri\002cation)38 b(.)k(.)f(.)g(.)h(.)f(.)g(.)g
 (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
 g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
 (.)f(.)g(.)g(.)102 b(15)315 282 y(Document)19 b(History)k(.)41
 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h
 (.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
-g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(15)125 382
+g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(16)125 382
 y(6.3)85 b(Using)21 b(the)f(Sendmail)f(mail)i(serv)o(er)28
 b(.)41 b(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
 g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
@@ -470,7 +470,7 @@
 f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(16)315 581 y(Inte)o(grating)18
 b(Sendmail)i(and)f(Mailman)40 b(.)h(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f
 (.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)
-h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(16)315 681 y(Performance)18
+h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(17)315 681 y(Performance)18
 b(notes)81 b(.)41 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h
 (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)
 g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(17)125
@@ -492,8 +492,8 @@
 b(20)0 1445 y(8)83 b(Cr)o(eate)18 b(a)j(site-wide)f(mailing)g(list)2643
 b(20)0 1627 y(9)83 b(Set)20 b(up)h(cr)o(on)3287 b(21)0
 1810 y(10)41 b(Start)19 b(the)i(Mailman)f(qrunner)2722
-b(21)0 1993 y(11)41 b(Check)20 b(the)h(hostname)f(settings)2684
-b(22)0 2175 y(12)41 b(Cr)o(eate)18 b(the)j(site)g(passw)o(ord)2825
+b(22)0 1993 y(11)41 b(Check)20 b(the)h(hostname)f(settings)2684
+b(23)0 2175 y(12)41 b(Cr)o(eate)18 b(the)j(site)g(passw)o(ord)2825
 b(23)0 2358 y(13)41 b(Cr)o(eate)18 b(y)n(our)i(\002rst)h(mailing)f
 (list)2691 b(23)0 2540 y(14)41 b(T)-6 b(r)o(oubleshooting)3112
 b(24)0 2723 y(15)41 b(Platf)n(orm)18 b(and)j(operating)e(system)i
@@ -1018,1284 +1018,1301 @@
 (tak)o(e)f(about)f(a)i(minute)e(for)h(Post\002x)g(to)h(notice)e(the)i
 (change)d(to)j(the)f(`)p Fv(aliases)o(.db)p Fw(')d(\002le)k(and)f
 (update)f(its)i(tables.)0 980 y Fo(Vir)s(tual)k(domains)0
-1183 y Fw(Post\002x)17 b(2.0)e(supports)g(\223virtual)h(alias)h
-(domains\224,)f(essentially)g(what)g(used)g(to)h(be)f(called)g
+1183 y Fr(Note:)48 b Fw(This)18 b(section)g(describes)g(ho)n(w)f(to)i
+(inte)o(grate)e(Mailman)g(with)h(Post\002x)h(for)e(automatic)g
+(generation)f(of)i(Post\002x)h(virtual)p 3667 1183 25
+4 v 28 w(alias)p 3847 1183 V 30 w(-)0 1282 y(maps)j(for)f(Mailman)g
+(list)i(addresses.)29 b(Mailman')-5 b(s)22 b(support)e(of)i(virtual)f
+(domains)g(is)h(limited)g(in)g(that)g(list)h(names)e(must)h(be)g
+(globally)0 1382 y(unique)28 b(within)h(a)h(single)f(Mailman)g
+(instance,)i(i.e.,)h(tw)o(o)d(lists)i(may)e(not)g(ha)n(v)o(e)g(the)g
+(same)h(name)f(e)n(v)o(en)f(if)i(the)o(y)e(are)i(in)f(dif)n(ferent)0
+1481 y(domains.)0 1628 y(Post\002x)17 b(2.0)e(supports)g(\223virtual)h
+(alias)h(domains\224,)f(essentially)g(what)g(used)g(to)h(be)f(called)g
 (\223Post\002x-style)g(virtual)f(domains\224)h(in)g(earlier)0
-1282 y(Post\002x)24 b(v)o(ersions.)35 b(T)-7 b(o)24 b(mak)o(e)g
+1728 y(Post\002x)24 b(v)o(ersions.)35 b(T)-7 b(o)24 b(mak)o(e)g
 (virtual)f(alias)i(domains)d(w)o(ork)i(with)g(Mailman,)g(you)f(need)g
 (to)h(do)f(some)h(setup)g(in)g(both)f(Post\002x)h(and)0
-1382 y(Mailman.)43 b(Mailman)26 b(will)i(write)f(all)g(virtual)f(alias)
+1828 y(Mailman.)43 b(Mailman)26 b(will)i(write)f(all)g(virtual)f(alias)
 h(mappings)e(to)i(a)g(\002le)g(called,)h(by)e(def)o(ault,)h(`)p
-Fv(/usr/local/mailman/data/vir)s(t)o(ual)o(-)0 1481 y(mailman)p
+Fv(/usr/local/mailman/data/vir)s(t)o(ual)o(-)0 1927 y(mailman)p
 Fw('.)c(It)e(will)g(also)f(use)h Fr(postmap)f Fw(to)g(create)g(the)g
 Fr(virtual-mailman.db)f Fw(\002le)i(that)g(Post\002x)f(will)h(actually)
-f(use.)0 1628 y(First,)31 b(you)d(need)g(to)g(set)i(up)e(the)g
+f(use.)0 2074 y(First,)31 b(you)d(need)g(to)g(set)i(up)e(the)g
 (Post\002x)h(virtual)f(alias)h(domains)f(as)h(described)e(in)i(the)g
 (Post\002x)g(documentation)c(\(see)k(Post\002x')-5 b(s)0
-1728 y Fl(virtual\(5\))18 b Fw(manpage\).)23 b(Note)d(that)f(it')-5
+2174 y Fl(virtual\(5\))18 b Fw(manpage\).)23 b(Note)d(that)f(it')-5
 b(s)21 b(your)d(responsibility)g(to)i(include)f(the)g
-Fl(virtual-alias.domain)46 b(anything)0 1828 y Fw(line)18
-b(as)g(described)f(manpage;)f(Mailman)h(will)i(not)e(include)g(this)h
-(line)g(in)g(`)p Fv(vir)s(tual-mailman)p Fw('.)i(Y)-9
-b(ou)17 b(are)h(highly)e(encouraged)f(to)j(mak)o(e)0
-1927 y(sure)i(your)f(virtual)h(alias)g(domains)g(are)g(w)o(orking)e
-(properly)g(before)h(inte)o(grating)f(with)j(Mailman.)0
-2074 y(Ne)o(xt,)f(add)f(a)i(path)f(to)g(Post\002x')-5
-b(s)21 b Fq(virtual)p 1183 2074 25 4 v 29 w(alias)p 1374
-2074 V 29 w(maps)g Fw(v)n(ariable,)d(pointing)h(to)h(the)g
-(virtual-mailman)e(\002le,)j(e.g.:)416 2312 y Fk(virtual_alias_maps)41
+Fl(virtual-alias.domain)46 b(anything)0 2273 y Fw(line)23
+b(as)h(described)d(manpage)g(\(in)i(recent)g(Post\002x)g(this)g(is)h
+(not)f(required)e(if)i(the)g(domain)e(is)j(included)e(in)h(virtual)p
+3325 2273 V 28 w(alias)p 3505 2273 V 31 w(domains)e(in)0
+2373 y(main.cf\);)d(Mailman)h(will)h(not)f(include)f(this)i(line)f(in)h
+(`)p Fv(vir)s(tual-mailman)p Fw('.)g(Y)-9 b(ou)19 b(are)g(highly)f
+(encouraged)f(to)i(mak)o(e)g(sure)g(your)f(virtual)0
+2473 y(alias)j(domains)e(are)h(w)o(orking)f(properly)f(before)h(inte)o
+(grating)f(with)i(Mailman.)0 2619 y(Ne)o(xt,)g(add)f(a)i(path)f(to)g
+(Post\002x')-5 b(s)21 b Fq(virtual)p 1183 2619 V 29 w(alias)p
+1374 2619 V 29 w(maps)g Fw(v)n(ariable,)d(pointing)h(to)h(the)g
+(virtual-mailman)e(\002le,)j(e.g.:)416 2858 y Fk(virtual_alias_maps)41
 b(=)k(<your)f(normal)g(virtual)f(alias)h(files>,)595
-2404 y(hash:/usr/local/mailman/data/virtual-m)o(ailman)0
-2690 y Fw(assuming)22 b(you')l(v)o(e)f(installed)i(Mailman)f(in)h(the)g
+2949 y(hash:/usr/local/mailman/data/virtual-m)o(ailman)0
+3236 y Fw(assuming)22 b(you')l(v)o(e)f(installed)i(Mailman)f(in)h(the)g
 (def)o(ault)f(location.)33 b(If)23 b(you')l(re)e(using)h(an)h(older)f
-(v)o(ersion)g(of)g(Post\002x)i(which)e(doesn')o(t)0 2790
-y(ha)n(v)o(e)e(the)g Fq(virtual)p 524 2790 V 29 w(alias)p
-715 2790 V 29 w(maps)g Fw(v)n(ariable,)f(use)i(the)f
-Fq(virtual)p 1723 2790 V 29 w(maps)g Fw(v)n(ariable)f(instead.)0
-2937 y(Ne)o(xt,)29 b(in)e(your)g(`)p Fv(mm)p 640 2937
+(v)o(ersion)g(of)g(Post\002x)i(which)e(doesn')o(t)0 3335
+y(ha)n(v)o(e)e(the)g Fq(virtual)p 524 3335 V 29 w(alias)p
+715 3335 V 29 w(maps)g Fw(v)n(ariable,)f(use)i(the)f
+Fq(virtual)p 1723 3335 V 29 w(maps)g Fw(v)n(ariable)f(instead.)0
+3482 y(Ne)o(xt,)29 b(in)e(your)g(`)p Fv(mm)p 640 3482
 23 4 v 27 w(cfg.p)n(y)p Fw(')g(\002le,)i(you)e(will)h(w)o(ant)g(to)f
-(set)i(the)e(v)n(ariable)g Fq(POSTFIX)p 2541 2937 25
-4 v 28 w(STYLE)p 2800 2937 V 30 w(VIRTU)m(AL)p 3160 2937
-V 28 w(DOMAINS)h Fw(to)g(the)f(list)0 3036 y(of)g(virtual)h(domains)e
+(set)i(the)e(v)n(ariable)g Fq(POSTFIX)p 2541 3482 25
+4 v 28 w(STYLE)p 2800 3482 V 30 w(VIRTU)m(AL)p 3160 3482
+V 28 w(DOMAINS)h Fw(to)g(the)f(list)0 3582 y(of)g(virtual)h(domains)e
 (that)i(Mailman)f(should)g(update.)47 b(This)28 b(may)f(not)g(be)h(all)
 g(of)g(the)g(virtual)f(alias)h(domains)f(that)h(your)e(Post\002x)0
-3136 y(installation)e(supports!)36 b(The)24 b(v)n(alues)g(in)g(this)h
+3681 y(installation)e(supports!)36 b(The)24 b(v)n(alues)g(in)g(this)h
 (list)g(will)h(be)e(matched)f(against)h(the)g Fq(host)p
-2584 3136 V 29 w(name)g Fw(attrib)n(ute)g(of)g(mailing)f(lists)j
-(objects,)0 3236 y(and)20 b(must)g(be)g(an)g(e)o(xact)g(match.)0
-3382 y(Here')-5 b(s)35 b(an)g(e)o(xample.)67 b(Say)34
+2584 3681 V 29 w(name)g Fw(attrib)n(ute)g(of)g(mailing)f(lists)j
+(objects,)0 3781 y(and)20 b(must)g(be)g(an)g(e)o(xact)g(match.)0
+3928 y(Here')-5 b(s)35 b(an)g(e)o(xample.)67 b(Say)34
 b(that)h(Post\002x)g(is)h(con\002gured)c(to)j(handle)f(the)g(virtual)g
 (domains)g Fl(dom1.ain)p Fw(,)j Fl(dom2.ain)p Fw(,)g(and)0
-3482 y Fl(dom3.ain)p Fw(,)19 b(and)h(further)e(that)j(in)f(your)f(`)p
+4027 y Fl(dom3.ain)p Fw(,)19 b(and)h(further)e(that)j(in)f(your)f(`)p
 Fv(main.cf)p Fw(')g(\002le)i(you')l(v)o(e)d(got)h(the)i(follo)n(wing)d
-(settings:)416 3629 y Fk(myhostname)43 b(=)h(mail.dom1.ain)416
-3720 y(mydomain)f(=)i(dom1.ain)416 3812 y(mydestination)d(=)j
-($myhostname,)e(localhost.$mydomain)416 3903 y(virtual_alias_maps)e(=)
-595 3994 y(hash:/some/path/to/virtual-dom1,)595 4086
-y(hash:/some/path/to/virtual-dom2,)595 4177 y
-(hash:/some/path/to/virtual-dom2)0 4463 y Fw(If)20 b(in)g(your)f(`)p
+(settings:)416 4174 y Fk(myhostname)43 b(=)h(mail.dom1.ain)416
+4266 y(mydomain)f(=)i(dom1.ain)416 4357 y(mydestination)d(=)j
+($myhostname,)e(localhost.$mydomain)416 4448 y(virtual_alias_maps)e(=)
+595 4540 y(hash:/some/path/to/virtual-dom1,)595 4631
+y(hash:/some/path/to/virtual-dom2,)595 4722 y
+(hash:/some/path/to/virtual-dom2)0 5009 y Fw(If)20 b(in)g(your)f(`)p
 Fv(vir)s(tual-dom1)p Fw(')e(\002le,)k(you')l(v)o(e)d(got)i(the)g(follo)
-n(wing)f(lines:)416 4610 y Fk(dom1.ain)88 b(IGNORE)416
-4702 y(@dom1.ain)43 b(@mail.dom1.ain)0 4988 y Fw(this)25
-b(tells)g(Post\002x)f(to)g(deli)n(v)o(er)f(an)o(ything)f(addressed)h
-(to)h Fl(dom1.ain)f Fw(to)h(the)g(same)g(mailbox)f(at)h
-Fl(mail.dom1.com)p Fw(,)f(its)i(def)o(ault)0 5088 y(destination.)0
-5235 y(In)16 b(this)g(case)g(you)f(w)o(ould)g(not)g(include)g
-Fl(dom1.ain)g Fw(in)h Fq(POSTFIX)p 1958 5235 V 28 w(STYLE)p
-2217 5235 V 30 w(VIRTU)m(AL)p 2577 5235 V 29 w(DOMAINS)g
-Fw(because)f(otherwise)g(Mailman)0 5334 y(will)21 b(write)f(entries)g
-(for)g(mailing)f(lists)j(in)e(the)h(dom1.ain)d(domain)g(as)p
-0 5549 3901 4 v 0 5649 a Fo(6.1)83 b(Using)24 b(the)f(P)l(ost\002x)f
-(mail)j(ser)r(v)n(er)2606 b(9)p eop end
+n(wing)f(lines:)416 5156 y Fk(dom1.ain)88 b(IGNORE)416
+5247 y(@dom1.ain)43 b(@mail.dom1.ain)p 0 5549 3901 4
+v 0 5649 a Fo(6.1)83 b(Using)24 b(the)f(P)l(ost\002x)f(mail)j(ser)r(v)n
+(er)2606 b(9)p eop end
 %%Page: 10 10
-TeXDict begin 10 9 bop 416 174 a Fk(mylist at dom1.ain)401
-b(mylist)416 266 y(mylist-request at dom1.ain)41 b(mylist-request)416
-357 y(#)j(and)h(so)f(on...)0 644 y Fw(The)20 b(more)f(speci\002c)i
-(entries)f(trump)f(your)g(more)g(general)g(entries,)h(thus)g(breaking)e
-(the)j(deli)n(v)o(ery)d(of)i(an)o(y)f Fl(dom1.ain)h Fw(mailing)f(list.)
-0 790 y(Ho)n(we)n(v)o(er)m(,)f(you)h(w)o(ould)h(include)f
-Fl(dom2.ain)g Fw(and)h Fl(dom3.ain)f Fw(in)i(`)p Fv(mm)p
-2196 790 23 4 v 27 w(cfg.p)n(y)p Fw(':)416 1029 y Fk
-(POSTFIX_STYLE_VIRTUAL_DOMAINS)40 b(=)k(['dom2.ain',)f('dom3.ain'])0
-1315 y Fw(No)n(w)-5 b(,)48 b(an)o(y)42 b(list)h(that)g(Mailman)f
-(creates)h(in)g(either)f(of)h(those)f(tw)o(o)h(domains,)k(will)d(ha)n
-(v)o(e)e(the)h(correct)e(entries)i(written)f(to)0 1415
-y(`)p Fv(/usr/local/mailman/data/vir)r(tua)o(l-mai)o(lma)o(n)p
-Fw('.)0 1562 y(As)34 b(abo)o(v)o(e)e(with)h(the)g(`)p
-Fv(data/aliases*)p Fw(')d(\002les,)37 b(you)32 b(w)o(ant)i(to)f(mak)o
-(e)g(sure)g(that)g(both)g(`)p Fv(data/vir)s(tual-mailman)p
-Fw(')27 b(and)33 b(`)p Fv(data/vir)s(tual-)0 1661 y(mailman.db)p
-Fw(')18 b(are)i(user)g(and)f(group)g(o)n(wned)g(by)h
-Fl(mailman)p Fw(.)0 1929 y Fo(An)k(alter)r(nativ)n(e)g(approach)0
-2132 y Fw(Fil)d Fv(\002l at rez)o(o)m(.net)d Fw(has)j(an)f(alternati)n(v)o
+TeXDict begin 10 9 bop 0 83 a Fw(this)25 b(tells)g(Post\002x)f(to)g
+(deli)n(v)o(er)f(an)o(ything)f(addressed)h(to)h Fl(dom1.ain)f
+Fw(to)h(the)g(same)g(mailbox)f(at)h Fl(mail.dom1.com)p
+Fw(,)f(its)i(def)o(ault)0 183 y(destination.)0 330 y(In)16
+b(this)g(case)g(you)f(w)o(ould)g(not)g(include)g Fl(dom1.ain)g
+Fw(in)h Fq(POSTFIX)p 1958 330 25 4 v 28 w(STYLE)p 2217
+330 V 30 w(VIRTU)m(AL)p 2577 330 V 29 w(DOMAINS)g Fw(because)f
+(otherwise)g(Mailman)0 429 y(will)21 b(write)f(entries)g(for)g(mailing)
+f(lists)j(in)e(the)h(dom1.ain)d(domain)g(as)416 667 y
+Fk(mylist at dom1.ain)401 b(mylist)416 759 y(mylist-request at dom1.ain)41
+b(mylist-request)416 850 y(#)j(and)h(so)f(on...)0 1137
+y Fw(The)20 b(more)f(speci\002c)i(entries)f(trump)f(your)g(more)g
+(general)g(entries,)h(thus)g(breaking)e(the)j(deli)n(v)o(ery)d(of)i(an)
+o(y)f Fl(dom1.ain)h Fw(mailing)f(list.)0 1283 y(Ho)n(we)n(v)o(er)m(,)f
+(you)h(w)o(ould)h(include)f Fl(dom2.ain)g Fw(and)h Fl(dom3.ain)f
+Fw(in)i(`)p Fv(mm)p 2196 1283 23 4 v 27 w(cfg.p)n(y)p
+Fw(':)416 1522 y Fk(POSTFIX_STYLE_VIRTUAL_DOMAINS)40
+b(=)k(['dom2.ain',)f('dom3.ain'])0 1808 y Fw(No)n(w)-5
+b(,)48 b(an)o(y)42 b(list)h(that)g(Mailman)f(creates)h(in)g(either)f
+(of)h(those)f(tw)o(o)h(domains,)k(will)d(ha)n(v)o(e)e(the)h(correct)e
+(entries)i(written)f(to)0 1908 y(`)p Fv(/usr/local/mailman/data/vir)r
+(tua)o(l-mai)o(lma)o(n)p Fw('.)0 2055 y(As)34 b(abo)o(v)o(e)e(with)h
+(the)g(`)p Fv(data/aliases*)p Fw(')d(\002les,)37 b(you)32
+b(w)o(ant)i(to)f(mak)o(e)g(sure)g(that)g(both)g(`)p Fv(data/vir)s
+(tual-mailman)p Fw(')27 b(and)33 b(`)p Fv(data/vir)s(tual-)0
+2154 y(mailman.db)p Fw(')18 b(are)i(user)g(and)f(group)g(o)n(wned)g(by)
+h Fl(mailman)p Fw(.)0 2422 y Fo(An)k(alter)r(nativ)n(e)g(approach)0
+2625 y Fw(Fil)d Fv(\002l at rez)o(o)m(.net)d Fw(has)j(an)f(alternati)n(v)o
 (e)f(approach)f(based)i(on)f(virtual)h(maps)g(and)g(re)o(gular)e(e)o
-(xpressions,)h(as)i(described)e(at:)125 2362 y Fd(\017)41
+(xpressions,)h(as)i(described)e(at:)125 2855 y Fd(\017)41
 b Fw(\(French\))18 b Fv(http://listes)o(.rez)o(o)m(.net/comment.p)o(hp)
-125 2528 y Fd(\017)41 b Fw(\(English\))18 b Fv(http://listes)o(.rez)o
-(o)m(.net/ho)o(w)-5 b(.p)o(hp)0 2758 y Fw(This)29 b(is)h(a)g(good)d
+125 3021 y Fd(\017)41 b Fw(\(English\))18 b Fv(http://listes)o(.rez)o
+(o)m(.net/ho)o(w)-5 b(.p)o(hp)0 3251 y Fw(This)29 b(is)h(a)g(good)d
 (\(and)h(simpler\))h(alternati)n(v)o(e)e(if)j(you)e(don')o(t)f(mind)i
 (e)o(xposing)e(an)i(additional)e(hostname)h(in)h(the)g(domain)f(part)h
-(of)0 2858 y(the)c(addresses)f(people)f(will)j(use)e(to)h(contact)f
+(of)0 3350 y(the)c(addresses)f(people)f(will)j(use)e(to)h(contact)f
 (your)f(list.)40 b(I.e.)d(if)25 b(people)f(should)f(use)i
-Fl(mylist at lists.dom.ain)d Fw(instead)i(of)0 2957 y Fl(mylist at dom.ain)p
-Fw(.)0 3242 y Fn(6.2)100 b(Using)28 b(the)h(Exim)f(mail)g(ser)s(v)n(er)
-0 3445 y Fr(Note:)70 b Fw(This)25 b(section)g(is)h(deri)n(v)o(ed)e
+Fl(mylist at lists.dom.ain)d Fw(instead)i(of)0 3450 y Fl(mylist at dom.ain)p
+Fw(.)0 3735 y Fn(6.2)100 b(Using)28 b(the)h(Exim)f(mail)g(ser)s(v)n(er)
+0 3938 y Fr(Note:)70 b Fw(This)25 b(section)g(is)h(deri)n(v)o(ed)e
 (from)g(Nigel)h(Metheringham')-5 b(s)23 b(\223HO)m(WT)o(O)i(-)h(Using)f
-(Exim)f(and)h(Mailman)f(together\224,)h(which)0 3545
-y(co)o(v)o(ers)d(Mailman)g(2.0.x)g(and)h(Exim)f(3.)34
-b(It)23 b(has)g(been)g(updated)e(to)j(co)o(v)o(er)d(Mailman)i(2.1)f
-(and)h(Exim)f(4.)34 b(The)23 b(original)f(document)f(is)0
-3645 y(here:)k Fv(http://www)l(.e)n(xim.org/ho)o(wt)o(o/mai)o(lman)o
-(.h)o(tml)-6 b Fw(.)0 3791 y(There)19 b(is)i(no)e(Mailman)g
-(con\002guration)e(needed)i(other)g(than)g(the)h(standard)f(options)g
-(detailed)g(in)h(the)g(Mailman)f(install)h(documenta-)0
-3891 y(tion.)33 b(The)22 b(Exim)g(con\002guration)e(is)k(transparent)d
+(Exim)f(and)h(Mailman)f(together\224,)h(which)0 4037
+y(co)o(v)o(ers)d(Mailman)g(2.0.x)f(and)i(Exim)f(3.)33
+b(It)23 b(has)h(been)e(updated)f(to)i(co)o(v)o(er)f(Mailman)g(2.1)g
+(and)g(Exim)h(4.)33 b(The)22 b(updated)g(document)f(is)0
+4137 y(here:)33 b Fv(http://www)l(.e)n(xim.org/ho)o(wto)o(/mail)o(man)o
+(21.)o(html)18 b Fw(and)24 b(is)i(recommended)21 b(o)o(v)o(er)i(the)h
+(information)e(in)j(the)f(subsections)g(belo)n(w)0 4237
+y(if)c(you)g(are)g(using)g(Exim)f(4.)0 4383 y(There)g(is)i(no)e
+(Mailman)g(con\002guration)e(needed)i(other)g(than)g(the)h(standard)f
+(options)g(detailed)g(in)h(the)g(Mailman)f(install)h(documenta-)0
+4483 y(tion.)33 b(The)22 b(Exim)g(con\002guration)e(is)k(transparent)d
 (to)i(Mailman.)33 b(The)22 b(user)h(and)f(group)f(settings)i(for)f
-(Mailman)h(must)f(match)h(those)0 3991 y(in)d(the)h(con\002g)e
-(fragments)g(gi)n(v)o(en)g(belo)n(w)-5 b(.)0 4259 y Fo(Exim)24
-b(con\002gur)o(ation)0 4462 y Fw(The)d(Exim)g(con\002guration)d(is)k(b)
+(Mailman)h(must)f(match)h(those)0 4583 y(in)d(the)h(con\002g)e
+(fragments)g(gi)n(v)o(en)g(belo)n(w)-5 b(.)0 4851 y Fo(Exim)24
+b(con\002gur)o(ation)0 5054 y Fw(The)d(Exim)g(con\002guration)d(is)k(b)
 n(uilt)g(so)f(that)g(a)h(list)g(created)f(within)g(Mailman)f
 (automatically)g(appears)g(to)i(Exim)f(without)f(the)h(need)0
-4561 y(for)f(de\002ning)e(an)o(y)i(additional)f(aliases.)0
-4708 y(The)28 b(dra)o(wback)e(of)h(this)i(con\002guration)c(is)k(that)f
+5154 y(for)f(de\002ning)e(an)o(y)i(additional)f(aliases.)0
+5300 y(The)28 b(dra)o(wback)e(of)h(this)i(con\002guration)c(is)k(that)f
 (it)h(will)f(w)o(ork)f(poorly)g(on)g(systems)i(supporting)c(lists)30
-b(in)e(se)n(v)o(eral)f(dif)n(ferent)f(mail)0 4808 y(domains.)d(While)c
+b(in)e(se)n(v)o(eral)f(dif)n(ferent)f(mail)0 5400 y(domains.)d(While)c
 (Mailman)e(handles)g(virtual)h(domains,)f(it)i(does)e(not)h(yet)g
 (support)f(ha)n(ving)g(tw)o(o)h(distinct)g(lists)i(with)e(the)g(same)g
-(name)0 4908 y(in)23 b(dif)n(ferent)f(virtual)h(domains,)f(using)h(the)
-g(same)h(Mailman)e(installation.)34 b(This)23 b(will)h(e)n(v)o
-(entually)e(change.)33 b(\(But)23 b(see)h(belo)n(w)f(for)f(a)0
-5007 y(v)n(ariation)d(on)h(this)g(scheme)g(that)g(should)g(accommodate)
-d(virtual)j(domains)f(better)-5 b(.\))0 5154 y(The)21
-b(con\002guration)e(\002le)k(e)o(xcerpts)d(belo)n(w)h(are)h(for)f(use)h
-(in)g(an)f(already)g(functional)f(Exim)h(con\002guration,)e(which)i
-(accepts)g(mail)h(for)0 5254 y(the)i(domain)e(in)h(which)g(the)h(list)g
-(resides.)35 b(If)24 b(this)g(domain)e(is)i(separate)f(from)g(the)g
-(others)g(handled)f(by)h(your)g(Exim)f(con\002guration,)0
-5353 y(then)e(you')o(ll)f(need)g(to:)p 0 5549 3901 4
-v 0 5649 a Fo(10)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n
-(er)p eop end
+(name)p 0 5549 3901 4 v 0 5649 a Fo(10)2827 b(6)83 b(Set)23
+b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p eop end
 %%Page: 11 11
-TeXDict begin 11 10 bop 125 83 a Fd(\017)41 b Fw(add)19
-b(the)h(list)i(domain,)c(\223my)-5 b(.list.domain\224)18
-b(to)i Fq(local)p 1728 83 25 4 v 29 w(domains)125 249
+TeXDict begin 11 10 bop 0 83 a Fw(in)23 b(dif)n(ferent)f(virtual)h
+(domains,)f(using)h(the)g(same)h(Mailman)e(installation.)34
+b(This)23 b(will)h(e)n(v)o(entually)e(change.)33 b(\(But)23
+b(see)h(belo)n(w)f(for)f(a)0 183 y(v)n(ariation)d(on)h(this)g(scheme)g
+(that)g(should)g(accommodate)d(virtual)j(domains)f(better)-5
+b(.\))0 330 y(The)21 b(con\002guration)e(\002le)k(e)o(xcerpts)d(belo)n
+(w)h(are)h(for)f(use)h(in)g(an)f(already)g(functional)f(Exim)h
+(con\002guration,)e(which)i(accepts)g(mail)h(for)0 429
+y(the)i(domain)e(in)h(which)g(the)h(list)g(resides.)35
+b(If)24 b(this)g(domain)e(is)i(separate)f(from)g(the)g(others)g
+(handled)f(by)h(your)g(Exim)f(con\002guration,)0 529
+y(then)e(you')o(ll)f(need)g(to:)125 759 y Fd(\017)41
+b Fw(add)19 b(the)h(list)i(domain,)c(\223my)-5 b(.list.domain\224)18
+b(to)i Fq(local)p 1728 759 25 4 v 29 w(domains)125 925
 y Fd(\017)41 b Fw(add)19 b(a)i(\223domains=my)-5 b(.list.domain\224)15
 b(option)k(to)i(the)f(director)f(\(router\))f(for)i(the)g(list)125
-415 y Fd(\017)41 b Fw(\(optional\))18 b(e)o(xclude)g(that)j(domain)e
-(from)g(your)g(other)g(directors)g(\(routers\))0 645
+1091 y Fd(\017)41 b Fw(\(optional\))18 b(e)o(xclude)g(that)j(domain)e
+(from)g(your)g(other)g(directors)g(\(routers\))0 1321
 y Fr(Note:)74 b Fw(The)26 b(instructions)f(in)i(this)f(document)e
 (should)i(w)o(ork)f(with)i(either)e(Exim)h(3)g(or)g(Exim)g(4.)43
-b(In)26 b(Exim)f(3,)j(you)d(must)i(ha)n(v)o(e)e(a)0 745
-y Fq(local)p 172 745 V 29 w(domains)e Fw(con\002guration)f(setting;)k
+b(In)26 b(Exim)f(3,)j(you)d(must)i(ha)n(v)o(e)e(a)0 1420
+y Fq(local)p 172 1420 V 29 w(domains)e Fw(con\002guration)f(setting;)k
 (in)f(Exim)f(4,)h(you)e(most)i(lik)o(ely)f(ha)n(v)o(e)g(a)h
-Fq(local)p 2586 745 V 28 w(domains)f Fw(domainlist.)36
-b(If)25 b(you)e(don')o(t,)g(you)0 844 y(probably)j(kno)n(w)g(what)i
+Fq(local)p 2586 1420 V 28 w(domains)f Fw(domainlist.)36
+b(If)25 b(you)e(don')o(t,)g(you)0 1520 y(probably)j(kno)n(w)g(what)i
 (you')l(re)e(doing)g(and)i(can)f(adjust)h(accordingly)-5
 b(.)45 b(Similarly)-5 b(,)29 b(in)f(Exim)f(4)h(the)g(concept)e(of)i
-(\223directors\224)e(has)0 944 y(disappeared)d(\226)j(there)e(are)i
+(\223directors\224)e(has)0 1620 y(disappeared)d(\226)j(there)e(are)i
 (only)e(routers)g(no)n(w)-5 b(.)39 b(So)26 b(if)f(you')l(re)f(using)g
 (Exim)h(4,)h(whene)n(v)o(er)e(this)h(document)f(says)h
-(\223director\224,)g(read)0 1044 y(\223router\224.)0
-1190 y(Whether)20 b(you)g(are)h(using)f(Exim)g(3)h(or)f(Exim)g(4,)h
+(\223director\224,)g(read)0 1719 y(\223router\224.)0
+1866 y(Whether)20 b(you)g(are)h(using)f(Exim)g(3)h(or)f(Exim)g(4,)h
 (you)f(will)h(need)f(to)h(add)f(some)h(macros)f(to)h(the)g(main)f
-(section)g(of)h(your)e(Exim)h(con\002g)0 1290 y(\002le.)33
+(section)g(of)h(your)e(Exim)h(con\002g)0 1966 y(\002le.)33
 b(Y)-9 b(ou)22 b(will)h(also)g(need)f(to)h(de\002ne)f(one)g(ne)n(w)h
 (transport.)30 b(W)m(ith)23 b(Exim)f(3,)i(you')o(ll)d(need)h(to)h(add)f
-(a)h(ne)n(w)f(director;)h(with)g(Exim)f(4,)h(a)0 1390
-y(ne)n(w)d(router)f(plays)h(the)g(same)h(role.)0 1537
+(a)h(ne)n(w)f(director;)h(with)g(Exim)f(4,)h(a)0 2065
+y(ne)n(w)d(router)f(plays)h(the)g(same)h(role.)0 2212
 y(Finally)-5 b(,)23 b(the)g(con\002guration)d(supplied)i(here)g(should)
 g(allo)n(w)h(co-habiting)d(Mailman)i(2.0)h(and)f(2.1)g(installations,)h
-(with)g(the)g(pro)o(viso)0 1636 y(that)d(you')o(ll)g(probably)d(w)o
+(with)g(the)g(pro)o(viso)0 2312 y(that)d(you')o(ll)g(probably)d(w)o
 (ant)k(to)f(use)h Fl(mm21)f Fw(in)g(place)g(of)g Fl(mailman)f
-Fw(\226)h(e.g.,)g Fq(MM21)p 2489 1636 V 29 w(HOME)r Fw(,)g
-Fq(mm21)p 3005 1636 V 29 w(tr)o(ansport)q Fw(,)g(etc.)0
-1904 y Fo(Main)k(con\002gur)o(ation)g(settings)0 2107
+Fw(\226)h(e.g.,)g Fq(MM21)p 2489 2312 V 29 w(HOME)r Fw(,)g
+Fq(mm21)p 3005 2312 V 29 w(tr)o(ansport)q Fw(,)g(etc.)0
+2580 y Fo(Main)k(con\002gur)o(ation)g(settings)0 2783
 y Fw(First,)30 b(you)c(need)h(to)g(add)g(some)h(macros)e(to)i(the)f
 (top)g(of)g(your)f(Exim)h(con\002g)g(\002le.)47 b(These)27
 b(just)h(mak)o(e)f(the)g(director)g(\(router\))e(and)0
-2207 y(transport)16 b(belo)n(w)h(a)i(bit)e(cleaner)-5
+2883 y(transport)16 b(belo)n(w)h(a)i(bit)e(cleaner)-5
 b(.)24 b(Ob)o(viously)-5 b(,)16 b(you')o(ll)h(need)g(to)g(edit)h(these)
 g(based)f(on)h(ho)n(w)f(you)f(con\002gured)g(and)h(installed)g
-(Mailman.)416 2445 y Fk(#)44 b(Home)g(dir)h(for)f(your)g(Mailman)g
-(installation)f(--)h(aka)g(Mailman's)g(prefix)416 2536
-y(#)g(directory.)416 2628 y(MAILMAN_HOME=/usr/local/mailman)416
-2719 y(MAILMAN_WRAP=MAILMAN_HOME/mail/mailm)o(an)416
-2902 y(#)g(User)g(and)h(group)f(for)g(Mailman,)g(should)f(match)h(your)
-g(--with-mail-gid)416 2993 y(#)g(switch)g(to)h(Mailman's)e(configure)g
-(script.)416 3084 y(MAILMAN_USER=mailman)416 3176 y
-(MAILMAN_GROUP=mailman)0 3588 y Fo(T)-10 b(r)o(anspor)s(t)23
-b(f)n(or)f(Exim)i(3)0 3791 y Fw(Add)c(this)g(to)h(the)f(transports)f
+(Mailman.)416 3121 y Fk(#)44 b(Home)g(dir)h(for)f(your)g(Mailman)g
+(installation)f(--)h(aka)g(Mailman's)g(prefix)416 3212
+y(#)g(directory.)416 3303 y(MAILMAN_HOME=/usr/local/mailman)416
+3395 y(MAILMAN_WRAP=MAILMAN_HOME/mail/mailm)o(an)416
+3577 y(#)g(User)g(and)h(group)f(for)g(Mailman,)g(should)f(match)h(your)
+g(--with-mail-gid)416 3669 y(#)g(switch)g(to)h(Mailman's)e(configure)g
+(script.)416 3760 y(MAILMAN_USER=mailman)416 3851 y
+(MAILMAN_GROUP=mailman)0 4263 y Fo(T)-10 b(r)o(anspor)s(t)23
+b(f)n(or)f(Exim)i(3)0 4466 y Fw(Add)c(this)g(to)h(the)f(transports)f
 (section)h(of)g(your)f(Exim)h(con\002g)f(\002le,)i(i.e.)k(some)n(where)
-19 b(between)g(the)h(\002rst)h(and)f(second)f(\223end\224)g(line:)326
-4029 y Fk(mailman_transport:)416 4120 y(driver)43 b(=)i(pipe)416
-4211 y(command)e(=)i(MAILMAN_WRAP)e(\\)864 4303 y('${if)h
-(def:local_part_suffix)d(\\)1133 4394 y
-({${sg{$local_part_suffix}{-\(\\\\w+\)\(\\\\+.)2842 4407
-y(*)2887 4394 y(\)?}{\\)o($1}}})d(\\)1133 4485 y({post}}')43
-b(\\)864 4577 y($local_part)416 4668 y(current_directory)f(=)i
-(MAILMAN_HOME)416 4759 y(home_directory)e(=)j(MAILMAN_HOME)416
-4851 y(user)f(=)g(MAILMAN_USER)416 4942 y(group)g(=)g(MAILMAN_GROUP)p
+19 b(between)g(the)h(\002rst)h(and)f(second)f(\223end\224)g(line:)p
 0 5549 3901 4 v 0 5649 a Fo(6.2)83 b(Using)24 b(the)f(Exim)h(mail)g
 (ser)r(v)n(er)2621 b(11)p eop end
 %%Page: 12 12
-TeXDict begin 12 11 bop 0 83 a Fo(Director)23 b(f)n(or)f(Exim)i(3)0
-286 y Fw(If)e(you')l(re)e(using)h(Exim)h(3,)g(you')o(ll)f(need)g(to)h
-(add)g(the)g(follo)n(wing)e(director)h(to)h(your)e(con\002g)i(\002le)g
-(\(directors)f(go)g(between)g(the)h(second)0 386 y(and)g(third)g
-(\223end\224)g(lines\).)33 b(Also,)23 b(don')o(t)e(for)o(get)g(that)i
-(order)e(matters)i(\226)g(e.g.)32 b(you)22 b(can)g(mak)o(e)g(Mailman)h
-(lists)h(tak)o(e)e(precedence)f(o)o(v)o(er)0 485 y(system)f(aliases)h
-(by)f(putting)f(this)i(director)e(in)h(front)f(of)h(your)f(alias\002le)
-i(director)m(,)e(or)h(vice-v)o(ersa.)326 723 y Fk(#)45
-b(Handle)e(all)i(addresses)e(related)h(to)g(a)h(list)f('foo':)g(the)g
-(posting)g(address.)326 815 y(#)h(Automatically)d(detects)i(list)g
-(existence)f(by)i(looking)326 906 y(#)g(for)f
-(lists/$local_part/config.pck)c(under)k(MAILMAN_HOME.)326
-997 y(mailman_director:)416 1089 y(driver)f(=)i(smartuser)416
-1180 y(require_files)d(=)j(MAILMAN_HOME/lists/$local_part/config.)o
-(pck)416 1271 y(suffix_optional)416 1363 y(suffix)e(=)i(-bounces)f(:)g
-(-bounces+)1717 1376 y(*)1805 1363 y(:)h(\\)819 1454
-y(-confirm+)1224 1467 y(*)1312 1454 y(:)g(-join)f(:)h(-leave)e(:)i(\\)
-819 1545 y(-owner)f(:)h(-request)e(:)i(-admin)416 1637
-y(transport)e(=)i(mailman_transport)0 2049 y Fo(Router)23
-b(f)n(or)g(Exim)g(4)0 2251 y Fw(In)f(Exim)f(4,)h(there')-5
-b(s)22 b(no)f(such)h(thing)f(as)h(directors)f(\226)h(you)f(need)g(to)h
-(add)f(a)i(ne)n(w)e(router)g(instead.)30 b(Also,)22 b(the)g(canonical)e
-(order)h(of)h(the)0 2351 y(con\002guration)f(\002le)j(w)o(as)h(changed)
-d(so)i(routers)f(come)g(before)f(transports,)i(so)g(the)f(router)g(for)
-g(Exim)g(4)h(comes)g(\002rst)g(here.)35 b(Put)24 b(this)0
-2451 y(router)19 b(some)n(where)g(after)h(the)g(\223be)o(gin)f
-(routers\224)g(line)h(of)g(your)f(con\002g)g(\002le,)i(and)f(remember)e
-(that)i(order)f(matters.)326 2689 y Fk(mailman_router:)416
-2780 y(driver)43 b(=)i(accept)416 2872 y(require_files)d(=)j
-(MAILMAN_HOME/lists/$local_part/config.)o(pck)416 2963
-y(local_part_suffix_optional)416 3054 y(local_part_suffix)d(=)i(-admin)
-g(:)h(-bounces)e(:)i(-bounces+)2614 3067 y(*)2702 3054
-y(:)g(\\)1312 3146 y(-confirm)f(:)g(-confirm+)2210 3159
-y(*)2298 3146 y(:)h(\\)1312 3237 y(-join)f(:)h(-leave)f(:)g(\\)1312
-3328 y(-owner)g(:)h(-request)e(:)i(\\)1312 3420 y(-subscribe)e(:)i
-(-unsubscribe)416 3511 y(transport)e(=)i(mailman_transport)0
-3923 y Fo(T)-10 b(r)o(anspor)s(ts)22 b(f)n(or)h(Exim)g(4)0
-4126 y Fw(The)f(transport)e(for)i(Exim)f(4)i(is)g(the)f(same)g(as)h
-(for)e(Exim)h(3)g(\(see)g(6.2;)g(just)h(cop)o(y)e(the)h(transport)f(gi)
-n(v)o(en)g(abo)o(v)o(e)f(to)i(some)n(where)f(under)0
-4225 y(the)f(\223be)o(gin)f(transports\224)g(line)h(of)g(your)f(Exim)h
-(con\002g)f(\002le.)0 4494 y Fo(Additional)26 b(notes)0
-4697 y Fw(Exim)g(should)f(be)i(con\002gured)d(to)i(allo)n(w)h
+TeXDict begin 12 11 bop 326 174 a Fk(mailman_transport:)416
+266 y(driver)43 b(=)i(pipe)416 357 y(command)e(=)i(MAILMAN_WRAP)e(\\)
+864 448 y('${if)h(def:local_part_suffix)d(\\)1133 540
+y({${sg{$local_part_suffix}{-\(\\\\w+\)\(\\\\+.)2842
+553 y(*)2887 540 y(\)?}{\\)o($1}}})d(\\)1133 631 y({post}}')43
+b(\\)864 722 y($local_part)416 814 y(current_directory)f(=)i
+(MAILMAN_HOME)416 905 y(home_directory)e(=)j(MAILMAN_HOME)416
+996 y(user)f(=)g(MAILMAN_USER)416 1088 y(group)g(=)g(MAILMAN_GROUP)0
+1500 y Fo(Director)23 b(f)n(or)f(Exim)i(3)0 1702 y Fw(If)e(you')l(re)e
+(using)h(Exim)h(3,)g(you')o(ll)f(need)g(to)h(add)g(the)g(follo)n(wing)e
+(director)h(to)h(your)e(con\002g)i(\002le)g(\(directors)f(go)g(between)
+g(the)h(second)0 1802 y(and)g(third)g(\223end\224)g(lines\).)33
+b(Also,)23 b(don')o(t)e(for)o(get)g(that)i(order)e(matters)i(\226)g
+(e.g.)32 b(you)22 b(can)g(mak)o(e)g(Mailman)h(lists)h(tak)o(e)e
+(precedence)f(o)o(v)o(er)0 1902 y(system)f(aliases)h(by)f(putting)f
+(this)i(director)e(in)h(front)f(of)h(your)f(alias\002le)i(director)m(,)
+e(or)h(vice-v)o(ersa.)326 2140 y Fk(#)45 b(Handle)e(all)i(addresses)e
+(related)h(to)g(a)h(list)f('foo':)g(the)g(posting)g(address.)326
+2231 y(#)h(Automatically)d(detects)i(list)g(existence)f(by)i(looking)
+326 2323 y(#)g(for)f(lists/$local_part/config.pck)c(under)k
+(MAILMAN_HOME.)326 2414 y(mailman_director:)416 2505
+y(driver)f(=)i(smartuser)416 2597 y(require_files)d(=)j
+(MAILMAN_HOME/lists/$local_part/config.)o(pck)416 2688
+y(suffix_optional)416 2779 y(suffix)e(=)i(-bounces)f(:)g(-bounces+)1717
+2792 y(*)1805 2779 y(:)h(\\)819 2870 y(-confirm+)1224
+2883 y(*)1312 2870 y(:)g(-join)f(:)h(-leave)e(:)i(\\)819
+2962 y(-owner)f(:)h(-request)e(:)i(-admin)416 3053 y(transport)e(=)i
+(mailman_transport)0 3465 y Fo(Router)23 b(f)n(or)g(Exim)g(4)0
+3668 y Fw(In)f(Exim)f(4,)h(there')-5 b(s)22 b(no)f(such)h(thing)f(as)h
+(directors)f(\226)h(you)f(need)g(to)h(add)f(a)i(ne)n(w)e(router)g
+(instead.)30 b(Also,)22 b(the)g(canonical)e(order)h(of)h(the)0
+3768 y(con\002guration)f(\002le)j(w)o(as)h(changed)d(so)i(routers)f
+(come)g(before)f(transports,)i(so)g(the)f(router)g(for)g(Exim)g(4)h
+(comes)g(\002rst)g(here.)35 b(Put)24 b(this)0 3867 y(router)19
+b(some)n(where)g(after)h(the)g(\223be)o(gin)f(routers\224)g(line)h(of)g
+(your)f(con\002g)g(\002le,)i(and)f(remember)e(that)i(order)f(matters.)
+326 4105 y Fk(mailman_router:)416 4197 y(driver)43 b(=)i(accept)416
+4288 y(require_files)d(=)j(MAILMAN_HOME/lists/$local_part/config.)o
+(pck)416 4379 y(local_part_suffix_optional)416 4471 y
+(local_part_suffix)d(=)i(-admin)g(:)h(-bounces)e(:)i(-bounces+)2614
+4484 y(*)2702 4471 y(:)g(\\)1312 4562 y(-confirm)f(:)g(-confirm+)2210
+4575 y(*)2298 4562 y(:)h(\\)1312 4653 y(-join)f(:)h(-leave)f(:)g(\\)
+1312 4745 y(-owner)g(:)h(-request)e(:)i(\\)1312 4836
+y(-subscribe)e(:)i(-unsubscribe)416 4927 y(transport)e(=)i
+(mailman_transport)p 0 5549 3901 4 v 0 5649 a Fo(12)2827
+b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p
+eop end
+%%Page: 13 13
+TeXDict begin 13 12 bop 0 83 a Fo(T)-10 b(r)o(anspor)s(ts)22
+b(f)n(or)h(Exim)g(4)0 286 y Fw(The)f(transport)e(for)i(Exim)f(4)i(is)g
+(the)f(same)g(as)h(for)e(Exim)h(3)g(\(see)g(6.2;)g(just)h(cop)o(y)e
+(the)h(transport)f(gi)n(v)o(en)g(abo)o(v)o(e)f(to)i(some)n(where)f
+(under)0 386 y(the)f(\223be)o(gin)f(transports\224)g(line)h(of)g(your)f
+(Exim)h(con\002g)f(\002le.)0 654 y Fo(Additional)26 b(notes)0
+857 y Fw(Exim)g(should)f(be)i(con\002gured)d(to)i(allo)n(w)h
 (reasonable)e(v)n(olume)g(\226)h(e.g.)44 b(don')o(t)24
-b(set)k Fq(max)p 2597 4697 25 4 v 29 w(r)m(ecipients)e
+b(set)k Fq(max)p 2597 857 25 4 v 29 w(r)m(ecipients)e
 Fw(do)n(wn)g(to)g(a)h(silly)g(v)n(alue)f(\226)g(and)0
-4796 y(with)21 b(normal)e(de)o(grees)h(of)g(security)g(\226)h
+956 y(with)21 b(normal)e(de)o(grees)h(of)g(security)g(\226)h
 (speci\002cally)-5 b(,)20 b(be)h(sure)f(to)h(allo)n(w)g(relaying)e
 (from)g(127.0.0.1,)f(b)n(ut)j(pretty)e(much)h(nothing)f(else.)0
-4896 y(P)o(arallel)g(deli)n(v)o(eries)g(and)g(other)f(tweaks)i(can)f
+1056 y(P)o(arallel)g(deli)n(v)o(eries)g(and)g(other)f(tweaks)i(can)f
 (also)h(be)f(used)g(if)h(you)e(lik)o(e;)i(e)o(xperiment)e(with)h(your)f
-(setup)i(to)f(see)h(what)f(w)o(orks.)25 b(Delay)0 4995
+(setup)i(to)f(see)h(what)f(w)o(orks.)25 b(Delay)0 1156
 y(w)o(arning)17 b(messages)g(should)g(be)h(switched)f(of)n(f)g(or)h
 (con\002gured)d(to)j(only)f(happen)f(for)h(non-list)g(mail,)h(unless)g
-(you)f(lik)o(e)g(recei)n(ving)g(tons)0 5095 y(of)j(mail)g(when)g(some)g
-(random)e(host)i(is)i(do)n(wn.)p 0 5549 3901 4 v 0 5649
-a Fo(12)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p
-eop end
-%%Page: 13 13
-TeXDict begin 13 12 bop 0 83 a Fo(Prob)n(lems)125 269
-y Fd(\017)41 b Fw(Mailman)26 b(will)i(send)f(as)h(man)o(y)e
+(you)f(lik)o(e)g(recei)n(ving)g(tons)0 1255 y(of)j(mail)g(when)g(some)g
+(random)e(host)i(is)i(do)n(wn.)0 1524 y Fo(Prob)n(lems)125
+1712 y Fd(\017)41 b Fw(Mailman)26 b(will)i(send)f(as)h(man)o(y)e
 Fl(MAIL)49 b(FROM)p Fw(/)p Fl(RCPT)g(TO)27 b Fw(as)h(it)g(needs.)45
 b(It)28 b(may)f(result)g(in)g(more)g(than)g(10)f(or)h(100)g(mes-)208
-369 y(sages)h(sent)g(in)g(one)f(connection,)g(which)g(will)i(e)o(xceed)
-d(the)i(def)o(ault)f(v)n(alue)g(of)h(Exim')-5 b(s)27
-b Fq(smtp)p 2997 369 25 4 v 30 w(accept)p 3245 369 V
-29 w(queue)p 3474 369 V 28 w(per)p 3613 369 V 29 w(connec-)208
-469 y(tion)f Fw(v)n(alue.)44 b(This)26 b(is)i(bad)e(because)g(it)i
-(will)f(cause)g(Exim)f(to)h(switch)g(into)f(queue)f(mode)h(and)g(se)n
-(v)o(erely)g(delay)g(deli)n(v)o(ery)f(of)208 568 y(your)g(list)i
-(messages.)45 b(The)26 b(w)o(ay)g(to)h(\002x)g(this)g(is)g(to)g(set)g
-(Mailman')-5 b(s)27 b Fq(SMTP)p 2458 568 V 29 w(MAX)p
-2658 568 V 30 w(SESSIONS)p 3050 568 V 27 w(PER)p 3230
-568 V 29 w(CONNECTION)34 b Fw(\(in)208 668 y(`)p Fj($)p
-Fq(pr)m(e\002x)p Fo(/Mailman/mm)p 966 668 V 30 w(cfg.p)n(y)p
-Fw('\))19 b(to)h(a)h(smaller)f(v)n(alue)g(than)f(Exim')-5
-b(s)20 b Fq(smtp)p 2474 668 V 30 w(accept)p 2722 668
-V 29 w(queue)p 2951 668 V 28 w(per)p 3090 668 V 29 w(connection)p
-Fw(.)125 829 y Fd(\017)41 b Fw(Mailman)14 b(should)g(ignore)g(Exim)h
-(delay)g(w)o(arning)f(messages,)i(e)n(v)o(en)e(though)g(Exim)h(should)f
-(ne)n(v)o(er)g(send)h(this)h(to)f(list)i(messages.)208
-929 y(Mailman)26 b(2.1')-5 b(s)27 b(general)f(bounce)f(detection)h(and)
-g(VERP)i(support)e(should)g(greatly)g(impro)o(v)o(e)f(the)i(bounce)e
-(detector')-5 b(s)26 b(hit)208 1028 y(rates.)125 1189
-y Fd(\017)41 b Fw(List)20 b(e)o(xistence)f(is)i(determined)d(by)i(the)g
-(e)o(xistence)f(of)h(a)g(`)p Fv(con\002g.pc)o(k)p Fw(')f(\002le)i(for)e
-(a)h(list.)26 b(If)20 b(you)f(delete)h(lists)h(by)f(foul)f(means,)h(be)
-208 1289 y(a)o(w)o(are)f(of)h(this.)125 1450 y Fd(\017)41
+1812 y(sages)h(sent)g(in)g(one)f(connection,)g(which)g(will)i(e)o
+(xceed)d(the)i(def)o(ault)f(v)n(alue)g(of)h(Exim')-5
+b(s)27 b Fq(smtp)p 2997 1812 V 30 w(accept)p 3245 1812
+V 29 w(queue)p 3474 1812 V 28 w(per)p 3613 1812 V 29
+w(connec-)208 1912 y(tion)f Fw(v)n(alue.)44 b(This)26
+b(is)i(bad)e(because)g(it)i(will)f(cause)g(Exim)f(to)h(switch)g(into)f
+(queue)f(mode)h(and)g(se)n(v)o(erely)g(delay)g(deli)n(v)o(ery)f(of)208
+2011 y(your)g(list)i(messages.)45 b(The)26 b(w)o(ay)g(to)h(\002x)g
+(this)g(is)g(to)g(set)g(Mailman')-5 b(s)27 b Fq(SMTP)p
+2458 2011 V 29 w(MAX)p 2658 2011 V 30 w(SESSIONS)p 3050
+2011 V 27 w(PER)p 3230 2011 V 29 w(CONNECTION)34 b Fw(\(in)208
+2111 y(`)p Fj($)p Fq(pr)m(e\002x)p Fo(/Mailman/mm)p 966
+2111 V 30 w(cfg.p)n(y)p Fw('\))19 b(to)h(a)h(smaller)f(v)n(alue)g(than)
+f(Exim')-5 b(s)20 b Fq(smtp)p 2474 2111 V 30 w(accept)p
+2722 2111 V 29 w(queue)p 2951 2111 V 28 w(per)p 3090
+2111 V 29 w(connection)p Fw(.)125 2277 y Fd(\017)41 b
+Fw(Mailman)14 b(should)g(ignore)g(Exim)h(delay)g(w)o(arning)f
+(messages,)i(e)n(v)o(en)e(though)g(Exim)h(should)f(ne)n(v)o(er)g(send)h
+(this)h(to)f(list)i(messages.)208 2377 y(Mailman)26 b(2.1')-5
+b(s)27 b(general)f(bounce)f(detection)h(and)g(VERP)i(support)e(should)g
+(greatly)g(impro)o(v)o(e)f(the)i(bounce)e(detector')-5
+b(s)26 b(hit)208 2476 y(rates.)125 2642 y Fd(\017)41
+b Fw(List)20 b(e)o(xistence)f(is)i(determined)d(by)i(the)g(e)o
+(xistence)f(of)h(a)g(`)p Fv(con\002g.pc)o(k)p Fw(')f(\002le)i(for)e(a)h
+(list.)26 b(If)20 b(you)f(delete)h(lists)h(by)f(foul)f(means,)h(be)208
+2742 y(a)o(w)o(are)f(of)h(this.)125 2908 y Fd(\017)41
 b Fw(If)26 b(you)g(are)h(getting)f(Exim)g(or)h(Mailman)f(complaining)e
 (about)i(user)h(ids)g(when)g(you)e(send)i(mail)g(to)g(a)g(list,)j
-(check)c(that)h(the)208 1550 y Fq(MAILMAN)p 582 1550
-V 29 w(USER)19 b Fw(and)f Fq(MAILMAN)p 1342 1550 V 30
+(check)c(that)h(the)208 3008 y Fq(MAILMAN)p 582 3008
+V 29 w(USER)19 b Fw(and)f Fq(MAILMAN)p 1342 3008 V 30
 w(GR)m(OUP)h Fw(match)f(those)h(of)g(Mailman)f(itself)i(\(i.e.)k(what)
-19 b(were)g(used)g(in)g(the)g Fr(con\002gur)o(e)208 1649
+19 b(were)g(used)g(in)g(the)g Fr(con\002gur)o(e)208 3107
 y Fw(script\).)24 b(Also)d(mak)o(e)e(sure)i(you)e(do)h(not)f(ha)n(v)o
 (e)h(aliases)h(in)g(the)f(main)g(alias)g(\002le)h(for)f(the)g(list.)0
-1915 y Fo(Receiv)n(er)j(V)-7 b(er)q(i\002cation)0 2118
+3375 y Fo(Receiv)n(er)j(V)-7 b(er)q(i\002cation)0 3578
 y Fw(Exim')i(s)20 b(recei)n(v)o(er)e(v)o(eri\002cation)g(feature)h(is)h
 (v)o(ery)f(useful)g(\226)h(it)g(lets)h(Exim)e(reject)h(unrouteable)d
 (addresses)i(at)i(SMTP)f(time.)25 b(Ho)n(we)n(v)o(er)m(,)0
-2218 y(this)20 b(is)h(most)f(useful)f(for)g(e)o(xternally-originating)c
+3678 y(this)20 b(is)h(most)f(useful)f(for)g(e)o(xternally-originating)c
 (mail)20 b(that)g(is)g(addressed)f(to)h(mail)g(in)f(one)h(of)f(your)g
-(local)g(domains.)24 b(F)o(or)19 b(Mailman)0 2318 y(list)g(traf)n
+(local)g(domains.)24 b(F)o(or)19 b(Mailman)0 3778 y(list)g(traf)n
 (\002c,)f(mail)g(originates)f(on)h(your)f(serv)o(er)m(,)g(and)g(is)i
 (addressed)e(to)i(random)d(e)o(xternal)h(domains)g(that)h(are)g(not)g
-(under)e(your)h(control.)0 2417 y(Furthermore,)25 b(each)g(message)h
+(under)e(your)h(control.)0 3877 y(Furthermore,)25 b(each)g(message)h
 (is)h(addressed)d(to)i(man)o(y)f(recipients)g(\226)h(up)f(to)h(500)f
 (if)i(you)d(use)j(Mailman')-5 b(s)25 b(def)o(ault)g(con\002guration)0
-2517 y(and)20 b(don')o(t)e(tweak)i Fq(SMTP)p 767 2517
-V 30 w(MAX)p 968 2517 V 29 w(RCPTS)q Fw(.)0 2664 y(Doing)27
+3977 y(and)20 b(don')o(t)e(tweak)i Fq(SMTP)p 767 3977
+V 30 w(MAX)p 968 3977 V 29 w(RCPTS)q Fw(.)0 4124 y(Doing)27
 b(recei)n(v)o(er)f(v)o(eri\002cation)f(on)i(Mailman)g(list)i(traf)n
 (\002c)e(is)h(a)g(recipe)f(for)g(trouble.)45 b(In)27
 b(particular)m(,)h(Exim)f(will)h(attempt)f(to)g(route)0
-2763 y(e)n(v)o(ery)e(recipient)h(addresses)g(in)h(outgoing)d(Mailman)i
+4223 y(e)n(v)o(ery)e(recipient)h(addresses)g(in)h(outgoing)d(Mailman)i
 (list)h(posts.)44 b(Ev)o(en)26 b(though)f(this)i(requires)e(nothing)g
-(more)h(than)g(a)h(fe)n(w)f(DNS)0 2863 y(lookups)20 b(for)h(each)h
+(more)h(than)g(a)h(fe)n(w)f(DNS)0 4323 y(lookups)20 b(for)h(each)h
 (address,)f(it)i(can)e(still)i(introduce)d(signi\002cant)h(delays.)29
 b(Therefore,)20 b(you)h(should)g(disable)g(recipient)g(v)o
-(eri\002cation)0 2963 y(for)f(Mailman)f(traf)n(\002c.)0
-3110 y(Under)g(Exim)h(3,)g(put)g(this)g(in)h(your)e(main)h
-(con\002guration)d(section:)416 3348 y Fk(receiver_verify_hosts)41
-b(=)k(!127.0.0.1)0 3634 y Fw(Under)23 b(Exim)h(4,)h(this)g(is)g
+(eri\002cation)0 4423 y(for)f(Mailman)f(traf)n(\002c.)0
+4570 y(Under)g(Exim)h(3,)g(put)g(this)g(in)h(your)e(main)h
+(con\002guration)d(section:)416 4808 y Fk(receiver_verify_hosts)41
+b(=)k(!127.0.0.1)0 5094 y Fw(Under)23 b(Exim)h(4,)h(this)g(is)g
 (probably)d(already)h(tak)o(en)h(care)g(of)g(for)g(you)f(by)h(the)g
 (def)o(ault)g(recipient)f(v)o(eri\002cation)g(A)m(CL)i(statement)f
-(\(in)0 3734 y(the)c Fl(RCPT)49 b(TO)21 b Fw(A)m(CL\):)326
-3972 y Fk(accept)89 b(domains)312 b(=)45 b(+local_domains)685
-4063 y(endpass)685 4155 y(message)312 b(=)45 b(unknown)f(user)685
-4246 y(verify)357 b(=)45 b(recipient)0 4533 y Fw(which)24
-b(only)g(does)g(recipient)g(v)o(eri\002cation)f(on)h(addresses)g(in)h
-(your)e(domain.)37 b(\(That')-5 b(s)25 b(not)f(e)o(xactly)g(the)g(same)
-h(as)g(doing)f(recipient)0 4632 y(v)o(eri\002cation)19
-b(only)g(on)h(messages)g(coming)f(from)g(non-127.0.0.1)c(hosts,)21
-b(b)n(ut)f(it)h(should)e(do)h(the)g(trick)g(for)f(Mailman.\))0
-4898 y Fo(SMTP)24 b(Callbac)n(k)0 5101 y Fw(Exim')-5
-b(s)26 b(SMTP)h(callback)e(feature)h(is)h(an)f(e)n(v)o(en)g(more)f(po)n
-(werful)g(w)o(ay)h(to)g(detect)h(bogus)e(sender)g(addresses)h(than)g
-(normal)f(sender)0 5201 y(v)o(eri\002cation.)41 b(Unfortunately)-5
-b(,)23 b(lots)k(of)f(serv)o(ers)f(send)g(bounce)g(messages)h(with)g(a)g
-(bogus)f(address)g(in)h(the)g(header)m(,)g(and)f(there)h(are)0
-5300 y(plenty)e(that)g(send)h(bounces)e(with)h(bogus)g(en)m(v)o(elope)e
-(senders)i(\(e)n(v)o(en)f(though)g(the)o(y')l(re)g(supposed)g(to)i
-(just)g(use)g(an)f(empty)g(en)m(v)o(elope)0 5400 y(sender)19
-b(for)h(bounces\).)p 0 5549 3901 4 v 0 5649 a Fo(6.2)83
-b(Using)24 b(the)f(Exim)h(mail)g(ser)r(v)n(er)2621 b(13)p
-eop end
+(\(in)0 5194 y(the)c Fl(RCPT)49 b(TO)21 b Fw(A)m(CL\):)p
+0 5549 3901 4 v 0 5649 a Fo(6.2)83 b(Using)24 b(the)f(Exim)h(mail)g
+(ser)r(v)n(er)2621 b(13)p eop end
 %%Page: 14 14
-TeXDict begin 14 13 bop 0 83 a Fw(In)25 b(order)f(to)i(ensure)f(that)g
-(Mailman)g(can)h(disable/remo)o(v)o(e)c(bouncing)i(addresses,)i(you)e
-(generally)g(w)o(ant)i(to)g(recei)n(v)o(e)e(bounces)g(for)0
-183 y(Mailman)c(lists,)h(e)n(v)o(en)f(if)g(those)g(bounces)f(are)i
-(themselv)o(es)e(not)h(bounceable.)k(Thus,)19 b(you)h(might)f(w)o(ant)i
-(to)f(disable)h(SMTP)f(callback)0 282 y(on)g(bounce)e(messages.)0
-429 y(W)m(ith)i(Exim)g(4,)g(you)f(can)h(accomplish)f(this)i(using)f
+TeXDict begin 14 13 bop 326 174 a Fk(accept)89 b(domains)312
+b(=)45 b(+local_domains)685 266 y(endpass)685 357 y(message)312
+b(=)45 b(unknown)f(user)685 448 y(verify)357 b(=)45 b(recipient)0
+735 y Fw(which)24 b(only)g(does)g(recipient)g(v)o(eri\002cation)f(on)h
+(addresses)g(in)h(your)e(domain.)37 b(\(That')-5 b(s)25
+b(not)f(e)o(xactly)g(the)g(same)h(as)g(doing)f(recipient)0
+834 y(v)o(eri\002cation)19 b(only)g(on)h(messages)g(coming)f(from)g
+(non-127.0.0.1)c(hosts,)21 b(b)n(ut)f(it)h(should)e(do)h(the)g(trick)g
+(for)f(Mailman.\))0 1103 y Fo(SMTP)24 b(Callbac)n(k)0
+1306 y Fw(Exim')-5 b(s)26 b(SMTP)h(callback)e(feature)h(is)h(an)f(e)n
+(v)o(en)g(more)f(po)n(werful)g(w)o(ay)h(to)g(detect)h(bogus)e(sender)g
+(addresses)h(than)g(normal)f(sender)0 1405 y(v)o(eri\002cation.)41
+b(Unfortunately)-5 b(,)23 b(lots)k(of)f(serv)o(ers)f(send)g(bounce)g
+(messages)h(with)g(a)g(bogus)f(address)g(in)h(the)g(header)m(,)g(and)f
+(there)h(are)0 1505 y(plenty)e(that)g(send)h(bounces)e(with)h(bogus)g
+(en)m(v)o(elope)e(senders)i(\(e)n(v)o(en)f(though)g(the)o(y')l(re)g
+(supposed)g(to)i(just)g(use)g(an)f(empty)g(en)m(v)o(elope)0
+1605 y(sender)19 b(for)h(bounces\).)0 1751 y(In)25 b(order)f(to)i
+(ensure)f(that)g(Mailman)g(can)h(disable/remo)o(v)o(e)c(bouncing)i
+(addresses,)i(you)e(generally)g(w)o(ant)i(to)g(recei)n(v)o(e)e(bounces)
+g(for)0 1851 y(Mailman)c(lists,)h(e)n(v)o(en)f(if)g(those)g(bounces)f
+(are)i(themselv)o(es)e(not)h(bounceable.)k(Thus,)19 b(you)h(might)f(w)o
+(ant)i(to)f(disable)h(SMTP)f(callback)0 1951 y(on)g(bounce)e(messages.)
+0 2098 y(W)m(ith)i(Exim)g(4,)g(you)f(can)h(accomplish)f(this)i(using)f
 (something)e(lik)o(e)j(the)f(follo)n(wing)f(in)h(your)f
-Fl(RCPT)49 b(TO)20 b Fw(A)m(CL:)326 667 y Fk(#)45 b(Accept)e(bounces)h
+Fl(RCPT)49 b(TO)20 b Fw(A)m(CL:)326 2336 y Fk(#)45 b(Accept)e(bounces)h
 (to)h(lists)f(even)g(if)g(callbacks)f(or)i(other)f(checks)g(would)g
-(fail)326 759 y(warn)223 b(message)268 b(=)45 b
-(X-WhitelistedRCPT-nohdrfromcallback:)39 b(Yes)729 850
-y(condition)178 b(=)45 b(\\)729 941 y(${if)g(and)f
-({{match{$local_part}{\(.)2168 954 y(*)2213 941 y(\)-bounces\\+.)2753
-954 y(*)2798 941 y(})o(})39 b(\\)1178 1033 y({exists)k
-({MAILMAN_HOME/lists/$1/config.pck}}})c(\\)954 1124 y({yes}{no}})326
-1307 y(accept)133 b(condition)178 b(=)45 b(\\)729 1398
-y(${if)g(and)f({{match{$local_part}{\(.)2168 1411 y(*)2213
-1398 y(\)-bounces\\+.)2753 1411 y(*)2798 1398 y(})o(})39
-b(\\)1178 1489 y({exists)k({MAILMAN_HOME/lists/$1/config.pck}}})c(\\)
-954 1581 y({yes}{no}})326 1763 y(#)45 b(Now,)f(check)g(sender)g
-(address)f(with)h(SMTP)g(callback.)326 1855 y(deny)134
-b(!verify)43 b(=)i(sender/callout=90s)0 2141 y Fw(If)20
+(fail)326 2427 y(warn)223 b(message)268 b(=)45 b
+(X-WhitelistedRCPT-nohdrfromcallback:)39 b(Yes)729 2518
+y(condition)178 b(=)45 b(\\)729 2610 y(${if)g(and)f
+({{match{$local_part}{\(.)2168 2623 y(*)2213 2610 y(\)-bounces\\+.)2753
+2623 y(*)2798 2610 y(})o(})39 b(\\)1178 2701 y({exists)k
+({MAILMAN_HOME/lists/$1/config.pck}}})c(\\)954 2792 y({yes}{no}})326
+2975 y(accept)133 b(condition)178 b(=)45 b(\\)729 3066
+y(${if)g(and)f({{match{$local_part}{\(.)2168 3079 y(*)2213
+3066 y(\)-bounces\\+.)2753 3079 y(*)2798 3066 y(})o(})39
+b(\\)1178 3158 y({exists)k({MAILMAN_HOME/lists/$1/config.pck}}})c(\\)
+954 3249 y({yes}{no}})326 3432 y(#)45 b(Now,)f(check)g(sender)g
+(address)f(with)h(SMTP)g(callback.)326 3523 y(deny)134
+b(!verify)43 b(=)i(sender/callout=90s)0 3809 y Fw(If)20
 b(you)f(also)i(do)f(SMTP)g(callbacks)g(on)g(header)f(addresses,)g(you')
 o(ll)h(w)o(ant)g(something)f(lik)o(e)h(this)h(in)f(your)f
-Fl(DATA)h Fw(A)m(CL:)326 2379 y Fk(deny)134 b(!condition)43
+Fl(DATA)h Fw(A)m(CL:)326 4048 y Fk(deny)134 b(!condition)43
 b(=)i($header_X-WhitelistedRCPT-nohdrfromc)o(allbac)o(k:)640
-2471 y(!verify)e(=)i(header_sender/callout=90s)0 2882
+4139 y(!verify)e(=)i(header_sender/callout=90s)0 4550
 y Fo(Doing)24 b(VERP)g(with)g(Exim)f(and)h(Mailman)0
-3085 y Fw(VERP)30 b(will)g(send)e(one)h(email,)i(with)e(a)g(separate)g
+4753 y Fw(VERP)30 b(will)g(send)e(one)h(email,)i(with)e(a)g(separate)g
 (en)m(v)o(elope)e(sender)h(\(return)f(path\),)j(for)f(each)f(of)h(your)
-f(subscribers)g(\226)h(read)g(the)0 3184 y(information)21
+f(subscribers)g(\226)h(read)g(the)0 4853 y(information)21
 b(in)j(`)p Fj($)p Fq(pr)m(e\002x)p Fo(/Mailman/Def)n(aults)o(.p)n(y)p
 Fw(')e(for)h(the)h(options)e(that)i(start)f(with)h(VERP)-9
 b(.)24 b(In)f(a)h(nutshell,)f(all)h(you)f(need)f(to)i(do)0
-3284 y(to)c(enable)g(VERP)h(with)f(Exim)g(is)h(to)f(add)g(these)g
+4952 y(to)c(enable)g(VERP)h(with)f(Exim)g(is)h(to)f(add)g(these)g
 (lines)h(to)f(`)p Fj($)p Fq(pr)m(e\002x)p Fo(/Mailman/mm)p
-2439 3284 25 4 v 31 w(cfg.p)n(y)p Fw(':)416 3522 y Fk
-(VERP_PASSWORD_REMINDERS)41 b(=)j(Yes)416 3614 y
-(VERP_PERSONALIZED_DELIVERIES)c(=)k(Yes)416 3705 y
-(VERP_DELIVERY_INTERVAL)d(=)j(Yes)416 3796 y(VERP_CONFIRMATIONS)d(=)k
-(Yes)0 4083 y Fw(\(The)20 b(director)e(\(router\))h(abo)o(v)o(e)f(is)j
-(smart)g(enough)d(to)i(deal)g(with)h(VERP)g(bounces.\))0
-4351 y Fo(Vir)s(tual)k(Domains)0 4554 y Fw(One)18 b(approach)e(to)j
+2439 4952 25 4 v 31 w(cfg.p)n(y)p Fw(':)p 0 5549 3901
+4 v 0 5649 a Fo(14)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r
+(v)n(er)p eop end
+%%Page: 15 15
+TeXDict begin 15 14 bop 416 174 a Fk(VERP_PASSWORD_REMINDERS)41
+b(=)j(Yes)416 266 y(VERP_PERSONALIZED_DELIVERIES)c(=)k(Yes)416
+357 y(VERP_DELIVERY_INTERVAL)d(=)j(Yes)416 448 y(VERP_CONFIRMATIONS)d
+(=)k(Yes)0 735 y Fw(\(The)20 b(director)e(\(router\))h(abo)o(v)o(e)f
+(is)j(smart)g(enough)d(to)i(deal)g(with)h(VERP)g(bounces.\))0
+1003 y Fo(Vir)s(tual)k(Domains)0 1206 y Fw(One)18 b(approach)e(to)j
 (handling)d(virtual)i(domains)f(is)i(to)g(use)f(a)h(separate)f(Mailman)
 f(installation)h(for)g(each)g(virtual)f(domain.)23 b(Currently)-5
-b(,)0 4654 y(this)21 b(is)g(the)f(only)f(w)o(ay)i(to)f(ha)n(v)o(e)g
+b(,)0 1306 y(this)21 b(is)g(the)f(only)f(w)o(ay)i(to)f(ha)n(v)o(e)g
 (lists)h(with)g(the)f(same)g(name)g(in)g(dif)n(ferent)f(virtual)g
-(domains)g(handled)g(by)h(the)g(same)g(machine.)0 4800
-y(In)i(this)g(case,)h(the)f Fq(MAILMAN)p 919 4800 V 29
-w(HOME)j Fw(and)c Fq(MAILMAN)p 1724 4800 V 30 w(WRAP)h
-Fw(macros)f(are)h(useless)g(\226)g(you)f(can)h(remo)o(v)o(e)e(them.)30
-b(Change)21 b(your)0 4900 y(director)e(\(router\))f(to)j(something)d
-(lik)o(e)j(this:)326 5138 y Fk(require_files)43 b(=)h
-(/virtual/${domain}/mailman/lists/${lc:$l)o(ocal_p)o(art}/c)o(onfig.)o
-(pck)p 0 5549 3901 4 v 0 5649 a Fo(14)2827 b(6)83 b(Set)23
-b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p eop end
-%%Page: 15 15
-TeXDict begin 15 14 bop 0 83 a Fw(and)20 b(change)f(your)f(transport)h
-(lik)o(e)i(this:)326 321 y Fk(command)44 b(=)g
+(domains)g(handled)g(by)h(the)g(same)g(machine.)0 1453
+y(In)i(this)g(case,)h(the)f Fq(MAILMAN)p 919 1453 25
+4 v 29 w(HOME)j Fw(and)c Fq(MAILMAN)p 1724 1453 V 30
+w(WRAP)h Fw(macros)f(are)h(useless)g(\226)g(you)f(can)h(remo)o(v)o(e)e
+(them.)30 b(Change)21 b(your)0 1552 y(director)e(\(router\))f(to)j
+(something)d(lik)o(e)j(this:)326 1790 y Fk(require_files)43
+b(=)h(/virtual/${domain}/mailman/lists/${lc:$l)o(ocal_p)o(art}/c)o
+(onfig.)o(pck)0 2077 y Fw(and)20 b(change)f(your)f(transport)h(lik)o(e)
+i(this:)326 2315 y Fk(command)44 b(=)g
 (/virtual/${domain}/mailman/mail/mailman)38 b(\\)774
-413 y(${if)44 b(def:local_part_suffix)e(\\)998 504 y
-({${sg{$local_part_suffix}{-\(\\\\w+\)\(\\\\+.)2708 517
-y(*)2753 504 y(\)?)o(}{\\$1})o(}})998 595 y({post}})i(\\)864
-687 y($local_part)326 778 y(current_directory)e(=)j
-(/virtual/${domain}/mailman)326 869 y(home_directory)d(=)j
-(/virtual/${domain}/mailman)0 1281 y Fo(List)23 b(V)-7
-b(er)q(i\002cation)0 1484 y Fw(This)33 b(is)g(ho)n(w)f(a)h(set)g(of)f
+2406 y(${if)44 b(def:local_part_suffix)e(\\)998 2498
+y({${sg{$local_part_suffix}{-\(\\\\w+\)\(\\\\+.)2708
+2511 y(*)2753 2498 y(\)?)o(}{\\$1})o(}})998 2589 y({post}})i(\\)864
+2680 y($local_part)326 2772 y(current_directory)e(=)j
+(/virtual/${domain}/mailman)326 2863 y(home_directory)d(=)j
+(/virtual/${domain}/mailman)0 3275 y Fo(List)23 b(V)-7
+b(er)q(i\002cation)0 3478 y Fw(This)33 b(is)g(ho)n(w)f(a)h(set)g(of)f
 (address)g(tests)i(for)e(the)h(Exim)e(lists)j(look)e(on)g(a)h(w)o
 (orking)e(system.)62 b(The)32 b(list)i(in)e(question)g(is)h
-Fv(quixote-)0 1584 y(users at mems-e)n(xchange)o(.org)p
+Fv(quixote-)0 3577 y(users at mems-e)n(xchange)o(.org)p
 Fw(,)21 b(and)i(these)g(commands)f(were)h(run)g(on)g(the)h
 Fl(mems-exchange.org)c Fw(mail)k(serv)o(er)f(\(\224\045)g(\224)h(indi-)
-0 1683 y(cates)d(the)f(Unix)g(shell)g(prompt\):)326 1921
-y Fk(\045)45 b(exim)f(-bt)g(quixote-users)326 2013 y
-(quixote-users at mems-exchange.org)416 2104 y(router)f(=)i
+0 3677 y(cates)d(the)f(Unix)g(shell)g(prompt\):)326 3915
+y Fk(\045)45 b(exim)f(-bt)g(quixote-users)326 4007 y
+(quixote-users at mems-exchange.org)416 4098 y(router)f(=)i
 (mailman_main_router,)d(transport)h(=)h(mailman_transport)326
-2287 y(\045)h(exim)f(-bt)g(quixote-users-request)326
-2378 y(quixote-users-request at mems-exchange.or)o(g)416
-2469 y(router)f(=)i(mailman_router,)d(transport)i(=)g
-(mailman_transport)326 2652 y(\045)h(exim)f(-bt)g
-(quixote-users-bounces)326 2743 y
-(quixote-users-bounces at mems-exchange.or)o(g)416 2835
+4281 y(\045)h(exim)f(-bt)g(quixote-users-request)326
+4372 y(quixote-users-request at mems-exchange.or)o(g)416
+4463 y(router)f(=)i(mailman_router,)d(transport)i(=)g
+(mailman_transport)326 4646 y(\045)h(exim)f(-bt)g
+(quixote-users-bounces)326 4737 y
+(quixote-users-bounces at mems-exchange.or)o(g)416 4829
 y(router)f(=)i(mailman_router,)d(transport)i(=)g(mailman_transport)326
-3017 y(\045)h(exim)f(-bt)g(quixote-users-bounces+luser=example.com)326
-3109 y(quixote-users-bounces+luser=example.co)o(m at mems)o(-excha)o
-(nge.or)o(g)416 3200 y(router)f(=)i(mailman_router,)d(transport)i(=)g
-(mailman_transport)0 3487 y Fw(If)21 b(your)e Fr(exim)i(-bt)g
+5011 y(\045)h(exim)f(-bt)g(quixote-users-bounces+luser=example.com)326
+5103 y(quixote-users-bounces+luser=example.co)o(m at mems)o(-excha)o
+(nge.or)o(g)416 5194 y(router)f(=)i(mailman_router,)d(transport)i(=)g
+(mailman_transport)p 0 5549 3901 4 v 0 5649 a Fo(6.2)83
+b(Using)24 b(the)f(Exim)h(mail)g(ser)r(v)n(er)2621 b(15)p
+eop end
+%%Page: 16 16
+TeXDict begin 16 15 bop 0 83 a Fw(If)21 b(your)e Fr(exim)i(-bt)g
 Fw(output)f(looks)g(something)f(lik)o(e)i(this,)h(that')-5
 b(s)21 b(a)g(start:)27 b(at)22 b(least)f(it)h(means)e(Exim)g(will)i
-(pass)f(the)g(right)f(messages)h(to)0 3587 y(the)d(right)f(Mailman)g
+(pass)f(the)g(right)f(messages)h(to)0 183 y(the)d(right)f(Mailman)g
 (commands.)22 b(It)c(by)f(no)h(means)f(guarantees)f(that)i(your)f
 (Exim/Mailman)f(installation)h(is)i(functioning)c(perfectly)-5
-b(,)0 3686 y(though!)0 3955 y Fo(Document)23 b(Histor)r(y)0
-4158 y Fw(Originally)j(written)g(by)h(Nigel)g(Metheringham)d
+b(,)0 282 y(though!)0 551 y Fo(Document)23 b(Histor)r(y)0
+753 y Fw(Originally)j(written)g(by)h(Nigel)g(Metheringham)d
 Fv(postmaster at e)n(xim.org)p Fw(.)42 b(Updated)26 b(by)g(Marc)h(Merlin)f
-Fv(marc)p 3311 4158 23 4 v 27 w(soft at mer)q(lins)o(.org)0
-4257 y Fw(for)20 b(Mailman)f(2.1,)g(Exim)h(4.)25 b(Ov)o
+Fv(marc)p 3311 753 23 4 v 27 w(soft at mer)q(lins)o(.org)0
+853 y Fw(for)20 b(Mailman)f(2.1,)g(Exim)h(4.)25 b(Ov)o
 (erhauled/reformatted/clari\002ed/simp)o(li\002ed)15
 b(by)k(Gre)o(g)h(W)-7 b(ard)20 b Fv(gw)o(ard at p)n(ython.net)p
-Fw(.)p 0 5549 3901 4 v 0 5649 a Fo(6.2)83 b(Using)24
-b(the)f(Exim)h(mail)g(ser)r(v)n(er)2621 b(15)p eop end
-%%Page: 16 16
-TeXDict begin 16 15 bop 0 83 a Fn(6.3)100 b(Using)28
-b(the)h(Sendmail)h(mail)e(ser)s(v)n(er)p 0 233 3901 17
-v 0 1077 17 844 v 75 349 a Fr(W)-5 b(ar)o(ning:)107 b
-Fw(Y)-9 b(ou)34 b(may)g(be)g(tempted)g(to)h(set)g(the)g
-Fq(DELIVER)o(Y)p 2038 349 25 4 v 28 w(MODULE)i Fw(con\002guration)32
-b(v)n(ariable)h(in)i(`)p Fv(mm)p 3478 349 23 4 v 27 w(cfg.p)n(y)p
-Fw(')f(to)75 448 y Fl('Sendmail')c Fw(when)h(using)g(the)h(Sendmail)f
-(mail)g(serv)o(er)-5 b(.)59 b Fr(Don't)p Fw(.)g(The)31
-b(`)p Fv(Sendmail.p)n(y)p Fw(')e(module)h(is)j(misnamed)d(\226)i(it')-5
-b(s)75 548 y(really)20 b(a)i(command)d(line)i(based)g(message)g(handof)
-n(f)e(scheme)i(as)h(opposed)d(to)i(the)g(SMTP)h(scheme)f(used)g(in)g(`)
-p Fv(SMTPDirect.p)n(y)p Fw(')75 648 y(\(the)27 b(def)o(ault\).)45
+Fw(.)0 1138 y Fn(6.3)100 b(Using)28 b(the)h(Sendmail)h(mail)e(ser)s(v)n
+(er)p 0 1288 3901 17 v 0 2131 17 844 v 75 1404 a Fr(W)-5
+b(ar)o(ning:)107 b Fw(Y)-9 b(ou)34 b(may)g(be)g(tempted)g(to)h(set)g
+(the)g Fq(DELIVER)o(Y)p 2038 1404 25 4 v 28 w(MODULE)i
+Fw(con\002guration)32 b(v)n(ariable)h(in)i(`)p Fv(mm)p
+3478 1404 23 4 v 27 w(cfg.p)n(y)p Fw(')f(to)75 1503 y
+Fl('Sendmail')c Fw(when)h(using)g(the)h(Sendmail)f(mail)g(serv)o(er)-5
+b(.)59 b Fr(Don't)p Fw(.)g(The)31 b(`)p Fv(Sendmail.p)n(y)p
+Fw(')e(module)h(is)j(misnamed)d(\226)i(it')-5 b(s)75
+1603 y(really)20 b(a)i(command)d(line)i(based)g(message)g(handof)n(f)e
+(scheme)i(as)h(opposed)d(to)i(the)g(SMTP)h(scheme)f(used)g(in)g(`)p
+Fv(SMTPDirect.p)n(y)p Fw(')75 1703 y(\(the)27 b(def)o(ault\).)45
 b(`)p Fv(Sendmail.p)n(y)p Fw(')24 b(has)k(kno)n(wn)e(security)h(holes)g
 (and)g(is)h(pro)o(vided)d(as)j(a)g(proof-of-concept)22
-b(only)3388 617 y Fc(a)3420 648 y Fw(.)47 b(If)27 b(you)g(are)75
-747 y(ha)n(ving)c(problems)f(using)i(`)p Fv(SMTPDirect.p)n(y)p
+b(only)3388 1672 y Fc(a)3420 1703 y Fw(.)47 b(If)27 b(you)g(are)75
+1802 y(ha)n(ving)c(problems)f(using)i(`)p Fv(SMTPDirect.p)n(y)p
 Fw(')d(\002x)k(those)e(instead)h(of)g(using)f(`)p Fv(Sendmail.p)n(y)p
-Fw(',)f(or)h(you)h(may)f(open)g(your)g(system)75 847
-y(up)c(to)i(security)e(e)o(xploits.)p 75 918 1501 4 v
-165 971 a Fb(a)194 995 y Fp(In)e(f)o(act,)h(in)g(later)g(v)o(ersions)g
-(of)f(Mailman,)h(this)g(module)g(is)e(e)o(xplicitly)21
+Fw(',)f(or)h(you)h(may)f(open)g(your)g(system)75 1902
+y(up)c(to)i(security)e(e)o(xploits.)p 75 1973 1501 4
+v 165 2026 a Fb(a)194 2050 y Fp(In)e(f)o(act,)h(in)g(later)g(v)o
+(ersions)g(of)f(Mailman,)h(this)g(module)g(is)e(e)o(xplicitly)21
 b(sabotaged.)i(Y)-7 b(ou)16 b(ha)o(v)o(e)i(to)f(kno)n(w)h(what)g(you')m
 (re)f(doing)h(in)f(order)h(to)g(re-enable)h(it.)p 3883
-1077 17 844 v 0 1093 3901 17 v 0 1367 a Fo(Sendmail)25
-b(\223smrsh\224)c(compatibility)0 1570 y Fw(Man)o(y)16
+2131 17 844 v 0 2148 3901 17 v 0 2425 a Fo(Sendmail)25
+b(\223smrsh\224)c(compatibility)0 2628 y Fw(Man)o(y)16
 b(ne)n(wer)h(v)o(ersions)f(of)h(Sendmail)g(come)g(with)g(a)h
 (restricted)f(e)o(x)o(ecution)e(utility)i(called)h(\223smrsh\224,)f
-(which)g(limits)h(the)f(e)o(x)o(ecutables)0 1670 y(that)j(Sendmail)g
+(which)g(limits)h(the)f(e)o(x)o(ecutables)0 2727 y(that)j(Sendmail)g
 (will)h(allo)n(w)f(to)h(be)f(used)g(as)h(mail)g(programs.)i(Y)-9
 b(ou)20 b(need)g(to)g(e)o(xplicitly)g(allo)n(w)g(Mailman')-5
-b(s)20 b(wrapper)f(program)f(to)j(be)0 1770 y(used)f(with)g(smrsh)h(or)
+b(s)20 b(wrapper)f(program)f(to)j(be)0 2827 y(used)f(with)g(smrsh)h(or)
 f(Mailman)f(will)i(not)f(w)o(ork.)25 b(If)20 b(mail)g(is)i(not)d
 (getting)h(deli)n(v)o(ered)e(to)j(Mailman')-5 b(s)20
-b(wrapper)f(program)f(and)h(you')l(re)0 1869 y(getting)g(an)i
+b(wrapper)f(program)f(and)h(you')l(re)0 2926 y(getting)g(an)i
 (\223operating)d(system)i(error\224)f(in)h(your)f(mail)i(syslog,)e
-(this)i(could)e(be)h(your)f(problem.)0 2016 y(One)h(good)f(w)o(ay)h(of)
-g(enabling)f(this)h(is:)125 2234 y Fd(\017)41 b Fw(Find)20
+(this)i(could)e(be)h(your)f(problem.)0 3073 y(One)h(good)f(w)o(ay)h(of)
+g(enabling)f(this)h(is:)125 3303 y Fd(\017)41 b Fw(Find)20
 b(out)f(where)h(your)f(Sendmail)g(e)o(x)o(ecutes)g(its)j(smrsh)e
-(wrapper)982 2456 y Fk(\045)44 b(grep)h(smrsh)f(/etc/mail/sendmail.cf)
-125 2848 y Fd(\017)d Fw(Figure)21 b(out)h(where)f(smrsh)h(e)o(xpects)f
+(wrapper)982 3527 y Fk(\045)44 b(grep)h(smrsh)f(/etc/mail/sendmail.cf)
+125 3924 y Fd(\017)d Fw(Figure)21 b(out)h(where)f(smrsh)h(e)o(xpects)f
 (symlinks)g(for)h(allo)n(w)o(able)f(mail)h(programs.)29
 b(At)22 b(the)g(v)o(ery)f(be)o(ginning)f(of)h(the)h(follo)n(wing)208
-2947 y(output)d(you)g(will)i(see)g(a)f(full)g(path)g(to)g(some)g
+4024 y(output)d(you)g(will)i(see)g(a)f(full)g(path)g(to)g(some)g
 (directory)-5 b(,)18 b(e.g.)25 b(`)p Fv(/v)n(ar/adm/sm.bin)p
-Fw(')17 b(or)j(similar:)982 3169 y Fk(\045)44 b(strings)g
-($path_to_smrsh)f(|)h(less)125 3561 y Fd(\017)d Fw(cd)20
+Fw(')17 b(or)j(similar:)982 4248 y Fk(\045)44 b(strings)g
+($path_to_smrsh)f(|)h(less)125 4645 y Fd(\017)d Fw(cd)20
 b(into)g(`)p Fv(/v)n(ar/adm/sm.bin)p Fw(',)e(or)i(where)f(e)n(v)o(er)h
 (it)h(happens)e(to)h(reside)h(on)f(your)f(system)h(\226)h(alternati)n
-(v)o(es)e(include)g(`)p Fv(/etc/smrsh)p Fw(',)208 3661
+(v)o(es)e(include)g(`)p Fv(/etc/smrsh)p Fw(',)208 4745
 y(`)p Fv(/v)n(ar/smrsh)p Fw(')g(and)h(`)p Fv(/usr/local/smrsh)p
-Fw('.)982 3882 y Fk(\045)44 b(cd)h(/var/adm/sm.bin)125
-4275 y Fd(\017)c Fw(Create)20 b(a)h(symbolic)e(link)h(to)g(Mailman')-5
-b(s)20 b(wrapper)f(program:)982 4496 y Fk(\045)44 b(ln)h(-s)f
-(/usr/local/mailman/mail/mailman)c(mailman)0 4998 y Fo(Integ)o(r)o
-(ating)25 b(Sendmail)g(and)e(Mailman)0 5201 y Fw(Da)n(vid)k(Champion)f
-(has)i(contrib)n(uted)d(a)j(recipe)e(for)h(more)g(closely)g(inte)o
-(grating)e(Sendmail)i(and)g(Mailman,)h(such)f(that)g(Sendmail)0
-5300 y(will)20 b(automatically)e(recognize)g(and)h(deli)n(v)o(er)f(to)h
-(ne)n(w)h(mailing)e(lists)j(as)f(the)o(y)f(are)g(created,)g(without)f
-(ha)n(ving)h(to)g(manually)f(edit)i(alias)0 5400 y(tables.)p
+Fw('.)982 4969 y Fk(\045)44 b(cd)h(/var/adm/sm.bin)p
 0 5549 3901 4 v 0 5649 a Fo(16)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f
 (mail)h(ser)r(v)n(er)p eop end
 %%Page: 17 17
-TeXDict begin 17 16 bop 0 83 a Fw(In)20 b(the)g(`)p Fv(contr)q(ib)p
+TeXDict begin 17 16 bop 125 83 a Fd(\017)41 b Fw(Create)20
+b(a)h(symbolic)e(link)h(to)g(Mailman')-5 b(s)20 b(wrapper)f(program:)
+982 307 y Fk(\045)44 b(ln)h(-s)f(/usr/local/mailman/mail/mailman)c
+(mailman)0 811 y Fo(Integ)o(r)o(ating)25 b(Sendmail)g(and)e(Mailman)0
+1014 y Fw(Da)n(vid)k(Champion)f(has)i(contrib)n(uted)d(a)j(recipe)e
+(for)h(more)g(closely)g(inte)o(grating)e(Sendmail)i(and)g(Mailman,)h
+(such)f(that)g(Sendmail)0 1113 y(will)20 b(automatically)e(recognize)g
+(and)h(deli)n(v)o(er)f(to)h(ne)n(w)h(mailing)e(lists)j(as)f(the)o(y)f
+(are)g(created,)g(without)f(ha)n(ving)h(to)g(manually)f(edit)i(alias)0
+1213 y(tables.)0 1360 y(In)g(the)g(`)p Fv(contr)q(ib)p
 Fw(')f(directory)f(of)i(Mailman')-5 b(s)20 b(source)f(distrib)n(ution,)
-g(you)g(will)i(\002nd)f(four)f(\002les:)125 311 y Fd(\017)41
+g(you)g(will)i(\002nd)f(four)f(\002les:)125 1589 y Fd(\017)41
 b Fw(`)p Fv(mm-handler)l(.readme)p Fw(')15 b(-)21 b(an)f(e)o
 (xplanation)e(of)i(ho)n(w)f(to)i(set)g(e)n(v)o(erything)c(up)125
-476 y Fd(\017)41 b Fw(`)p Fv(mm-handler)p Fw(')17 b(-)k(the)f(mail)g
-(deli)n(v)o(ery)f(agent)g(\(MD)m(A\))125 642 y Fd(\017)41
+1755 y Fd(\017)41 b Fw(`)p Fv(mm-handler)p Fw(')17 b(-)k(the)f(mail)g
+(deli)n(v)o(ery)f(agent)g(\(MD)m(A\))125 1921 y Fd(\017)41
 b Fw(`)p Fv(mailman.mc)p Fw(')18 b(-)j(a)f(to)o(y)g(con\002guration)e
-(\002le)j(sample)125 807 y Fd(\017)41 b Fw(`)p Fv(vir)s(tuser)s(tab)o
+(\002le)j(sample)125 2087 y Fd(\017)41 b Fw(`)p Fv(vir)s(tuser)s(tab)o
 (le)p Fw(')16 b(-)k(a)h(sample)f(for)g(RFC)h(2142)e(address)h(e)o
-(xceptions)0 1075 y Fo(P)l(erf)n(or)r(mance)j(notes)0
-1278 y Fw(One)f(of)f(the)h(surest)h(performance)c(killers)j(for)f
+(xceptions)0 2355 y Fo(P)l(erf)n(or)r(mance)j(notes)0
+2558 y Fw(One)f(of)f(the)h(surest)h(performance)c(killers)j(for)f
 (Sendmail)g(users)h(is)h(when)f(Sendmail)f(is)i(con\002gured)c(to)j
-(synchronously)d(v)o(erify)i(the)0 1378 y(recipient')-5
+(synchronously)d(v)o(erify)i(the)0 2658 y(recipient')-5
 b(s)24 b(host)g(via)h(DNS.)f(If)h(it)g(does)f(this)h(for)f(messages)g
 (posted)g(to)h(it)g(from)e(Mailman,)i(you)e(will)i(get)g(horrible)e
-(performance.)0 1477 y(Since)f(Mailman)f(usually)g(connects)f(via)i
+(performance.)0 2757 y(Since)f(Mailman)f(usually)g(connects)f(via)i
 Fl(localhost)e Fw(\(i.e.)29 b(127.0.0.1\))18 b(to)k(the)g(SMTP)g(port)f
-(of)g(Sendmail,)g(you)g(should)f(be)i(sure)0 1577 y(to)e(con\002gure)f
+(of)g(Sendmail,)g(you)g(should)f(be)i(sure)0 2857 y(to)e(con\002gure)f
 (Sendmail)g(to)h Fr(not)g Fw(do)g(DNS)h(v)o(eri\002cation)e
-(synchronously)e(for)i(localhost)h(connections.)0 1861
+(synchronously)e(for)i(localhost)h(connections.)0 3142
 y Fn(6.4)100 b(Using)28 b(the)h(Qmail)e(mail)i(ser)s(v)n(er)0
-2064 y Fw(There)18 b(are)i(some)f(issues)h(that)f(users)h(of)f(the)g
+3345 y Fw(There)18 b(are)i(some)f(issues)h(that)f(users)h(of)f(the)g
 (qmail)g(mail)g(transport)f(agent)h(ha)n(v)o(e)g(encountered.)j(None)c
-(of)h(the)g(core)g(maintainers)f(use)0 2164 y(qmail,)23
+(of)h(the)g(core)g(maintainers)f(use)0 3444 y(qmail,)23
 b(so)h(all)f(of)g(this)h(information)c(has)j(been)g(contrib)n(uted)e
 (by)h(the)i(Mailman)e(user)h(community)-5 b(,)21 b(especially)h(Martin)
-h(Preishuber)0 2264 y(and)d(Christian)g(T)m(ismer)m(,)f(with)i(notes)f
+h(Preishuber)0 3544 y(and)d(Christian)g(T)m(ismer)m(,)f(with)i(notes)f
 (by)f(Balazs)j(Nagy)d(\(BN\))i(and)e(Norbert)g(Bollo)n(w)h(\(NB\).)125
-2492 y Fd(\017)41 b Fw(Y)-9 b(ou)17 b(might)h(need)f(to)i(set)g(the)f
+3773 y Fd(\017)41 b Fw(Y)-9 b(ou)17 b(might)h(need)f(to)i(set)g(the)f
 (mail-gid)f(user)h(to)g(either)g Fl(qmail)p Fw(,)g Fl(mailman)p
 Fw(,)g(or)g Fl(nofiles)f Fw(by)h(using)g(the)g Fr(--with-mail-gid)208
-2591 y(con\002gur)o(e)h Fw(option.)208 2724 y Fq(BN:)i
+3873 y(con\002gur)o(e)h Fw(option.)208 4006 y Fq(BN:)i
 Fw(it)h(highly)e(depends)g(on)h(your)e(mail)j(storing)e(polic)o(y)-5
 b(.)27 b(F)o(or)20 b(e)o(xample)g(if)i(you)e(use)h(the)h(simple)f(`)p
 Fv(\230alias/.qmail-*)p Fw(')c(\002les,)22 b(you)208
-2823 y(can)e(use)g Fr(`id)h(-g)f(alias`)p Fw(.)k(But)d(if)f(you)g(use)g
+4105 y(can)e(use)g Fr(`id)h(-g)f(alias`)p Fw(.)k(But)d(if)f(you)g(use)g
 (`)p Fv(/v)n(ar/qmail/users)p Fw(',)d(the)j(speci\002ed)g(mail)h(gid)f
-(can)g(be)g(used.)208 2956 y(If)27 b(you)g(are)g(going)g(to)h(be)f
+(can)g(be)g(used.)208 4238 y(If)27 b(you)g(are)g(going)g(to)h(be)f
 (directing)g(virtual)g(domains)f(directly)h(to)h(the)g
 Fl(mailman)e Fw(user)i(\(using)f(\223virtualdomains\224)e(on)i(a)208
-3056 y(list-only)h(domain,)i(for)f(e)o(xample\),)h(you)e(will)i(ha)n(v)
+4338 y(list-only)h(domain,)i(for)f(e)o(xample\),)h(you)e(will)i(ha)n(v)
 o(e)f(to)h(use)f Fr(--with-mail-gid)p Fw(=)p Fq(gid)e(of)i(mailman)g
-(user')m(s)g(gr)l(oup)p Fw(.)52 b(This)30 b(is)208 3155
+(user')m(s)g(gr)l(oup)p Fw(.)52 b(This)30 b(is)208 4437
 y(incompatible)18 b(with)i(ha)n(ving)f(list)j(aliases)f(in)f(`)p
 Fv(\230alias)p Fw(',)e(unless)j(that)f(alias)h(simply)f(forw)o(ards)f
-(to)h Fl(mailman-listname)3794 3170 y(*)3844 3155 y Fw(.)125
-3321 y Fd(\017)41 b Fw(If)26 b(there)g(is)h(a)g(user)f
+(to)h Fl(mailman-listname)3794 4452 y(*)3844 4437 y Fw(.)125
+4603 y Fd(\017)41 b Fw(If)26 b(there)g(is)h(a)g(user)f
 Fl(mailman)f Fw(on)h(your)f(system,)j(the)f(alias)g Fl(mailman-owner)d
 Fw(will)j(w)o(ork)f(only)f(in)i(`)p Fv(\230mailman)p
-Fw('.)41 b(Y)-9 b(ou)208 3420 y(ha)n(v)o(e)19 b(to)h(do)g(a)h
+Fw('.)41 b(Y)-9 b(ou)208 4703 y(ha)n(v)o(e)19 b(to)h(do)g(a)h
 Fr(touch)f(.qmail-o)o(wner)g Fw(in)g(`)p Fv(\230mailman)p
-Fw(')e(directory)h(to)h(create)g(this)h(alias.)208 3553
+Fw(')e(directory)h(to)h(create)g(this)h(alias.)208 4836
 y Fq(NB:)26 b Fw(An)f(alternati)n(v)o(e,)h(IMHO)g(better)f(solution)g
 (is)h(to)g Fr(cho)o(wn)g(r)o(oot)f(\230mailman)p Fw(,)i(that)e(will)i
-(stop)f(qmail)f(from)g(considering)208 3652 y Fl(mailman)19
+(stop)f(qmail)f(from)g(considering)208 4935 y Fl(mailman)19
 b Fw(to)h(be)g(a)h(user)f(to)h(whom)e(mail)h(can)g(be)g(deli)n(v)o
 (ered.)j(\(See)e(\223man)e(8)i(qmail-getpw\224.\))125
-3818 y Fd(\017)41 b Fw(In)18 b(a)h(related)f(issue,)h(if)g(you)e(ha)n
+5101 y Fd(\017)41 b Fw(In)18 b(a)h(related)f(issue,)h(if)g(you)e(ha)n
 (v)o(e)h(an)o(y)g(users)h(with)f(the)h(same)g(name)f(as)h(one)f(of)g
 (your)f(mailing)h(lists,)i(you)e(will)h(ha)n(v)o(e)f(problems)208
-3917 y(if)30 b(list)i(names)e(contain)f(`)p Fl(-)p Fw(')h(in)g(them.)55
+5201 y(if)30 b(list)i(names)e(contain)f(`)p Fl(-)p Fw(')h(in)g(them.)55
 b(Putting)30 b(`)p Fv(.qmail)p Fw(')f(redirections)f(into)j(the)f
 (user')-5 b(s)30 b(home)g(directory)e(doesn')o(t)h(w)o(ork)208
-4017 y(because)22 b(the)g(Mailman)g(wrappers)g(will)h(not)g(get)g(spa)o
+5300 y(because)22 b(the)g(Mailman)g(wrappers)g(will)h(not)g(get)g(spa)o
 (wned)e(with)i(the)g(proper)e(GID.)h(The)h(solution)f(is)h(to)g(put)f
-(the)h(follo)n(wing)208 4116 y(lines)d(in)g(the)h(`)p
-Fv(/v)n(ar/qmail/users/assign)p Fw(')16 b(\002le:)533
-4340 y Fk(+zope-:alias:112:11:/var/qmail/alias:-:zop)o(e-:)533
-4432 y(.)208 4704 y Fw(where)j(in)h(this)h(case)g(the)f(listname)g(is)h
-(e.g.)k Fl(zope-users)p Fw(.)208 4836 y Fq(NB:)g Fw(Alternati)n(v)o
+(the)h(follo)n(wing)208 5400 y(lines)d(in)g(the)h(`)p
+Fv(/v)n(ar/qmail/users/assign)p Fw(')16 b(\002le:)p 0
+5549 3901 4 v 0 5649 a Fo(6.4)83 b(Using)24 b(the)f(Qmail)h(mail)g(ser)
+r(v)n(er)2589 b(17)p eop end
+%%Page: 18 18
+TeXDict begin 18 17 bop 533 174 a Fk
+(+zope-:alias:112:11:/var/qmail/alias:-:zop)o(e-:)533
+266 y(.)208 538 y Fw(where)19 b(in)h(this)h(case)g(the)f(listname)g(is)
+h(e.g.)k Fl(zope-users)p Fw(.)208 671 y Fq(NB:)g Fw(Alternati)n(v)o
 (ely)-5 b(,)24 b(you)g(could)g(host)h(the)g(lists)h(on)f(a)g(virtual)f
 (domain,)h(and)f(use)h(the)g(`)p Fv(/v)n(ar/qmail/control/vir)s(tualdo)
-o(mai)o(ns)p Fw(')208 4936 y(\002le)20 b(to)h(put)f(the)g
+o(mai)o(ns)p Fw(')208 771 y(\002le)20 b(to)h(put)f(the)g
 Fl(mailman)f Fw(user)h(in)h(char)o(ge)d(of)i(this)h(virtual)e(domain.)
-125 5101 y Fd(\017)41 b Fq(BN:)p Fw(If)32 b(inbound)e(messages)j(are)f
+125 937 y Fd(\017)41 b Fq(BN:)p Fw(If)32 b(inbound)e(messages)j(are)f
 (deli)n(v)o(ered)f(by)h(another)g(user)g(than)g Fl(mailman)p
 Fw(,)j(it')-5 b(s)34 b(necessary)e(to)g(allo)n(w)h(it)g(to)g(access)208
-5201 y(`)p Fv(\230mailman)p Fw('.)26 b(Be)d(sure)e(that)g(`)p
+1036 y(`)p Fv(\230mailman)p Fw('.)26 b(Be)d(sure)e(that)g(`)p
 Fv(\230mailman)p Fw(')f(has)i(group)d(writing)i(access)h(and)f(setgid)h
 (bit)f(is)i(set.)29 b(Then)21 b(put)g(the)g(deli)n(v)o(ering)f(user)208
-5300 y(to)f Fl(mailman)f Fw(group,)f(and)i(you)f(can)h(den)o(y)f
+1136 y(to)f Fl(mailman)f Fw(group,)f(and)i(you)f(can)h(den)o(y)f
 (access)i(to)f(`)p Fv(\230mailman)p Fw(')e(to)i(others.)24
 b(Be)c(sure)f(that)g(you)f(can)h(do)g(the)g(same)g(with)h(the)208
-5400 y(WWW)h(service.)p 0 5549 3901 4 v 0 5649 a Fo(6.4)83
-b(Using)24 b(the)f(Qmail)h(mail)g(ser)r(v)n(er)2589 b(17)p
-eop end
-%%Page: 18 18
-TeXDict begin 18 17 bop 208 83 a Fw(By)50 b(the)g(w)o(ay)g(the)g(best)g
+1236 y(WWW)h(service.)208 1368 y(By)50 b(the)g(w)o(ay)g(the)g(best)g
 (thing)f(is)i(to)f(mak)o(e)f(a)i(virtual)e(mail)h(serv)o(er)f(to)h
 (handle)f(all)h(of)g(the)g(mail.)114 b Fq(NB:)50 b Fw(E.g.)208
-183 y(mak)o(e)c(an)h(additional)f(\224A\224)h(DNS)h(record)d(for)i(the)
-g(virtual)f(mailserv)o(er)g(pointing)g(to)h(your)f(IP)h(address,)53
-b(add)47 b(the)208 282 y(line)54 b Fl(lists.kva.hu:mailman)c
+1468 y(mak)o(e)c(an)h(additional)f(\224A\224)h(DNS)h(record)d(for)i
+(the)g(virtual)f(mailserv)o(er)g(pointing)g(to)h(your)f(IP)h(address,)
+53 b(add)47 b(the)208 1568 y(line)54 b Fl(lists.kva.hu:mailman)c
 Fw(to)k(`)p Fv(/v)n(ar/qmail/control/vir)s(tualdo)o(mai)o(ns)p
 Fw(')48 b(and)54 b(a)g Fl(lists.kva.hu)e Fw(line)i(to)208
-382 y(`)p Fv(/v)n(ar/qmail/control/rcpthosts)p Fw(')16
+1667 y(`)p Fv(/v)n(ar/qmail/control/rcpthosts)p Fw(')16
 b(\002le.)32 b(Don')o(t)21 b(for)o(get)f(to)j(HUP)g(the)f(qmail-send)f
 (after)g(modifying)f(\223virtualdomains\224.)28 b(Then)208
-482 y(e)n(v)o(ery)18 b(mail)j(to)f(lists.kv)n(a.hu)f(will)i(arri)n(v)o
+1767 y(e)n(v)o(ery)18 b(mail)j(to)f(lists.kv)n(a.hu)f(will)i(arri)n(v)o
 (e)e(to)h(mail.kv)n(a.hu')-5 b(s)18 b(mailman)i(user)-5
-b(.)208 614 y(Then)19 b(mak)o(e)h(your)f(aliases:)892
-839 y Fk(.qmail)627 b(=>)44 b(mailman at ...'s)f(letters)892
-930 y(.qmail-owner)357 b(=>)44 b(mailman-owner's)f(letters)208
-1202 y Fw(F)o(or)19 b(list)j(aliases,)f(you)e(can)h(either)g(create)g
-(them)f(manually:)892 1426 y Fk(.qmail-list)402 b(=>)44
-b(posts)g(to)h(the)f('list')g(list)892 1518 y(.qmail-list-admin)132
-b(=>)44 b(posts)g(to)h(the)f('list's)g(owner)892 1609
+b(.)208 1900 y(Then)19 b(mak)o(e)h(your)f(aliases:)892
+2124 y Fk(.qmail)627 b(=>)44 b(mailman at ...'s)f(letters)892
+2215 y(.qmail-owner)357 b(=>)44 b(mailman-owner's)f(letters)208
+2488 y Fw(F)o(or)19 b(list)j(aliases,)f(you)e(can)h(either)g(create)g
+(them)f(manually:)892 2712 y Fk(.qmail-list)402 b(=>)44
+b(posts)g(to)h(the)f('list')g(list)892 2803 y(.qmail-list-admin)132
+b(=>)44 b(posts)g(to)h(the)f('list's)g(owner)892 2894
 y(.qmail-list-request)e(=>)i(requests)g(to)g('list')892
-1700 y(etc)208 1973 y Fw(or)c(for)h(automatic)f(list)i(alias)g
+2986 y(etc)208 3258 y Fw(or)c(for)h(automatic)f(list)i(alias)g
 (handling)e(\(when)g(using)g(the)i(lists.kv)n(a.hu)d(virtual)i(as)h
 (abo)o(v)o(e\),)i(see)e(`)p Fv(contr)q(ib/qmail-to-)208
-2073 y(mailman.p)n(y)p Fw(')18 b(in)i(the)g(Mailman)g(source)f(distrib)
+3358 y(mailman.p)n(y)p Fw(')18 b(in)i(the)g(Mailman)g(source)f(distrib)
 n(ution.)24 b(Modify)19 b(the)h(`)p Fv(\230mailman/.qmail-def)n(au)o
-(lt)p Fw(')14 b(to)21 b(include:)892 2297 y Fk(|preline)44
+(lt)p Fw(')14 b(to)21 b(include:)892 3582 y Fk(|preline)44
 b(/path/to/python)e(/path/to/qmail-to-mailman.py)208
-2569 y Fw(and)19 b(ne)n(w)h(lists)i(will)f(automatically)d(be)j(pick)o
-(ed)e(up.)125 2735 y Fd(\017)41 b Fw(Y)-9 b(ou)21 b(ha)n(v)o(e)h(to)g
+3855 y Fw(and)19 b(ne)n(w)h(lists)i(will)f(automatically)d(be)j(pick)o
+(ed)e(up.)125 4021 y Fd(\017)41 b Fw(Y)-9 b(ou)21 b(ha)n(v)o(e)h(to)g
 (mak)o(e)g(sure)g(that)g(the)g(localhost)g(can)g(relay)-5
 b(.)30 b(If)22 b(you)f(start)i(qmail)f(via)g(inetd)g(and)f(tcpen)m(v)-5
-b(,)21 b(you)g(need)g(some)h(line)208 2835 y(the)e(follo)n(wing)e(in)j
+b(,)21 b(you)g(need)g(some)h(line)208 4120 y(the)e(follo)n(wing)e(in)j
 (your)e(`)p Fv(/etc/hosts)o(.allo)o(w)p Fw(')d(\002le:)713
-3059 y Fk(tcp-env:)43 b(127.)h(10.205.200.)f(:)i(setenv)f(RELAYCLIENT)
-208 3332 y Fw(where)18 b(10.205.200.)j(is)f(your)e(IP)i(address)f
+4344 y Fk(tcp-env:)43 b(127.)h(10.205.200.)f(:)i(setenv)f(RELAYCLIENT)
+208 4617 y Fw(where)18 b(10.205.200.)j(is)f(your)e(IP)i(address)f
 (block.)k(If)c(you)g(use)g(tcpserv)o(er)m(,)f(then)g(you)h(need)f
-(something)g(lik)o(e)i(the)f(follo)n(wing)e(in)208 3431
+(something)g(lik)o(e)i(the)f(follo)n(wing)e(in)208 4716
 y(your)h(`)p Fv(/etc/tcp)m(.smtp)p Fw(')i(\002le:)713
-3655 y Fk(10.205.200.:allow,RELAYCLIENT="")713 3747 y
-(127.:allow,RELAYCLIENT="")125 4052 y Fd(\017)41 b Fq(BN:)23
+4941 y Fk(10.205.200.:allow,RELAYCLIENT="")713 5032 y
+(127.:allow,RELAYCLIENT="")p 0 5549 3901 4 v 0 5649 a
+Fo(18)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p
+eop end
+%%Page: 19 19
+TeXDict begin 19 18 bop 125 83 a Fd(\017)41 b Fq(BN:)23
 b Fw(Bigger)f(`)p Fv(/v)n(ar/qmail/control/concurrencyremo)o(te)p
 Fw(')17 b(v)n(alues)22 b(w)o(ork)g(better)h(sending)e(outbound)f
-(messages,)j(within)g(rea-)208 4152 y(son.)43 b(Unless)27
+(messages,)j(within)g(rea-)208 183 y(son.)43 b(Unless)27
 b(you)e(kno)n(w)g(your)h(system)g(can)g(handle)g(it)h(\(man)o(y)d(if)j
 (not)f(most)g(cannot\))f(this)i(should)f(not)g(be)g(set)h(to)f(a)h(v)n
-(alue)208 4252 y(greater)19 b(than)g(120.)125 4418 y
-Fd(\017)41 b Fw(More)19 b(information)f(about)h(setting)h(up)g(qmail)g
-(and)g(relaying)e(can)i(be)h(found)d(in)i(the)h(qmail)e(documentation.)
-0 4647 y Fq(BN:)24 b Fw(Last)g(b)n(ut)f(not)h(least,)h(here')-5
+(alue)208 282 y(greater)19 b(than)g(120.)125 437 y Fd(\017)41
+b Fw(More)19 b(information)f(about)h(setting)h(up)g(qmail)g(and)g
+(relaying)e(can)i(be)h(found)d(in)i(the)h(qmail)e(documentation.)0
+637 y Fq(BN:)24 b Fw(Last)g(b)n(ut)f(not)h(least,)h(here')-5
 b(s)23 b(a)h(little)g(script)g(to)g(generate)e(aliases)i(to)g(your)e
 (lists)j(\(if)f(for)f(some)g(reason)g(you)f(can/will)i(not)f(ha)n(v)o
-(e)0 4747 y(them)d(automatically)f(pick)o(ed)g(up)h(using)f(`)p
-Fv(contr)q(ib/qmail-to-mailman.p)m(y)p Fw('\):)0 4894
-y(This)h(script)h(is)g(for)e(the)h(Mailman)g(2.0)g(series:)p
-0 5549 3901 4 v 0 5649 a Fo(18)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f
-(mail)h(ser)r(v)n(er)p eop end
-%%Page: 19 19
-TeXDict begin 19 18 bop 236 174 a Fk(#!/bin/sh)236 266
-y(if)45 b([)f($#)h(=)g(1)f(];)h(then)416 357 y(i=$1)416
-448 y(echo)f(Making)g(links)g(to)g($i)h(in)f(the)g(current)g
-(directory...)416 540 y(echo)g("|preline)f(/home/mailman/mail/mailman)d
-(post)45 b($i")f(>)h(.qmail-$i)416 631 y(echo)f("|preline)f
-(/home/mailman/mail/mailman)d(mailowner)k($i")g(>)h(.qmail-$i-admin)416
-722 y(echo)f("|preline)f(/home/mailman/mail/mailman)d(mailowner)k($i")g
-(>)h(.qmail-$i-owner)416 814 y(echo)f("|preline)f
-(/home/mailman/mail/mailman)d(mailowner)k($i")g(>)h(.qmail-owner-$i)416
-905 y(echo)f("|preline)f(/home/mailman/mail/mailman)d(mailcmd)k($i")g
-(>)h(.qmail-$i-request)236 996 y(fi)0 1283 y Fr(Note:)81
-b Fw(This)28 b(is)h(for)e(a)h(ne)n(w)g(Mailman)f(2.1)h(installation.)47
-b(Users)29 b(upgrading)c(from)i(Mailman)g(2.0)g(w)o(ould)g(most)h(lik)o
-(ely)g(change)0 1382 y(`)p Fv(/usr/local/mailman)p Fw(')19
-b(to)k(`)p Fv(/home/mailman)p Fw('.)30 b(If)23 b(in)g(doubt,)f(refer)g
-(to)h(the)g Fr(--pr)o(e\002x)f Fw(option)g(passed)h(to)g
-Fr(con\002gur)o(e)f Fw(during)g(compile)0 1482 y(time.)236
-1720 y Fk(#!/bin/sh)236 1812 y(if)45 b([)f($#)h(=)g(1)f(];)h(then)416
-1903 y(i=$1)416 1994 y(echo)f(Making)g(links)g(to)g($i)h(in)f(the)g
-(current)g(directory...)416 2086 y(echo)g("|preline)f
+(e)0 737 y(them)d(automatically)f(pick)o(ed)g(up)h(using)f(`)p
+Fv(contr)q(ib/qmail-to-mailman.p)m(y)p Fw('\):)0 884
+y(This)h(script)h(is)g(for)e(the)h(Mailman)g(2.0)g(series:)236
+1122 y Fk(#!/bin/sh)236 1213 y(if)45 b([)f($#)h(=)g(1)f(];)h(then)416
+1304 y(i=$1)416 1396 y(echo)f(Making)g(links)g(to)g($i)h(in)f(the)g
+(current)g(directory...)416 1487 y(echo)g("|preline)f
+(/home/mailman/mail/mailman)d(post)45 b($i")f(>)h(.qmail-$i)416
+1578 y(echo)f("|preline)f(/home/mailman/mail/mailman)d(mailowner)k($i")
+g(>)h(.qmail-$i-admin)416 1670 y(echo)f("|preline)f
+(/home/mailman/mail/mailman)d(mailowner)k($i")g(>)h(.qmail-$i-owner)416
+1761 y(echo)f("|preline)f(/home/mailman/mail/mailman)d(mailowner)k($i")
+g(>)h(.qmail-owner-$i)416 1852 y(echo)f("|preline)f
+(/home/mailman/mail/mailman)d(mailcmd)k($i")g(>)h(.qmail-$i-request)236
+1944 y(fi)0 2230 y Fr(Note:)81 b Fw(This)28 b(is)h(for)e(a)h(ne)n(w)g
+(Mailman)f(2.1)h(installation.)47 b(Users)29 b(upgrading)c(from)i
+(Mailman)g(2.0)g(w)o(ould)g(most)h(lik)o(ely)g(change)0
+2330 y(`)p Fv(/usr/local/mailman)p Fw(')19 b(to)k(`)p
+Fv(/home/mailman)p Fw('.)30 b(If)23 b(in)g(doubt,)f(refer)g(to)h(the)g
+Fr(--pr)o(e\002x)f Fw(option)g(passed)h(to)g Fr(con\002gur)o(e)f
+Fw(during)g(compile)0 2429 y(time.)236 2668 y Fk(#!/bin/sh)236
+2759 y(if)45 b([)f($#)h(=)g(1)f(];)h(then)416 2850 y(i=$1)416
+2942 y(echo)f(Making)g(links)g(to)g($i)h(in)f(the)g(current)g
+(directory...)416 3033 y(echo)g("|preline)f
 (/usr/local/mailman/mail/mailman)d(post)k($i")g(>)h(.qmail-$i)416
-2177 y(echo)f("|preline)f(/usr/local/mailman/mail/mailman)d(admin)k
-($i")g(>)h(.qmail-$i-admin)416 2268 y(echo)f("|preline)f
+3124 y(echo)f("|preline)f(/usr/local/mailman/mail/mailman)d(admin)k
+($i")g(>)h(.qmail-$i-admin)416 3216 y(echo)f("|preline)f
 (/usr/local/mailman/mail/mailman)d(bounces)j($i")i(>)f
-(.qmail-$i-bounces)416 2359 y(#)g(The)h(following)e(line)h(is)h(for)f
-(VERP)416 2451 y(#)g(echo)g("|preline)g
+(.qmail-$i-bounces)416 3307 y(#)g(The)h(following)e(line)h(is)h(for)f
+(VERP)416 3398 y(#)g(echo)g("|preline)g
 (/usr/local/mailman/mail/mailman)39 b(bounces)44 b($i")g(>)h
-(.qmail-$i-bounces-default)416 2542 y(echo)f("|preline)f
+(.qmail-$i-bounces-default)416 3490 y(echo)f("|preline)f
 (/usr/local/mailman/mail/mailman)d(confirm)j($i")i(>)f
-(.qmail-$i-confirm)416 2633 y(echo)g("|preline)f
+(.qmail-$i-confirm)416 3581 y(echo)g("|preline)f
 (/usr/local/mailman/mail/mailman)d(join)k($i")g(>)h(.qmail-$i-join)416
-2725 y(echo)f("|preline)f(/usr/local/mailman/mail/mailman)d(leave)k
-($i")g(>)h(.qmail-$i-leave)416 2816 y(echo)f("|preline)f
+3672 y(echo)f("|preline)f(/usr/local/mailman/mail/mailman)d(leave)k
+($i")g(>)h(.qmail-$i-leave)416 3764 y(echo)f("|preline)f
 (/usr/local/mailman/mail/mailman)d(owner)k($i")g(>)h(.qmail-$i-owner)
-416 2907 y(echo)f("|preline)f(/usr/local/mailman/mail/mailman)d
-(request)j($i")i(>)f(.qmail-$i-request)416 2999 y(echo)g("|preline)f
+416 3855 y(echo)f("|preline)f(/usr/local/mailman/mail/mailman)d
+(request)j($i")i(>)f(.qmail-$i-request)416 3946 y(echo)g("|preline)f
 (/usr/local/mailman/mail/mailman)d(subscribe)j($i")h(>)h
-(.qmail-$i-subscribe)416 3090 y(echo)f("|preline)f
+(.qmail-$i-subscribe)416 4037 y(echo)f("|preline)f
 (/usr/local/mailman/mail/mailman)d(unsubscribe)j($i")h(>)h
-(.qmail-$i-unsubscribe)236 3181 y(fi)0 3593 y Fo(Inf)n(or)r(mation)24
-b(on)f(VERP)0 3796 y Fw(Y)-9 b(ou)24 b(will)i(note)e(in)h(the)f(alias)i
+(.qmail-$i-unsubscribe)236 4129 y(fi)0 4535 y Fo(Inf)n(or)r(mation)24
+b(on)f(VERP)0 4738 y Fw(Y)-9 b(ou)24 b(will)i(note)e(in)h(the)f(alias)i
 (generating)c(script)j(for)f(2.1)g(abo)o(v)o(e,)g(there)g(is)i(a)f
 (line)g(for)f(VERP)h(that)g(has)g(been)f(commented)f(out.)38
-b(If)0 3896 y(you)18 b(are)i(interested)e(in)i(VERP)g(there)e(are)i(tw)
+b(If)0 4838 y(you)18 b(are)i(interested)e(in)i(VERP)g(there)e(are)i(tw)
 o(o)f(options.)24 b(The)19 b(\002rst)h(option)e(is)i(to)f(allo)n(w)h
 (Mailman)e(to)i(do)e(the)i(VERP)g(formatting.)i(T)-7
-b(o)0 3996 y(acti)n(v)n(ate)20 b(this,)g(uncomment)e(that)i(line)h(and)
+b(o)0 4938 y(acti)n(v)n(ate)20 b(this,)g(uncomment)e(that)i(line)h(and)
 e(add)h(the)g(follo)n(wing)f(lines)h(to)h(your)e(`)p
-Fv(mm)p 2477 3996 23 4 v 27 w(cfg.p)n(y)p Fw(')g(\002le:)416
-4234 y Fk(VERP_FORMAT)43 b(=)h
+Fv(mm)p 2477 4938 23 4 v 27 w(cfg.p)n(y)p Fw(')g(\002le:)416
+5176 y Fk(VERP_FORMAT)43 b(=)h
 ('\045\(bounces\)s-+\045\(mailbox\)s=\045\(host\)s')416
-4325 y(VERP_REGEXP)f(=)h(r'\210\(?P<bounces>.)1763 4338
-y(*)1808 4325 y(?\)-\\+\(?P<mailbox>[\210=]+\))o(=\(?P<h)o(ost>[\210)o
-(@]+\)@.)3649 4338 y(*)3694 4325 y($')0 4612 y Fw(The)20
-b(second)f(option)g(is)i(a)g(patch)e(on)h(SourceF)o(or)o(ge)d(located)j
-(at:)0 4758 y Fv(http://sourcef)n(orge)o(.net/t)o(r)o(ac)o(k)o(e)o(r/?)
-o(fun)o(c=de)o(tai)o(l&a)o(tid)o(=3)o(00)o(10)o(3&a)o(id=)o(64)o(55)o
-(13)o(&g)o(rou)o(p)p 2530 4758 V 20 w(id=103)0 4905 y
-Fw(This)i(patch)f(currently)f(needs)h(more)g(testing)h(and)f(might)g
-(best)h(be)g(suitable)g(for)f(de)n(v)o(elopers)e(or)j(people)f(well)h
-(f)o(amiliar)f(with)h(qmail.)0 5005 y(Ha)n(ving)e(said)g(that,)g(this)h
-(patch)e(is)i(the)g(more)e(qmail-friendly)e(approach)h(resulting)i(in)g
-(lar)o(ge)f(performance)f(gains.)p 0 5549 3901 4 v 0
-5649 a Fo(6.4)83 b(Using)24 b(the)f(Qmail)h(mail)g(ser)r(v)n(er)2589
-b(19)p eop end
+5267 y(VERP_REGEXP)f(=)h(r'\210\(?P<bounces>.)1763 5280
+y(*)1808 5267 y(?\)-\\+\(?P<mailbox>[\210=]+\))o(=\(?P<h)o(ost>[\210)o
+(@]+\)@.)3649 5280 y(*)3694 5267 y($')p 0 5549 3901 4
+v 0 5649 a Fo(6.4)83 b(Using)24 b(the)f(Qmail)h(mail)g(ser)r(v)n(er)
+2589 b(19)p eop end
 %%Page: 20 20
-TeXDict begin 20 19 bop 0 83 a Fo(Vir)s(tual)25 b(mail)f(ser)r(v)n(er)0
-286 y Fw(As)d(mentioned)d(in)j(the)f(6.4)f(section)h(for)g(a)g(virtual)
+TeXDict begin 20 19 bop 0 83 a Fw(The)20 b(second)f(option)g(is)i(a)g
+(patch)e(on)h(SourceF)o(or)o(ge)d(located)j(at:)0 230
+y Fv(http://sourcef)n(orge)o(.net/t)o(r)o(ac)o(k)o(e)o(r/?)o(fun)o
+(c=de)o(tai)o(l&a)o(tid)o(=3)o(00)o(10)o(3&a)o(id=)o(64)o(55)o(13)o(&g)
+o(rou)o(p)p 2530 230 23 4 v 20 w(id=103)0 377 y Fw(This)i(patch)f
+(currently)f(needs)h(more)g(testing)h(and)f(might)g(best)h(be)g
+(suitable)g(for)f(de)n(v)o(elopers)e(or)j(people)f(well)h(f)o(amiliar)f
+(with)h(qmail.)0 476 y(Ha)n(ving)e(said)g(that,)g(this)h(patch)e(is)i
+(the)g(more)e(qmail-friendly)e(approach)h(resulting)i(in)g(lar)o(ge)f
+(performance)f(gains.)0 745 y Fo(Vir)s(tual)25 b(mail)f(ser)r(v)n(er)0
+948 y Fw(As)d(mentioned)d(in)j(the)f(6.4)f(section)h(for)g(a)g(virtual)
 g(mail)g(serv)o(er)m(,)f(a)i(patch)e(under)g(testing)h(is)h(located)f
-(at:)0 433 y Fv(http://sf)n(.net/tr)o(ac)o(k)o(er/ind)o(e)n(x.p)o(hp)o
+(at:)0 1094 y Fv(http://sf)n(.net/tr)o(ac)o(k)o(er/ind)o(e)n(x.p)o(hp)o
 (?fu)o(nc=d)o(eta)o(il)o(&ai)o(d=)o(621)o(25)o(7&g)n(rou)o(p)p
-2053 433 23 4 v 21 w(id=103&atid=3001)o(03)0 580 y Fw(Again,)f(this)i
+2053 1094 V 21 w(id=103&atid=3001)o(03)0 1241 y Fw(Again,)f(this)i
 (patch)e(is)i(for)f(people)f(f)o(amiliar)h(with)g(their)g(qmail)g
-(installation.)0 848 y Fo(More)j(inf)n(or)r(mation)0
-1051 y Fw(Y)-9 b(ou)25 b(might)h(be)g(interested)f(in)h(some)g
+(installation.)0 1510 y Fo(More)j(inf)n(or)r(mation)0
+1713 y Fw(Y)-9 b(ou)25 b(might)h(be)g(interested)f(in)h(some)g
 (information)d(on)j(modifying)d(footers)j(that)g(Norbert)e(Bollo)n(w)i
-(has)g(written)g(about)f(Mailman)0 1150 y(and)20 b(qmail,)f(a)n(v)n
-(ailable)h(here:)0 1297 y Fv(http://mailman.cis)o(.to/qmail-)o(v)n
-(erh/)0 1625 y Fx(7)120 b(Re)l(vie)n(w)34 b(y)n(our)g(site)f(def)l
-(aults)0 1858 y Fw(Mailman)23 b(has)g(a)h(lar)o(ge)e(number)f(of)i
+(has)g(written)g(about)f(Mailman)0 1812 y(and)20 b(qmail,)f(a)n(v)n
+(ailable)h(here:)0 1959 y Fv(http://mailman.cis)o(.to/qmail-)o(v)n
+(erh/)0 2286 y Fx(7)120 b(Re)l(vie)n(w)34 b(y)n(our)g(site)f(def)l
+(aults)0 2519 y Fw(Mailman)23 b(has)g(a)h(lar)o(ge)e(number)f(of)i
 (site-wide)g(con\002guration)e(options)h(which)h(you)f(should)g(no)n(w)
-h(re)n(vie)n(w)f(and)h(change)f(according)0 1957 y(to)j(your)f(needs.)
+h(re)n(vie)n(w)f(and)h(change)f(according)0 2619 y(to)j(your)f(needs.)
 39 b(Some)25 b(of)g(the)g(options)f(control)f(ho)n(w)i(Mailman)f
 (interacts)h(with)g(your)f(en)m(vironment,)f(and)i(other)f(options)g
-(select)0 2057 y(def)o(aults)c(for)f(ne)n(wly)h(created)f(lists)1015
-2027 y Fm(4)1049 2057 y Fw(.)26 b(There)19 b(are)h(system)h(tuning)e
-(parameters)g(and)g(inte)o(gration)g(options.)0 2204
+(select)0 2719 y(def)o(aults)c(for)f(ne)n(wly)h(created)f(lists)1015
+2688 y Fm(4)1049 2719 y Fw(.)26 b(There)19 b(are)h(system)h(tuning)e
+(parameters)g(and)g(inte)o(gration)g(options.)0 2865
 y(The)24 b(full)f(set)i(of)e(site-wide)h(def)o(aults)g(li)n(v)o(es)g
 (in)g(the)f(`)p Fj($)p Fq(pr)m(e\002x)p Fo(/Mailman/Def)n(aults)o(.p)n
 (y)p Fw(')h(\002le,)h(ho)n(we)n(v)o(er)d(you)h(should)g
-Fr(ne)o(v)o(er)g Fw(modify)0 2303 y(this)29 b(\002le!)50
-b(Instead,)29 b(change)e(the)h(`)p Fv(mm)p 1174 2303
+Fr(ne)o(v)o(er)g Fw(modify)0 2965 y(this)29 b(\002le!)50
+b(Instead,)29 b(change)e(the)h(`)p Fv(mm)p 1174 2965
 V 27 w(cfg.p)n(y)p Fw(')g(\002le)h(in)f(that)h(same)f(directory)-5
 b(.)47 b(Y)-9 b(ou)28 b(only)f(need)h(to)g(add)g(v)n(alues)g(to)g(`)p
-Fv(mm)p 3652 2303 V 27 w(cfg.p)n(y)p Fw(')0 2403 y(that)c(are)f(dif)n
+Fv(mm)p 3652 2965 V 27 w(cfg.p)n(y)p Fw(')0 3065 y(that)c(are)f(dif)n
 (ferent)f(than)h(the)g(def)o(aults)g(in)h(`)p Fv(Def)n(aults)o(.p)n(y)p
 Fw(',)d(and)i(future)f(Mailman)h(upgrades)f(are)h(guaranteed)f(ne)n(v)o
-(er)g(to)h(touch)g(your)0 2503 y(`)p Fv(mm)p 156 2503
-V 27 w(cfg.p)n(y)p Fw(')d(\002le.)0 2649 y(The)k(`)p
+(er)g(to)h(touch)g(your)0 3164 y(`)p Fv(mm)p 156 3164
+V 27 w(cfg.p)n(y)p Fw(')d(\002le.)0 3311 y(The)k(`)p
 Fv(Def)n(aults)o(.p)n(y)p Fw(')d(\002le)j(is)h(documented)c(e)o(xtensi)
 n(v)o(ely)-5 b(,)23 b(so)h(the)g(options)f(are)h(not)g(described)e
 (here.)36 b(The)24 b(`)p Fv(Def)n(aults)o(.p)n(y)p Fw(')d(and)i(`)p
-Fv(mm)p 3852 2649 V 27 w(-)0 2749 y(cfg.p)n(y)p Fw(')d(are)g(both)f
+Fv(mm)p 3852 3311 V 27 w(-)0 3411 y(cfg.p)n(y)p Fw(')d(are)g(both)f
 (Python)g(\002les)i(so)g(v)n(alid)e(Python)h(syntax)f(must)h(be)g
 (maintained)f(or)h(your)f(Mailman)g(installation)h(will)h(break.)0
-2896 y Fr(Note:)73 b Fw(Do)26 b Fr(not)g Fw(change)e(the)i
-Fq(HOME)p 1172 2896 25 4 v 30 w(DIR)g Fw(or)f Fq(MAILMAN)p
-1831 2896 V 30 w(DIR)h Fw(v)n(ariables.)41 b(These)26
+3558 y Fr(Note:)73 b Fw(Do)26 b Fr(not)g Fw(change)e(the)i
+Fq(HOME)p 1172 3558 25 4 v 30 w(DIR)g Fw(or)f Fq(MAILMAN)p
+1831 3558 V 30 w(DIR)h Fw(v)n(ariables.)41 b(These)26
 b(are)g(set)h(automatically)d(by)h(the)h Fr(con\002gur)o(e)0
-2996 y Fw(script,)20 b(and)g(you)f(will)i(break)e(your)g(Mailman)g
-(installation)h(by)g(if)h(you)e(change)g(these.)0 3142
+3657 y Fw(script,)20 b(and)g(you)f(will)i(break)e(your)g(Mailman)g
+(installation)h(by)g(if)h(you)e(change)g(these.)0 3804
 y(Y)-9 b(ou)20 b(should)f(mak)o(e)h(an)o(y)f(changes)g(to)h(`)p
-Fv(mm)p 1265 3142 23 4 v 27 w(cfg.p)n(y)p Fw(')g(using)g(the)g(account)
-f(you)g(installed)h(Mailman)g(under)f(in)h(the)g(14)g(section.)0
-3470 y Fx(8)120 b(Create)35 b(a)f(site-wide)g(mailing)e(list)0
-3703 y Fw(After)22 b(you)g(ha)n(v)o(e)g(completed)g(the)g(inte)o
+Fv(mm)p 1265 3804 23 4 v 27 w(cfg.p)n(y)p Fw(')g(using)g(the)g(account)
+f(you)g(installed)h(Mailman)g(under)f(in)h(the)g(3)g(section.)0
+4132 y Fx(8)120 b(Create)35 b(a)f(site-wide)g(mailing)e(list)0
+4364 y Fw(After)22 b(you)g(ha)n(v)o(e)g(completed)g(the)g(inte)o
 (gration)f(of)i(Mailman)f(and)g(your)g(mail)g(serv)o(er)m(,)g(you)g
 (need)g(to)h(create)g(a)g(\223site-wide\224)f(mailing)0
-3802 y(list.)j(This)17 b(is)h(the)g(one)e(that)h(passw)o(ord)g
+4464 y(list.)j(This)17 b(is)h(the)g(one)e(that)h(passw)o(ord)g
 (reminders)e(will)j(appear)e(to)i(come)e(from,)h(and)f(it)i(is)g
-(required)d(for)i(proper)e(Mailman)i(operation.)0 3902
+(required)d(for)i(proper)e(Mailman)i(operation.)0 4564
 y(Usually)i(this)h(should)e(be)i(a)f(list)i(called)e
 Fl(mailman)p Fw(,)g(b)n(ut)g(if)h(you)e(need)h(to)g(change)f(this,)i
-(be)f(sure)h(to)f(change)f(the)i Fq(MAILMAN)p 3652 3902
-25 4 v 29 w(SITE)p 3848 3902 V 29 w(-)0 4002 y(LIST)27
-b Fw(v)n(ariable)19 b(in)h(`)p Fv(mm)p 716 4002 23 4
+(be)f(sure)h(to)f(change)f(the)i Fq(MAILMAN)p 3652 4564
+25 4 v 29 w(SITE)p 3848 4564 V 29 w(-)0 4663 y(LIST)27
+b Fw(v)n(ariable)19 b(in)h(`)p Fv(mm)p 716 4663 23 4
 v 27 w(cfg.p)n(y)p Fw('.)k(Y)-9 b(ou)20 b(can)g(create)g(the)g(site)h
 (list)g(with)g(this)f(command,)e(follo)n(wing)h(the)h(prompts:)416
-4240 y Fk(\045)44 b(bin/newlist)f(mailman)0 4526 y Fw(No)n(w)23
-b(con\002gure)f(your)h(site)h(list.)36 b(There)23 b(is)i(a)f(con)m(v)o
-(enient)d(template)i(for)g(a)h(generic)e(site)j(list)f(in)g(the)g
-(installation)f(directory)-5 b(,)22 b(under)0 4626 y(`)p
-Fv(data/sitelist.cfg)p Fw(')c(which)j(can)h(help)f(you)g(with)i(this.)
-30 b(Y)-9 b(ou)21 b(should)g(re)n(vie)n(w)g(the)h(con\002guration)e
-(options)h(in)h(the)g(template,)f(b)n(ut)h(note)0 4726
-y(that)e(an)o(y)g(options)f(not)h(named)f(in)h(the)g(`)p
-Fv(sitelist.cfg)p Fw(')e(\002le)j(w)o(on')o(t)e(be)i(changed.)0
-4872 y(The)f(template)g(can)g(be)g(applied)f(to)h(your)f(site)i(list)g
-(by)f(running:)p 0 4944 1560 4 v 90 4999 a Fi(4)120 5023
-y Fp(In)g(general,)j(changing)f(the)f(list)h(def)o(aults)g(described)h
-(in)e(this)g(section)h(will)f(not)g(af)n(fect)h(an)o(y)f(already)i
-(created)g(lists.)31 b(T)-5 b(o)20 b(mak)o(e)h(changes)h(after)f(a)g
-(list)g(has)g(been)0 5101 y(created,)e(use)e(the)h(web)f(interf)o(ace)j
-(or)d(the)h(command)g(line)g(scripts,)f(such)h(as)f Fa(bin/withlist)h
-Fp(and)g Fa(bin/con\002g)p 2518 5101 20 4 v 25 w(list)p
-Fp(.)p 0 5549 3901 4 v 0 5649 a Fo(20)2599 b(8)83 b(Create)24
+4901 y Fk(\045)44 b(bin/newlist)f(mailman)p 0 5129 1560
+4 v 90 5184 a Fi(4)120 5208 y Fp(In)20 b(general,)j(changing)f(the)f
+(list)h(def)o(aults)g(described)h(in)e(this)g(section)h(will)f(not)g
+(af)n(fect)h(an)o(y)f(already)i(created)g(lists.)31 b(T)-5
+b(o)20 b(mak)o(e)h(changes)h(after)f(a)g(list)g(has)g(been)0
+5287 y(created,)e(use)e(the)h(web)f(interf)o(ace)j(or)d(the)h(command)g
+(line)g(scripts,)f(such)h(as)f Fa(bin/withlist)h Fp(and)g
+Fa(bin/con\002g)p 2518 5287 20 4 v 25 w(list)p Fp(.)p
+0 5549 3901 4 v 0 5649 a Fo(20)2599 b(8)83 b(Create)24
 b(a)f(site-wide)h(mailing)h(list)p eop end
 %%Page: 21 21
-TeXDict begin 21 20 bop 416 174 a Fk(\045)44 b(bin/config_list)f(-i)h
-(data/sitelist.cfg)e(mailman)0 461 y Fw(After)20 b(applying)e(the)i(`)p
-Fv(sitelist.cfg)p Fw(')f(options,)g(be)h(sure)g(you)f(re)n(vie)n(w)h
-(the)g(site)h(list')-5 b(s)21 b(con\002guration)d(via)i(the)g(admin)g
-(pages.)0 608 y(Y)-9 b(ou)20 b(should)f(also)h(subscribe)g(yourself)e
-(to)j(the)f(site)h(list.)0 935 y Fx(9)120 b(Set)34 b(up)g(cron)0
-1168 y Fw(Se)n(v)o(eral)22 b(Mailman)f(features)h(occur)f(on)h(a)h(re)o
+TeXDict begin 21 20 bop 0 83 a Fw(No)n(w)23 b(con\002gure)f(your)h
+(site)h(list.)36 b(There)23 b(is)i(a)f(con)m(v)o(enient)d(template)i
+(for)g(a)h(generic)e(site)j(list)f(in)g(the)g(installation)f(directory)
+-5 b(,)22 b(under)0 183 y(`)p Fv(data/sitelist.cfg)p
+Fw(')c(which)j(can)h(help)f(you)g(with)i(this.)30 b(Y)-9
+b(ou)21 b(should)g(re)n(vie)n(w)g(the)h(con\002guration)e(options)h(in)
+h(the)g(template,)f(b)n(ut)h(note)0 282 y(that)e(an)o(y)g(options)f
+(not)h(named)f(in)h(the)g(`)p Fv(sitelist.cfg)p Fw(')e(\002le)j(w)o
+(on')o(t)e(be)i(changed.)0 429 y(The)f(template)g(can)g(be)g(applied)f
+(to)h(your)f(site)i(list)g(by)f(running:)416 667 y Fk(\045)44
+b(bin/config_list)f(-i)h(data/sitelist.cfg)e(mailman)0
+954 y Fw(After)20 b(applying)e(the)i(`)p Fv(sitelist.cfg)p
+Fw(')f(options,)g(be)h(sure)g(you)f(re)n(vie)n(w)h(the)g(site)h(list')
+-5 b(s)21 b(con\002guration)d(via)i(the)g(admin)g(pages.)0
+1101 y(Y)-9 b(ou)20 b(should)f(also)h(subscribe)g(yourself)e(to)j(the)f
+(site)h(list.)0 1428 y Fx(9)120 b(Set)34 b(up)g(cron)0
+1661 y Fw(Se)n(v)o(eral)22 b(Mailman)f(features)h(occur)f(on)h(a)h(re)o
 (gular)e(schedule,)h(so)g(you)g(must)g(set)h(up)f Fr(cr)o(on)g
 Fw(to)h(run)e(the)i(right)e(programs)g(at)i(the)f(right)0
-1268 y(time)148 1237 y Fm(5)181 1268 y Fw(.)0 1414 y(If)d(your)f(v)o
+1761 y(time)148 1730 y Fm(5)181 1761 y Fw(.)0 1907 y(If)d(your)f(v)o
 (ersion)h(of)g(crontab)f(supports)g(the)h Fr(-u)h Fw(option,)e(you)h
 (must)g(be)g(root)g(to)h(do)f(this)h(ne)o(xt)e(step.)25
 b(Add)19 b(`)p Fj($)p Fq(pr)m(e\002x)p Fo(/cron/crontab)m(.in)p
-Fw(')0 1514 y(as)i(a)g(crontab)d(entry)i(by)f(e)o(x)o(ecuting)f(these)j
-(commands:)416 1752 y Fk(\045)44 b(cd)h($prefix/cron)416
-1844 y(\045)f(crontab)g(-u)g(mailman)g(crontab.in)0 2131
+Fw(')0 2007 y(as)i(a)g(crontab)d(entry)i(by)f(e)o(x)o(ecuting)f(these)j
+(commands:)416 2245 y Fk(\045)44 b(cd)h($prefix/cron)416
+2337 y(\045)f(crontab)g(-u)g(mailman)g(crontab.in)0 2624
 y Fw(If)23 b(you)e(used)i(the)g Fr(--with-user)o(name)e
 Fw(option,)h(use)h(that)g(user)f(name)g(instead)h(of)f
 Fl(mailman)g Fw(for)g(the)h Fr(-u)g Fw(ar)o(gument)d(v)n(alue.)32
-b(If)23 b(your)0 2230 y(crontab)c(does)h(not)g(support)e(the)j
-Fr(-u)f Fw(option,)f(try)h(these)g(commands:)416 2469
-y Fk(\045)44 b(cd)h($prefix/cron)416 2560 y(\045)f(su)h(-)f(mailman)416
-2651 y(\045)g(crontab)g(crontab.in)p 0 2898 3901 17 v
-0 4329 17 1432 v 75 3013 a Fr(W)-5 b(ar)o(ning:)52 b
+b(If)23 b(your)0 2723 y(crontab)c(does)h(not)g(support)e(the)j
+Fr(-u)f Fw(option,)f(try)h(these)g(commands:)416 2962
+y Fk(\045)44 b(cd)h($prefix/cron)416 3053 y(\045)f(su)h(-)f(mailman)416
+3144 y(\045)g(crontab)g(crontab.in)p 0 3391 3901 17 v
+0 4822 17 1432 v 75 3506 a Fr(W)-5 b(ar)o(ning:)52 b
 Fw(If)20 b(you)g(accepted)g(the)g(def)o(aults)h(for)f(the)h
 Fr(--with-user)o(name)e Fw(option)h(and)g(for)g(the)h(name)f(of)g(the)h
-(site)h(list,)f(and)f(one)75 3113 y(of)h(the)g(cron)f(jobs)h(e)n(v)o
+(site)h(list,)f(and)f(one)75 3606 y(of)h(the)g(cron)f(jobs)h(e)n(v)o
 (er)g(encounters)e(an)i(error)m(,)f(the)h(cron)g(daemon)e(will)j(mail)g
 (the)f(error)f(output)g(to)h(the)h('mailman')d(user)i(and)g(it)75
-3212 y(will)j(most)f(lik)o(ely)g(be)g(deli)n(v)o(ered)f(to)h(the)g
+3705 y(will)j(most)f(lik)o(ely)g(be)g(deli)n(v)o(ered)f(to)h(the)g
 ('mailman')f(site)i(list)h(and)d(possibly)h(not)g(be)g(accepted.)33
-b(F)o(or)23 b(this)h(reason)e(it)i(is)h(a)e(good)75 3312
-y(idea)d(to)g(insert)490 3503 y Fk(MAILTO=user at example.com)75
-3723 y Fw(or)490 3914 y Fk(MAILTO=mailman-owner)75 4153
+b(F)o(or)23 b(this)h(reason)e(it)i(is)h(a)e(good)75 3805
+y(idea)d(to)g(insert)490 3996 y Fk(MAILTO=user at example.com)75
+4216 y Fw(or)490 4407 y Fk(MAILTO=mailman-owner)75 4646
 y Fw(at)g(the)g(be)o(ginning)d(of)i(crontab)m(.in)f(before)g
 (installing)h(it)i(to)f(cause)f(this)i(output)d(to)i(be)g(mailed)f(to)h
-(a)g(real)g(user)f(or)h(to)g(the)f(o)n(wner)g(of)75 4253
+(a)g(real)g(user)f(or)h(to)g(the)f(o)n(wner)g(of)75 4746
 y(the)h(site)h(list)g(or)f(to)h(con\002gure)d(the)i(site)h(list)g
 (\(see)g(section)f(8\))g(to)g(accept)g(this)h(mail.)p
-3883 4329 V 0 4346 3901 17 v 0 4682 a Fx(10)120 b(Star)5
-b(t)34 b(the)g(Mailman)f(qr)r(unner)0 4914 y Fw(Mailman)20
-b(depends)f(on)i(a)g(process)f(called)h(the)f(\223qrunner\224)e(to)j
-(deli)n(v)o(ery)e(all)j(email)e(messages)h(it)h(sees.)27
-b(Y)-9 b(ou)20 b(must)h(start)g(the)g(qrunner)0 5014
-y(by)f(e)o(x)o(ecuting)e(the)i(follo)n(wing)f(command)f(from)h(the)h
-Fj($)p Fq(pr)m(e\002x)g Fw(directory:)p 0 5085 1560 4
-v 90 5141 a Fi(5)120 5164 y Fp(Note)j(that)i(if)e(you')m(re)h
-(upgrading)h(from)e(a)g(pre)n(vious)i(v)o(ersion)f(of)f(Mailman,)j
-(you')o(ll)e(w)o(ant)g(to)g(install)h(the)f(ne)n(w)g(crontab,)i(b)o(ut)
-d(be)g(careful)i(if)f(you')m(re)f(running)0 5243 y(multiple)c(Mailman)f
-(installations)j(on)c(your)h(site!)j(Changing)e(the)f(crontab)h(could)f
-(mess)f(with)g(other)h(parallel)i(Mailman)f(installations.)p
-0 5549 3901 4 v 3808 5649 a Fo(21)p eop end
+3883 4822 V 0 4839 3901 17 v 0 4900 1560 4 v 90 4956
+a Fi(5)120 4979 y Fp(Note)i(that)i(if)e(you')m(re)h(upgrading)h(from)e
+(a)g(pre)n(vious)i(v)o(ersion)f(of)f(Mailman,)j(you')o(ll)e(w)o(ant)g
+(to)g(install)h(the)f(ne)n(w)g(crontab,)i(b)o(ut)d(be)g(careful)i(if)f
+(you')m(re)f(running)0 5058 y(multiple)c(Mailman)f(installations)j(on)c
+(your)h(site!)j(Changing)e(the)f(crontab)h(could)f(mess)f(with)g(other)
+h(parallel)i(Mailman)f(installations.)p 0 5549 3901 4
+v 3808 5649 a Fo(21)p eop end
 %%Page: 22 22
-TeXDict begin 22 21 bop 416 174 a Fk(\045)44 b(bin/mailmanctl)f(start)0
-461 y Fw(Y)-9 b(ou)27 b(probably)f(w)o(ant)i(to)h(start)f(Mailman)g(e)n
-(v)o(ery)e(time)j(you)e(reboot)g(your)f(system.)49 b(Exactly)27
-b(ho)n(w)h(to)g(do)g(this)g(depends)f(on)h(your)0 560
+TeXDict begin 22 21 bop 0 88 a Fx(10)120 b(Star)5 b(t)34
+b(the)g(Mailman)f(qr)r(unner)0 321 y Fw(Mailman)20 b(depends)f(on)i(a)g
+(process)f(called)h(the)f(\223qrunner\224)e(to)j(deli)n(v)o(ery)e(all)j
+(email)e(messages)h(it)h(sees.)27 b(Y)-9 b(ou)20 b(must)h(start)g(the)g
+(qrunner)0 421 y(by)f(e)o(x)o(ecuting)e(the)i(follo)n(wing)f(command)f
+(from)h(the)h Fj($)p Fq(pr)m(e\002x)g Fw(directory:)416
+659 y Fk(\045)44 b(bin/mailmanctl)f(start)0 945 y Fw(Y)-9
+b(ou)27 b(probably)f(w)o(ant)i(to)h(start)f(Mailman)g(e)n(v)o(ery)e
+(time)j(you)e(reboot)g(your)f(system.)49 b(Exactly)27
+b(ho)n(w)h(to)g(do)g(this)g(depends)f(on)h(your)0 1045
 y(operating)20 b(system.)30 b(If)21 b(your)g(OS)h(supports)f(the)g
 Fr(chkcon\002g)h Fw(command)e(\(e.g.)29 b(RedHat)22 b(and)f(Mandrak)o
-(e)f(Linux)o(es\))g(you)h(can)g(do)h(the)0 660 y(follo)n(wing)d(\(as)h
+(e)f(Linux)o(es\))g(you)h(can)g(do)h(the)0 1144 y(follo)n(wing)d(\(as)h
 (root,)f(from)h(the)g(Mailman)f(install)i(directory\):)416
-898 y Fk(\045)44 b(cp)h(scripts/mailman)d(/etc/init.d/mailman)416
-990 y(\045)i(chkconfig)g(--add)g(mailman)0 1276 y Fw(Note)20
+1383 y Fk(\045)44 b(cp)h(scripts/mailman)d(/etc/init.d/mailman)416
+1474 y(\045)i(chkconfig)g(--add)g(mailman)0 1761 y Fw(Note)20
 b(that)g(`)p Fv(/etc/init.d)p Fw(')e(may)h(be)h(`)p Fv
-(/etc/rc.d/init.d)p Fw(')d(on)j(some)g(systems.)0 1423
+(/etc/rc.d/init.d)p Fw(')d(on)j(some)g(systems.)0 1907
 y(On)g(Gentoo)f(Linux,)g(you)h(can)g(do)f(the)h(follo)n(wing:)416
-1661 y Fk(\045)44 b(cp)h(scripts/mailman)d(/etc/init.d/mailman)416
-1753 y(\045)i(rc-update)g(add)g(mailman)g(default)0 2039
+2146 y Fk(\045)44 b(cp)h(scripts/mailman)d(/etc/init.d/mailman)416
+2237 y(\045)i(rc-update)g(add)g(mailman)g(default)0 2523
 y Fw(On)20 b(Debian,)f(you)h(probably)e(w)o(ant)i(to)g(use:)416
-2277 y Fk(\045)44 b(update-rc.d)f(mailman)h(defaults)0
-2564 y Fw(F)o(or)22 b(U)t Fp(N)t(I)t(X)r Fw(es)f(that)f(don')o(t)f
+2762 y Fk(\045)44 b(update-rc.d)f(mailman)h(defaults)0
+3049 y Fw(F)o(or)22 b(U)t Fp(N)t(I)t(X)r Fw(es)f(that)f(don')o(t)f
 (support)g Fr(chkcon\002g)p Fw(,)h(you)f(might)h(try)g(the)g(follo)n
-(wing)e(set)j(of)f(commands:)416 2803 y Fk(\045)44 b(cp)h
-(scripts/mailman)d(/etc/init.d/mailman)416 2894 y(\045)i(cp)h
-(misc/mailman)e(/etc/init.d)416 2985 y(\045)h(cd)h(/etc/rc.d/rc0.d)416
-3077 y(\045)f(ln)h(-s)f(../init.d/mailman)e(K12mailman)416
-3168 y(\045)i(cd)h(../rc1.d)416 3259 y(\045)f(ln)h(-s)f
-(../init.d/mailman)e(K12mailman)416 3350 y(\045)i(cd)h(../rc2.d)416
-3442 y(\045)f(ln)h(-s)f(../init.d/mailman)e(S98mailman)416
-3533 y(\045)i(cd)h(../rc3.d)416 3624 y(\045)f(ln)h(-s)f
-(../init.d/mailman)e(S98mailman)416 3716 y(\045)i(cd)h(../rc4.d)416
-3807 y(\045)f(ln)h(-s)f(../init.d/mailman)e(S98mailman)416
-3898 y(\045)i(cd)h(../rc5.d)416 3990 y(\045)f(ln)h(-s)f
-(../init.d/mailman)e(S98mailman)416 4081 y(\045)i(cd)h(../rc6.d)416
-4172 y(\045)f(ln)h(-s)f(../init.d/mailman)e(K12mailman)0
-4621 y Fx(11)120 b(Chec)n(k)34 b(the)h(hostname)g(settings)0
-4854 y Fw(Y)-9 b(ou)27 b(should)g(check)g(the)h(v)n(alues)f(for)g
-Fq(DEF)-10 b(A)l(UL)n(T)p 1481 4854 25 4 v 30 w(EMAIL)p
-1756 4854 V 30 w(HOST)34 b Fw(and)27 b Fq(DEF)-10 b(A)l(UL)n(T)p
-2525 4854 V 30 w(URL)p 2712 4854 V 30 w(HOST)34 b Fw(in)28
-b(`)p Fv(Def)n(aults)o(.p)n(y)p Fw('.)45 b(Mak)o(e)27
-b(an)o(y)0 4954 y(necessary)19 b(changes)f(in)i(the)f(`)p
-Fv(mm)p 992 4954 23 4 v 27 w(cfg.p)n(y)p Fw(')g(\002le,)h
+(wing)e(set)j(of)f(commands:)416 3287 y Fk(\045)44 b(cp)h
+(scripts/mailman)d(/etc/init.d/mailman)416 3378 y(\045)i(cp)h
+(misc/mailman)e(/etc/init.d)416 3470 y(\045)h(cd)h(/etc/rc.d/rc0.d)416
+3561 y(\045)f(ln)h(-s)f(../init.d/mailman)e(K12mailman)416
+3652 y(\045)i(cd)h(../rc1.d)416 3744 y(\045)f(ln)h(-s)f
+(../init.d/mailman)e(K12mailman)416 3835 y(\045)i(cd)h(../rc2.d)416
+3926 y(\045)f(ln)h(-s)f(../init.d/mailman)e(S98mailman)416
+4018 y(\045)i(cd)h(../rc3.d)416 4109 y(\045)f(ln)h(-s)f
+(../init.d/mailman)e(S98mailman)416 4200 y(\045)i(cd)h(../rc4.d)416
+4291 y(\045)f(ln)h(-s)f(../init.d/mailman)e(S98mailman)416
+4383 y(\045)i(cd)h(../rc5.d)416 4474 y(\045)f(ln)h(-s)f
+(../init.d/mailman)e(S98mailman)416 4565 y(\045)i(cd)h(../rc6.d)416
+4657 y(\045)f(ln)h(-s)f(../init.d/mailman)e(K12mailman)p
+0 5549 3901 4 v 0 5649 a Fo(22)2668 b(10)84 b(Star)s(t)23
+b(the)h(Mailman)h(qr)q(unner)p eop end
+%%Page: 23 23
+TeXDict begin 23 22 bop 0 88 a Fx(11)120 b(Chec)n(k)34
+b(the)h(hostname)g(settings)0 321 y Fw(Y)-9 b(ou)27 b(should)g(check)g
+(the)h(v)n(alues)f(for)g Fq(DEF)-10 b(A)l(UL)n(T)p 1481
+321 25 4 v 30 w(EMAIL)p 1756 321 V 30 w(HOST)34 b Fw(and)27
+b Fq(DEF)-10 b(A)l(UL)n(T)p 2525 321 V 30 w(URL)p 2712
+321 V 30 w(HOST)34 b Fw(in)28 b(`)p Fv(Def)n(aults)o(.p)n(y)p
+Fw('.)45 b(Mak)o(e)27 b(an)o(y)0 421 y(necessary)19 b(changes)f(in)i
+(the)f(`)p Fv(mm)p 992 421 23 4 v 27 w(cfg.p)n(y)p Fw(')g(\002le,)h
 Fr(not)f Fw(in)h(the)f(`)p Fv(Def)n(aults)o(.p)n(y)p
 Fw(')e(\002le.)25 b(If)19 b(you)g(change)f(either)h(of)g(these)h(tw)o
-(o)g(v)n(alues,)e(you')o(ll)0 5053 y(w)o(ant)i(to)h(add)e(the)i(follo)n
-(wing)d(afterw)o(ards)h(in)i(the)f(`)p Fv(mm)p 1605 5053
-V 27 w(cfg.p)n(y)p Fw(')f(\002le:)p 0 5549 3901 4 v 0
-5649 a Fo(22)2564 b(11)83 b(Chec)n(k)23 b(the)g(hostname)h(settings)p
-eop end
-%%Page: 23 23
-TeXDict begin 23 22 bop 416 174 a Fk
+(o)g(v)n(alues,)e(you')o(ll)0 520 y(w)o(ant)i(to)h(add)e(the)i(follo)n
+(wing)d(afterw)o(ards)h(in)i(the)f(`)p Fv(mm)p 1605 520
+V 27 w(cfg.p)n(y)p Fw(')f(\002le:)416 758 y Fk
 (add_virtualhost\(DEFAULT_URL_HOST,)39 b(DEFAULT_EMAIL_HOST\))0
-461 y Fw(Y)-9 b(ou)20 b(will)h(w)o(ant)f(to)g(run)g(the)g
-Fr(bin/\002x)p 1056 461 25 4 v 30 w(url.py)g Fw(to)g(change)f(the)i
-(domain)d(of)i(an)o(y)g(e)o(xisting)f(lists.)0 788 y
+1045 y Fw(Y)-9 b(ou)20 b(will)h(w)o(ant)f(to)g(run)g(the)g
+Fr(bin/\002x)p 1056 1045 25 4 v 30 w(url.py)g Fw(to)g(change)f(the)i
+(domain)d(of)i(an)o(y)g(e)o(xisting)f(lists.)0 1367 y
 Fx(12)120 b(Create)35 b(the)g(site)e(pass)l(w)o(ord)0
-1021 y Fw(There)20 b(are)h(tw)o(o)g(site-wide)f(passw)o(ords)h(that)g
+1600 y Fw(There)20 b(are)h(tw)o(o)g(site-wide)f(passw)o(ords)h(that)g
 (you)f(can)g(create)h(from)e(the)i(command)e(line,)i(using)f(the)h
-Fr(bin/mmsitepass)h Fw(script.)27 b(The)0 1121 y(\002rst)c(is)f(the)g
+Fr(bin/mmsitepass)h Fw(script.)27 b(The)0 1699 y(\002rst)c(is)f(the)g
 (\223site)h(passw)o(ord\224)e(which)g(can)h(be)g(used)f(an)o(ywhere)f
 (a)i(passw)o(ord)g(is)g(required)e(in)i(the)g(system.)30
-b(The)22 b(site)h(passw)o(ord)e(will)0 1220 y(get)27
+b(The)22 b(site)h(passw)o(ord)e(will)0 1799 y(get)27
 b(you)f(into)h(the)g(administration)e(page)i(for)f(an)o(y)g(list,)k
 (and)c(it)i(can)f(be)g(used)g(to)g(log)f(in)i(as)f(an)o(y)g(user)-5
-b(.)45 b(Think)26 b Fl(root)h Fw(for)g(a)g(Unix)0 1320
+b(.)45 b(Think)26 b Fl(root)h Fw(for)g(a)g(Unix)0 1899
 y(system,)20 b(so)h(pick)e(this)i(passw)o(ord)f(wisely!)0
-1467 y(The)28 b(second)e(passw)o(ord)i(is)g(a)h(site-wide)e(\223list)i
+2045 y(The)28 b(second)e(passw)o(ord)i(is)g(a)h(site-wide)e(\223list)i
 (creator\224)e(passw)o(ord.)47 b(Y)-9 b(ou)27 b(can)h(use)g(this)g(to)g
 (dele)o(gate)f(the)h(ability)f(to)h(create)g(ne)n(w)0
-1566 y(mailing)22 b(lists)j(without)e(pro)o(viding)d(all)k(the)f(pri)n
+2145 y(mailing)22 b(lists)j(without)e(pro)o(viding)d(all)k(the)f(pri)n
 (vile)o(ges)f(of)h(the)g(site)h(passw)o(ord.)33 b(Of)24
 b(course,)f(the)g(o)n(wner)f(of)h(the)g(site)h(passw)o(ord)f(can)0
-1666 y(also)e(create)e(ne)n(w)h(mailing)g(lists,)h(b)n(ut)f(the)h(list)
+2245 y(also)e(create)e(ne)n(w)h(mailing)g(lists,)h(b)n(ut)f(the)h(list)
 g(creator)e(passw)o(ord)h(is)h(limited)f(to)g(just)h(that)f(special)g
-(role.)0 1813 y(T)-7 b(o)20 b(set)h(the)g(site)g(passw)o(ord,)e(use)h
-(this)h(command:)416 2051 y Fk(\045)44 b($prefix/bin/mmsitepass)d
-(<your-site-password>)0 2338 y Fw(T)-7 b(o)20 b(set)h(the)g(list)g
-(creator)e(passw)o(ord,)g(use)i(this)f(command:)416 2576
+(role.)0 2392 y(T)-7 b(o)20 b(set)h(the)g(site)g(passw)o(ord,)e(use)h
+(this)h(command:)416 2630 y Fk(\045)44 b($prefix/bin/mmsitepass)d
+(<your-site-password>)0 2916 y Fw(T)-7 b(o)20 b(set)h(the)g(list)g
+(creator)e(passw)o(ord,)g(use)i(this)f(command:)416 3154
 y Fk(\045)44 b($prefix/bin/mmsitepass)d(-c)k(<list-creator-password>)0
-2862 y Fw(It)20 b(is)i(okay)d(not)h(to)g(set)h(a)g(list)g(creator)e
+3441 y Fw(It)20 b(is)i(okay)d(not)h(to)g(set)h(a)g(list)g(creator)e
 (passw)o(ord,)g(b)n(ut)i(you)e(probably)f(do)h(w)o(ant)i(a)f(site)h
-(passw)o(ord.)0 3189 y Fx(13)120 b(Create)35 b(y)n(our)f(\002rst)f
-(mailing)g(list)0 3422 y Fw(F)o(or)17 b(more)g(detailed)h(information)d
+(passw)o(ord.)0 3762 y Fx(13)120 b(Create)35 b(y)n(our)f(\002rst)f
+(mailing)g(list)0 3995 y Fw(F)o(or)17 b(more)g(detailed)h(information)d
 (about)i(using)g(Mailman,)g(including)f(creating)h(and)g(con\002guring)
-f(mailing)h(lists,)i(see)f(the)g(Mailman)0 3522 y(List)26
+f(mailing)h(lists,)i(see)f(the)g(Mailman)0 4095 y(List)26
 b(Adminstration)e(Manual.)41 b(These)26 b(instructions)e(pro)o(vide)g
 (a)i(quick)f(guide)g(to)h(creating)e(your)h(\002rst)h(mailing)f(list)i
-(via)f(the)g(web)0 3621 y(interf)o(ace:)125 3848 y Fd(\017)41
+(via)f(the)g(web)0 4194 y(interf)o(ace:)125 4391 y Fd(\017)41
 b Fw(Start)20 b(by)g(visiting)g(the)g(url)g Fl
-(http://my.dom.ain/mailman/create)p Fw(.)125 4013 y Fd(\017)41
+(http://my.dom.ain/mailman/create)p Fw(.)125 4544 y Fd(\017)41
 b Fw(Fill)23 b(out)g(the)g(form)f(as)h(described)f(in)h(the)g
 (on-screen)e(instructions,)h(and)h(in)g(the)g(\223List)g(creator')-5
 b(s)23 b(passw)o(ord\224)f(\002eld,)h(type)g(the)208
-4112 y(passw)o(ord)d(you)h(entered)f(in)h(section)h(7.)28
+4643 y(passw)o(ord)d(you)h(entered)f(in)h(section)h(7.)28
 b(T)-7 b(ype)21 b(your)f(o)n(wn)h(email)g(address)g(for)g(the)g
 (\223Initial)h(list)g(o)n(wner)e(address\224,)h(and)g(select)208
-4212 y(\223Y)-8 b(es\224)20 b(to)g(notify)f(the)h(list)i(administrator)
--5 b(.)125 4377 y Fd(\017)41 b Fw(Click)20 b(on)g(the)g(\223Create)h
-(List\224)f(b)n(utton.)125 4542 y Fd(\017)41 b Fw(Check)19
+4743 y(\223Y)-8 b(es\224)20 b(to)g(notify)f(the)h(list)i(administrator)
+-5 b(.)125 4895 y Fd(\017)41 b Fw(Click)20 b(on)g(the)g(\223Create)h
+(List\224)f(b)n(utton.)125 5048 y Fd(\017)41 b Fw(Check)19
 b(your)g(email)i(for)e(a)i(message)f(from)f(Mailman)g(informing)f(you)i
 (that)g(your)f(ne)n(w)h(mailing)f(list)j(w)o(as)f(created.)125
-4706 y Fd(\017)41 b Fw(No)n(w)g(visit)h(the)g(list')-5
+5201 y Fd(\017)41 b Fw(No)n(w)g(visit)h(the)g(list')-5
 b(s)42 b(administration)e(page,)46 b(either)41 b(by)g(follo)n(wing)f
 (the)i(link)f(on)g(the)g(con\002rmation)f(web)h(page)g(or)208
-4806 y(clicking)g(on)h(the)h(link)f(from)g(the)g(email)h(Mailman)f
+5300 y(clicking)g(on)h(the)h(link)f(from)g(the)g(email)h(Mailman)f
 (just)h(sent)g(you.)91 b(T)-7 b(ypically)42 b(the)g(url)g(will)i(be)e
-(something)f(lik)o(e)208 4906 y Fl(http://my.dom.ain/mailman/admin/m)o
-(ylist)o Fw(.)125 5070 y Fd(\017)g Fw(T)-7 b(ype)19 b(in)i(the)f(list')
--5 b(s)21 b(passw)o(ord)f(and)g(click)g(on)g(\223Let)g(me)g(in...)-6
-b(\224)125 5235 y Fd(\017)41 b Fw(Click)20 b(on)g(\223Membership)e
-(Management\224)g(and)i(then)g(on)f(\223Mass)i(Subscription\224.)125
-5400 y Fd(\017)41 b Fw(Enter)19 b(your)g(email)h(address)g(in)g(the)h
-(big)e(te)o(xt)h(\002eld,)h(and)e(click)h(on)g(\223Submit)g(Y)-9
-b(our)19 b(Changes\224.)p 0 5549 3901 4 v 3808 5649 a
-Fo(23)p eop end
+(something)f(lik)o(e)208 5400 y Fl(http://my.dom.ain/mailman/admin/m)o
+(ylist)o Fw(.)p 0 5549 3901 4 v 3808 5649 a Fo(23)p eop
+end
 %%Page: 24 24
-TeXDict begin 24 23 bop 125 83 a Fd(\017)41 b Fw(No)n(w)20
-b(go)g(to)h(your)e(email)i(and)f(send)g(a)h(message)g(to)g
-Fl(mylist at my.dom.ain)p Fw(.)i(W)m(ithin)e(a)g(minute)e(or)i(tw)o(o)g
-(you)e(should)h(see)208 183 y(your)e(message)j(re\003ected)e(back)h(to)
-g(you)f(via)h(Mailman.)0 399 y(Congratulations!)i(Y)-9
-b(ou')l(v)o(e)17 b(just)i(set)g(up)f(and)g(tested)h(your)f(\002rst)h
-(Mailman)f(mailing)g(list.)25 b(If)18 b(you)g(had)g(an)o(y)g(problems)f
-(along)h(the)g(w)o(ay)-5 b(,)0 499 y(please)20 b(see)h(the)f(14)g
-(section.)0 824 y Fx(14)120 b(T)-14 b(roub)n(leshooting)0
-1057 y Fw(If)20 b(you)g(encounter)e(problems)h(with)h(running)f
-(Mailman,)g(\002rst)i(check)f(the)g(question)g(and)f(answer)h(section)h
-(belo)n(w)-5 b(.)24 b(If)c(your)f(problem)0 1156 y(is)i(not)f(co)o(v)o
-(ered)e(there,)h(check)h(the)g(online)f(help,)h(including)e(the)i(F)-6
+TeXDict begin 24 23 bop 125 83 a Fd(\017)41 b Fw(T)-7
+b(ype)19 b(in)i(the)f(list')-5 b(s)21 b(passw)o(ord)f(and)g(click)g(on)
+g(\223Let)g(me)g(in...)-6 b(\224)125 249 y Fd(\017)41
+b Fw(Click)20 b(on)g(\223Membership)e(Management\224)g(and)i(then)g(on)
+f(\223Mass)i(Subscription\224.)125 415 y Fd(\017)41 b
+Fw(Enter)19 b(your)g(email)h(address)g(in)g(the)h(big)e(te)o(xt)h
+(\002eld,)h(and)e(click)h(on)g(\223Submit)g(Y)-9 b(our)19
+b(Changes\224.)125 581 y Fd(\017)41 b Fw(No)n(w)20 b(go)g(to)h(your)e
+(email)i(and)f(send)g(a)h(message)g(to)g Fl(mylist at my.dom.ain)p
+Fw(.)i(W)m(ithin)e(a)g(minute)e(or)i(tw)o(o)g(you)e(should)h(see)208
+680 y(your)e(message)j(re\003ected)e(back)h(to)g(you)f(via)h(Mailman.)0
+910 y(Congratulations!)i(Y)-9 b(ou')l(v)o(e)17 b(just)i(set)g(up)f(and)
+g(tested)h(your)f(\002rst)h(Mailman)f(mailing)g(list.)25
+b(If)18 b(you)g(had)g(an)o(y)g(problems)f(along)h(the)g(w)o(ay)-5
+b(,)0 1009 y(please)20 b(see)h(the)f(14)g(section.)0
+1337 y Fx(14)120 b(T)-14 b(roub)n(leshooting)0 1570 y
+Fw(If)20 b(you)g(encounter)e(problems)h(with)h(running)f(Mailman,)g
+(\002rst)i(check)f(the)g(question)g(and)f(answer)h(section)h(belo)n(w)
+-5 b(.)24 b(If)c(your)f(problem)0 1669 y(is)i(not)f(co)o(v)o(ered)e
+(there,)h(check)h(the)g(online)f(help,)h(including)e(the)i(F)-6
 b(A)h(Q)22 b(and)d(the)h(community)e(F)-6 b(A)h(Q)21
-b(wiki.)0 1303 y(Also)26 b(check)f(for)f(errors)h(in)h(your)e(syslog)h
+b(wiki.)0 1816 y(Also)26 b(check)f(for)f(errors)h(in)h(your)e(syslog)h
 (\002les,)j(your)c(mail)i(and)f(web)g(serv)o(er)g(log)g(\002les)h(and)f
 (in)h(Mailman')-5 b(s)25 b(`)p Fj($)p Fq(pr)m(e\002x)p
-Fo(/logs/error)p Fw(')0 1403 y(\002le.)37 b(If)24 b(you')l(re)e(still)k
+Fo(/logs/error)p Fw(')0 1916 y(\002le.)37 b(If)24 b(you')l(re)e(still)k
 (ha)n(ving)d(problems,)g(you)g(should)g(send)h(a)h(message)f(to)g(the)g
 Fv(mailman-users at p)n(ython.org)19 b Fw(mailing)24 b(list)3711
-1373 y Fm(6)3744 1403 y Fw(;)j(see)0 1502 y Fv(http://mail.p)n
+1886 y Fm(6)3744 1916 y Fw(;)j(see)0 2015 y Fv(http://mail.p)n
 (ython.org)o(/mail)o(man/)o(li)o(stinf)m(o/ma)o(ilma)o(n-u)o(sers)15
-b Fw(for)20 b(more)f(information.)0 1649 y(Be)j(sure)f(to)g(including)f
+b Fw(for)20 b(more)f(information.)0 2162 y(Be)j(sure)f(to)g(including)f
 (information)e(on)j(your)f(operating)f(system,)j(which)e(v)o(ersion)g
 (of)h(Python)f(you')l(re)f(using,)i(and)f(which)h(v)o(ersion)0
-1749 y(of)f(Mailman)f(you')l(re)g(installing.)0 1896
+2262 y(of)f(Mailman)f(you')l(re)g(installing.)0 2409
 y(Here)h(is)h(a)g(list)g(of)f(some)g(common)e(questions)i(and)f
-(answers:)125 2112 y Fd(\017)41 b Fr(Pr)o(oblem:)24 b
+(answers:)125 2638 y Fd(\017)41 b Fr(Pr)o(oblem:)24 b
 Fw(All)d(Mailman)e(web)h(pages)g(gi)n(v)o(e)f(a)i(404)e(File)i(not)f
-(found)f(error)-5 b(.)208 2242 y Fr(Solution:)25 b Fw(Y)-9
+(found)f(error)-5 b(.)208 2771 y Fr(Solution:)25 b Fw(Y)-9
 b(our)19 b(web)h(serv)o(er)g(has)h(not)f(been)f(set)j(up)e(properly)e
 (for)i(handling)e(Mailman')-5 b(s)20 b(CGI)h(programs.)j(Mak)o(e)c
-(sure)g(you)208 2342 y(ha)n(v)o(e:)286 2517 y(1.)41 b(con\002gured)18
+(sure)g(you)208 2870 y(ha)n(v)o(e:)286 3053 y(1.)41 b(con\002gured)18
 b(the)i(web)g(serv)o(er)g(to)g(gi)n(v)o(e)f(permissions)h(to)g(`)p
-Fj($)p Fq(pr)m(e\002x)p Fo(/cgi-bin)p Fw(')286 2644 y(2.)41
+Fj($)p Fq(pr)m(e\002x)p Fo(/cgi-bin)p Fw(')286 3186 y(2.)41
 b(restarted)20 b(the)g(web)g(serv)o(er)f(properly)-5
-b(.)208 2819 y(Consult)20 b(your)f(web)h(serv)o(er')-5
+b(.)208 3368 y(Consult)20 b(your)f(web)h(serv)o(er')-5
 b(s)19 b(documentation)f(for)h(instructions)g(on)h(ho)n(w)g(to)g(do)g
-(check)f(these)i(issues.)125 2980 y Fd(\017)41 b Fr(Pr)o(oblem:)24
+(check)f(these)i(issues.)125 3534 y Fd(\017)41 b Fr(Pr)o(oblem:)24
 b Fw(All)d(Mailman)e(web)h(pages)g(gi)n(v)o(e)f(an)i(\224Internal)d
-(Serv)o(er)i(Error\224.)208 3110 y Fr(Solution:)j Fw(The)c(lik)o(ely)f
+(Serv)o(er)i(Error\224.)208 3667 y Fr(Solution:)j Fw(The)c(lik)o(ely)f
 (problem)f(is)i(that)g(you)e(are)i(using)f(the)g(wrong)g(user)g(or)g
 (group)f(for)h(the)g(CGI)i(scripts.)k(Check)18 b(your)g(web)208
-3209 y(serv)o(er')-5 b(s)19 b(log)h(\002les.)26 b(If)20
-b(you)f(see)i(a)g(line)f(lik)o(e)982 3431 y Fk(Attempt)43
+3766 y(serv)o(er')-5 b(s)19 b(log)h(\002les.)26 b(If)20
+b(you)f(see)i(a)g(line)f(lik)o(e)982 3990 y Fk(Attempt)43
 b(to)i(exec)f(script)g(with)g(invalid)g(gid)g(51,)g(expected)g(99)208
-3792 y Fw(you)19 b(will)i(need)e(to)i(reinstall)f(Mailman,)f
+4354 y Fw(you)19 b(will)i(need)e(to)i(reinstall)f(Mailman,)f
 (specifying)g(the)h(proper)e(CGI)j(group)e(id,)h(as)h(described)e(in)h
-(the)g(section.)125 3953 y Fd(\017)41 b Fr(Pr)o(oblem:)24
+(the)g(3)g(section.)125 4520 y Fd(\017)41 b Fr(Pr)o(oblem:)24
 b Fw(I)c(send)g(mail)h(to)f(the)g(list,)h(and)f(get)g(back)f(mail)i
-(saying)e(the)i(list)g(is)g(not)f(found!)208 4083 y Fr(Solution:)37
+(saying)e(the)i(list)g(is)g(not)f(found!)208 4653 y Fr(Solution:)37
 b Fw(Y)-9 b(ou)27 b(probably)d(didn')o(t)h(add)i(the)f(necessary)g
 (aliases)i(to)f(the)g(system)g(alias)g(database,)h(or)f(you)f(didn')o
-(t)f(properly)208 4182 y(inte)o(grate)19 b(Mailman)i(with)g(your)f
+(t)f(properly)208 4752 y(inte)o(grate)19 b(Mailman)i(with)g(your)f
 (mail)h(serv)o(er)-5 b(.)27 b(Perhaps)21 b(you)f(didn')o(t)f(update)h
 (the)h(alias)h(database,)f(or)g(your)e(system)j(requires)208
-4282 y(you)d(to)h(run)g Fr(newaliases)g Fw(e)o(xplicitly)-5
+4852 y(you)d(to)h(run)g Fr(newaliases)g Fw(e)o(xplicitly)-5
 b(.)23 b(Refer)e(to)f(your)f(serv)o(er)g(speci\002c)i(instructions)e
-(in)h(the)g(6)h(section.)125 4443 y Fd(\017)41 b Fr(Pr)o(oblem:)24
+(in)h(the)g(6)h(section.)125 5018 y Fd(\017)41 b Fr(Pr)o(oblem:)24
 b Fw(I)c(send)g(mail)h(to)f(the)g(list,)h(and)f(get)g(back)f(mail)i
-(saying,)e(\223unkno)n(wn)f(mailer)i(error\224.)208 4573
+(saying,)e(\223unkno)n(wn)f(mailer)i(error\224.)208 5150
 y Fr(Solution:)35 b Fw(The)26 b(lik)o(ely)g(problem)e(is)i(that)g(you)f
 (are)h(using)f(the)h(wrong)e(user)i(or)f(group)f(id)i(for)g(the)f(mail)
-h(wrappers.)41 b(Check)208 4673 y(your)18 b(mail)j(serv)o(er')-5
-b(s)20 b(log)f(\002les;)j(if)e(you)f(see)i(a)g(line)f(lik)o(e)982
-4894 y Fk(Attempt)43 b(to)i(exec)f(script)g(with)g(invalid)g(gid)g(51,)
-g(expected)g(99)208 5255 y Fw(you)19 b(will)i(need)e(to)i(reinstall)f
-(Mailman,)f(specifying)g(the)h(proper)e(mail)j(group)d(id)j(as)g
-(described)d(in)j(the)f(section.)p 0 5321 1560 4 v 90
-5377 a Fi(6)120 5400 y Fp(Y)-7 b(ou)16 b(must)h(subscribe)h(to)g(this)f
-(mailing)i(list)f(in)f(order)h(to)f(post)g(to)h(it,)f(b)o(ut)g(the)h
-(mailing)g(list')l(s)g(archi)n(v)o(es)i(are)d(publicly)j(visible.)p
-0 5549 3901 4 v 0 5649 a Fo(24)3049 b(14)83 b(T)-10 b(roub)n
-(leshooting)p eop end
+h(wrappers.)41 b(Check)208 5250 y(your)18 b(mail)j(serv)o(er')-5
+b(s)20 b(log)f(\002les;)j(if)e(you)f(see)i(a)g(line)f(lik)o(e)p
+0 5321 1560 4 v 90 5377 a Fi(6)120 5400 y Fp(Y)-7 b(ou)16
+b(must)h(subscribe)h(to)g(this)f(mailing)i(list)f(in)f(order)h(to)f
+(post)g(to)h(it,)f(b)o(ut)g(the)h(mailing)g(list')l(s)g(archi)n(v)o(es)
+i(are)d(publicly)j(visible.)p 0 5549 3901 4 v 0 5649
+a Fo(24)3049 b(14)83 b(T)-10 b(roub)n(leshooting)p eop
+end
 %%Page: 25 25
-TeXDict begin 25 24 bop 125 83 a Fd(\017)41 b Fr(Pr)o(oblem:)g
-Fw(I)28 b(use)h(Post\002x)g(as)g(my)f(mail)h(serv)o(er)f(and)g(the)h
-(mail)f(wrapper)f(programs)g(are)i(logging)d(complaints)i(about)g(the)
-208 183 y(wrong)18 b(GID.)208 315 y Fr(Solution:)40 b
-Fw(Mak)o(e)27 b(sure)h(the)g(`)p Fj($)p Fq(pr)m(e\002x)p
-Fo(/data/aliases)o(.db)p Fw(')g(\002le)h(is)f(user)g(o)n(wned)f(by)g
-Fl(mailman)h Fw(\(or)f(whate)n(v)o(er)f(user)i(name)208
-415 y(you)21 b(used)h(in)g(the)g Fr(con\002gur)o(e)g
-Fw(command\).)28 b(If)22 b(this)h(\002le)g(is)g(not)f(user)g(o)n(wned)f
-(by)h Fl(mailman)p Fw(,)f(Post\002x)i(will)g(not)f(run)f(the)h(mail)208
-514 y(programs)c(as)j(the)f(correct)f(user)-5 b(.)125
-680 y Fd(\017)41 b Fr(Pr)o(oblem:)h Fw(I)29 b(use)h(Sendmail)f(as)h(my)
-f(mail)g(serv)o(er)m(,)h(and)f(when)g(I)g(send)g(mail)h(to)f(the)g
+TeXDict begin 25 24 bop 982 174 a Fk(Attempt)43 b(to)i(exec)f(script)g
+(with)g(invalid)g(gid)g(51,)g(expected)g(99)208 538 y
+Fw(you)19 b(will)i(need)e(to)i(reinstall)f(Mailman,)f(specifying)g(the)
+h(proper)e(mail)j(group)d(id)j(as)g(described)d(in)j(the)f(3)g
+(section.)125 704 y Fd(\017)41 b Fr(Pr)o(oblem:)g Fw(I)28
+b(use)h(Post\002x)g(as)g(my)f(mail)h(serv)o(er)f(and)g(the)h(mail)f
+(wrapper)f(programs)g(are)i(logging)d(complaints)i(about)g(the)208
+804 y(wrong)18 b(GID.)208 937 y Fr(Solution:)40 b Fw(Mak)o(e)27
+b(sure)h(the)g(`)p Fj($)p Fq(pr)m(e\002x)p Fo(/data/aliases)o(.db)p
+Fw(')g(\002le)h(is)f(user)g(o)n(wned)f(by)g Fl(mailman)h
+Fw(\(or)f(whate)n(v)o(er)f(user)i(name)208 1036 y(you)21
+b(used)h(in)g(the)g Fr(con\002gur)o(e)g Fw(command\).)28
+b(If)22 b(this)h(\002le)g(is)g(not)f(user)g(o)n(wned)f(by)h
+Fl(mailman)p Fw(,)f(Post\002x)i(will)g(not)f(run)f(the)h(mail)208
+1136 y(programs)c(as)j(the)f(correct)f(user)-5 b(.)125
+1302 y Fd(\017)41 b Fr(Pr)o(oblem:)h Fw(I)29 b(use)h(Sendmail)f(as)h
+(my)f(mail)g(serv)o(er)m(,)h(and)f(when)g(I)g(send)g(mail)h(to)f(the)g
 (list,)k(I)c(get)h(back)e(mail)i(saying,)g(\223sh:)208
-779 y(mailman)19 b(not)h(a)n(v)n(ailable)f(for)h(sendmail)g
-(programs\224.)208 912 y Fr(Solution:)33 b Fw(Y)-9 b(our)24
+1402 y(mailman)19 b(not)h(a)n(v)n(ailable)f(for)h(sendmail)g
+(programs\224.)208 1534 y Fr(Solution:)33 b Fw(Y)-9 b(our)24
 b(system)g(uses)h(the)g(Sendmail)f(restricted)g(shell)h(\(smrsh\).)37
 b(Y)-9 b(ou)24 b(need)g(to)g(con\002gure)f(smrsh)h(by)h(creating)e(a)
-208 1011 y(symbolic)c(link)h(from)f(the)h(mail)h(wrapper)e(\(`)p
+208 1634 y(symbolic)c(link)h(from)f(the)h(mail)h(wrapper)e(\(`)p
 Fj($)p Fq(pr)m(e\002x)p Fo(/mail/mailman)p Fw('\))i(to)f(the)h
 (directory)d(identifying)h(e)o(x)o(ecutables)f(allo)n(wed)208
-1111 y(to)i(run)f(under)g(smrsh.)208 1244 y(Some)g(common)g(names)h
+1734 y(to)i(run)f(under)g(smrsh.)208 1866 y(Some)g(common)g(names)h
 (for)f(this)i(directory)d(are)j(`)p Fv(/v)n(ar/admin/sm.bin)p
 Fw(',)16 b(`)p Fv(/usr/admin/sm.bin)p Fw(')h(or)j(`)p
-Fv(/etc/smrsh)p Fw('.)208 1376 y(Note)29 b(that)h(on)f(Debian)g(Linux,)
+Fv(/etc/smrsh)p Fw('.)208 1999 y(Note)29 b(that)h(on)f(Debian)g(Linux,)
 h(the)g(system)f(mak)o(es)h(`)p Fv(/usr/lib/sm.bin)p
 Fw(',)e(which)h(is)i(wrong,)f(you)f(will)h(need)f(to)g(create)h(the)208
-1476 y(directory)20 b(`)p Fv(/usr/admin/sm.bin)p Fw(')g(and)i(add)g
+2099 y(directory)20 b(`)p Fv(/usr/admin/sm.bin)p Fw(')g(and)i(add)g
 (the)g(link)h(there.)32 b(Note)22 b(further)f(an)o(y)h(aliases)i
 Fr(newaliases)e Fw(spits)i(out)e(will)h(need)f(to)208
-1575 y(be)e(adjusted)f(to)h(point)g(to)g(the)g(secure)g(link)g(to)h
-(the)f(wrapper)-5 b(.)125 1741 y Fd(\017)41 b Fr(Pr)o(oblem:)24
+2199 y(be)e(adjusted)f(to)h(point)g(to)g(the)g(secure)g(link)g(to)h
+(the)f(wrapper)-5 b(.)125 2365 y Fd(\017)41 b Fr(Pr)o(oblem:)24
 b Fw(I)c(messed)g(up)g(when)g(I)g(called)g Fr(con\002gur)o(e)p
 Fw(.)k(Ho)n(w)c(do)g(I)g(clean)g(things)g(up)g(and)g(re-install?)208
-1873 y Fr(Solution:)802 2006 y Fk(\045)45 b(make)f(clean)802
-2097 y(\045)h(./configure)e(--with-the-right-options)802
-2188 y(\045)i(make)f(install)0 2727 y Fx(15)120 b(Platf)l(or)s(m)34
-b(and)h(oper)o(ating)g(system)e(notes)0 2960 y Fw(Generally)-5
+2497 y Fr(Solution:)802 2630 y Fk(\045)45 b(make)f(clean)802
+2722 y(\045)h(./configure)e(--with-the-right-options)802
+2813 y(\045)i(make)f(install)0 3352 y Fx(15)120 b(Platf)l(or)s(m)34
+b(and)h(oper)o(ating)g(system)e(notes)0 3585 y Fw(Generally)-5
 b(,)30 b(Mailman)f(runs)h(on)f(an)o(y)g(POSIX-based)g(system,)j(such)d
 (as)h(Solaris,)j(the)c(v)n(arious)g(BSD)i(v)n(ariants,)g(Linux)d
-(systems,)0 3060 y(MacOSX,)d(and)g(other)f(generic)j(U)t
+(systems,)0 3685 y(MacOSX,)d(and)g(other)f(generic)j(U)t
 Fp(N)t(I)t(X)h Fw(systems.)41 b(It)25 b(doesn')o(t)f(run)h(on)g(W)m
 (indo)n(ws.)39 b(F)o(or)25 b(the)h(most)f(part,)h(the)f(generic)g
-(instructions)0 3159 y(gi)n(v)o(en)k(in)i(this)f(document)f(should)g
+(instructions)0 3784 y(gi)n(v)o(en)k(in)i(this)f(document)f(should)g
 (be)h(suf)n(\002cient)g(to)h(get)f(Mailman)g(w)o(orking)f(on)h(an)o(y)f
-(supported)f(platform.)54 b(Some)30 b(operating)0 3259
+(supported)f(platform.)54 b(Some)30 b(operating)0 3884
 y(systems)21 b(ha)n(v)o(e)e(additional)g(recommended)e(installation)j
-(or)g(con\002guration)d(instructions.)0 3543 y Fn(15.1)100
-b(GNU/Lin)o(ux)28 b(issues)0 3746 y Fw(Linux)18 b(seems)i(to)g(be)f
+(or)g(con\002guration)d(instructions.)0 4169 y Fn(15.1)100
+b(GNU/Lin)o(ux)28 b(issues)0 4372 y Fw(Linux)18 b(seems)i(to)g(be)f
 (the)h(most)f(popular)f(platform)g(for)h(running)e(Mailman.)24
 b(Here)c(are)f(some)g(hints)h(on)f(getting)g(Mailman)g(to)g(run)g(on)0
-3846 y(Linux:)125 4074 y Fd(\017)41 b Fw(If)f(you)f(are)h(getting)f
+4471 y(Linux:)125 4701 y Fd(\017)41 b Fw(If)f(you)f(are)h(getting)f
 (errors)g(with)i(hard)e(link)h(creations)f(and/or)g(you)g(are)h(using)g
-(a)g(special)h(secure)e(k)o(ernel)h(\(secure-)208 4174
+(a)g(special)h(secure)e(k)o(ernel)h(\(secure-)208 4801
 y(linux/openw)o(all/grsecurity\),)23 b(see)28 b(the)f(\002le)g(`)p
-Fv(contr)q(ib/README.chec)o(k)p 2348 4174 23 4 v 24 w(per)r(ms)p
-2582 4174 V 26 w(g)o(rsecur)q(ity)p Fw(')f(in)h(the)g(Mailman)f(source)
-g(dis-)208 4273 y(trib)n(ution.)208 4406 y(Note)20 b(that)g(if)g(you)g
+Fv(contr)q(ib/README.chec)o(k)p 2348 4801 23 4 v 24 w(per)r(ms)p
+2582 4801 V 26 w(g)o(rsecur)q(ity)p Fw(')f(in)h(the)g(Mailman)f(source)
+g(dis-)208 4901 y(trib)n(ution.)208 5033 y(Note)20 b(that)g(if)g(you)g
 (are)g(using)g(Linux)f(Mandrak)o(e)f(in)i(secure)g(mode,)f(you)h(are)g
-(probably)e(concerned)f(by)j(this.)125 4571 y Fd(\017)41
+(probably)e(concerned)f(by)j(this.)125 5199 y Fd(\017)41
 b Fw(Apparently)16 b(Mandrak)o(e)i(9.0)g(changed)f(the)h(permissions)g
 (on)h(gcc,)f(so)i(if)f(you)f(b)n(uild)g(as)h(the)g Fl(mailman)f
-Fw(user)m(,)h(you)f(need)g(to)h(be)208 4671 y(sure)h
-Fl(mailman)f Fw(is)i(in)g(the)f Fl(cctools)f Fw(group.)125
-4836 y Fd(\017)41 b Fw(If)19 b(you)g(installed)g(Python)f(from)h(your)f
-(Linux)h(distrib)n(ution')-5 b(s)18 b(package)h(manager)f(\(e.g.)24
-b(.rpms)19 b(for)f(Redhat-deri)n(v)o(ed)f(systems)208
-4936 y(or)j(.deb)h(for)f(Debian\),)g(you)g(must)h(install)h(the)f
-(\223de)n(v)o(elopment\224)d(package)i(of)h(Python,)f(or)g(you)h(may)f
-(not)h(get)g(e)n(v)o(erything)d(you)208 5035 y(need.)208
-5168 y(F)o(or)h(e)o(xample,)g(using)h(Python)f(2.2)g(on)h(Debian,)g
-(you)f(will)i(need)e(to)i(install)g(the)f Fl(python2.2-dev)e
-Fw(package.)24 b(On)c(Redhat,)208 5268 y(you)f(probably)f(need)h(the)h
-Fl(python2-devel)f Fw(package.)208 5400 y(If)h(you)f(install)i(Python)e
-(from)g(source,)g(you)g(should)g(be)i(\002ne.)p 0 5549
-3901 4 v 3808 5649 a Fo(25)p eop end
+Fw(user)m(,)h(you)f(need)g(to)h(be)208 5299 y(sure)h
+Fl(mailman)f Fw(is)i(in)g(the)f Fl(cctools)f Fw(group.)p
+0 5549 3901 4 v 3808 5649 a Fo(25)p eop end
 %%Page: 26 26
-TeXDict begin 26 25 bop 208 83 a Fw(One)20 b(symptom)f(of)h(this)h
+TeXDict begin 26 25 bop 125 83 a Fd(\017)41 b Fw(If)19
+b(you)g(installed)g(Python)f(from)h(your)f(Linux)h(distrib)n(ution')-5
+b(s)18 b(package)h(manager)f(\(e.g.)24 b(.rpms)19 b(for)f(Redhat-deri)n
+(v)o(ed)f(systems)208 183 y(or)j(.deb)h(for)f(Debian\),)g(you)g(must)h
+(install)h(the)f(\223de)n(v)o(elopment\224)d(package)i(of)h(Python,)f
+(or)g(you)h(may)f(not)h(get)g(e)n(v)o(erything)d(you)208
+282 y(need.)208 415 y(F)o(or)h(e)o(xample,)g(using)h(Python)f(2.2)g(on)
+h(Debian,)g(you)f(will)i(need)e(to)i(install)g(the)f
+Fl(python2.2-dev)e Fw(package.)24 b(On)c(Redhat,)208
+515 y(you)f(probably)f(need)h(the)h Fl(python2-devel)f
+Fw(package.)208 648 y(If)h(you)f(install)i(Python)e(from)g(source,)g
+(you)g(should)g(be)i(\002ne.)208 780 y(One)f(symptom)f(of)h(this)h
 (problem,)d(although)g(for)i(unkno)n(wn)e(reasons,)i(is)h(that)f(you)g
 (might)f(get)i(an)f(error)f(such)h(as)h(this)g(during)208
-183 y(your)d(install:)892 404 y Fk(Traceback)43 b(\(most)h(recent)g
-(call)g(last\):)982 495 y(File)g("bin/update",)f(line)h(44,)g(in)h(?)
-1071 587 y(import)f(paths)892 678 y(ImportError:)f(No)h(module)g(named)
-g(paths)892 769 y(make:)1161 782 y(***)1340 769 y([update])g(Error)g(1)
-208 1131 y Fw(If)24 b(this)i(happens,)e(install)i(the)f(Python)f(de)n
-(v)o(elopment)e(package)h(and)i(try)f Fr(con\002gur)o(e)h
-Fw(and)f Fr(mak)o(e)h(install)h Fw(again.)38 b(Or)25
-b(install)208 1230 y(the)20 b(latest)h(v)o(ersion)e(of)h(Python)f(from)
-g(source,)g(a)n(v)n(ailable)h(from)f Fv(http://www)l(.p)n(ython.org)-6
-b Fw(.)208 1360 y(This)25 b(problem)f(can)h(manifest)g(itself)h(in)f
-(other)g(Linux)f(distrib)n(utions)g(in)i(dif)n(ferent)d(w)o(ays,)k
-(although)d(usually)g(it)i(appears)f(as)208 1460 y Fl(ImportErrors)p
-Fw(.)0 1742 y Fn(15.2)100 b(BSD)29 b(issues)0 1945 y
-Fw(V)-5 b(i)n(v)o(ek)26 b(Khera)h(writes)h(that)f(some)h(BSDs)g(do)f
-(nightly)f(security)h(scans)h(for)e(setuid)i(\002le)g(changes.)45
-b(setgid)27 b(directories)g(also)g(come)0 2045 y(up)c(on)g(the)h(scan)g
-(when)f(the)o(y)f(change.)34 b(Also,)25 b(the)e(setgid)h(bit)g(is)g
-(not)f(necessary)g(on)g(BSD)i(systems)f(because)f(group)f(o)n(wnership)
-g(is)0 2144 y(automatically)d(inherited)h(on)g(\002les)h(created)f(in)h
+880 y(your)d(install:)892 1104 y Fk(Traceback)43 b(\(most)h(recent)g
+(call)g(last\):)982 1196 y(File)g("bin/update",)f(line)h(44,)g(in)h(?)
+1071 1287 y(import)f(paths)892 1378 y(ImportError:)f(No)h(module)g
+(named)g(paths)892 1469 y(make:)1161 1482 y(***)1340
+1469 y([update])g(Error)g(1)208 1834 y Fw(If)24 b(this)i(happens,)e
+(install)i(the)f(Python)f(de)n(v)o(elopment)e(package)h(and)i(try)f
+Fr(con\002gur)o(e)h Fw(and)f Fr(mak)o(e)h(install)h Fw(again.)38
+b(Or)25 b(install)208 1933 y(the)20 b(latest)h(v)o(ersion)e(of)h
+(Python)f(from)g(source,)g(a)n(v)n(ailable)h(from)f Fv(http://www)l(.p)
+n(ython.org)-6 b Fw(.)208 2066 y(This)25 b(problem)f(can)h(manifest)g
+(itself)h(in)f(other)g(Linux)f(distrib)n(utions)g(in)i(dif)n(ferent)d
+(w)o(ays,)k(although)d(usually)g(it)i(appears)f(as)208
+2166 y Fl(ImportErrors)p Fw(.)0 2451 y Fn(15.2)100 b(BSD)29
+b(issues)0 2654 y Fw(V)-5 b(i)n(v)o(ek)26 b(Khera)h(writes)h(that)f
+(some)h(BSDs)g(do)f(nightly)f(security)h(scans)h(for)e(setuid)i(\002le)
+g(changes.)45 b(setgid)27 b(directories)g(also)g(come)0
+2753 y(up)c(on)g(the)h(scan)g(when)f(the)o(y)f(change.)34
+b(Also,)25 b(the)e(setgid)h(bit)g(is)g(not)f(necessary)g(on)g(BSD)i
+(systems)f(because)f(group)f(o)n(wnership)g(is)0 2853
+y(automatically)d(inherited)h(on)g(\002les)h(created)f(in)h
 (directories.)k(On)c(other)h(U)t Fp(N)t(I)t(X)r Fw(es,)g(this)f(only)f
-(happens)f(when)h(the)h(directory)e(has)i(the)0 2244
-y(setgid)f(bit)h(turned)d(on.)0 2391 y(T)-7 b(o)29 b(install)h(without)
+(happens)f(when)h(the)h(directory)e(has)i(the)0 2953
+y(setgid)f(bit)h(turned)d(on.)0 3100 y(T)-7 b(o)29 b(install)h(without)
 e(turning)g(on)g(the)i(setgid)f(bit)g(on)g(directories,)h(simply)e
 (pass)i(in)f(the)g Fq(DIRSETGID)f Fw(v)n(ariable)g(to)h
-Fr(mak)o(e)p Fw(,)j(after)0 2491 y(you')l(v)o(e)18 b(run)h
-Fr(con\002gur)o(e)p Fw(:)416 2729 y Fk(\045)44 b(make)g(DIRSETGID=:)f
-(install)0 3015 y Fw(This)20 b(disables)h(the)f Fr(chmod)g(g+s)h
-Fw(command)e(on)g(installed)h(directories.)0 3298 y Fn(15.3)100
-b(MacOSX)29 b(issues)0 3500 y Fw(Man)o(y)22 b(people)g(run)h(Mailman)g
+Fr(mak)o(e)p Fw(,)j(after)0 3199 y(you')l(v)o(e)18 b(run)h
+Fr(con\002gur)o(e)p Fw(:)416 3437 y Fk(\045)44 b(make)g(DIRSETGID=:)f
+(install)0 3724 y Fw(This)20 b(disables)h(the)f Fr(chmod)g(g+s)h
+Fw(command)e(on)g(installed)h(directories.)0 4009 y Fn(15.3)100
+b(MacOSX)29 b(issues)0 4212 y Fw(Man)o(y)22 b(people)g(run)h(Mailman)g
 (on)g(MacOSX.)g(Here)g(are)g(some)g(pointers)g(that)g(ha)n(v)o(e)g
 (been)f(collected)h(on)g(getting)f(Mailman)h(to)g(run)0
-3600 y(on)d(MacOSX.)125 3816 y Fd(\017)41 b Fw(Jaguar)17
+4311 y(on)d(MacOSX.)125 4541 y Fd(\017)41 b Fw(Jaguar)17
 b(\(MacOSX)i(10.2\))e(comes)i(with)f(Python)g(2.2.)24
 b(While)19 b(this)g(isn')o(t)f(the)h(v)o(ery)f(latest)h(stable)g(v)o
-(ersion)e(of)i(Python,)e(it)j(ought)208 3915 y(to)g(be)g(suf)n
-(\002cient)g(to)g(run)f(Mailman)h(2.1.)125 4076 y Fd(\017)41
+(ersion)e(of)i(Python,)e(it)j(ought)208 4641 y(to)g(be)g(suf)n
+(\002cient)g(to)g(run)f(Mailman)h(2.1.)125 4807 y Fd(\017)41
 b Fw(Da)n(vid)24 b(B.)i(O'Donnell)e(has)h(a)g(web)g(page)f(describing)g
 (his)h(con\002guration)d(of)j(Mailman)f(2.0.13)f(and)i(Post\002x)g(on)f
-(MacOSX)208 4175 y(Serv)o(er)-5 b(.)208 4305 y Fv(http://www)l
+(MacOSX)208 4906 y(Serv)o(er)-5 b(.)208 5039 y Fv(http://www)l
 (.afp548.com/Ar)s(t)o(icle)o(s/mail)o(/p)n(yth)o(on)o(-mail)o(man)o
-(.html)125 4465 y Fd(\017)41 b Fw(Kathleen)19 b(W)-7
+(.html)125 5205 y Fd(\017)41 b Fw(Kathleen)19 b(W)-7
 b(ebb)20 b(posted)g(her)g(e)o(xperiences)e(in)i(getting)g(Mailman)f
-(running)f(on)i(Jaguar)g(using)f(Sendmail.)208 4595 y
+(running)f(on)i(Jaguar)g(using)f(Sendmail.)208 5338 y
 Fv(http://mail.p)n(ython.or)o(g/p)o(ip)o(er)r(mai)o(l/ma)o(il)o(man-u)o
-(sers/20)o(02)o(-Octobe)o(r/0)o(22)o(94)o(4.h)o(tml)125
-4756 y Fd(\017)41 b Fw(P)o(anther)17 b(serv)o(er)h(\(MacOSX)h(10.3\))e
-(comes)i(with)g(Mailman;)f(Y)-9 b(our)18 b(operating)f(system)i(should)
-f(contain)g(documentation)d(that)208 4855 y(will)22 b(help)g(you,)f
-(and)h(Apple)f(has)h(a)h(tech)f(document)e(about)h(a)h(problem)e(you)h
-(might)h(encounter)e(running)g(Mailman)h(on)g(Mac)208
-4955 y(OS)f(X)h(Serv)o(er)e(10.3:)208 5085 y Fv(http://docs)o(.inf)n(o)
-m(.appl)o(e)o(.)o(com/ar)s(t)o(icle)n(.html)o(?a)o(r)s(tn)o(u)o(m=10)o
-(78)o(89)0 5300 y Fw(T)-6 b(erry)27 b(Allen)h(pro)o(vides)e(the)h
-(follo)n(wing)g(detailed)g(instructions)g(on)g(running)f(Mailman)h(on)g
-(the)h('client')f(v)o(ersion)f(of)i(OSX,)g(or)f(in)0
-5400 y(earlier)20 b(v)o(ersions)f(of)h(OSX:)p 0 5549
-3901 4 v 0 5649 a Fo(26)2282 b(15)83 b(Platf)n(or)r(m)24
+(sers/20)o(02)o(-Octobe)o(r/0)o(22)o(94)o(4.h)o(tml)p
+0 5549 3901 4 v 0 5649 a Fo(26)2282 b(15)83 b(Platf)n(or)r(m)24
 b(and)g(oper)o(ating)g(system)e(notes)p eop end
 %%Page: 27 27
-TeXDict begin 27 26 bop 0 83 a Fw(Mac)26 b(OSX)h(10.3)e(and)h(onw)o
-(ards)f(has)i(the)f(basics)g(for)g(a)h(successful)f(Mailman)f
-(installation.)43 b(Users)27 b(of)e(earlier)h(v)o(ersions)g(of)f(Mac)0
-183 y(OSX)f(contains)f(Sendmail)g(and)g(those)g(users)h(should)f(look)f
+TeXDict begin 27 26 bop 125 83 a Fd(\017)41 b Fw(P)o(anther)17
+b(serv)o(er)h(\(MacOSX)h(10.3\))e(comes)i(with)g(Mailman;)f(Y)-9
+b(our)18 b(operating)f(system)i(should)f(contain)g(documentation)d
+(that)208 183 y(will)22 b(help)g(you,)f(and)h(Apple)f(has)h(a)h(tech)f
+(document)e(about)h(a)h(problem)e(you)h(might)h(encounter)e(running)g
+(Mailman)h(on)g(Mac)208 282 y(OS)f(X)h(Serv)o(er)e(10.3:)208
+415 y Fv(http://docs)o(.inf)n(o)m(.appl)o(e)o(.)o(com/ar)s(t)o(icle)n
+(.html)o(?a)o(r)s(tn)o(u)o(m=10)o(78)o(89)0 645 y Fw(T)-6
+b(erry)27 b(Allen)h(pro)o(vides)e(the)h(follo)n(wing)g(detailed)g
+(instructions)g(on)g(running)f(Mailman)h(on)g(the)h('client')f(v)o
+(ersion)f(of)i(OSX,)g(or)f(in)0 745 y(earlier)20 b(v)o(ersions)f(of)h
+(OSX:)0 891 y(Mac)26 b(OSX)h(10.3)e(and)h(onw)o(ards)f(has)i(the)f
+(basics)g(for)g(a)h(successful)f(Mailman)f(installation.)43
+b(Users)27 b(of)e(earlier)h(v)o(ersions)g(of)f(Mac)0
+991 y(OSX)f(contains)f(Sendmail)g(and)g(those)g(users)h(should)f(look)f
 (at)i(the)g(Sendmail)f(installation)g(section)g(for)g(tips.)36
-b(Y)-9 b(ou)23 b(should)f(follo)n(w)0 282 y(the)27 b(basic)f
+b(Y)-9 b(ou)23 b(should)f(follo)n(w)0 1091 y(the)27 b(basic)f
 (installation)g(steps)i(as)f(described)e(earlier)h(in)h(this)g(manual,)
 g(substituting)f(as)h(appropriate,)e(the)i(steps)g(outlined)e(in)i
-(this)0 382 y(section.)0 529 y(By)d(def)o(ault,)g(Mac)g(OSX)g(10.3)e
+(this)0 1190 y(section.)0 1337 y(By)d(def)o(ault,)g(Mac)g(OSX)g(10.3)e
 ('client')h(v)o(ersion)g(does)g(not)h(ha)n(v)o(e)f(a)h(fully)f
 (functional)f(v)o(ersion)g(of)i(Post\002x.)35 b(Setting)24
-b(up)f(a)h(w)o(orking)0 628 y(MT)-8 b(A)19 b(such)f(as)h(Post\002x)g
+b(up)f(a)h(w)o(orking)0 1437 y(MT)-8 b(A)19 b(such)f(as)h(Post\002x)g
 (is)h(be)o(yond)c(the)i(scope)g(of)h(this)g(guide)e(and)h(you)g(should)
 f(refer)h(to)h Fv(http://www)l(.post\002x.org)14 b Fw(for)k(tips)h(on)f
-(getting)0 728 y(Post\002x)k(running.)k(An)21 b(easy)g(w)o(ay)h(to)f
+(getting)0 1537 y(Post\002x)k(running.)k(An)21 b(easy)g(w)o(ay)h(to)f
 (set)h(Post\002x)g(up)f(is)h(to)g(install)f(and)g(run)g(Post\002x)g
 (Enabler)m(,)f(a)i(stand-alone)d(tool)j(for)e(con\002guring)0
-828 y(Post\002x)g(on)g(Mac)h(OSX,)f(a)n(v)n(ailable)g(from)f
+1636 y(Post\002x)g(on)g(Mac)h(OSX,)f(a)n(v)n(ailable)g(from)f
 Fv(http://www)l(.roadstead.com/w)o(eb)n(l)o(og)o(/T)-9
 b(u)o(tor)q(i)o(als/P)k(ost\002xEnab)n(le)o(r)l(.ht)o(ml)f
-Fw(.)0 975 y(Lik)o(e)n(wise,)25 b(Mac)g(OSX)g('client')e(v)o(ersion)h
+Fw(.)0 1783 y(Lik)o(e)n(wise,)25 b(Mac)g(OSX)g('client')e(v)o(ersion)h
 (from)f(10.1)g(onw)o(ards)h(includes)f(a)i(w)o(orking)e(Apache)g
 (webserv)o(er)-5 b(.)37 b(This)25 b(is)g(switched)f(on)0
-1074 y(using)c(the)h(System)g(Preferences)e(control)h(panel)g(under)f
+1883 y(using)c(the)h(System)g(Preferences)e(control)h(panel)g(under)f
 (the)i('Sharing)e(tab'.)26 b(A)21 b(useful)f(tool)h(for)f
-(con\002guring)e(the)i(Apache)g(on)g(Mac)0 1174 y(OSX)h(is)g(W)-7
+(con\002guring)e(the)i(Apache)g(on)g(Mac)0 1982 y(OSX)h(is)g(W)-7
 b(ebmin,)20 b(which)f(can)h(be)g(obtained)f(from)g Fv(http://www)l(.w)o
-(ebmin.com)l Fw(.)0 1321 y(W)-7 b(ebmin)20 b(can)g(also)h(perform)d
+(ebmin.com)l Fw(.)0 2129 y(W)-7 b(ebmin)20 b(can)g(also)h(perform)d
 (con\002guration)g(for)i(other)f(system)i(tasks,)g(including)d
 (Post\002x,)j(adding)d(jobs)j(to)f(your)f(crontab,)g(adding)0
-1420 y(user)h(and)g(groups,)e(plus)i(adding)f(startup)h(and)f(shutdo)n
-(wn)g(jobs.)0 1567 y(In)26 b(a)g(stock)g(installation)g(of)f(OSX,)i
+2229 y(user)h(and)g(groups,)e(plus)i(adding)f(startup)h(and)f(shutdo)n
+(wn)g(jobs.)0 2376 y(In)26 b(a)g(stock)g(installation)g(of)f(OSX,)i
 (the)f(requirement)e(for)h(Mailman)h(is)h(to)f(ha)n(v)o(e)f(Python)g
 (installed.)42 b(Python)25 b(is)i(not)f(installed)g(by)0
-1667 y(def)o(ault,)17 b(so)g(it)g(is)h(advised)e(that)h(you)f(install)h
+2475 y(def)o(ault,)17 b(so)g(it)g(is)h(advised)e(that)h(you)f(install)h
 (the)g(de)n(v)o(eloper')-5 b(s)15 b(tools)i(package,)f(which)g(may)g
 (ha)n(v)o(e)h(been)f(pro)o(vided)e(with)j(your)f(system.)0
-1766 y(It)23 b(can)f(also)h(be)g(do)n(wnloaded)d(from)i(the)g(Apple)g
+2575 y(It)23 b(can)f(also)h(be)g(do)n(wnloaded)d(from)i(the)g(Apple)g
 (de)n(v)o(eloper)f(site)i(at)g Fv(http://connect.apple)o(.com)-6
 b Fw(.)33 b(Not)23 b(only)f(is)i(the)e(de)n(v)o(eloper)f(tools)0
-1866 y(package)k(an)i(essential)h(requirement)c(for)j(installing)f
+2674 y(package)k(an)i(essential)h(requirement)c(for)j(installing)f
 (Mailman,)i(b)n(ut)f(it)g(will)h(come)e(in)h(handy)f(at)h(a)h(later)f
-(date)f(should)g(you)g(need)0 1966 y(other)19 b(tools.)25
+(date)f(should)g(you)g(need)0 2774 y(other)19 b(tools.)25
 b(The)20 b(de)n(v)o(eloper')-5 b(s)18 b(tools)j(are)f(also)g(kno)n(w)f
-(by)h(the)g(name)g(XCode)g(tools.)0 2113 y(As)h(a)g(minimum,)d(the)i
+(by)h(the)g(name)g(XCode)g(tools.)0 2921 y(As)h(a)g(minimum,)d(the)i
 (Python)f(v)o(ersion)g(should)g(be)i(2.2,)e(b)n(ut)h(2.3)g(is)h
-(recommended.)0 2259 y(If)f(you)g(wish)h(to)g(add)f(a)h(user)f(and)g
+(recommended.)0 3068 y(If)f(you)g(wish)h(to)g(add)f(a)h(user)f(and)g
 (group)f(using)h(the)h(command)d(line)j(in)g(OSX)g(instead)f(of)h(via)f
 (W)-7 b(ebmin)21 b(or)f(another)f(GUI)i(interf)o(ace,)0
-2359 y(open)d(your)f(terminal)h(application)f(and)h(follo)n(w)g(the)h
+3167 y(open)d(your)f(terminal)h(application)f(and)h(follo)n(w)g(the)h
 (commands)e(as)i(indicated)f(belo)n(w)g(-)h(do)f(not)g(type)g(the)h
-(comments)f(follo)n(wing)f(the)0 2459 y(`)p Fl(#)p Fw(')j(since)g(the)o
-(y)g(are)g(just)h(notes:)236 2697 y Fk(sudo)44 b(tcsh)236
-2788 y(niutil)g(-create)g(/)g(/users/mailman)236 2879
-y(niutil)g(-createprop)f(/)i(/users/mailman)d(name)i(mailman)236
-2971 y(#)h(Note)f(that)g(xxx)h(is)f(a)h(free)f(user)g(ID)h(number)e(on)
-i(your)f(system)236 3062 y(niutil)g(-createprop)f(/)i(/users/mailman)d
-(uid)i(xxx)236 3153 y(niutil)g(-createprop)f(/)i(/users/mailman)d(home)
-i(/usr/local/mailman)236 3245 y(mkdir)g(-p)h(/usr/local/mailman)236
-3336 y(niutil)f(-createprop)f(/)i(/users/mailman)d(shell)i(/bin/tcsh)
-236 3427 y(passwd)g(mailman)236 3519 y(#)h(To)f(prevent)g(malicious)f
+(comments)f(follo)n(wing)f(the)0 3267 y(`)p Fl(#)p Fw(')j(since)g(the)o
+(y)g(are)g(just)h(notes:)p 0 5549 3901 4 v 0 5649 a Fo(15.3)84
+b(MacOSX)23 b(issues)2972 b(27)p eop end
+%%Page: 28 28
+TeXDict begin 28 27 bop 236 174 a Fk(sudo)44 b(tcsh)236
+266 y(niutil)g(-create)g(/)g(/users/mailman)236 357 y(niutil)g
+(-createprop)f(/)i(/users/mailman)d(name)i(mailman)236
+448 y(#)h(Note)f(that)g(xxx)h(is)f(a)h(free)f(user)g(ID)h(number)e(on)i
+(your)f(system)236 540 y(niutil)g(-createprop)f(/)i(/users/mailman)d
+(uid)i(xxx)236 631 y(niutil)g(-createprop)f(/)i(/users/mailman)d(home)i
+(/usr/local/mailman)236 722 y(mkdir)g(-p)h(/usr/local/mailman)236
+814 y(niutil)f(-createprop)f(/)i(/users/mailman)d(shell)i(/bin/tcsh)236
+905 y(passwd)g(mailman)236 996 y(#)h(To)f(prevent)g(malicious)f
 (hacking,)h(supply)g(a)g(secure)g(password)g(here)236
-3610 y(niutil)g(-create)g(/)g(/groups/mailman)236 3701
+1088 y(niutil)g(-create)g(/)g(/groups/mailman)236 1179
 y(niutil)g(-createprop)f(/)i(/groups/mailman)d(name)i(mailman)236
-3793 y(#)h(Note)f(that)g(xxx)h(is)f(a)h(free)f(group)g(ID)g(number)g
-(on)h(your)f(system)236 3884 y(niutil)g(-createprop)f(/)i
-(/groups/mailman)d(gid)i(xxx)236 3975 y(niutil)g(-createprop)f(/)i
-(/groups/mailman)d(passwd)i(')2254 3988 y(*)2299 3975
-y(')236 4067 y(niutil)g(-createprop)f(/)i(/groups/mailman)d(users)i
-('mailman')236 4158 y(chown)g(mailman:mailman)f(/usr/local/mailman)236
-4249 y(cd)i(/usr/local/mailman)236 4341 y(chmod)f(a+rx,g+ws)g(.)236
-4432 y(exit)236 4523 y(su)h(mailman)0 4810 y Fw(F)o(or)21
+1270 y(#)h(Note)f(that)g(xxx)h(is)f(a)h(free)f(group)g(ID)g(number)g
+(on)h(your)f(system)236 1362 y(niutil)g(-createprop)f(/)i
+(/groups/mailman)d(gid)i(xxx)236 1453 y(niutil)g(-createprop)f(/)i
+(/groups/mailman)d(passwd)i(')2254 1466 y(*)2299 1453
+y(')236 1544 y(niutil)g(-createprop)f(/)i(/groups/mailman)d(users)i
+('mailman')236 1636 y(chown)g(mailman:mailman)f(/usr/local/mailman)236
+1727 y(cd)i(/usr/local/mailman)236 1818 y(chmod)f(a+rx,g+ws)g(.)236
+1910 y(exit)236 2001 y(su)h(mailman)0 2287 y Fw(F)o(or)21
 b(setting)g(up)f(Apache)g(on)h(OSX)g(to)g(handle)f(Mailman,)h(the)g
 (steps)g(are)g(almost)g(identical)f(and)h(the)g(con\002guration)d
-(\002le)k(on)e(a)i(stock)0 4909 y(Mac)e(OSX)h(Client)g(v)o(ersion)e(is)
+(\002le)k(on)e(a)i(stock)0 2387 y(Mac)e(OSX)h(Client)g(v)o(ersion)e(is)
 i(stored)f(in)g(the)g(nearly)f(standard)g(location)h(of)g(`)p
-Fv(/etc/httpd/httpd.conf)o Fw('.)0 5056 y(The)40 b(AFP548.com)e(site)k
+Fv(/etc/httpd/httpd.conf)o Fw('.)0 2534 y(The)40 b(AFP548.com)e(site)k
 (has)e(a)h(time-sa)n(ving)e(automated)g(startup)h(item)h(creator)e(for)
-h(Mailman,)k(which)c(can)g(be)g(found)f(at)0 5156 y Fv(http://www)l
+h(Mailman,)k(which)c(can)g(be)g(found)f(at)0 2633 y Fv(http://www)l
 (.afp548.com/Sof)o(tw)o(ar)o(e/Mai)o(lma)o(nSta)o(r)s(tu)o(p)m(.ta)o(r)
-l(.gz)p 0 5549 3901 4 v 0 5649 a Fo(15.3)84 b(MacOSX)23
-b(issues)2972 b(27)p eop end
-%%Page: 28 28
-TeXDict begin 28 27 bop 0 83 a Fw(T)-7 b(o)23 b(install)g(it,)h(cop)o
-(y)d(it)j(into)e(your)f(`)p Fv(/Libr)o(ar)r(y/Star)s(tupItems)p
-Fw(')e(directory)-5 b(.)30 b(As)23 b(the)g(root)e(or)i(superuser)m(,)e
-(from)h(the)g(terminal,)g(enter)h(the)0 183 y(follo)n(wing:)236
-421 y Fk(gunzip)44 b(MailmanStartup.tar.gz)236 512 y(tar)h(xvf)f
-(MailmanStartup.tar)0 799 y Fw(It)20 b(will)h(create)f(the)h(startup)e
+l(.gz)0 2780 y Fw(T)-7 b(o)23 b(install)g(it,)h(cop)o(y)d(it)j(into)e
+(your)f(`)p Fv(/Libr)o(ar)r(y/Star)s(tupItems)p Fw(')e(directory)-5
+b(.)30 b(As)23 b(the)g(root)e(or)i(superuser)m(,)e(from)h(the)g
+(terminal,)g(enter)h(the)0 2880 y(follo)n(wing:)236 3118
+y Fk(gunzip)44 b(MailmanStartup.tar.gz)236 3209 y(tar)h(xvf)f
+(MailmanStartup.tar)0 3496 y Fw(It)20 b(will)h(create)f(the)h(startup)e
 (item)i(for)e(you)g(so)i(that)f(when)g(you)f(reboot,)g(Mailman)g(will)i
 (start)g(up.)p 0 5549 3901 4 v 0 5649 a Fo(28)2282 b(15)83
 b(Platf)n(or)r(m)24 b(and)g(oper)o(ating)g(system)e(notes)p

Modified: trunk/doc/mailman-install.txt
===================================================================
--- trunk/doc/mailman-install.txt	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-install.txt	2012-05-20 12:09:31 UTC (rev 716)
@@ -12,7 +12,7 @@
    barry (at) list dot org
 
    Release 2.1
-   September 9, 2010
+   May 15, 2012
 
                                  Front Matter
 
@@ -448,6 +448,13 @@
 
   6.1.2 Virtual domains
 
+   Note: This section describes how to integrate Mailman with Postfix for
+   automatic generation of Postfix virtual_alias_maps for Mailman list
+   addresses. Mailman's support of virtual domains is limited in that
+   list names must be globally unique within a single Mailman instance,
+   i.e., two lists may not have the same name even if they are in
+   different domains.
+
    Postfix 2.0 supports ``virtual alias domains'', essentially what used
    to be called ``Postfix-style virtual domains'' in earlier Postfix
    versions. To make virtual alias domains work with Mailman, you need to
@@ -459,10 +466,12 @@
    First, you need to set up the Postfix virtual alias domains as
    described in the Postfix documentation (see Postfix's virtual(5)
    manpage). Note that it's your responsibility to include the
-   virtual-alias.domain anything line as described manpage; Mailman will
-   not include this line in virtual-mailman. You are highly encouraged to
-   make sure your virtual alias domains are working properly before
-   integrating with Mailman.
+   virtual-alias.domain anything line as described manpage (in recent
+   Postfix this is not required if the domain is included in
+   virtual_alias_domains in main.cf); Mailman will not include this line
+   in virtual-mailman. You are highly encouraged to make sure your
+   virtual alias domains are working properly before integrating with
+   Mailman.
 
    Next, add a path to Postfix's virtual_alias_maps variable, pointing to
    the virtual-mailman file, e.g.:
@@ -541,8 +550,10 @@
 
    Note: This section is derived from Nigel Metheringham's ``HOWTO -
    Using Exim and Mailman together'', which covers Mailman 2.0.x and Exim
-   3. It has been updated to cover Mailman 2.1 and Exim 4. The original
-   document is here: http://www.exim.org/howto/mailman.html.
+   3. It has been updated to cover Mailman 2.1 and Exim 4. The updated
+   document is here: http://www.exim.org/howto/mailman21.html and is
+   recommended over the information in the subsections below if you are
+   using Exim 4.
 
    There is no Mailman configuration needed other than the standard
    options detailed in the Mailman install documentation. The Exim
@@ -1107,7 +1118,7 @@
    Mailman installation by if you change these.
 
    You should make any changes to mm_cfg.py using the account you
-   installed Mailman under in the 14 section.
+   installed Mailman under in the 3 section.
 
                        8 Create a site-wide mailing list
 
@@ -1326,7 +1337,7 @@
        If you see a line like
             Attempt to exec script with invalid gid 51, expected 99
        you will need to reinstall Mailman, specifying the proper CGI
-       group id, as described in the section.
+       group id, as described in the 3 section.
      * Problem: I send mail to the list, and get back mail saying the
        list is not found!
        Solution: You probably didn't add the necessary aliases to the
@@ -1342,7 +1353,7 @@
        files; if you see a line like
             Attempt to exec script with invalid gid 51, expected 99
        you will need to reinstall Mailman, specifying the proper mail
-       group id as described in the section.
+       group id as described in the 3 section.
      * Problem: I use Postfix as my mail server and the mail wrapper
        programs are logging complaints about the wrong GID.
        Solution: Make sure the $prefix/data/aliases.db file is user owned
@@ -1538,7 +1549,7 @@
 
                             About this document ...
 
-   GNU Mailman - Installation Manual, September 9, 2010, Release 2.1
+   GNU Mailman - Installation Manual, May 15, 2012, Release 2.1
 
    This document was generated using the LaTeX2HTML translator.
 
@@ -1593,4 +1604,4 @@
    Previous Page Up one Level Next Page GNU Mailman - Installation Manual
      _________________________________________________________________
 
-   Release 2.1, documentation updated on September 9, 2010.
+   Release 2.1, documentation updated on May 15, 2012.

Modified: trunk/doc/mailman-member/about.html
===================================================================
--- trunk/doc/mailman-member/about.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/about.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -48,7 +48,7 @@
 About this document ...</a>
 </h1>
  <strong>GNU Mailman - List Member Manual</strong>,
-September 9, 2010, Release 2.1
+May 15, 2012, Release 2.1
 <p> This document was generated using the <a
     href="http://saftsack.fs.uni-bayreuth.de/~latex2ht/">
     <strong>LaTeX</strong>2<tt>HTML</tt></a> translator.
@@ -104,7 +104,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/contents.html
===================================================================
--- trunk/doc/mailman-member/contents.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/contents.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -151,7 +151,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/front.html
===================================================================
--- trunk/doc/mailman-member/front.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/front.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -102,7 +102,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/index.html
===================================================================
--- trunk/doc/mailman-member/index.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/index.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -46,7 +46,7 @@
 <p><b><font size="+2">Terri Oda</font></b></p>
 <p>terri(at)zone12.com</p>
 <p><strong>Release 2.1</strong><br />
-<strong>September 9, 2010</strong></p>
+<strong>May 15, 2012</strong></p>
 <p></p>
 </div>
 </div>
@@ -163,7 +163,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/mailman-member.html
===================================================================
--- trunk/doc/mailman-member/mailman-member.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/mailman-member.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -46,7 +46,7 @@
 <p><b><font size="+2">Terri Oda</font></b></p>
 <p>terri(at)zone12.com</p>
 <p><strong>Release 2.1</strong><br />
-<strong>September 9, 2010</strong></p>
+<strong>May 15, 2012</strong></p>
 <p></p>
 </div>
 </div>
@@ -163,7 +163,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node10.html
===================================================================
--- trunk/doc/mailman-member/node10.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node10.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -175,7 +175,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node11.html
===================================================================
--- trunk/doc/mailman-member/node11.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node11.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -106,7 +106,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node12.html
===================================================================
--- trunk/doc/mailman-member/node12.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node12.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -103,7 +103,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node13.html
===================================================================
--- trunk/doc/mailman-member/node13.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node13.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -174,7 +174,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node14.html
===================================================================
--- trunk/doc/mailman-member/node14.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node14.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -167,7 +167,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node15.html
===================================================================
--- trunk/doc/mailman-member/node15.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node15.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -114,7 +114,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node16.html
===================================================================
--- trunk/doc/mailman-member/node16.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node16.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -147,7 +147,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node17.html
===================================================================
--- trunk/doc/mailman-member/node17.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node17.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -161,7 +161,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node18.html
===================================================================
--- trunk/doc/mailman-member/node18.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node18.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -126,7 +126,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node19.html
===================================================================
--- trunk/doc/mailman-member/node19.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node19.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -106,7 +106,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node20.html
===================================================================
--- trunk/doc/mailman-member/node20.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node20.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -142,7 +142,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node21.html
===================================================================
--- trunk/doc/mailman-member/node21.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node21.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -135,7 +135,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node22.html
===================================================================
--- trunk/doc/mailman-member/node22.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node22.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -111,7 +111,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node23.html
===================================================================
--- trunk/doc/mailman-member/node23.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node23.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -133,7 +133,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node24.html
===================================================================
--- trunk/doc/mailman-member/node24.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node24.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -139,7 +139,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node25.html
===================================================================
--- trunk/doc/mailman-member/node25.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node25.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -181,7 +181,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node26.html
===================================================================
--- trunk/doc/mailman-member/node26.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node26.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -100,7 +100,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node27.html
===================================================================
--- trunk/doc/mailman-member/node27.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node27.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -136,7 +136,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node28.html
===================================================================
--- trunk/doc/mailman-member/node28.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node28.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -153,7 +153,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node29.html
===================================================================
--- trunk/doc/mailman-member/node29.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node29.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -124,7 +124,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node3.html
===================================================================
--- trunk/doc/mailman-member/node3.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node3.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -131,7 +131,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node30.html
===================================================================
--- trunk/doc/mailman-member/node30.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node30.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -177,7 +177,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node31.html
===================================================================
--- trunk/doc/mailman-member/node31.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node31.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -119,7 +119,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node32.html
===================================================================
--- trunk/doc/mailman-member/node32.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node32.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -116,7 +116,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node33.html
===================================================================
--- trunk/doc/mailman-member/node33.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node33.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -103,7 +103,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node34.html
===================================================================
--- trunk/doc/mailman-member/node34.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node34.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -100,7 +100,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node35.html
===================================================================
--- trunk/doc/mailman-member/node35.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node35.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -111,7 +111,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node36.html
===================================================================
--- trunk/doc/mailman-member/node36.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node36.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -135,7 +135,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node37.html
===================================================================
--- trunk/doc/mailman-member/node37.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node37.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -133,7 +133,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node38.html
===================================================================
--- trunk/doc/mailman-member/node38.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node38.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -101,7 +101,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node39.html
===================================================================
--- trunk/doc/mailman-member/node39.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node39.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -104,7 +104,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node4.html
===================================================================
--- trunk/doc/mailman-member/node4.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node4.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -105,7 +105,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node40.html
===================================================================
--- trunk/doc/mailman-member/node40.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node40.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -190,7 +190,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node41.html
===================================================================
--- trunk/doc/mailman-member/node41.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node41.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -312,7 +312,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node42.html
===================================================================
--- trunk/doc/mailman-member/node42.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node42.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -258,7 +258,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node5.html
===================================================================
--- trunk/doc/mailman-member/node5.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node5.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -134,7 +134,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node6.html
===================================================================
--- trunk/doc/mailman-member/node6.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node6.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -100,7 +100,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node7.html
===================================================================
--- trunk/doc/mailman-member/node7.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node7.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -133,7 +133,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node8.html
===================================================================
--- trunk/doc/mailman-member/node8.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node8.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -113,7 +113,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member/node9.html
===================================================================
--- trunk/doc/mailman-member/node9.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member/node9.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -187,7 +187,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on September 9, 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on May 15, 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/about.html
===================================================================
--- trunk/doc/mailman-member-es/about.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/about.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -48,7 +48,7 @@
 Sobre este documento...</a>
 </h1>
  <strong>GNU Mailman Manual del Suscriptor de Listas</strong>,
-9 de septiembre 2010, Release 2.1
+15 de mayo 2012, Release 2.1
 <p> This document was generated using the <a
     href="http://saftsack.fs.uni-bayreuth.de/~latex2ht/">
     <strong>LaTeX</strong>2<tt>HTML</tt></a> translator.
@@ -104,7 +104,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/contents.html
===================================================================
--- trunk/doc/mailman-member-es/contents.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/contents.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -153,7 +153,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/front.html
===================================================================
--- trunk/doc/mailman-member-es/front.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/front.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -102,7 +102,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/index.html
===================================================================
--- trunk/doc/mailman-member-es/index.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/index.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -46,7 +46,7 @@
 <p><b><font size="+2">Terri Oda</font></b></p>
 <p>terri(en)zone12.com</p>
 <p><strong>Release 2.1</strong><br />
-<strong>9 de septiembre 2010</strong></p>
+<strong>15 de mayo 2012</strong></p>
 <p></p>
 </div>
 </div>
@@ -162,7 +162,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/mailman-member-es.html
===================================================================
--- trunk/doc/mailman-member-es/mailman-member-es.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/mailman-member-es.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -46,7 +46,7 @@
 <p><b><font size="+2">Terri Oda</font></b></p>
 <p>terri(en)zone12.com</p>
 <p><strong>Release 2.1</strong><br />
-<strong>9 de septiembre 2010</strong></p>
+<strong>15 de mayo 2012</strong></p>
 <p></p>
 </div>
 </div>
@@ -162,7 +162,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node10.html
===================================================================
--- trunk/doc/mailman-member-es/node10.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node10.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -173,7 +173,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node11.html
===================================================================
--- trunk/doc/mailman-member-es/node11.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node11.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -106,7 +106,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node12.html
===================================================================
--- trunk/doc/mailman-member-es/node12.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node12.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -103,7 +103,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node13.html
===================================================================
--- trunk/doc/mailman-member-es/node13.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node13.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -176,7 +176,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node14.html
===================================================================
--- trunk/doc/mailman-member-es/node14.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node14.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -170,7 +170,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node15.html
===================================================================
--- trunk/doc/mailman-member-es/node15.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node15.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -113,7 +113,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node16.html
===================================================================
--- trunk/doc/mailman-member-es/node16.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node16.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -150,7 +150,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node17.html
===================================================================
--- trunk/doc/mailman-member-es/node17.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node17.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -163,7 +163,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node18.html
===================================================================
--- trunk/doc/mailman-member-es/node18.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node18.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -128,7 +128,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node19.html
===================================================================
--- trunk/doc/mailman-member-es/node19.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node19.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -106,7 +106,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node20.html
===================================================================
--- trunk/doc/mailman-member-es/node20.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node20.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -152,7 +152,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node21.html
===================================================================
--- trunk/doc/mailman-member-es/node21.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node21.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -138,7 +138,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node22.html
===================================================================
--- trunk/doc/mailman-member-es/node22.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node22.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -119,7 +119,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node23.html
===================================================================
--- trunk/doc/mailman-member-es/node23.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node23.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -133,7 +133,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node24.html
===================================================================
--- trunk/doc/mailman-member-es/node24.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node24.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -137,7 +137,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node25.html
===================================================================
--- trunk/doc/mailman-member-es/node25.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node25.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -200,7 +200,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node26.html
===================================================================
--- trunk/doc/mailman-member-es/node26.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node26.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -100,7 +100,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node27.html
===================================================================
--- trunk/doc/mailman-member-es/node27.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node27.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -140,7 +140,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node28.html
===================================================================
--- trunk/doc/mailman-member-es/node28.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node28.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -161,7 +161,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node29.html
===================================================================
--- trunk/doc/mailman-member-es/node29.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node29.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -122,7 +122,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node3.html
===================================================================
--- trunk/doc/mailman-member-es/node3.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node3.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -130,7 +130,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node30.html
===================================================================
--- trunk/doc/mailman-member-es/node30.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node30.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -186,7 +186,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node31.html
===================================================================
--- trunk/doc/mailman-member-es/node31.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node31.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -121,7 +121,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node32.html
===================================================================
--- trunk/doc/mailman-member-es/node32.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node32.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -121,7 +121,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node33.html
===================================================================
--- trunk/doc/mailman-member-es/node33.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node33.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -103,7 +103,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node34.html
===================================================================
--- trunk/doc/mailman-member-es/node34.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node34.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -99,7 +99,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node35.html
===================================================================
--- trunk/doc/mailman-member-es/node35.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node35.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -110,7 +110,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node36.html
===================================================================
--- trunk/doc/mailman-member-es/node36.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node36.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -143,7 +143,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node37.html
===================================================================
--- trunk/doc/mailman-member-es/node37.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node37.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -134,7 +134,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node38.html
===================================================================
--- trunk/doc/mailman-member-es/node38.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node38.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -101,7 +101,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node39.html
===================================================================
--- trunk/doc/mailman-member-es/node39.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node39.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -108,7 +108,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node4.html
===================================================================
--- trunk/doc/mailman-member-es/node4.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node4.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -110,7 +110,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node40.html
===================================================================
--- trunk/doc/mailman-member-es/node40.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node40.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -201,7 +201,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node41.html
===================================================================
--- trunk/doc/mailman-member-es/node41.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node41.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -313,7 +313,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node42.html
===================================================================
--- trunk/doc/mailman-member-es/node42.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node42.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -259,7 +259,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node5.html
===================================================================
--- trunk/doc/mailman-member-es/node5.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node5.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -141,7 +141,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node6.html
===================================================================
--- trunk/doc/mailman-member-es/node6.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node6.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -101,7 +101,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node7.html
===================================================================
--- trunk/doc/mailman-member-es/node7.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node7.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -135,7 +135,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node8.html
===================================================================
--- trunk/doc/mailman-member-es/node8.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node8.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -114,7 +114,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es/node9.html
===================================================================
--- trunk/doc/mailman-member-es/node9.html	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es/node9.html	2012-05-20 12:09:31 UTC (rev 716)
@@ -198,7 +198,7 @@
 </div>
 </div>
 <hr />
-<span class="release-info">Release 2.1, documentation updated on 9 de septiembre 2010.</span>
+<span class="release-info">Release 2.1, documentation updated on 15 de mayo 2012.</span>
 </div>
 <!--End of Navigation Panel-->
 

Modified: trunk/doc/mailman-member-es.ps
===================================================================
--- trunk/doc/mailman-member-es.ps	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es.ps	2012-05-20 12:09:31 UTC (rev 716)
@@ -11,7 +11,7 @@
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -N0 -o mailman-member-es.ps mailman-member-es
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2010.09.09:0925
+%DVIPSSource:  TeX output 2012.05.15:2028
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -410,7 +410,7 @@
 TeXDict begin 1 0 bop 0 83 3901 9 v 2603 342 a Fn(GNU)58
 b(Mailman)1018 506 y(Man)n(ual)e(del)h(Suscr)s(iptor)g(de)g(Listas)3368
 676 y Fm(Release)30 b(2.1)3408 1031 y Fl(T)-14 b(err)r(i)32
-b(Oda)3088 1385 y Fk(9)21 b(de)f(septiembre)f(de)h(2010)3225
+b(Oda)3227 1385 y Fk(15)19 b(de)i(mayo)e(de)h(2012)3225
 1532 y(terri\(en\)zone12.com)1803 1735 y Fj(Resumen)208
 1874 y Fi(Este)i(documento)j(describe)f(el)f(interf)o(az)g(del)g
 (suscriptor)h(de)g(listas)e(GNU)h(Mailman)h(2.1.)f(Este)f(manual)i

Modified: trunk/doc/mailman-member-es.txt
===================================================================
--- trunk/doc/mailman-member-es.txt	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member-es.txt	2012-05-20 12:09:31 UTC (rev 716)
@@ -13,7 +13,7 @@
    terri(en)zone12.com
 
    Release 2.1
-   9 de septiembre 2010
+   15 de mayo 2012
 
                                    Prefacio
 
@@ -1485,8 +1485,8 @@
 
                             Sobre este documento...
 
-   GNU Mailman Manual del Suscriptor de Listas, 9 de septiembre 2010,
-   Release 2.1
+   GNU Mailman Manual del Suscriptor de Listas, 15 de mayo 2012, Release
+   2.1
 
    This document was generated using the LaTeX2HTML translator.
 
@@ -1504,4 +1504,4 @@
                       Manual del Suscriptor de Listas
      _________________________________________________________________
 
-   Release 2.1, documentation updated on 9 de septiembre 2010.
+   Release 2.1, documentation updated on 15 de mayo 2012.

Modified: trunk/doc/mailman-member.ps
===================================================================
--- trunk/doc/mailman-member.ps	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member.ps	2012-05-20 12:09:31 UTC (rev 716)
@@ -11,7 +11,7 @@
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -N0 -o mailman-member.ps mailman-member
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2010.09.09:0926
+%DVIPSSource:  TeX output 2012.05.15:2029
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -407,8 +407,8 @@
 TeXDict begin 1 0 bop 0 83 3901 9 v 551 341 a Fn(GNU)57
 b(Mailman)g(-)g(List)h(Member)f(Man)n(ual)3368 488 y
 Fm(Release)30 b(2.1)3408 842 y Fl(T)-14 b(err)r(i)32
-b(Oda)3275 1197 y Fk(September)19 b(9,)h(2010)3243 1343
-y(terri\(at\)zone12.com)1811 1545 y Fj(Abstract)208 1683
+b(Oda)3436 1197 y Fk(May)20 b(15,)g(2012)3243 1343 y
+(terri\(at\)zone12.com)1811 1545 y Fj(Abstract)208 1683
 y Fi(This)j(document)i(describes)g(the)e(list)g(member)i(interf)o(ace)f
 (for)f(GNU)h(Mailman)g(2.1.)38 b(It)23 b(contains)h(instructions)h(for)
 e(subscribing,)208 1775 y(unsubscribing,)31 b(vie)n(wing)e(the)f(archi)

Modified: trunk/doc/mailman-member.txt
===================================================================
--- trunk/doc/mailman-member.txt	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/doc/mailman-member.txt	2012-05-20 12:09:31 UTC (rev 716)
@@ -12,7 +12,7 @@
    terri(at)zone12.com
 
    Release 2.1
-   September 9, 2010
+   May 15, 2012
 
                                  Front Matter
 
@@ -1278,7 +1278,7 @@
 
                             About this document ...
 
-   GNU Mailman - List Member Manual, September 9, 2010, Release 2.1
+   GNU Mailman - List Member Manual, May 15, 2012, Release 2.1
 
    This document was generated using the LaTeX2HTML translator.
 
@@ -1295,4 +1295,4 @@
    Previous Page Up one Level Next Page GNU Mailman - List Member Manual
      _________________________________________________________________
 
-   Release 2.1, documentation updated on September 9, 2010.
+   Release 2.1, documentation updated on May 15, 2012.

Modified: trunk/messages/Makefile.in
===================================================================
--- trunk/messages/Makefile.in	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/messages/Makefile.in	2012-05-20 12:09:31 UTC (rev 716)
@@ -48,8 +48,8 @@
 MSGMERGE=	msgmerge
 
 # CVS available languages
-LANGUAGES=	ar ast ca cs da de es et eu fi fr gl he hr hu ia it ja ko lt \
-		nl no pl pt pt_BR ro ru sk sl sr sv tr uk vi zh_CN zh_TW
+LANGUAGES=	ar ast ca cs da de el es et eu fi fr gl he hr hu ia it ja ko \
+		lt nl no pl pt pt_BR ro ru sk sl sr sv tr uk vi zh_CN zh_TW
 LANGDIRS=	$(LANGUAGES:%=messages/%/LC_MESSAGES)
 # Human readable po file
 POFILES=	$(LANGUAGES:%=%/LC_MESSAGES/mailman.po)

Modified: trunk/messages/ar/LC_MESSAGES/mailman.po
===================================================================
--- trunk/messages/ar/LC_MESSAGES/mailman.po	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/messages/ar/LC_MESSAGES/mailman.po	2012-05-20 12:09:31 UTC (rev 716)
@@ -7,7 +7,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: mailman_ar\n"
-"POT-Creation-Date: Fri Sep 10 10:50:49 2010\n"
+"POT-Creation-Date: Sun Mar 25 16:40:47 2012\n"
 "PO-Revision-Date: 2006-03-19 17:06+0300\n"
 "Last-Translator: Munzir Taha <munzirtaha at newhorizons.com.sa>\n"
 "Language-Team: Arabic\n"
@@ -221,14 +221,14 @@
 msgid " The last bounce received from you was dated %(date)s"
 msgstr "استقبل رد الرفض الأخير من قبلك بتاريخ %(date)s"
 
-#: Mailman/Bouncer.py:321 Mailman/Deliverer.py:143
-#: Mailman/Handlers/Acknowledge.py:44 Mailman/Handlers/CookHeaders.py:286
+#: Mailman/Bouncer.py:322 Mailman/Deliverer.py:143
+#: Mailman/Handlers/Acknowledge.py:44 Mailman/Handlers/CookHeaders.py:284
 #: Mailman/Handlers/Hold.py:215 Mailman/Handlers/ToDigest.py:239
 #: Mailman/ListAdmin.py:223
 msgid "(no subject)"
 msgstr "(بدون عنوان)"
 
-#: Mailman/Bouncer.py:325
+#: Mailman/Bouncer.py:326
 msgid "[No bounce details are available]"
 msgstr "]لا يوجد تفاصيل لرد الرفض["
 
@@ -240,20 +240,24 @@
 msgid "Administrator"
 msgstr "مشرف"
 
-#: Mailman/Cgi/admin.py:76 Mailman/Cgi/admindb.py:93 Mailman/Cgi/confirm.py:62
-#: Mailman/Cgi/edithtml.py:70 Mailman/Cgi/listinfo.py:54
+#: Mailman/Cgi/admin.py:79 Mailman/Cgi/admindb.py:93 Mailman/Cgi/confirm.py:62
+#: Mailman/Cgi/edithtml.py:71 Mailman/Cgi/listinfo.py:54
 #: Mailman/Cgi/options.py:78 Mailman/Cgi/private.py:108
 #: Mailman/Cgi/rmlist.py:64 Mailman/Cgi/roster.py:59
 #: Mailman/Cgi/subscribe.py:62
 msgid "No such list <em>%(safelistname)s</em>"
 msgstr "لا يوجد قائمة بالإسم <em>%(safelistname)s</em>"
 
-#: Mailman/Cgi/admin.py:91 Mailman/Cgi/admindb.py:109
-#: Mailman/Cgi/edithtml.py:90 Mailman/Cgi/private.py:135
+#: Mailman/Cgi/admin.py:107 Mailman/Cgi/admindb.py:109
+#: Mailman/Cgi/edithtml.py:91 Mailman/Cgi/private.py:135
 msgid "Authorization failed."
 msgstr "فشل التحقق من الشخصية."
 
-#: Mailman/Cgi/admin.py:181
+#: Mailman/Cgi/admin.py:198
+msgid "The form lifetime has expired. (request forgery check)"
+msgstr ""
+
+#: Mailman/Cgi/admin.py:204
 msgid ""
 "You have turned off delivery of both digest and\n"
 "                non-digest messages.  This is an incompatible state of\n"
@@ -267,42 +271,43 @@
 "                الإرسال المفرد وإلا فستصبح قائمتك بشكل أساسي غير ممكنة "
 "الاستعمال."
 
-#: Mailman/Cgi/admin.py:185 Mailman/Cgi/admin.py:191 Mailman/Cgi/admin.py:196
-#: Mailman/Cgi/admin.py:1443 Mailman/Gui/GUIBase.py:204
+#: Mailman/Cgi/admin.py:208 Mailman/Cgi/admin.py:216 Mailman/Cgi/admin.py:223
+#: Mailman/Cgi/admin.py:1498 Mailman/Gui/GUIBase.py:204
 msgid "Warning: "
 msgstr "تحذير: "
 
-#: Mailman/Cgi/admin.py:189
+#: Mailman/Cgi/admin.py:213
 msgid ""
 "You have digest members, but digests are turned\n"
-"                off. Those people will not receive mail."
+"                off. Those people will not receive mail.\n"
+"                Affected member(s) %(dm)r."
 msgstr ""
 "لديك مشتركين بالدفعات، ولكن الدفعات معطلة.\n"
-"                 هؤلاء الناس لن يستلموا أي بريد."
+"                 هؤلاء الناس لن يستلموا أي بريد.%(dm)r"
 
-#: Mailman/Cgi/admin.py:194
+#: Mailman/Cgi/admin.py:220
 msgid ""
 "You have regular list members but non-digestified mail is\n"
 "                turned off.  They will receive non-digestified mail until "
 "you\n"
-"                fix this problem."
+"                fix this problem. Affected member(s) %(rm)r."
 msgstr ""
 "لديك مشتركين بالإفراد، ولكن البريد بالإفراد معطل.\n"
-"                سوف يستلم هؤلاء الناس البريد إلى أن تحل المشكلة"
+"                سوف يستلم هؤلاء الناس البريد إلى أن تحل المشكلة%(rm)r"
 
-#: Mailman/Cgi/admin.py:218
+#: Mailman/Cgi/admin.py:245
 msgid "%(hostname)s mailing lists - Admin Links"
 msgstr "%(hostname)s قوائم بريدية - ارتباطات إشرافية"
 
-#: Mailman/Cgi/admin.py:249 Mailman/Cgi/listinfo.py:104
+#: Mailman/Cgi/admin.py:276 Mailman/Cgi/listinfo.py:104
 msgid "Welcome!"
 msgstr "أهلاً وسهلاً!"
 
-#: Mailman/Cgi/admin.py:252 Mailman/Cgi/listinfo.py:107
+#: Mailman/Cgi/admin.py:279 Mailman/Cgi/listinfo.py:107
 msgid "Mailman"
 msgstr "ميلمان"
 
-#: Mailman/Cgi/admin.py:256
+#: Mailman/Cgi/admin.py:283
 msgid ""
 "<p>There currently are no publicly-advertised %(mailmanlink)s\n"
 "            mailing lists on %(hostname)s."
@@ -310,7 +315,7 @@
 "<p>حالياً لا يوجد قوائم بريدية معلنة  %(mailmanlink)s\n"
 "            على %(hostname)s."
 
-#: Mailman/Cgi/admin.py:262
+#: Mailman/Cgi/admin.py:289
 msgid ""
 "<p>Below is the collection of publicly-advertised\n"
 "            %(mailmanlink)s mailing lists on %(hostname)s.  Click on a list\n"
@@ -320,11 +325,11 @@
 "            %(mailmanlink)s على %(hostname)s.  انقر على اسم قائمة \n"
 "            للوصول إلى صفحات الضبط لتلك القائمة."
 
-#: Mailman/Cgi/admin.py:269
+#: Mailman/Cgi/admin.py:296
 msgid "right "
 msgstr "صحيح "
 
-#: Mailman/Cgi/admin.py:271
+#: Mailman/Cgi/admin.py:298
 msgid ""
 "To visit the administrators configuration page for an\n"
 "        unadvertised list, open a URL similar to this one, but with a '/' "
@@ -340,42 +345,42 @@
 "مناسبة فتستطيع أيضاً <a href=\"%(creatorurl)s\">أضغ قائمة بريدية جديدة</a>. "
 "<p>معلومات عامة عن القائمة يمكن أن توجد في العنوان"
 
-#: Mailman/Cgi/admin.py:278
+#: Mailman/Cgi/admin.py:305
 msgid "the mailing list overview page"
 msgstr "صفحة ملخص القائمة البريدية"
 
-#: Mailman/Cgi/admin.py:280
+#: Mailman/Cgi/admin.py:307
 msgid "<p>(Send questions and comments to "
 msgstr "<p>(أرسل الاستفسارات والملاحظات إلى "
 
-#: Mailman/Cgi/admin.py:290 Mailman/Cgi/listinfo.py:139 cron/mailpasswds:216
+#: Mailman/Cgi/admin.py:317 Mailman/Cgi/listinfo.py:139 cron/mailpasswds:216
 msgid "List"
 msgstr "القائمة"
 
-#: Mailman/Cgi/admin.py:291 Mailman/Cgi/admin.py:558
+#: Mailman/Cgi/admin.py:318 Mailman/Cgi/admin.py:586
 #: Mailman/Cgi/listinfo.py:140
 msgid "Description"
 msgstr "الشرح"
 
-#: Mailman/Cgi/admin.py:297 Mailman/Cgi/listinfo.py:146 bin/list_lists:116
+#: Mailman/Cgi/admin.py:324 Mailman/Cgi/listinfo.py:146 bin/list_lists:116
 msgid "[no description available]"
 msgstr "]لا يوجد شرح["
 
-#: Mailman/Cgi/admin.py:331
+#: Mailman/Cgi/admin.py:358
 msgid "No valid variable name found."
 msgstr "لا يوجد اسم متغير صحيح"
 
-#: Mailman/Cgi/admin.py:341
+#: Mailman/Cgi/admin.py:368
 msgid ""
 "%(realname)s Mailing list Configuration Help\n"
 "    <br><em>%(varname)s</em> Option"
 msgstr "%(realname)s مساعدة ضبط القائمة البريدية <br><em>%(varname)s</em> خيار"
 
-#: Mailman/Cgi/admin.py:348
+#: Mailman/Cgi/admin.py:375
 msgid "Mailman %(varname)s List Option Help"
 msgstr "مساعدة خيارات قائمة ميلمان %(varname)s"
 
-#: Mailman/Cgi/admin.py:366
+#: Mailman/Cgi/admin.py:393
 msgid ""
 "<em><strong>Warning:</strong> changing this option here\n"
 "    could cause other screens to be out-of-sync.  Be sure to reload any "
@@ -388,59 +393,60 @@
 "الشاشات الأخرى.  كن متأكداً من إعادة تحميل الصفحات الأخرى التي تظهر هذا "
 "الخيار لهذه القائمة البريدية. ويمكنك أيضاً"
 
-#: Mailman/Cgi/admin.py:377
+#: Mailman/Cgi/admin.py:404
 msgid "return to the %(categoryname)s options page."
 msgstr "أن تعود إلى صفحة خيارات الـ %(categoryname)s"
 
-#: Mailman/Cgi/admin.py:392
+#: Mailman/Cgi/admin.py:419
 msgid "%(realname)s Administration (%(label)s)"
 msgstr "%(realname)s إشراف (%(label)s)"
 
-#: Mailman/Cgi/admin.py:393
+#: Mailman/Cgi/admin.py:420
 msgid "%(realname)s mailing list administration<br>%(label)s Section"
 msgstr "الإشراف على القائمة البريدية %(realname)s <br>قسم %(label)s"
 
-#: Mailman/Cgi/admin.py:409
+#: Mailman/Cgi/admin.py:437
 msgid "Configuration Categories"
 msgstr "أصناف الضبط"
 
-#: Mailman/Cgi/admin.py:410
+#: Mailman/Cgi/admin.py:438
 msgid "Other Administrative Activities"
 msgstr "فعاليات إشرافية أخرى"
 
-#: Mailman/Cgi/admin.py:414
+#: Mailman/Cgi/admin.py:442
 msgid "Tend to pending moderator requests"
 msgstr "اهتم بطلبات المنظمين العالقة"
 
-#: Mailman/Cgi/admin.py:416
+#: Mailman/Cgi/admin.py:444
 msgid "Go to the general list information page"
 msgstr "إذهب إلى صفحة المعلومات العامة للقائمة"
 
-#: Mailman/Cgi/admin.py:418
+#: Mailman/Cgi/admin.py:446
 msgid "Edit the public HTML pages and text files"
 msgstr "حرر صفحات الإتش تي إم إل العمومية والملفات النصية"
 
-#: Mailman/Cgi/admin.py:420
+#: Mailman/Cgi/admin.py:448
 msgid "Go to list archives"
 msgstr "إذهب إلى أرشيف القوائم"
 
-#: Mailman/Cgi/admin.py:426
+#: Mailman/Cgi/admin.py:454
 msgid "Delete this mailing list"
 msgstr "احذف هذه القائمة البريدية"
 
-#: Mailman/Cgi/admin.py:427
+#: Mailman/Cgi/admin.py:455
 msgid " (requires confirmation)<br> <br>"
 msgstr " (تحتاج للتأكيد)<br> <br>"
 
-#: Mailman/Cgi/admin.py:433
+#: Mailman/Cgi/admin.py:461 Mailman/Cgi/admindb.py:195
+#: Mailman/Cgi/admindb.py:272
 msgid "Logout"
 msgstr "تسجيل الخروج"
 
-#: Mailman/Cgi/admin.py:477
+#: Mailman/Cgi/admin.py:505
 msgid "Emergency moderation of all list traffic is enabled"
 msgstr "تنظيم الطوارئ مفعل لكامل حركة القائمة"
 
-#: Mailman/Cgi/admin.py:488
+#: Mailman/Cgi/admin.py:516
 msgid ""
 "Make your changes in the following section, then submit them\n"
 "        using the <em>Submit Your Changes</em> button below."
@@ -448,33 +454,33 @@
 "قم بتعديلاتك في القسم التالي، وقم بإرسالهم باستخدام الزر <em>أرسل تعديلاتك</"
 "em> تحت."
 
-#: Mailman/Cgi/admin.py:506
+#: Mailman/Cgi/admin.py:534
 msgid "Additional Member Tasks"
 msgstr "مهام مشترك إضافية"
 
-#: Mailman/Cgi/admin.py:512
+#: Mailman/Cgi/admin.py:540
 msgid ""
 "<li>Set everyone's moderation bit, including\n"
 "            those members not currently visible"
 msgstr "<li>حدد علامة منظم للكل بما فيهم المشتركين الغير ظاهرين الآن"
 
-#: Mailman/Cgi/admin.py:516
+#: Mailman/Cgi/admin.py:544
 msgid "Off"
 msgstr "معطلة"
 
-#: Mailman/Cgi/admin.py:516
+#: Mailman/Cgi/admin.py:544
 msgid "On"
 msgstr "مفعلة"
 
-#: Mailman/Cgi/admin.py:518
+#: Mailman/Cgi/admin.py:546
 msgid "Set"
 msgstr "حدد"
 
-#: Mailman/Cgi/admin.py:559
+#: Mailman/Cgi/admin.py:587
 msgid "Value"
 msgstr "القيمة"
 
-#: Mailman/Cgi/admin.py:613
+#: Mailman/Cgi/admin.py:641
 msgid ""
 "Badly formed options entry:\n"
 " %(record)s"
@@ -482,105 +488,106 @@
 "مدخلات خيارات سيئة التنسيق:\n"
 " %(record)s"
 
-#: Mailman/Cgi/admin.py:671
+#: Mailman/Cgi/admin.py:699
 msgid "<em>Enter the text below, or...</em><br>"
 msgstr "<em>أدخل النص في الأسفل، أو...</em><br>"
 
-#: Mailman/Cgi/admin.py:673
+#: Mailman/Cgi/admin.py:701
 msgid "<br><em>...specify a file to upload</em><br>"
 msgstr "<br><em>... حدد ملف للتحميل</em><br>"
 
-#: Mailman/Cgi/admin.py:699 Mailman/Cgi/admin.py:702
+#: Mailman/Cgi/admin.py:727 Mailman/Cgi/admin.py:730
 msgid "Topic %(i)d"
 msgstr "موضوع %(i)d"
 
-#: Mailman/Cgi/admin.py:703 Mailman/Cgi/admin.py:753
+#: Mailman/Cgi/admin.py:731 Mailman/Cgi/admin.py:781
 msgid "Delete"
 msgstr "احذف"
 
-#: Mailman/Cgi/admin.py:704
+#: Mailman/Cgi/admin.py:732
 msgid "Topic name:"
 msgstr "اسم الموضوع:"
 
-#: Mailman/Cgi/admin.py:706
+#: Mailman/Cgi/admin.py:734
 msgid "Regexp:"
 msgstr "صيغة نظامية Regexp:"
 
-#: Mailman/Cgi/admin.py:709 Mailman/Cgi/options.py:1047
+#: Mailman/Cgi/admin.py:737 Mailman/Cgi/options.py:1053
 msgid "Description:"
 msgstr "الشرح:"
 
-#: Mailman/Cgi/admin.py:713 Mailman/Cgi/admin.py:771
+#: Mailman/Cgi/admin.py:741 Mailman/Cgi/admin.py:799
 msgid "Add new item..."
 msgstr "أضف عنصراً جديداً..."
 
-#: Mailman/Cgi/admin.py:715 Mailman/Cgi/admin.py:773
+#: Mailman/Cgi/admin.py:743 Mailman/Cgi/admin.py:801
 msgid "...before this one."
 msgstr "...قبل هذا العنصر."
 
-#: Mailman/Cgi/admin.py:716 Mailman/Cgi/admin.py:774
+#: Mailman/Cgi/admin.py:744 Mailman/Cgi/admin.py:802
 msgid "...after this one."
 msgstr "...بعد هذا العنصر."
 
-#: Mailman/Cgi/admin.py:749 Mailman/Cgi/admin.py:752
+#: Mailman/Cgi/admin.py:777 Mailman/Cgi/admin.py:780
 msgid "Spam Filter Rule %(i)d"
 msgstr "قاعدة تصفية السبام %(i)d"
 
-#: Mailman/Cgi/admin.py:754
+#: Mailman/Cgi/admin.py:782
 msgid "Spam Filter Regexp:"
 msgstr "صيغة نظامية لتصفية السبام:"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Cgi/admindb.py:306
-#: Mailman/Cgi/admindb.py:365 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641
+#: Mailman/Cgi/admin.py:793 Mailman/Cgi/admindb.py:327
+#: Mailman/Cgi/admindb.py:386 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671
 msgid "Defer"
 msgstr "تأجيل"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Cgi/admindb.py:308
-#: Mailman/Cgi/admindb.py:367 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641 Mailman/Gui/ContentFilter.py:37
+#: Mailman/Cgi/admin.py:793 Mailman/Cgi/admindb.py:329
+#: Mailman/Cgi/admindb.py:388 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671 Mailman/Gui/ContentFilter.py:37
 #: Mailman/Gui/Privacy.py:216 Mailman/Gui/Privacy.py:297
 msgid "Reject"
 msgstr "رفض"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Gui/Privacy.py:216
+#: Mailman/Cgi/admin.py:793 Mailman/Gui/Privacy.py:216
 #: Mailman/Gui/Privacy.py:297
 msgid "Hold"
 msgstr "تعليق"
 
-#: Mailman/Cgi/admin.py:766 Mailman/Cgi/admindb.py:309
-#: Mailman/Cgi/admindb.py:368 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641 Mailman/Gui/ContentFilter.py:37
-#: Mailman/Gui/Privacy.py:216 Mailman/Gui/Privacy.py:297
+#: Mailman/Cgi/admin.py:794 Mailman/Cgi/admindb.py:330
+#: Mailman/Cgi/admindb.py:389 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671 Mailman/Commands/cmd_confirm.py:93
+#: Mailman/Gui/ContentFilter.py:37 Mailman/Gui/Privacy.py:216
+#: Mailman/Gui/Privacy.py:297
 msgid "Discard"
 msgstr "إلغاء"
 
-#: Mailman/Cgi/admin.py:766 Mailman/Cgi/admindb.py:410
+#: Mailman/Cgi/admin.py:794 Mailman/Cgi/admindb.py:431
 #: Mailman/Gui/Privacy.py:297
 msgid "Accept"
 msgstr "قبول"
 
-#: Mailman/Cgi/admin.py:769 Mailman/Cgi/admindb.py:647
+#: Mailman/Cgi/admin.py:797 Mailman/Cgi/admindb.py:677
 msgid "Action:"
 msgstr "الإجراء:"
 
-#: Mailman/Cgi/admin.py:781
+#: Mailman/Cgi/admin.py:809
 msgid "Move rule up"
 msgstr "حرك القاعدة للأعلى:"
 
-#: Mailman/Cgi/admin.py:782
+#: Mailman/Cgi/admin.py:810
 msgid "Move rule down"
 msgstr "حرك القاعدة للأسفل:"
 
-#: Mailman/Cgi/admin.py:815
+#: Mailman/Cgi/admin.py:843
 msgid "<br>(Edit <b>%(varname)s</b>)"
 msgstr "<br>(حرر <b>%(varname)s</b>)"
 
-#: Mailman/Cgi/admin.py:817
+#: Mailman/Cgi/admin.py:845
 msgid "<br>(Details for <b>%(varname)s</b>)"
 msgstr "<br>(تفاصيل <b>%(varname)s</b>)"
 
-#: Mailman/Cgi/admin.py:824
+#: Mailman/Cgi/admin.py:852
 msgid ""
 "<br><em><strong>Note:</strong>\n"
 "        setting this value performs an immediate action but does not modify\n"
@@ -589,107 +596,107 @@
 "<br><em><strong>ملاحظة:</strong> تحديد هذه القيمة سوف يؤدي فعلاً مباشراً ولكن "
 "لن يغير الحالة الدائمة.</em>"
 
-#: Mailman/Cgi/admin.py:838
+#: Mailman/Cgi/admin.py:866
 msgid "Mass Subscriptions"
 msgstr "اشتراك متعدد"
 
-#: Mailman/Cgi/admin.py:845
+#: Mailman/Cgi/admin.py:873
 msgid "Mass Removals"
 msgstr "إزالة متعددة"
 
-#: Mailman/Cgi/admin.py:852
+#: Mailman/Cgi/admin.py:880
 msgid "Membership List"
 msgstr "قائمة الاشتراك"
 
-#: Mailman/Cgi/admin.py:860
+#: Mailman/Cgi/admin.py:888
 msgid "(help)"
 msgstr "(مساعدة)"
 
-#: Mailman/Cgi/admin.py:861
+#: Mailman/Cgi/admin.py:889
 msgid "Find member %(link)s:"
 msgstr "ابحث عن مشترك %(link)s:"
 
-#: Mailman/Cgi/admin.py:864
+#: Mailman/Cgi/admin.py:892
 msgid "Search..."
 msgstr "بحث..."
 
-#: Mailman/Cgi/admin.py:881
+#: Mailman/Cgi/admin.py:909
 msgid "Bad regular expression: "
 msgstr "صيغة نظامية سيئة: "
 
-#: Mailman/Cgi/admin.py:935
+#: Mailman/Cgi/admin.py:963
 msgid "%(allcnt)s members total, %(membercnt)s shown"
 msgstr "%(allcnt)s مجموع المشتركين, %(membercnt)s تم عرضه"
 
-#: Mailman/Cgi/admin.py:938
+#: Mailman/Cgi/admin.py:966
 msgid "%(allcnt)s members total"
 msgstr "%(allcnt)s مجموع المشتركين"
 
-#: Mailman/Cgi/admin.py:962
+#: Mailman/Cgi/admin.py:990
 msgid "unsub"
 msgstr "إلغاء الاشتراك"
 
-#: Mailman/Cgi/admin.py:963
+#: Mailman/Cgi/admin.py:991
 msgid "member address<br>member name"
 msgstr "عنوان المشترك<br>اسم المشترك"
 
-#: Mailman/Cgi/admin.py:964
+#: Mailman/Cgi/admin.py:992
 msgid "hide"
 msgstr "إخفاء"
 
-#: Mailman/Cgi/admin.py:964
+#: Mailman/Cgi/admin.py:992
 msgid "mod"
 msgstr "منظم"
 
-#: Mailman/Cgi/admin.py:965
+#: Mailman/Cgi/admin.py:993
 msgid "nomail<br>[reason]"
 msgstr "لابريد<br>[reason]"
 
-#: Mailman/Cgi/admin.py:966
+#: Mailman/Cgi/admin.py:994
 msgid "ack"
 msgstr "إعلام"
 
-#: Mailman/Cgi/admin.py:966
+#: Mailman/Cgi/admin.py:994
 msgid "not metoo"
 msgstr "ليس لي أيضاً"
 
-#: Mailman/Cgi/admin.py:967
+#: Mailman/Cgi/admin.py:995
 msgid "nodupes"
 msgstr "لا تكرارات"
 
-#: Mailman/Cgi/admin.py:968
+#: Mailman/Cgi/admin.py:996
+msgid "plain"
+msgstr "نصية"
+
+#: Mailman/Cgi/admin.py:996 Mailman/Cgi/options.py:307
 msgid "digest"
 msgstr "دفعات"
 
-#: Mailman/Cgi/admin.py:968
-msgid "plain"
-msgstr "نصية"
-
-#: Mailman/Cgi/admin.py:969
+#: Mailman/Cgi/admin.py:997
 msgid "language"
 msgstr "اللغة"
 
-#: Mailman/Cgi/admin.py:980
+#: Mailman/Cgi/admin.py:1008
 msgid "?"
 msgstr "ØŸ"
 
-#: Mailman/Cgi/admin.py:981
+#: Mailman/Cgi/admin.py:1009
 msgid "U"
 msgstr "U"
 
-#: Mailman/Cgi/admin.py:982
+#: Mailman/Cgi/admin.py:1010
 msgid "A"
 msgstr "A"
 
-#: Mailman/Cgi/admin.py:983
+#: Mailman/Cgi/admin.py:1011
 msgid "B"
 msgstr "B"
 
-#: Mailman/Cgi/admin.py:1055
+#: Mailman/Cgi/admin.py:1083
 msgid "<b>unsub</b> -- Click on this to unsubscribe the member."
 msgstr "<b>إلغاء الاشتراك</b> -- اضغط عليه كي يتم إلغاء اشتراك المشترك."
 
-#: Mailman/Cgi/admin.py:1057
+#: Mailman/Cgi/admin.py:1085
 msgid ""
 "<b>mod</b> -- The user's personal moderation flag.  If this is\n"
 "        set, postings from them will be moderated, otherwise they will be\n"
@@ -698,13 +705,13 @@
 "<b>منظم</b> -- علامة التنظيم الشخصي للمستخدم. عندما تكون محددة فإن الإرسالات "
 "من قبلهم سوف يمكن تنظيمها، وإلا فسوف يتم قبولها."
 
-#: Mailman/Cgi/admin.py:1061
+#: Mailman/Cgi/admin.py:1089
 msgid ""
 "<b>hide</b> -- Is the member's address concealed on\n"
 "        the list of subscribers?"
 msgstr "<b>إخفاء</b> -- هل سيتم إظهار العنوان البريدي للمستخدم؟"
 
-#: Mailman/Cgi/admin.py:1063
+#: Mailman/Cgi/admin.py:1091
 msgid ""
 "<b>nomail</b> -- Is delivery to the member disabled?  If so, an\n"
 "        abbreviation will be given describing the reason for the disabled\n"
@@ -729,27 +736,27 @@
 "من عنوان المشترك <li><b>?</b> -- سبب تعطيل الإرسال غير معروف، وهذه حالة "
 "الاشتراكات المعطلة في النسخ الأقدم من ميلمان </ul>"
 
-#: Mailman/Cgi/admin.py:1078
+#: Mailman/Cgi/admin.py:1106
 msgid ""
 "<b>ack</b> -- Does the member get acknowledgements of their\n"
 "        posts?"
 msgstr "<b>إعلام</b> -- هل يستلم المشترك إعلاماً بإرسالاته؟"
 
-#: Mailman/Cgi/admin.py:1081
+#: Mailman/Cgi/admin.py:1109
 msgid ""
 "<b>not metoo</b> -- Does the member want to avoid copies of their\n"
 "        own postings?"
 msgstr ""
 "<b>ليس لي إيضاً</b> -- هل يريد المشترك أن يمنع وصول نسخ من إرسالاته إليه؟"
 
-#: Mailman/Cgi/admin.py:1084
+#: Mailman/Cgi/admin.py:1112
 msgid ""
 "<b>nodupes</b> -- Does the member want to avoid duplicates of the\n"
 "        same message?"
 msgstr ""
 "<b>لا تكرارات</b> -- هل يريد المشترك منع وصول نسخ مكررة من نفس الرسالة؟"
 
-#: Mailman/Cgi/admin.py:1087
+#: Mailman/Cgi/admin.py:1115
 msgid ""
 "<b>digest</b> -- Does the member get messages in digests?\n"
 "        (otherwise, individual messages)"
@@ -757,7 +764,7 @@
 "<b>دفعات</b> -- هل يريد المشترك استلام الرسائل على شكل دفعات؟ \n"
 " (وإلا فسوف يحصل على رسائل مفردة)"
 
-#: Mailman/Cgi/admin.py:1090
+#: Mailman/Cgi/admin.py:1118
 msgid ""
 "<b>plain</b> -- If getting digests, does the member get plain\n"
 "        text digests?  (otherwise, MIME)"
@@ -766,46 +773,46 @@
 "نصية؟ \n"
 "(وإلاستكون من نوع MIME)"
 
-#: Mailman/Cgi/admin.py:1092
+#: Mailman/Cgi/admin.py:1120
 msgid "<b>language</b> -- Language preferred by the user"
 msgstr "<b>اللغة</b> -- اللغة المفضلة لدى المشترك"
 
-#: Mailman/Cgi/admin.py:1106
+#: Mailman/Cgi/admin.py:1134
 msgid "Click here to hide the legend for this table."
 msgstr "انقر هنا لإخفاء دليل هذا الجدول"
 
-#: Mailman/Cgi/admin.py:1110
+#: Mailman/Cgi/admin.py:1138
 msgid "Click here to include the legend for this table."
 msgstr "اضغط هنا لتضمين دليل هذا الجدول"
 
-#: Mailman/Cgi/admin.py:1117
+#: Mailman/Cgi/admin.py:1145
 msgid ""
 "<p><em>To view more members, click on the appropriate\n"
 "        range listed below:</em>"
 msgstr "<p><em>لعرض مشتركين أكثر، اضغط على المجال المناسب المعروض تحت:</em>"
 
-#: Mailman/Cgi/admin.py:1126
+#: Mailman/Cgi/admin.py:1154
 msgid "from %(start)s to %(end)s"
 msgstr "من %(start)s إلى %(end)s"
 
-#: Mailman/Cgi/admin.py:1139
+#: Mailman/Cgi/admin.py:1167
 msgid "Subscribe these users now or invite them?"
 msgstr "هل يتم تسجيل هؤلاء المستخدمين الآن أو يتم دعوتهم؟"
 
-#: Mailman/Cgi/admin.py:1141
+#: Mailman/Cgi/admin.py:1169
 msgid "Invite"
 msgstr "دعوة"
 
-#: Mailman/Cgi/admin.py:1141 Mailman/Cgi/listinfo.py:182
+#: Mailman/Cgi/admin.py:1169 Mailman/Cgi/listinfo.py:182
 msgid "Subscribe"
 msgstr "تسجيل"
 
-#: Mailman/Cgi/admin.py:1147
+#: Mailman/Cgi/admin.py:1175
 msgid "Send welcome messages to new subscribees?"
 msgstr "هل أرسل رسائل ترحيب للمشتركين الجدد؟"
 
-#: Mailman/Cgi/admin.py:1149 Mailman/Cgi/admin.py:1158
-#: Mailman/Cgi/admin.py:1191 Mailman/Cgi/admin.py:1199
+#: Mailman/Cgi/admin.py:1177 Mailman/Cgi/admin.py:1186
+#: Mailman/Cgi/admin.py:1219 Mailman/Cgi/admin.py:1227
 #: Mailman/Cgi/confirm.py:292 Mailman/Cgi/create.py:353
 #: Mailman/Cgi/create.py:388 Mailman/Cgi/create.py:426
 #: Mailman/Cgi/rmlist.py:230 Mailman/Gui/Archive.py:33
@@ -815,25 +822,25 @@
 #: Mailman/Gui/Bounce.py:155 Mailman/Gui/ContentFilter.py:74
 #: Mailman/Gui/ContentFilter.py:116 Mailman/Gui/ContentFilter.py:120
 #: Mailman/Gui/Digest.py:46 Mailman/Gui/Digest.py:62 Mailman/Gui/Digest.py:84
-#: Mailman/Gui/Digest.py:89 Mailman/Gui/General.py:156
-#: Mailman/Gui/General.py:162 Mailman/Gui/General.py:240
-#: Mailman/Gui/General.py:267 Mailman/Gui/General.py:294
-#: Mailman/Gui/General.py:305 Mailman/Gui/General.py:308
-#: Mailman/Gui/General.py:318 Mailman/Gui/General.py:323
-#: Mailman/Gui/General.py:329 Mailman/Gui/General.py:349
-#: Mailman/Gui/General.py:381 Mailman/Gui/General.py:404
-#: Mailman/Gui/General.py:421 Mailman/Gui/NonDigest.py:45
+#: Mailman/Gui/Digest.py:89 Mailman/Gui/General.py:157
+#: Mailman/Gui/General.py:163 Mailman/Gui/General.py:241
+#: Mailman/Gui/General.py:268 Mailman/Gui/General.py:295
+#: Mailman/Gui/General.py:306 Mailman/Gui/General.py:309
+#: Mailman/Gui/General.py:319 Mailman/Gui/General.py:324
+#: Mailman/Gui/General.py:330 Mailman/Gui/General.py:350
+#: Mailman/Gui/General.py:382 Mailman/Gui/General.py:405
+#: Mailman/Gui/General.py:422 Mailman/Gui/NonDigest.py:45
 #: Mailman/Gui/NonDigest.py:53 Mailman/Gui/NonDigest.py:140
-#: Mailman/Gui/Privacy.py:110 Mailman/Gui/Privacy.py:116
-#: Mailman/Gui/Privacy.py:149 Mailman/Gui/Privacy.py:197
-#: Mailman/Gui/Privacy.py:312 Mailman/Gui/Privacy.py:331
-#: Mailman/Gui/Usenet.py:52 Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93
-#: Mailman/Gui/Usenet.py:105
+#: Mailman/Gui/NonDigest.py:162 Mailman/Gui/Privacy.py:110
+#: Mailman/Gui/Privacy.py:116 Mailman/Gui/Privacy.py:149
+#: Mailman/Gui/Privacy.py:197 Mailman/Gui/Privacy.py:312
+#: Mailman/Gui/Privacy.py:331 Mailman/Gui/Usenet.py:52
+#: Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93 Mailman/Gui/Usenet.py:105
 msgid "No"
 msgstr "لا"
 
-#: Mailman/Cgi/admin.py:1149 Mailman/Cgi/admin.py:1158
-#: Mailman/Cgi/admin.py:1191 Mailman/Cgi/admin.py:1199
+#: Mailman/Cgi/admin.py:1177 Mailman/Cgi/admin.py:1186
+#: Mailman/Cgi/admin.py:1219 Mailman/Cgi/admin.py:1227
 #: Mailman/Cgi/confirm.py:292 Mailman/Cgi/create.py:353
 #: Mailman/Cgi/create.py:388 Mailman/Cgi/create.py:426
 #: Mailman/Cgi/rmlist.py:230 Mailman/Gui/Archive.py:33
@@ -843,35 +850,36 @@
 #: Mailman/Gui/ContentFilter.py:74 Mailman/Gui/ContentFilter.py:116
 #: Mailman/Gui/ContentFilter.py:120 Mailman/Gui/Digest.py:46
 #: Mailman/Gui/Digest.py:62 Mailman/Gui/Digest.py:84 Mailman/Gui/Digest.py:89
-#: Mailman/Gui/General.py:156 Mailman/Gui/General.py:162
-#: Mailman/Gui/General.py:240 Mailman/Gui/General.py:267
-#: Mailman/Gui/General.py:294 Mailman/Gui/General.py:305
-#: Mailman/Gui/General.py:308 Mailman/Gui/General.py:318
-#: Mailman/Gui/General.py:323 Mailman/Gui/General.py:329
-#: Mailman/Gui/General.py:349 Mailman/Gui/General.py:381
-#: Mailman/Gui/General.py:404 Mailman/Gui/General.py:421
+#: Mailman/Gui/General.py:157 Mailman/Gui/General.py:163
+#: Mailman/Gui/General.py:241 Mailman/Gui/General.py:268
+#: Mailman/Gui/General.py:295 Mailman/Gui/General.py:306
+#: Mailman/Gui/General.py:309 Mailman/Gui/General.py:319
+#: Mailman/Gui/General.py:324 Mailman/Gui/General.py:330
+#: Mailman/Gui/General.py:350 Mailman/Gui/General.py:382
+#: Mailman/Gui/General.py:405 Mailman/Gui/General.py:422
 #: Mailman/Gui/NonDigest.py:45 Mailman/Gui/NonDigest.py:53
-#: Mailman/Gui/NonDigest.py:140 Mailman/Gui/Privacy.py:110
-#: Mailman/Gui/Privacy.py:116 Mailman/Gui/Privacy.py:149
-#: Mailman/Gui/Privacy.py:197 Mailman/Gui/Privacy.py:312
-#: Mailman/Gui/Privacy.py:331 Mailman/Gui/Usenet.py:52
-#: Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93 Mailman/Gui/Usenet.py:105
+#: Mailman/Gui/NonDigest.py:140 Mailman/Gui/NonDigest.py:162
+#: Mailman/Gui/Privacy.py:110 Mailman/Gui/Privacy.py:116
+#: Mailman/Gui/Privacy.py:149 Mailman/Gui/Privacy.py:197
+#: Mailman/Gui/Privacy.py:312 Mailman/Gui/Privacy.py:331
+#: Mailman/Gui/Usenet.py:52 Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93
+#: Mailman/Gui/Usenet.py:105
 msgid "Yes"
 msgstr "نعم"
 
-#: Mailman/Cgi/admin.py:1156
+#: Mailman/Cgi/admin.py:1184
 msgid "Send notifications of new subscriptions to the list owner?"
 msgstr "هل أرسل تنبيهات حول الاشتراكات الجديدة لمالك القائمة؟"
 
-#: Mailman/Cgi/admin.py:1164 Mailman/Cgi/admin.py:1205
+#: Mailman/Cgi/admin.py:1192 Mailman/Cgi/admin.py:1233
 msgid "Enter one address per line below..."
 msgstr "أدخل عنواناً واحداً في كل سطر في الأدنى..."
 
-#: Mailman/Cgi/admin.py:1169 Mailman/Cgi/admin.py:1210
+#: Mailman/Cgi/admin.py:1197 Mailman/Cgi/admin.py:1238
 msgid "...or specify a file to upload:"
 msgstr "...أو حدد ملفاً ليتم تحميله:"
 
-#: Mailman/Cgi/admin.py:1174
+#: Mailman/Cgi/admin.py:1202
 msgid ""
 "Below, enter additional text to be added to the\n"
 "    top of your invitation or the subscription notification.  Include at "
@@ -881,19 +889,19 @@
 "تحت، أدخل النص الإضافي المراد وضعه في أعلى رسالة الدعوة أو تنبيه الاشتراك. "
 "ضمنه على الأقل سطراً واحداً خالياً في النهاية..."
 
-#: Mailman/Cgi/admin.py:1189
+#: Mailman/Cgi/admin.py:1217
 msgid "Send unsubscription acknowledgement to the user?"
 msgstr "هل أرسل إعلام بإلغاء الاشتراك للمستخدم؟"
 
-#: Mailman/Cgi/admin.py:1197
+#: Mailman/Cgi/admin.py:1225
 msgid "Send notifications to the list owner?"
 msgstr "هل أرسل التنبيهات إلى مالك القائمة؟"
 
-#: Mailman/Cgi/admin.py:1219
+#: Mailman/Cgi/admin.py:1247
 msgid "Change list ownership passwords"
 msgstr "غير كلمة سر ملكية القائمة"
 
-#: Mailman/Cgi/admin.py:1222
+#: Mailman/Cgi/admin.py:1250
 msgid ""
 "The <em>list administrators</em> are the people who have ultimate control "
 "over\n"
@@ -922,328 +930,353 @@
 "كلمة سر منفصلة للتنظيم في الحقل تحت، ويجب أن تكتب العناوين البريدية لمنظمي "
 "القائمة في <a href=\"%(adminurl)s/general\">قسم الخيارات العامة</a>."
 
-#: Mailman/Cgi/admin.py:1241
+#: Mailman/Cgi/admin.py:1269
 msgid "Enter new administrator password:"
 msgstr "أدخل كلمة سر مشرف جديدة"
 
-#: Mailman/Cgi/admin.py:1243
+#: Mailman/Cgi/admin.py:1271
 msgid "Confirm administrator password:"
 msgstr "أكد كلمة سر المشرف"
 
-#: Mailman/Cgi/admin.py:1248
+#: Mailman/Cgi/admin.py:1276
 msgid "Enter new moderator password:"
 msgstr "أدخل كلمة سر منظم جديدة"
 
-#: Mailman/Cgi/admin.py:1250
+#: Mailman/Cgi/admin.py:1278
 msgid "Confirm moderator password:"
 msgstr "أكد كلمة سر المنظم"
 
-#: Mailman/Cgi/admin.py:1260
+#: Mailman/Cgi/admin.py:1282
+msgid ""
+"In addition to the above passwords you may specify a password for\n"
+"pre-approving posts to the list. Either of the above two passwords can\n"
+"be used in an Approved: header or first body line pseudo-header to\n"
+"pre-approve a post that would otherwise be held for moderation. In\n"
+"addition, the password below, if set, can be used for that purpose and\n"
+"no other."
+msgstr ""
+
+#: Mailman/Cgi/admin.py:1293
+#, fuzzy
+msgid "Enter new poster password:"
+msgstr "أدخل كلمة سر منظم جديدة"
+
+#: Mailman/Cgi/admin.py:1295
+#, fuzzy
+msgid "Confirm poster password:"
+msgstr "أكد كلمة سر المنظم"
+
+#: Mailman/Cgi/admin.py:1304
 msgid "Submit Your Changes"
 msgstr "أرسل تعديلاتك"
 
-#: Mailman/Cgi/admin.py:1283
+#: Mailman/Cgi/admin.py:1327
 msgid "Moderator passwords did not match"
 msgstr "كلمتي سر المنظم غير متطابقتين"
 
-#: Mailman/Cgi/admin.py:1293
+#: Mailman/Cgi/admin.py:1338
+#, fuzzy
+msgid "Poster passwords did not match"
+msgstr "كلمتي سرك غير متطابقتين."
+
+#: Mailman/Cgi/admin.py:1348
 msgid "Administrator passwords did not match"
 msgstr "كلمتي سر المشرف غير متطابقتين"
 
-#: Mailman/Cgi/admin.py:1343
+#: Mailman/Cgi/admin.py:1398
 msgid "Already a member"
 msgstr "مشترك أصلاً"
 
-#: Mailman/Cgi/admin.py:1346
+#: Mailman/Cgi/admin.py:1401
 msgid "<blank line>"
 msgstr "<سطر فارغ>"
 
-#: Mailman/Cgi/admin.py:1347 Mailman/Cgi/admin.py:1350
+#: Mailman/Cgi/admin.py:1402 Mailman/Cgi/admin.py:1405
 msgid "Bad/Invalid email address"
 msgstr "عنوان بريد إلكتروني سيء أو غير صحيح"
 
-#: Mailman/Cgi/admin.py:1353
+#: Mailman/Cgi/admin.py:1408
 msgid "Hostile address (illegal characters)"
 msgstr "عنوان عدواني (فيه أحرف غير مسموحة)"
 
-#: Mailman/Cgi/admin.py:1356 bin/add_members:140 bin/clone_member:136
+#: Mailman/Cgi/admin.py:1411 bin/add_members:140 bin/clone_member:136
 #: bin/sync_members:264
 msgid "Banned address (matched %(pattern)s)"
 msgstr ""
 
-#: Mailman/Cgi/admin.py:1362
+#: Mailman/Cgi/admin.py:1417
 msgid "Successfully invited:"
 msgstr "تمت دعوته بنجاح"
 
-#: Mailman/Cgi/admin.py:1364
+#: Mailman/Cgi/admin.py:1419
 msgid "Successfully subscribed:"
 msgstr "تم اشتراكه بنجاح"
 
-#: Mailman/Cgi/admin.py:1369
+#: Mailman/Cgi/admin.py:1424
 msgid "Error inviting:"
 msgstr "خطأ في الدعوة"
 
-#: Mailman/Cgi/admin.py:1371
+#: Mailman/Cgi/admin.py:1426
 msgid "Error subscribing:"
 msgstr "خطأ في الاشتراك"
 
-#: Mailman/Cgi/admin.py:1400
+#: Mailman/Cgi/admin.py:1455
 msgid "Successfully Unsubscribed:"
 msgstr "خطأ في تسجيل الاشتراك"
 
-#: Mailman/Cgi/admin.py:1405
+#: Mailman/Cgi/admin.py:1460
 msgid "Cannot unsubscribe non-members:"
 msgstr "لا يمكن إلغاء اشتراك غير الأعضاء"
 
-#: Mailman/Cgi/admin.py:1417
+#: Mailman/Cgi/admin.py:1472
 msgid "Bad moderation flag value"
 msgstr "قيمة علامة تنظيم غير صحيحة"
 
-#: Mailman/Cgi/admin.py:1439
+#: Mailman/Cgi/admin.py:1494
 msgid "Not subscribed"
 msgstr "غير مشترك"
 
-#: Mailman/Cgi/admin.py:1442
+#: Mailman/Cgi/admin.py:1497
 msgid "Ignoring changes to deleted member: %(user)s"
 msgstr "تجاهل التعديلات لعنصر المحذوف: %(user)s"
 
-#: Mailman/Cgi/admin.py:1482
+#: Mailman/Cgi/admin.py:1537
 msgid "Successfully Removed:"
 msgstr "تمت إزالته بنجاح"
 
-#: Mailman/Cgi/admin.py:1486
+#: Mailman/Cgi/admin.py:1541
 msgid "Error Unsubscribing:"
 msgstr "خطأ في إلغاء الاشتراك"
 
-#: Mailman/Cgi/admindb.py:163 Mailman/Cgi/admindb.py:171
+#: Mailman/Cgi/admindb.py:176 Mailman/Cgi/admindb.py:185
 msgid "%(realname)s Administrative Database"
 msgstr "قاعدة بيانات الإشراف للمشرف %(realname)s"
 
-#: Mailman/Cgi/admindb.py:166
+#: Mailman/Cgi/admindb.py:179
 msgid "%(realname)s Administrative Database Results"
 msgstr "نتائج قاعدة بيانات الإشراف للمشرف %(realname)s"
 
-#: Mailman/Cgi/admindb.py:174
+#: Mailman/Cgi/admindb.py:188
 msgid "There are no pending requests."
 msgstr "لا يوجد طلبات معلقة"
 
-#: Mailman/Cgi/admindb.py:177
+#: Mailman/Cgi/admindb.py:191
 msgid "Click here to reload this page."
 msgstr "انقر هنا لإعادة تحميل هذه الصفحة."
 
-#: Mailman/Cgi/admindb.py:188
+#: Mailman/Cgi/admindb.py:205
 msgid "Detailed instructions for the administrative database"
 msgstr "تعليمات مفصلة لقاعدة بيانات الإشراف"
 
-#: Mailman/Cgi/admindb.py:192
+#: Mailman/Cgi/admindb.py:209
 msgid "Administrative requests for mailing list:"
 msgstr "الطلبات الإشرافية للقائمة البريدية:"
 
-#: Mailman/Cgi/admindb.py:195 Mailman/Cgi/admindb.py:251
+#: Mailman/Cgi/admindb.py:212 Mailman/Cgi/admindb.py:268
 msgid "Submit All Data"
 msgstr "أرسل جميع البيانات"
 
-#: Mailman/Cgi/admindb.py:201 Mailman/Cgi/admindb.py:249
+#: Mailman/Cgi/admindb.py:218 Mailman/Cgi/admindb.py:266
 msgid "Discard all messages marked <em>Defer</em>"
 msgstr "قم بإلغاء جميع الرسائل المحدد لها <em>تأجيل</em>"
 
-#: Mailman/Cgi/admindb.py:215
+#: Mailman/Cgi/admindb.py:232
 msgid "all of %(esender)s's held messages."
 msgstr "جميع الرسائل المتوقفة لـ %(esender)s"
 
-#: Mailman/Cgi/admindb.py:220
+#: Mailman/Cgi/admindb.py:237
 msgid "a single held message."
 msgstr "رسالة متوقفة واحدة."
 
-#: Mailman/Cgi/admindb.py:225
+#: Mailman/Cgi/admindb.py:242
 msgid "all held messages."
 msgstr "جميع الرسائل المتوقفة."
 
-#: Mailman/Cgi/admindb.py:266
+#: Mailman/Cgi/admindb.py:287
 msgid "Mailman Administrative Database Error"
 msgstr "خطأ في قاعدة بيانات إشراف ميلمان"
 
-#: Mailman/Cgi/admindb.py:271
+#: Mailman/Cgi/admindb.py:292
 msgid "list of available mailing lists."
 msgstr "قائمة بالقوئم البريدية الموجودة."
 
-#: Mailman/Cgi/admindb.py:272
+#: Mailman/Cgi/admindb.py:293
 msgid "You must specify a list name.  Here is the %(link)s"
 msgstr "يجب أن تحدد اسم القائمة. هنا هو الارتباط %(link)s"
 
-#: Mailman/Cgi/admindb.py:285
+#: Mailman/Cgi/admindb.py:306
 msgid "Subscription Requests"
 msgstr "طلبات التسجيل"
 
-#: Mailman/Cgi/admindb.py:287
+#: Mailman/Cgi/admindb.py:308
 msgid "Address/name"
 msgstr "العنوان/الاسم"
 
-#: Mailman/Cgi/admindb.py:288 Mailman/Cgi/admindb.py:339
+#: Mailman/Cgi/admindb.py:309 Mailman/Cgi/admindb.py:360
 msgid "Your decision"
 msgstr "قرارك"
 
-#: Mailman/Cgi/admindb.py:289 Mailman/Cgi/admindb.py:340
+#: Mailman/Cgi/admindb.py:310 Mailman/Cgi/admindb.py:361
 msgid "Reason for refusal"
 msgstr "سبب الرفض"
 
-#: Mailman/Cgi/admindb.py:307 Mailman/Cgi/admindb.py:366
-#: Mailman/Cgi/admindb.py:641
+#: Mailman/Cgi/admindb.py:328 Mailman/Cgi/admindb.py:387
+#: Mailman/Cgi/admindb.py:671 Mailman/Commands/cmd_confirm.py:90
 msgid "Approve"
 msgstr "قبول"
 
-#: Mailman/Cgi/admindb.py:317
+#: Mailman/Cgi/admindb.py:338
 msgid "Permanently ban from this list"
 msgstr "استبعاد دائم من هذه القائمة"
 
-#: Mailman/Cgi/admindb.py:338
+#: Mailman/Cgi/admindb.py:359
 msgid "User address/name"
 msgstr "عنوان/اسم المستخدم"
 
-#: Mailman/Cgi/admindb.py:378
+#: Mailman/Cgi/admindb.py:399
 msgid "Unsubscription Requests"
 msgstr "طلبات إلغاء التسجيل"
 
-#: Mailman/Cgi/admindb.py:390
+#: Mailman/Cgi/admindb.py:411
 #, fuzzy
 msgid "Held Messages"
 msgstr "جميع الرسائل المتوقفة."
 
-#: Mailman/Cgi/admindb.py:403 Mailman/Cgi/admindb.py:624
+#: Mailman/Cgi/admindb.py:424 Mailman/Cgi/admindb.py:654
 msgid "From:"
 msgstr "من:"
 
-#: Mailman/Cgi/admindb.py:406
+#: Mailman/Cgi/admindb.py:427
 msgid "Action to take on all these held messages:"
 msgstr "العمل المطلوب القيام به على جميع هذه الرسائل المتوقفة:"
 
-#: Mailman/Cgi/admindb.py:418
+#: Mailman/Cgi/admindb.py:439
 msgid "Preserve messages for the site administrator"
 msgstr "احتفظ بالرسائل لمدير القائمة"
 
-#: Mailman/Cgi/admindb.py:424
+#: Mailman/Cgi/admindb.py:445
 msgid "Forward messages (individually) to:"
 msgstr "أعد إرسال الرسائل (مفردة) إلى:"
 
-#: Mailman/Cgi/admindb.py:442
+#: Mailman/Cgi/admindb.py:463
 msgid "Clear this member's <em>moderate</em> flag"
 msgstr "أزل ميزة <em>تنظيم</em>  عن هذا العضو"
 
-#: Mailman/Cgi/admindb.py:446
+#: Mailman/Cgi/admindb.py:467
 msgid "<em>The sender is now a member of this list</em>"
 msgstr "<em>المرسل الآن عضو في هذه القائمة</em>"
 
-#: Mailman/Cgi/admindb.py:455
+#: Mailman/Cgi/admindb.py:476
 msgid "Add <b>%(esender)s</b> to one of these sender filters:"
 msgstr "أضف <b>%(esender)s</b> إلى أحد مصفيات المرسل:"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Accepts"
 msgstr "متقبلين"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Discards"
 msgstr "مزيلين"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Holds"
 msgstr "موقفين"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Rejects"
 msgstr "رافضين"
 
-#: Mailman/Cgi/admindb.py:469
+#: Mailman/Cgi/admindb.py:490
 msgid ""
 "Ban <b>%(esender)s</b> from ever subscribing to this\n"
 "                    mailing list"
 msgstr "أبعد <b>%(esender)s</b> نهائياً عن الاشتراك لهذا القائمة البريدية"
 
-#: Mailman/Cgi/admindb.py:474
+#: Mailman/Cgi/admindb.py:495
 msgid ""
 "Click on the message number to view the individual\n"
 "            message, or you can "
 msgstr "انقر على رقم الرسالة لعرض الرسالة المفردة، أو يمكنك "
 
-#: Mailman/Cgi/admindb.py:476
+#: Mailman/Cgi/admindb.py:497
 msgid "view all messages from %(esender)s"
 msgstr "عرض جميع الرسائل المرسلة من قبل %(esender)s"
 
-#: Mailman/Cgi/admindb.py:498 Mailman/Cgi/admindb.py:627
+#: Mailman/Cgi/admindb.py:519 Mailman/Cgi/admindb.py:657
 msgid "Subject:"
 msgstr "العنوان:"
 
-#: Mailman/Cgi/admindb.py:501
+#: Mailman/Cgi/admindb.py:522
 msgid " bytes"
 msgstr " بايت"
 
-#: Mailman/Cgi/admindb.py:501
+#: Mailman/Cgi/admindb.py:522
 msgid "Size:"
 msgstr "الحجم:"
 
-#: Mailman/Cgi/admindb.py:505 Mailman/Handlers/Scrubber.py:203
+#: Mailman/Cgi/admindb.py:526 Mailman/Handlers/Scrubber.py:203
 #: Mailman/Handlers/Scrubber.py:301 Mailman/Handlers/Scrubber.py:303
 msgid "not available"
 msgstr "غير متوفرة"
 
-#: Mailman/Cgi/admindb.py:506 Mailman/Cgi/admindb.py:630
+#: Mailman/Cgi/admindb.py:527 Mailman/Cgi/admindb.py:660
 msgid "Reason:"
 msgstr "السبب:"
 
-#: Mailman/Cgi/admindb.py:510 Mailman/Cgi/admindb.py:634
+#: Mailman/Cgi/admindb.py:531 Mailman/Cgi/admindb.py:664
 msgid "Received:"
 msgstr "استلمت:"
 
-#: Mailman/Cgi/admindb.py:565
+#: Mailman/Cgi/admindb.py:586
 msgid "Posting Held for Approval"
 msgstr "الإرسال المتوقف من أجل الموافقة"
 
-#: Mailman/Cgi/admindb.py:567
+#: Mailman/Cgi/admindb.py:588
 msgid " (%(count)d of %(total)d)"
 msgstr " (%(count)d من %(total)d)"
 
-#: Mailman/Cgi/admindb.py:578
+#: Mailman/Cgi/admindb.py:599
 msgid "<em>Message with id #%(id)d was lost."
 msgstr "<em>الرسالة ذات المعرف #%(id)d فقدت."
 
-#: Mailman/Cgi/admindb.py:587
+#: Mailman/Cgi/admindb.py:608
 msgid "<em>Message with id #%(id)d is corrupted."
 msgstr "<em>الرسالة ذات المعرف #%(id)d مخربة."
 
-#: Mailman/Cgi/admindb.py:651
+#: Mailman/Cgi/admindb.py:681
 msgid "Preserve message for site administrator"
 msgstr "احفظ الرسالة لمشرف الموقع"
 
-#: Mailman/Cgi/admindb.py:655
+#: Mailman/Cgi/admindb.py:685
 msgid "Additionally, forward this message to: "
 msgstr "قم بإعادة إرسال الرسالة أيضاً إلى: "
 
-#: Mailman/Cgi/admindb.py:659 Mailman/Cgi/admindb.py:724
-#: Mailman/Cgi/admindb.py:787 Mailman/Cgi/admindb.py:789
+#: Mailman/Cgi/admindb.py:689 Mailman/Cgi/admindb.py:754
+#: Mailman/Cgi/admindb.py:817 Mailman/Cgi/admindb.py:819
 msgid "[No explanation given]"
 msgstr "]لا يوجد شرح["
 
-#: Mailman/Cgi/admindb.py:661
+#: Mailman/Cgi/admindb.py:691
 msgid "If you reject this post,<br>please explain (optional):"
 msgstr "إذا قمت برفض الإرسال، <br>الرجاء شرح السبب (اختياري):"
 
-#: Mailman/Cgi/admindb.py:667
+#: Mailman/Cgi/admindb.py:697
 msgid "Message Headers:"
 msgstr "ترويسات الرسالة:"
 
-#: Mailman/Cgi/admindb.py:672
+#: Mailman/Cgi/admindb.py:702
 msgid "Message Excerpt:"
 msgstr "ملخص الرسالة:"
 
-#: Mailman/Cgi/admindb.py:824
+#: Mailman/Cgi/admindb.py:854
 msgid "Database Updated..."
 msgstr "تم تحديث قاعدة البيانات..."
 
-#: Mailman/Cgi/admindb.py:827
+#: Mailman/Cgi/admindb.py:857
 msgid " is already a member"
 msgstr "عضو أصلاً"
 
-#: Mailman/Cgi/admindb.py:830
+#: Mailman/Cgi/admindb.py:860
 msgid "%(addr)s is banned (matched: %(patt)s)"
 msgstr ""
 
@@ -1425,7 +1458,7 @@
 "منظم القائمة، وسيتم إعلامك بقرار المنظم."
 
 #: Mailman/Cgi/confirm.py:371 Mailman/Cgi/confirm.py:436
-#: Mailman/Cgi/confirm.py:525 Mailman/Cgi/confirm.py:761
+#: Mailman/Cgi/confirm.py:525 Mailman/Cgi/confirm.py:762
 msgid ""
 "Invalid confirmation string.  It is\n"
 "            possible that you are attempting to confirm a request for an\n"
@@ -1531,8 +1564,8 @@
 "اضغط على زر <em>إلغاء الاشتراك</em> تحت لإكمال عملية التأكيد\n"
 "    <p>أو اضغط  <em>إلغاء وإزالة</em> لإلغاء طلب إلغاء الاشتراك."
 
-#: Mailman/Cgi/confirm.py:491 Mailman/Cgi/options.py:761
-#: Mailman/Cgi/options.py:905 Mailman/Cgi/options.py:915
+#: Mailman/Cgi/confirm.py:491 Mailman/Cgi/options.py:767
+#: Mailman/Cgi/options.py:911 Mailman/Cgi/options.py:921
 msgid "Unsubscribe"
 msgstr "إلغاء الاشتراك"
 
@@ -1628,7 +1661,7 @@
 msgid "Change address"
 msgstr "غير العنوان"
 
-#: Mailman/Cgi/confirm.py:611 Mailman/Cgi/confirm.py:726
+#: Mailman/Cgi/confirm.py:611 Mailman/Cgi/confirm.py:727
 msgid "Continue awaiting approval"
 msgstr "استمر في انتظار القبول"
 
@@ -1638,11 +1671,11 @@
 "    opportunity to approve or reject this message."
 msgstr "حسناً، المنظم سوف يظل له الخيار في قبول أو رفض هذه الرسالة."
 
-#: Mailman/Cgi/confirm.py:646
+#: Mailman/Cgi/confirm.py:647
 msgid "Sender discarded message via web."
 msgstr "المرسل أزال الرسالة من خلال الموقع."
 
-#: Mailman/Cgi/confirm.py:648
+#: Mailman/Cgi/confirm.py:649
 msgid ""
 "The held message with the Subject:\n"
 "            header <em>%(subject)s</em> could not be found.  The most "
@@ -1656,11 +1689,11 @@
 "الترويسة <em>%(subject)s</em>.  والسبب الأغلب لهذا هو أن منظم القائمة قبل أو "
 "رفض في السابق الرسالة. لن تستطيع أن تلغيها في الوقت."
 
-#: Mailman/Cgi/confirm.py:656
+#: Mailman/Cgi/confirm.py:657
 msgid "Posted message canceled"
 msgstr "تم إلغاء الرسالة المرسلة"
 
-#: Mailman/Cgi/confirm.py:659
+#: Mailman/Cgi/confirm.py:660
 msgid ""
 "            You have successfully canceled the posting of your message with\n"
 "            the Subject: header <em>%(subject)s</em> to the mailing list\n"
@@ -1669,18 +1702,18 @@
 "لقد ألغيت بنجاح إرسال رسالتك بالعنوان: ترويسة <em>%(subject)s</em> إلى "
 "القائمة البريدية %(listname)s."
 
-#: Mailman/Cgi/confirm.py:670
+#: Mailman/Cgi/confirm.py:671
 msgid "Cancel held message posting"
 msgstr "ألغ إرسال الرسائل المعلقة"
 
-#: Mailman/Cgi/confirm.py:695
+#: Mailman/Cgi/confirm.py:696
 msgid ""
 "The held message you were referred to has\n"
 "        already been handled by the list administrator."
 msgstr ""
 "الرسالة المعلقة التي تم تحويلك إليها تم التعامل معها أصلاً من قبل المشرف."
 
-#: Mailman/Cgi/confirm.py:709
+#: Mailman/Cgi/confirm.py:710
 msgid ""
 "Your confirmation is required in order to cancel the\n"
 "    posting of your message to the mailing list <em>%(listname)s</em>:\n"
@@ -1706,11 +1739,11 @@
 "    <p>أو اضغط على الزر <em>استمر في انتظار الموافقة</em> للاستمرار في "
 "السماح لمنظم القائمة بقبول أو رفض الرسالة."
 
-#: Mailman/Cgi/confirm.py:725
+#: Mailman/Cgi/confirm.py:726
 msgid "Cancel posting"
 msgstr "ألغ الإرسال"
 
-#: Mailman/Cgi/confirm.py:737
+#: Mailman/Cgi/confirm.py:738
 msgid ""
 "You have canceled the re-enabling of your membership.  If\n"
 "    we continue to receive bounces from your address, it could be deleted "
@@ -1720,11 +1753,11 @@
 "لقد ألغيت إعادة تفعيل عضويتك. إذا استمر استلامنا لردود رفض من عنوانك، فقد "
 "يزال عنوانك من هذه القائمة البريدية."
 
-#: Mailman/Cgi/confirm.py:767
+#: Mailman/Cgi/confirm.py:768
 msgid "Membership re-enabled."
 msgstr "تم إعادة تمكين العضوية."
 
-#: Mailman/Cgi/confirm.py:771
+#: Mailman/Cgi/confirm.py:772
 msgid ""
 "            You have successfully re-enabled your membership in the\n"
 "            %(listname)s mailing list.  You can now <a\n"
@@ -1736,11 +1769,11 @@
 "            href=\"%(optionsurl)s\">الذهاب إلى صفحة خيارات عضويتك</a>.\n"
 "            "
 
-#: Mailman/Cgi/confirm.py:783
+#: Mailman/Cgi/confirm.py:784
 msgid "Re-enable mailing list membership"
 msgstr "أعد تفعيل العضوية في القائمة البريدية"
 
-#: Mailman/Cgi/confirm.py:800
+#: Mailman/Cgi/confirm.py:801
 msgid ""
 "We're sorry, but you have already been unsubscribed\n"
 "        from this mailing list.  To re-subscribe, please visit the\n"
@@ -1749,11 +1782,11 @@
 "نحن آسفون ولكن تم أصلاً إلغاء اشتراكك من القائمة البريدية.  لإعادة الاشتراك "
 "يرجى الذهاب إلى <a href=\"%(listinfourl)s\">صفخة معلومات القائمة</a>."
 
-#: Mailman/Cgi/confirm.py:815
+#: Mailman/Cgi/confirm.py:816
 msgid "<em>not available</em>"
 msgstr "<em>غير موجودة</em>"
 
-#: Mailman/Cgi/confirm.py:819
+#: Mailman/Cgi/confirm.py:820
 msgid ""
 "Your membership in the %(realname)s mailing list is\n"
 "    currently disabled due to excessive bounces.  Your confirmation is\n"
@@ -1789,11 +1822,11 @@
 "عضويتك.\n"
 "    "
 
-#: Mailman/Cgi/confirm.py:839
+#: Mailman/Cgi/confirm.py:840
 msgid "Re-enable membership"
 msgstr "أعد تفعيل العضوية"
 
-#: Mailman/Cgi/confirm.py:840
+#: Mailman/Cgi/confirm.py:841
 msgid "Cancel"
 msgstr "إلغاء"
 
@@ -1912,7 +1945,7 @@
 msgstr "أنشء القائمة البريدية %(hostname)s"
 
 #: Mailman/Cgi/create.py:303 Mailman/Cgi/rmlist.py:201
-#: Mailman/Gui/Bounce.py:187 Mailman/htmlformat.py:343
+#: Mailman/Gui/Bounce.py:187 Mailman/htmlformat.py:345
 msgid "Error: "
 msgstr "خطأ:"
 
@@ -2038,51 +2071,56 @@
 msgid "Welcome email text file"
 msgstr "ملف نص رسالة الترحيب"
 
-#: Mailman/Cgi/edithtml.py:60
+#: Mailman/Cgi/edithtml.py:49
+#, fuzzy
+msgid "Digest masthead"
+msgstr "ترويسة دفعة"
+
+#: Mailman/Cgi/edithtml.py:61
 msgid "List name is required."
 msgstr "اسم القائمة مطلوب."
 
-#: Mailman/Cgi/edithtml.py:102
+#: Mailman/Cgi/edithtml.py:103
 msgid "%(realname)s -- Edit html for %(template_info)s"
 msgstr "%(realname)s -- عدل صيغة html لـ %(template_info)s"
 
-#: Mailman/Cgi/edithtml.py:108
+#: Mailman/Cgi/edithtml.py:109
 msgid "Edit HTML : Error"
 msgstr "تعديل HTML : خطأ"
 
-#: Mailman/Cgi/edithtml.py:109
+#: Mailman/Cgi/edithtml.py:110
 msgid "%(safetemplatename)s: Invalid template"
 msgstr "%(safetemplatename)s: قالب غير صالح"
 
-#: Mailman/Cgi/edithtml.py:114 Mailman/Cgi/edithtml.py:115
+#: Mailman/Cgi/edithtml.py:115 Mailman/Cgi/edithtml.py:116
 msgid "%(realname)s -- HTML Page Editing"
 msgstr "%(realname)s -- تحريرصيغة صفحة HTML "
 
-#: Mailman/Cgi/edithtml.py:116
+#: Mailman/Cgi/edithtml.py:117
 msgid "Select page to edit:"
 msgstr "اختر صفحة للتعديل:"
 
-#: Mailman/Cgi/edithtml.py:142
+#: Mailman/Cgi/edithtml.py:143
 msgid "View or edit the list configuration information."
 msgstr "اعرض أو حرر معلومات ضبط القائمة."
 
-#: Mailman/Cgi/edithtml.py:151
+#: Mailman/Cgi/edithtml.py:152
 msgid "When you are done making changes..."
 msgstr "عندما تنتهي من إجراء تعديلاتك..."
 
-#: Mailman/Cgi/edithtml.py:152
+#: Mailman/Cgi/edithtml.py:153
 msgid "Submit Changes"
 msgstr "أرسل التعديلات"
 
-#: Mailman/Cgi/edithtml.py:159
+#: Mailman/Cgi/edithtml.py:160
 msgid "Can't have empty html page."
 msgstr "لا يمكن أن تكون صفحة html فارغة."
 
-#: Mailman/Cgi/edithtml.py:160
+#: Mailman/Cgi/edithtml.py:161
 msgid "HTML Unchanged."
 msgstr "لم يتم تعديل صيغة HTML "
 
-#: Mailman/Cgi/edithtml.py:166
+#: Mailman/Cgi/edithtml.py:167
 msgid ""
 "The page you saved contains suspicious HTML that could\n"
 "potentially expose your users to cross-site scripting attacks.  This change\n"
@@ -2091,20 +2129,20 @@
 "             "
 msgstr ""
 
-#: Mailman/Cgi/edithtml.py:171
+#: Mailman/Cgi/edithtml.py:172
 msgid "See "
 msgstr ""
 
-#: Mailman/Cgi/edithtml.py:174
+#: Mailman/Cgi/edithtml.py:175
 msgid "FAQ 4.48."
 msgstr ""
 
-#: Mailman/Cgi/edithtml.py:175
+#: Mailman/Cgi/edithtml.py:176
 #, fuzzy
 msgid "Page Unchanged."
 msgstr "لم يتم تعديل صيغة HTML "
 
-#: Mailman/Cgi/edithtml.py:193
+#: Mailman/Cgi/edithtml.py:194
 msgid "HTML successfully updated."
 msgstr "تم تحديث HTML بنجاح."
 
@@ -2165,7 +2203,7 @@
 msgid "Edit Options"
 msgstr "خيارات التحرير"
 
-#: Mailman/Cgi/listinfo.py:201 Mailman/Cgi/options.py:870
+#: Mailman/Cgi/listinfo.py:201 Mailman/Cgi/options.py:876
 #: Mailman/Cgi/roster.py:118
 msgid "View this page in"
 msgstr "اعرض هذه الصفحة في"
@@ -2187,7 +2225,7 @@
 msgstr "عنوان بريد إلكتروني غير نظامي: %(safeuser)s"
 
 #: Mailman/Cgi/options.py:128 Mailman/Cgi/options.py:193
-#: Mailman/Cgi/options.py:215
+#: Mailman/Cgi/options.py:215 Mailman/Cgi/private.py:154
 msgid "No such member: %(safeuser)s."
 msgstr "لا يوجد مثل هذ العضو: %(safeuser)s"
 
@@ -2216,8 +2254,8 @@
 "            subscriptions for this user."
 msgstr ""
 
-#: Mailman/Cgi/options.py:286 Mailman/Cgi/options.py:329
-#: Mailman/Cgi/options.py:457 Mailman/Cgi/options.py:673
+#: Mailman/Cgi/options.py:286 Mailman/Cgi/options.py:335
+#: Mailman/Cgi/options.py:463 Mailman/Cgi/options.py:679
 msgid "Note: "
 msgstr "ملاحظة: "
 
@@ -2233,22 +2271,26 @@
 "انقر على الرابط للذهاب إلى صفحة الخيارات المتعلقة بك من أجل القائمة البريدية "
 "المطلوبة."
 
-#: Mailman/Cgi/options.py:326
+#: Mailman/Cgi/options.py:305
+msgid "nomail"
+msgstr ""
+
+#: Mailman/Cgi/options.py:332
 msgid ""
 "The list administrator may not change the names\n"
 "            or addresses for this user's other subscriptions.  However, the\n"
 "            subscription for this mailing list has been changed."
 msgstr ""
 
-#: Mailman/Cgi/options.py:349
+#: Mailman/Cgi/options.py:355
 msgid "Addresses did not match!"
 msgstr "العناوين لم تتطابق!"
 
-#: Mailman/Cgi/options.py:354
+#: Mailman/Cgi/options.py:360
 msgid "You are already using that email address"
 msgstr "أنت تستعمل أصلاً ذلك العنوان البريدي الإلكتروني"
 
-#: Mailman/Cgi/options.py:366
+#: Mailman/Cgi/options.py:372
 msgid ""
 "The new address you requested %(newaddr)s is already a member of the\n"
 "%(listname)s mailing list, however you have also requested a global change "
@@ -2260,31 +2302,31 @@
 "%(listname)s, مع أنك طلبت أيضاً تغيير العنوان بشكل عام. عند التأكيد سيتم "
 "تغيير كل قائمة بريدية تحتوي على العنوان %(safeuser)s. "
 
-#: Mailman/Cgi/options.py:375
+#: Mailman/Cgi/options.py:381
 msgid "The new address is already a member: %(newaddr)s"
 msgstr "العنوان الجديد عضو أصلاً: %(newaddr)s"
 
-#: Mailman/Cgi/options.py:381
+#: Mailman/Cgi/options.py:387
 msgid "Addresses may not be blank"
 msgstr "العناوين يجب أن لا تكون فارغة"
 
-#: Mailman/Cgi/options.py:395
+#: Mailman/Cgi/options.py:401
 msgid "A confirmation message has been sent to %(newaddr)s. "
 msgstr "تم إرسال رسالة تأكيد إلى: %(newaddr)s. "
 
-#: Mailman/Cgi/options.py:404
+#: Mailman/Cgi/options.py:410
 msgid "Bad email address provided"
 msgstr "تم التزويد بعنوان سيء"
 
-#: Mailman/Cgi/options.py:406
+#: Mailman/Cgi/options.py:412
 msgid "Illegal email address provided"
 msgstr "تم التزويد بعنوان غير نظامي"
 
-#: Mailman/Cgi/options.py:408
+#: Mailman/Cgi/options.py:414
 msgid "%(newaddr)s is already a member of the list."
 msgstr "%(newaddr)s عضو أصلاً في القائمة."
 
-#: Mailman/Cgi/options.py:411
+#: Mailman/Cgi/options.py:417
 #, fuzzy
 msgid ""
 "%(newaddr)s is banned from this list.  If you\n"
@@ -2295,11 +2337,11 @@
 "إذا كنت ترى أن هذا حصل بالخطأ، الرجاء اتصل بأصحاب القائمة في الارتباط %"
 "(listowner)s."
 
-#: Mailman/Cgi/options.py:422
+#: Mailman/Cgi/options.py:428
 msgid "Member name successfully changed. "
 msgstr "تم تغيير اسم العضو بنجاح. "
 
-#: Mailman/Cgi/options.py:432
+#: Mailman/Cgi/options.py:438
 #, fuzzy
 msgid ""
 "The list administrator may not change the\n"
@@ -2308,15 +2350,15 @@
 "لقد عطل مشرف القائمة الإرسال بغير الدفعات لهذه القائمة، ولهذا لم يتم ضبط "
 "خيار الإرسال لك. على كل حال تم ضبط الخيارات الأخرى بنجاح."
 
-#: Mailman/Cgi/options.py:441
+#: Mailman/Cgi/options.py:447
 msgid "Passwords may not be blank"
 msgstr "يجب أن لا تكون كلمات السر فارغة."
 
-#: Mailman/Cgi/options.py:446
+#: Mailman/Cgi/options.py:452
 msgid "Passwords did not match!"
 msgstr "لم تتطابق كلمات السر!"
 
-#: Mailman/Cgi/options.py:454
+#: Mailman/Cgi/options.py:460
 #, fuzzy
 msgid ""
 "The list administrator may not change the\n"
@@ -2326,12 +2368,12 @@
 "لقد عطل مشرف القائمة الإرسال بغير الدفعات لهذه القائمة، ولهذا لم يتم ضبط "
 "خيار الإرسال لك. على كل حال تم ضبط الخيارات الأخرى بنجاح."
 
-#: Mailman/Cgi/options.py:471 Mailman/Commands/cmd_password.py:83
+#: Mailman/Cgi/options.py:477 Mailman/Commands/cmd_password.py:83
 #: Mailman/Commands/cmd_password.py:109
 msgid "Password successfully changed."
 msgstr "تم تغيير كلمة السر بنجاح."
 
-#: Mailman/Cgi/options.py:480
+#: Mailman/Cgi/options.py:486
 msgid ""
 "You must confirm your unsubscription request by turning\n"
 "                on the checkbox below the <em>Unsubscribe</em> button.  You\n"
@@ -2340,11 +2382,11 @@
 "يجب عليك تأكيد إلغاء اشتراكك بتفعيل حقل صح/خطأ تحت زر  <em>إلغاء الاشتراك</"
 "em>.  لم يتم إلغاء اشتراكك."
 
-#: Mailman/Cgi/options.py:512
+#: Mailman/Cgi/options.py:518
 msgid "Unsubscription results"
 msgstr "نتائج إلغاء الاشتراك"
 
-#: Mailman/Cgi/options.py:516
+#: Mailman/Cgi/options.py:522
 msgid ""
 "Your unsubscription request has been received and\n"
 "            forwarded on to the list moderators for approval.  You will\n"
@@ -2354,7 +2396,7 @@
 "تم استلام طلب إلغاء اشتراكك وتم تحويله إلى منظمي القائمة للموافقة. سوف تستلم "
 "إعلام فور اتخاذ منظمي القائمة قرارهم."
 
-#: Mailman/Cgi/options.py:521
+#: Mailman/Cgi/options.py:527
 msgid ""
 "You have been successfully unsubscribed from the\n"
 "            mailing list %(fqdn_listname)s.  If you were receiving digest\n"
@@ -2367,7 +2409,7 @@
 "إرسال بالدفعات فقد تستلم دفعة أخرى واحدة. إن كان عندك أي أسئلة حول إلغاء "
 "اشتراكك، الرجاء اتصل بمالكي القائمة %(owneraddr)s."
 
-#: Mailman/Cgi/options.py:670
+#: Mailman/Cgi/options.py:676
 msgid ""
 "The list administrator may not change the\n"
 "                options for this user's other subscriptions.  However the\n"
@@ -2375,7 +2417,7 @@
 "                changed."
 msgstr ""
 
-#: Mailman/Cgi/options.py:680
+#: Mailman/Cgi/options.py:686
 msgid ""
 "The list administrator has disabled digest delivery for\n"
 "            this list, so your delivery option has not been set.  However "
@@ -2385,7 +2427,7 @@
 "لقد عطل مشرف القائمة الإرسال بالدفعات لهذه القائمة، ولهذا لم يتم ضبط خيار "
 "الإرسال لك. على كل حال تم ضبط الخيارات الأخرى بنجاح."
 
-#: Mailman/Cgi/options.py:684
+#: Mailman/Cgi/options.py:690
 msgid ""
 "The list administrator has disabled non-digest delivery\n"
 "            for this list, so your delivery option has not been set.  "
@@ -2395,63 +2437,63 @@
 "لقد عطل مشرف القائمة الإرسال بغير الدفعات لهذه القائمة، ولهذا لم يتم ضبط "
 "خيار الإرسال لك. على كل حال تم ضبط الخيارات الأخرى بنجاح."
 
-#: Mailman/Cgi/options.py:688
+#: Mailman/Cgi/options.py:694
 msgid "You have successfully set your options."
 msgstr "لقد قمت بتحديد خياراتك بنجاح."
 
-#: Mailman/Cgi/options.py:691
+#: Mailman/Cgi/options.py:697
 msgid "You may get one last digest."
 msgstr "من الممكن أن تتلقى دفعة أخيرة واحدة."
 
-#: Mailman/Cgi/options.py:763
+#: Mailman/Cgi/options.py:769
 msgid "<em>Yes, I really want to unsubscribe</em>"
 msgstr "<em>نعم، أنا أريد حقيقة أن ألغي اشتراكي</em>"
 
-#: Mailman/Cgi/options.py:767
+#: Mailman/Cgi/options.py:773
 msgid "Change My Password"
 msgstr "غير كلمة سري"
 
-#: Mailman/Cgi/options.py:770
+#: Mailman/Cgi/options.py:776
 msgid "List my other subscriptions"
 msgstr "اعرض اشتراكاتي الأخرى"
 
-#: Mailman/Cgi/options.py:776
+#: Mailman/Cgi/options.py:782
 msgid "Email My Password To Me"
 msgstr "أرسل كلمة سري إلي برسالة إلكترونية"
 
-#: Mailman/Cgi/options.py:778
+#: Mailman/Cgi/options.py:784
 msgid "password"
 msgstr "كلمة السر"
 
-#: Mailman/Cgi/options.py:780
+#: Mailman/Cgi/options.py:786
 msgid "Log out"
 msgstr "خروج"
 
-#: Mailman/Cgi/options.py:782
+#: Mailman/Cgi/options.py:788
 msgid "Submit My Changes"
 msgstr "أرسل تعديلاتي"
 
-#: Mailman/Cgi/options.py:794
+#: Mailman/Cgi/options.py:800
 msgid "days"
 msgstr "يوم"
 
-#: Mailman/Cgi/options.py:796
+#: Mailman/Cgi/options.py:802
 msgid "day"
 msgstr "يوم"
 
-#: Mailman/Cgi/options.py:797
+#: Mailman/Cgi/options.py:803
 msgid "%(days)d %(units)s"
 msgstr "%(days)d %(units)s"
 
-#: Mailman/Cgi/options.py:803
+#: Mailman/Cgi/options.py:809
 msgid "Change My Address and Name"
 msgstr "غير عنواني واسمي"
 
-#: Mailman/Cgi/options.py:829
+#: Mailman/Cgi/options.py:835
 msgid "<em>No topics defined</em>"
 msgstr "<em>لا يوجد مواضيع معرفة</em>"
 
-#: Mailman/Cgi/options.py:837
+#: Mailman/Cgi/options.py:843
 msgid ""
 "\n"
 "You are subscribed to this list with the case-preserved address\n"
@@ -2460,19 +2502,19 @@
 "\n"
 "أنت مشترك في هذه القائمة بالعنوان المحفوظ حالة أحرفه <em>%(cpuser)s</em>."
 
-#: Mailman/Cgi/options.py:851
+#: Mailman/Cgi/options.py:857
 msgid "%(realname)s list: member options login page"
 msgstr "صفحة الدخول إلى خيارات عضو القائمة %(realname)s "
 
-#: Mailman/Cgi/options.py:852
+#: Mailman/Cgi/options.py:858
 msgid "email address and "
 msgstr "عنوان إلكتروني و "
 
-#: Mailman/Cgi/options.py:855
+#: Mailman/Cgi/options.py:861
 msgid "%(realname)s list: member options for user %(safeuser)s"
 msgstr "خيارات عضو القائمة %(realname)s للمستخدم  %(safeuser)s"
 
-#: Mailman/Cgi/options.py:881
+#: Mailman/Cgi/options.py:887
 msgid ""
 "In order to change your membership option, you must\n"
 "    first log in by giving your %(extra)smembership password in the section\n"
@@ -2497,19 +2539,19 @@
 "الكوكيز مفعلة في مستعرضك، وإلا فلن تؤثر أي من تغييراتك.\n"
 "    "
 
-#: Mailman/Cgi/options.py:895
+#: Mailman/Cgi/options.py:901
 msgid "Email address:"
 msgstr "البريد الإلكتروني:"
 
-#: Mailman/Cgi/options.py:899
+#: Mailman/Cgi/options.py:905
 msgid "Password:"
 msgstr "كلمة السر:"
 
-#: Mailman/Cgi/options.py:901
+#: Mailman/Cgi/options.py:907
 msgid "Log in"
 msgstr "دخول"
 
-#: Mailman/Cgi/options.py:909
+#: Mailman/Cgi/options.py:915
 msgid ""
 "By clicking on the <em>Unsubscribe</em> button, a\n"
 "    confirmation message will be emailed to you.  This message will have a\n"
@@ -2521,38 +2563,38 @@
 "هذه الرسالة على رابط عليك أن تنقر عليه لتكمل عملية الإزالة (يمكنك أيضاً "
 "التأكيد بالبريد، انظر التعليمات في رسالة التأكيد)."
 
-#: Mailman/Cgi/options.py:917
+#: Mailman/Cgi/options.py:923
 msgid "Password reminder"
 msgstr "مذكر كلمة السر"
 
-#: Mailman/Cgi/options.py:921
+#: Mailman/Cgi/options.py:927
 msgid ""
 "By clicking on the <em>Remind</em> button, your\n"
 "    password will be emailed to you."
 msgstr ""
 "بالنقر على زر <em>تذكير</em>, سوف يتم إرسال كلمة سرك إليك بالبريد الإلكتروني."
 
-#: Mailman/Cgi/options.py:924
+#: Mailman/Cgi/options.py:930
 msgid "Remind"
 msgstr "تذكير"
 
-#: Mailman/Cgi/options.py:1024
+#: Mailman/Cgi/options.py:1030 Mailman/ListAdmin.py:225
 msgid "<missing>"
 msgstr "<مفقود>"
 
-#: Mailman/Cgi/options.py:1035
+#: Mailman/Cgi/options.py:1041
 msgid "Requested topic is not valid: %(topicname)s"
 msgstr "موضوع مطلوب غير صحيح: %(topicname)s"
 
-#: Mailman/Cgi/options.py:1040
+#: Mailman/Cgi/options.py:1046
 msgid "Topic filter details"
 msgstr "تفاصيل مصفي الموضوع"
 
-#: Mailman/Cgi/options.py:1043
+#: Mailman/Cgi/options.py:1049
 msgid "Name:"
 msgstr "الاسم:"
 
-#: Mailman/Cgi/options.py:1045
+#: Mailman/Cgi/options.py:1051
 msgid "Pattern (as regexp):"
 msgstr "الصيغة المكررة (كصيغة نظامية):"
 
@@ -2572,7 +2614,19 @@
 msgid "Private Archive Error - %(msg)s"
 msgstr "خطأ في الأرشيف الخاص - %(msg)s"
 
-#: Mailman/Cgi/private.py:185
+#: Mailman/Cgi/private.py:141
+#, fuzzy
+msgid ""
+"If you are a list member,\n"
+"                          your password has been emailed to you."
+msgstr "رسالة تذكيرية لكلمة سرك قد أرسلت إليك."
+
+#: Mailman/Cgi/private.py:145
+#, fuzzy
+msgid "Please enter your email address"
+msgstr "عنوانك الإلكتروني:"
+
+#: Mailman/Cgi/private.py:206
 msgid "Private archive file not found"
 msgstr "ملف الأرشيف الخاص غير موجود"
 
@@ -2860,7 +2914,8 @@
 msgid "Bad approval password given.  Held message is still being held."
 msgstr "كلمة سر موافقة سيئة. الرسالة المعلقة ما زالت معلقة."
 
-#: Mailman/Commands/cmd_confirm.py:87
+#: Mailman/Commands/cmd_confirm.py:89 Mailman/Commands/cmd_confirm.py:92
+#: Mailman/Commands/cmd_confirm.py:95
 msgid "Confirmation succeeded"
 msgstr "نحج التأكيد"
 
@@ -3497,154 +3552,158 @@
 msgid "Digest members:"
 msgstr "أعضاء دفعات:"
 
-#: Mailman/Defaults.py:1410
+#: Mailman/Defaults.py:1482
 msgid "Arabic"
 msgstr ""
 
-#: Mailman/Defaults.py:1411
+#: Mailman/Defaults.py:1483
 #, fuzzy
 msgid "Asturian"
 msgstr "إستونية"
 
-#: Mailman/Defaults.py:1412
+#: Mailman/Defaults.py:1484
 msgid "Catalan"
 msgstr "كتلان"
 
-#: Mailman/Defaults.py:1413
+#: Mailman/Defaults.py:1485
 msgid "Czech"
 msgstr "الشركسية"
 
-#: Mailman/Defaults.py:1414
+#: Mailman/Defaults.py:1486
 msgid "Danish"
 msgstr "الدنماركية"
 
-#: Mailman/Defaults.py:1415
+#: Mailman/Defaults.py:1487
 msgid "German"
 msgstr "الألمانية"
 
-#: Mailman/Defaults.py:1416
+#: Mailman/Defaults.py:1488
 msgid "English (USA)"
 msgstr "الإنجليزية (الولايات)"
 
-#: Mailman/Defaults.py:1417
+#: Mailman/Defaults.py:1489
 msgid "Spanish (Spain)"
 msgstr "الإسبانية (إسبانيا)"
 
-#: Mailman/Defaults.py:1418
+#: Mailman/Defaults.py:1490
 msgid "Estonian"
 msgstr "إستونية"
 
-#: Mailman/Defaults.py:1419
+#: Mailman/Defaults.py:1491
 msgid "Euskara"
 msgstr "إيوسكارتية"
 
-#: Mailman/Defaults.py:1420
+#: Mailman/Defaults.py:1492
 msgid "Finnish"
 msgstr "الفنلندية"
 
-#: Mailman/Defaults.py:1421
+#: Mailman/Defaults.py:1493
 msgid "French"
 msgstr "الفرنسية"
 
-#: Mailman/Defaults.py:1422
+#: Mailman/Defaults.py:1494
 #, fuzzy
 msgid "Galician"
 msgstr "الإيطالية"
 
-#: Mailman/Defaults.py:1423
+#: Mailman/Defaults.py:1495
+msgid "Greek"
+msgstr ""
+
+#: Mailman/Defaults.py:1496
 msgid "Hebrew"
 msgstr ""
 
-#: Mailman/Defaults.py:1424
+#: Mailman/Defaults.py:1497
 msgid "Croatian"
 msgstr "الكرواتية"
 
-#: Mailman/Defaults.py:1425
+#: Mailman/Defaults.py:1498
 msgid "Hungarian"
 msgstr "الهنغارية"
 
-#: Mailman/Defaults.py:1426
+#: Mailman/Defaults.py:1499
 msgid "Interlingua"
 msgstr ""
 
-#: Mailman/Defaults.py:1427
+#: Mailman/Defaults.py:1500
 msgid "Italian"
 msgstr "الإيطالية"
 
-#: Mailman/Defaults.py:1428
+#: Mailman/Defaults.py:1501
 msgid "Japanese"
 msgstr "اليابانية"
 
-#: Mailman/Defaults.py:1429
+#: Mailman/Defaults.py:1502
 msgid "Korean"
 msgstr "الكورية"
 
-#: Mailman/Defaults.py:1430
+#: Mailman/Defaults.py:1503
 msgid "Lithuanian"
 msgstr "الليثوانية"
 
-#: Mailman/Defaults.py:1431
+#: Mailman/Defaults.py:1504
 msgid "Dutch"
 msgstr "الهولندية"
 
-#: Mailman/Defaults.py:1432
+#: Mailman/Defaults.py:1505
 msgid "Norwegian"
 msgstr "النرويجية"
 
-#: Mailman/Defaults.py:1433
+#: Mailman/Defaults.py:1506
 msgid "Polish"
 msgstr "البولندية"
 
-#: Mailman/Defaults.py:1434
+#: Mailman/Defaults.py:1507
 msgid "Portuguese"
 msgstr "البرتغالية"
 
-#: Mailman/Defaults.py:1435
+#: Mailman/Defaults.py:1508
 msgid "Portuguese (Brazil)"
 msgstr "البرتغالية (البرازيل)"
 
-#: Mailman/Defaults.py:1436
+#: Mailman/Defaults.py:1509
 msgid "Romanian"
 msgstr "الرومانية"
 
-#: Mailman/Defaults.py:1437
+#: Mailman/Defaults.py:1510
 msgid "Russian"
 msgstr "الروسية"
 
-#: Mailman/Defaults.py:1438
+#: Mailman/Defaults.py:1511
 #, fuzzy
 msgid "Slovak"
 msgstr "السلوفاكية"
 
-#: Mailman/Defaults.py:1439
+#: Mailman/Defaults.py:1512
 msgid "Slovenian"
 msgstr "السلوفاكية"
 
-#: Mailman/Defaults.py:1440
+#: Mailman/Defaults.py:1513
 msgid "Serbian"
 msgstr "الصربية"
 
-#: Mailman/Defaults.py:1441
+#: Mailman/Defaults.py:1514
 msgid "Swedish"
 msgstr "السويدية"
 
-#: Mailman/Defaults.py:1442
+#: Mailman/Defaults.py:1515
 msgid "Turkish"
 msgstr "التركية"
 
-#: Mailman/Defaults.py:1443
+#: Mailman/Defaults.py:1516
 msgid "Ukrainian"
 msgstr "الأوكرانية"
 
-#: Mailman/Defaults.py:1444
+#: Mailman/Defaults.py:1517
 msgid "Vietnamese"
 msgstr ""
 
-#: Mailman/Defaults.py:1445
+#: Mailman/Defaults.py:1518
 msgid "Chinese (China)"
 msgstr "الصينية (الصين)"
 
-#: Mailman/Defaults.py:1446
+#: Mailman/Defaults.py:1519
 msgid "Chinese (Taiwan)"
 msgstr "الصينية (التايوانية)"
 
@@ -4031,7 +4090,7 @@
 "كم عدد الأيام بين إرسال تحذيرات <em>اشتراكك معطل</em>. هذه القيمة يجب أن "
 "تكون صحيحة (بدون فاصلة)."
 
-#: Mailman/Gui/Bounce.py:117 Mailman/Gui/General.py:265
+#: Mailman/Gui/Bounce.py:117 Mailman/Gui/General.py:266
 msgid "Notifications"
 msgstr "تنبيهات"
 
@@ -4502,42 +4561,42 @@
 "أردته.\n"
 "                    "
 
-#: Mailman/Gui/General.py:36
+#: Mailman/Gui/General.py:37
 msgid "General Options"
 msgstr "خيارات عامة"
 
-#: Mailman/Gui/General.py:50
+#: Mailman/Gui/General.py:51
 msgid "Conceal the member's address"
 msgstr "عرض عنوان العضو"
 
-#: Mailman/Gui/General.py:51
+#: Mailman/Gui/General.py:52
 msgid "Acknowledge the member's posting"
 msgstr "أعلم أرسال العضو"
 
-#: Mailman/Gui/General.py:52
+#: Mailman/Gui/General.py:53
 msgid "Do not send a copy of a member's own post"
 msgstr "لا ترسل نسخة من مرسلات نفس العضو"
 
-#: Mailman/Gui/General.py:54
+#: Mailman/Gui/General.py:55
 msgid "Filter out duplicate messages to list members (if possible)"
 msgstr "صفي الرسائل المكررة لأعضاء القائمة (إن أمكن)"
 
-#: Mailman/Gui/General.py:61
+#: Mailman/Gui/General.py:62
 msgid ""
 "Fundamental list characteristics, including descriptive\n"
 "            info and basic behaviors."
 msgstr "الصفات أساسية للقائمة، بما فيها معلومات شرح وتصرفات أساسية."
 
-#: Mailman/Gui/General.py:64
+#: Mailman/Gui/General.py:65
 msgid "General list personality"
 msgstr "التخصيص الشخصي العام اللقائمة"
 
-#: Mailman/Gui/General.py:67
+#: Mailman/Gui/General.py:68
 msgid "The public name of this list (make case-changes only)."
 msgstr ""
 "الاسم العمومي لهذه القائمة (لا تغير إلا حالة الأحرف إن كانت بالإنجليزية)."
 
-#: Mailman/Gui/General.py:68
+#: Mailman/Gui/General.py:69
 msgid ""
 "The capitalization of this name can be changed to make it\n"
 "             presentable in polite company as a proper noun, or to make an\n"
@@ -4555,14 +4614,14 @@
 "تعديله فيما عدا هذه الحالات. (العناوين البريدية الإلكترونية غير حساسة لحالة "
 "الأحرف ولكنها حساسة لأي شيء آخر على الغالب. :-)"
 
-#: Mailman/Gui/General.py:77
+#: Mailman/Gui/General.py:78
 msgid ""
 "The list administrator email addresses.  Multiple\n"
 "             administrator addresses, each on separate line is okay."
 msgstr ""
 "العناوين الإلكترونية لمشرف القائمة. يمكن وضع عدة عناوين كل واحد في سطر."
 
-#: Mailman/Gui/General.py:80
+#: Mailman/Gui/General.py:81
 msgid ""
 "There are two ownership roles associated with each mailing\n"
 "             list.  The <em>list administrators</em> are the people who "
@@ -4602,13 +4661,13 @@
 "\"?VARHELP=general/moderator\">العناوين البريدية لمنظمي القائمة</a>.  لاحظ "
 "أن الحقل الذي يتغير هنا يحدد مشرفي القائمة."
 
-#: Mailman/Gui/General.py:101
+#: Mailman/Gui/General.py:102
 msgid ""
 "The list moderator email addresses.  Multiple\n"
 "             moderator addresses, each on separate line is okay."
 msgstr "العناوين البريدية لمنظم القائمة. يمكن وضع عدة عناوين كل واحد في سطر."
 
-#: Mailman/Gui/General.py:104
+#: Mailman/Gui/General.py:105
 msgid ""
 "There are two ownership roles associated with each mailing\n"
 "             list.  The <em>list administrators</em> are the people who "
@@ -4647,11 +4706,11 @@
 "\"?VARHELP=general/moderator\">العناوين البريدية لمنظمي القائمة</a>.  لاحظ "
 "أن الحقل الذي يتغير هنا يحدد مشرفي القائمة."
 
-#: Mailman/Gui/General.py:125
+#: Mailman/Gui/General.py:126
 msgid "A terse phrase identifying this list."
 msgstr "نبذة تعريفية عن القائمة."
 
-#: Mailman/Gui/General.py:127
+#: Mailman/Gui/General.py:128
 msgid ""
 "This description is used when the mailing list is listed with\n"
 "                other mailing lists, or in headers, and so forth.  It "
@@ -4663,7 +4722,7 @@
 "سوف يستعمل هذا الشرح عندما تعرض القائمة مع غيرها من القوائم، أو في "
 "الترويسات، وهكذا. "
 
-#: Mailman/Gui/General.py:133
+#: Mailman/Gui/General.py:134
 msgid ""
 "An introductory description - a few paragraphs - about the\n"
 "             list.  It will be included, as html, at the top of the "
@@ -4675,7 +4734,7 @@
 "أعلى صفحة معلومات القائمة. ضغط إنتر سوف ينهي الفقرة - انظر التفاصيل من أجل "
 "معلومات أكثر."
 
-#: Mailman/Gui/General.py:137
+#: Mailman/Gui/General.py:138
 msgid ""
 "The text will be treated as html <em>except</em> that\n"
 "             newlines will be translated to <br> - so you can use "
@@ -4693,11 +4752,11 @@
 "وعاين تغييراتك - شيفرة إتش تي إم إلسيئة (مثل بعض التعليمات الغير منتهية) "
 "يمكن أن تمنع إظهار كامل صفحة معلومات القائمة."
 
-#: Mailman/Gui/General.py:145
+#: Mailman/Gui/General.py:146
 msgid "Prefix for subject line of list postings."
 msgstr "بادئة من أجل سطر العنوان لإرسالات القائمة."
 
-#: Mailman/Gui/General.py:146
+#: Mailman/Gui/General.py:147
 #, fuzzy
 msgid ""
 "This text will be prepended to subject lines of messages\n"
@@ -4721,7 +4780,7 @@
 "                            (listname %%05d) -> (listname 00123)\n"
 "             "
 
-#: Mailman/Gui/General.py:157
+#: Mailman/Gui/General.py:158
 msgid ""
 "Hide the sender of a message, replacing it with the list\n"
 "             address (Removes From, Sender and Reply-To fields)"
@@ -4729,11 +4788,11 @@
 "إخفاء مرسل الرسالة باستبداله بعنوان القائمة (يزيل من الحقلين Sender و Reply-"
 "To)"
 
-#: Mailman/Gui/General.py:160
+#: Mailman/Gui/General.py:161
 msgid "<tt>Reply-To:</tt> header munging"
 msgstr "التعامل بترويسة <tt>Reply-To:</tt>"
 
-#: Mailman/Gui/General.py:163
+#: Mailman/Gui/General.py:164
 msgid ""
 "Should any existing <tt>Reply-To:</tt> header found in the\n"
 "             original message be stripped?  If so, this will be done\n"
@@ -4744,19 +4803,19 @@
 "إن كان كذلك فهذا سيتم بغض النظر إن كان أضيف ترويسة <tt>Reply-To:</tt> قد "
 "أضيفت بشكل مصرح من قبل ميلمان أو لا."
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "Explicit address"
 msgstr "عنوان مصرح"
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "Poster"
 msgstr "المرسل"
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "This list"
 msgstr "هذه القائمة"
 
-#: Mailman/Gui/General.py:170
+#: Mailman/Gui/General.py:171
 msgid ""
 "Where are replies to list messages directed?\n"
 "             <tt>Poster</tt> is <em>strongly</em> recommended for most "
@@ -4766,7 +4825,7 @@
 "إلى أين يتم توجيه الردود على رسائل القائمة؟ <tt>المرسل</tt> هو الخيار "
 "المنصوح به  <em>بقوة</em> لأغلب القوائم البريدية.."
 
-#: Mailman/Gui/General.py:175
+#: Mailman/Gui/General.py:176
 #, fuzzy
 msgid ""
 "This option controls what Mailman does to the\n"
@@ -4837,11 +4896,11 @@
 "<tt>عنوان مصرح</tt>  واجعل خانة عنوان <tt>Reply-To:</tt> تحت تؤشر إلى "
 "القائمة الموازية."
 
-#: Mailman/Gui/General.py:207
+#: Mailman/Gui/General.py:208
 msgid "Explicit <tt>Reply-To:</tt> header."
 msgstr "ترويسة <tt>Reply-To:</tt> مصرحة."
 
-#: Mailman/Gui/General.py:209
+#: Mailman/Gui/General.py:210
 #, fuzzy
 msgid ""
 "This is the address set in the <tt>Reply-To:</tt> header\n"
@@ -4885,18 +4944,18 @@
 "             href=\"?VARHELP=general/reply_goes_to_list"
 "\">reply_goes_to_list</a> قد ضبط على القيمة  <em>عنوان مصرح</em>. "
 
-#: Mailman/Gui/General.py:238
+#: Mailman/Gui/General.py:239
 msgid "Umbrella list settings"
 msgstr "خيارات قائمة المظلة"
 
-#: Mailman/Gui/General.py:241
+#: Mailman/Gui/General.py:242
 msgid ""
 "Send password reminders to, eg, \"-owner\" address instead of\n"
 "             directly to user."
 msgstr ""
 "أرسل تذكير كلمة السر إلى، مثلاً عنوان \"المالك\" بدلاً عن المستخدم مباشرة."
 
-#: Mailman/Gui/General.py:244
+#: Mailman/Gui/General.py:245
 msgid ""
 "Set this to yes when this list is intended to cascade only\n"
 "             to other mailing lists.  When set, meta notices like\n"
@@ -4910,7 +4969,7 @@
 "إلى عنوان مشتق من عنوان المشترك - سيكون له القيمة \"umbrella_member_suffix\" "
 "مضافة إلى اسم حساب العضو."
 
-#: Mailman/Gui/General.py:252
+#: Mailman/Gui/General.py:253
 msgid ""
 "Suffix for use when this list is an umbrella for other\n"
 "             lists, according to setting of previous \"umbrella_list\"\n"
@@ -4919,7 +4978,7 @@
 "لاحقة للاستعمال عندما تكون هذه القائمة مظلة للقوائم الأخرى، حسب ضبط الخيار "
 "السابق \"umbrella_list\"."
 
-#: Mailman/Gui/General.py:256
+#: Mailman/Gui/General.py:257
 msgid ""
 "When \"umbrella_list\" is set to indicate that this list has\n"
 "             other mailing lists as members, then administrative notices "
@@ -4940,11 +4999,11 @@
 "المالك هو الخيار الاعتيادي. هذا الخيار ليس له تأثير عندما يكون الخيار "
 "\"umbrella_list\" \"لا\"."
 
-#: Mailman/Gui/General.py:268
+#: Mailman/Gui/General.py:269
 msgid "Send monthly password reminders?"
 msgstr "هل أرسل تذكير شهري بكلمات السر؟"
 
-#: Mailman/Gui/General.py:270
+#: Mailman/Gui/General.py:271
 msgid ""
 "Turn this on if you want password reminders to be sent once\n"
 "             per month to your members.  Note that members may disable "
@@ -4954,13 +5013,13 @@
 "شغل هذا الخيار إذا كنت تريد إرسال رسائل تذكير بكلمة السر كل شهر مرة إلى "
 "مشتركيك. لاحظ أنه قد يعطل المشتركون تذكير كلمة السر الخاصة بهم بشكل إفرادي."
 
-#: Mailman/Gui/General.py:275
+#: Mailman/Gui/General.py:276
 msgid ""
 "List-specific text prepended to new-subscriber welcome\n"
 "             message"
 msgstr "نص خاص بكل قائمة يوضع في بداية رسالة الترحيب لكل مشترك جديد"
 
-#: Mailman/Gui/General.py:278
+#: Mailman/Gui/General.py:279
 msgid ""
 "This value, if any, will be added to the front of the\n"
 "             new-subscriber welcome message.  The rest of the welcome "
@@ -4991,11 +5050,11 @@
 "الأسطر التي تبدأ بأحرف بيضاء                 <li>تقسم الفقرات بأسطر "
 "فارغة             </ul>"
 
-#: Mailman/Gui/General.py:295
+#: Mailman/Gui/General.py:296
 msgid "Send welcome message to newly subscribed members?"
 msgstr "هل أرسل رسالة ترحيب للأعضاء المشتركين جديداً؟"
 
-#: Mailman/Gui/General.py:296
+#: Mailman/Gui/General.py:297
 msgid ""
 "Turn this off only if you plan on subscribing people manually\n"
 "             and don't want them to know that you did so.  This option is "
@@ -5008,7 +5067,7 @@
 "ذلك. هذا الخيار مفيد غالباً في حالة الانتقال الشفاف من أحد مدراء القوائم "
 "البريدية إلى ميلمان."
 
-#: Mailman/Gui/General.py:302
+#: Mailman/Gui/General.py:303
 msgid ""
 "Text sent to people leaving the list.  If empty, no special\n"
 "             text will be added to the unsubscribe message."
@@ -5016,11 +5075,11 @@
 "النص الذي يرسل إلى الأشخاص الذين يتركون القائمة. إن كان فارغاً فلن يتم إضافة "
 "أي نص خاص لرسالة إلغاء الاشتراك."
 
-#: Mailman/Gui/General.py:306
+#: Mailman/Gui/General.py:307
 msgid "Send goodbye message to members when they are unsubscribed?"
 msgstr "هل أرسل رسالة مع السلامة إلى الأعضاء عندما يتم إلغاء اشتراكهم؟"
 
-#: Mailman/Gui/General.py:309
+#: Mailman/Gui/General.py:310
 msgid ""
 "Should the list moderators get immediate notice of new\n"
 "             requests, as well as daily notices about collected ones?"
@@ -5028,7 +5087,7 @@
 "هل يجب أن يحصل المنظمون على ملاحظة مباشرة عند الطلبات الجديدة، بالإضافة إلى "
 "ملاحظات يومية حول الطلبات المتجمعة؟"
 
-#: Mailman/Gui/General.py:312
+#: Mailman/Gui/General.py:313
 msgid ""
 "List moderators (and list administrators) are sent daily\n"
 "             reminders of requests pending approval, like subscriptions to "
@@ -5042,25 +5101,25 @@
 "مثل الاشتراكات في قائمة منظمة، أو إرسالات تم تعليقها لسبب أو آخر. تفعيل هذا "
 "الخيار يسبب إرسال ملاحظات مباشرة عند وصول أي طلبات جديدة أيضاً."
 
-#: Mailman/Gui/General.py:319
+#: Mailman/Gui/General.py:320
 msgid ""
 "Should administrator get notices of subscribes and\n"
 "             unsubscribes?"
 msgstr "هل يجب أن يحصل المشرف على ملاحظات بالاشتراك وإلغاء الاشتراك؟"
 
-#: Mailman/Gui/General.py:324
+#: Mailman/Gui/General.py:325
 msgid "Send mail to poster when their posting is held for approval?"
 msgstr "هل أرسل رسالة إلى المرسل عندما يتم تعليق إرساليته للموافقة؟"
 
-#: Mailman/Gui/General.py:327
+#: Mailman/Gui/General.py:328
 msgid "Additional settings"
 msgstr "خيارات إضافية"
 
-#: Mailman/Gui/General.py:330
+#: Mailman/Gui/General.py:331
 msgid "Emergency moderation of all list traffic."
 msgstr "تنظيم الطوارئ لجميع حركة القائمة."
 
-#: Mailman/Gui/General.py:331
+#: Mailman/Gui/General.py:332
 msgid ""
 "When this option is enabled, all list traffic is emergency\n"
 "             moderated, i.e. held for moderation.  Turn this option on when\n"
@@ -5071,7 +5130,7 @@
 "عندما يفعل هذا الخيار، سوف يتم اعتبار تنظيم الطوارئ لكل حركة القائمة، كل شيء "
 "معلق للتنظيم. شغل هذا الخيار عندما تواجه قائمتك حرب مشتعلة وتريد فترة تبريد."
 
-#: Mailman/Gui/General.py:343
+#: Mailman/Gui/General.py:344
 msgid ""
 "Default options for new members joining this list.<input\n"
 "             type=\"hidden\" name=\"new_member_options\" value=\"ignore\">"
@@ -5079,7 +5138,7 @@
 "الخيارات الافتراضية للمشتركين الجدد في هذه القائمة <input\n"
 "             type=\"hidden\" name=\"new_member_options\" value=\"ignore\">"
 
-#: Mailman/Gui/General.py:346
+#: Mailman/Gui/General.py:347
 msgid ""
 "When a new member is subscribed to this list, their initial\n"
 "             set of options is taken from this variable's setting."
@@ -5087,13 +5146,13 @@
 "عندما يشترك عضو جديد في هذه القائمة فإن الضبط الابتدائي لخياراتهم سوف يؤخذ "
 "من هذا المتغير. "
 
-#: Mailman/Gui/General.py:350
+#: Mailman/Gui/General.py:351
 msgid ""
 "(Administrivia filter) Check postings and intercept ones\n"
 "             that seem to be administrative requests?"
 msgstr ")المصفي الإشرافي) هل أفحص الإرسالات وأفسر ما يبدو كطلبات إشرافية؟"
 
-#: Mailman/Gui/General.py:353
+#: Mailman/Gui/General.py:354
 msgid ""
 "Administrivia tests will check postings to see whether it's\n"
 "             really meant as an administrative request (like subscribe,\n"
@@ -5106,7 +5165,7 @@
 "اشتراك، إلغاء اشتراك، إلخ) وعند ذلك ستضيفها إلى دور الطلبات الإشرافية، مع "
 "إعلام المشرف بهذه الطلبات الجديدة في العملية."
 
-#: Mailman/Gui/General.py:360
+#: Mailman/Gui/General.py:361
 msgid ""
 "Maximum length in kilobytes (KB) of a message body.  Use 0\n"
 "             for no limit."
@@ -5114,17 +5173,17 @@
 "الطول الأعظمي بالكيلوبايت (كب) لجسم الرسالة. استعمل الصفر لرسائل غير محدودة "
 "الحجم."
 
-#: Mailman/Gui/General.py:364
+#: Mailman/Gui/General.py:365
 msgid ""
 "Maximum number of members to show on one page of the\n"
 "             Membership List."
 msgstr ""
 
-#: Mailman/Gui/General.py:368
+#: Mailman/Gui/General.py:369
 msgid "Host name this list prefers for email."
 msgstr "اسم الخادم الذي تفضله هذه القائمة من أجل البريد."
 
-#: Mailman/Gui/General.py:370
+#: Mailman/Gui/General.py:371
 msgid ""
 "The \"host_name\" is the preferred name for email to\n"
 "             mailman-related addresses on this host, and generally should "
@@ -5139,7 +5198,7 @@
 "هذا الخادم، وبشكل عام يجب أن يكون عنوان المبادل لخادم البريد، إن كان هناك "
 "واحد. هذا الخيار مفيد من أجل اختيار أحد الأسماء البديلة لخادم له عدة عناوين."
 
-#: Mailman/Gui/General.py:382
+#: Mailman/Gui/General.py:383
 msgid ""
 "Should messages from this mailing list include the\n"
 "                 <a href=\"http://www.faqs.org/rfcs/rfc2369.html\">RFC 2369</"
@@ -5151,7 +5210,7 @@
 "www.faqs.org/rfcs/rfc2369.html\">RFC 2369</a> (مثال، <tt>List-*</tt>)؟ ينصح "
 "بـ <em>نعم</em> بشدة."
 
-#: Mailman/Gui/General.py:387
+#: Mailman/Gui/General.py:388
 msgid ""
 "RFC 2369 defines a set of List-* headers that are\n"
 "                 normally added to every message sent to the list "
@@ -5184,11 +5243,11 @@
 "الترويسات، ولكن هذا ليس منصوحاً به (وفي الحقيقة إن مقدرتك على تعطيل هذه "
 "الترويسات سوف تقل مع الوقت)."
 
-#: Mailman/Gui/General.py:405
+#: Mailman/Gui/General.py:406
 msgid "Should postings include the <tt>List-Post:</tt> header?"
 msgstr "هل تتضمن الإرسالات ترويسة <tt>List-Post:</tt>؟"
 
-#: Mailman/Gui/General.py:406
+#: Mailman/Gui/General.py:407
 msgid ""
 "The <tt>List-Post:</tt> header is one of the headers\n"
 "             recommended by\n"
@@ -5215,7 +5274,7 @@
 "الترويسات غير <tt>List-*:</tt>\n"
 ")."
 
-#: Mailman/Gui/General.py:422
+#: Mailman/Gui/General.py:423
 #, fuzzy
 msgid ""
 "Should the <tt>Sender</tt> header be rewritten for this\n"
@@ -5225,7 +5284,7 @@
 "هل على ميلمان أن يرسل إليك (مالك القائمة) أي رسائل رفض فشل معالج الردود "
 "الرافضة من اكتشافها؟ ينصح بـ <em>نعم</em>."
 
-#: Mailman/Gui/General.py:426
+#: Mailman/Gui/General.py:427
 msgid ""
 "<a href=\"http://www.faqs.org/rfcs/rfc2822.html\">RFC\n"
 "                 2822</a> defines the <tt>Sender</tt> header and defines it\n"
@@ -5247,7 +5306,7 @@
 "                 here."
 msgstr ""
 
-#: Mailman/Gui/General.py:444
+#: Mailman/Gui/General.py:445
 msgid ""
 "Discard held messages older than this number of days.\n"
 "            Use 0 for no automatic discarding."
@@ -5255,7 +5314,7 @@
 "قم بإلغاء الرسائل المعلقة الأقدم من عدد الأيام هذا.\n"
 "ضع 0 لمنع الإلغاء التلقائي."
 
-#: Mailman/Gui/General.py:454
+#: Mailman/Gui/General.py:455
 msgid ""
 "<b>real_name</b> attribute not\n"
 "            changed!  It must differ from the list's name by case\n"
@@ -5264,7 +5323,7 @@
 "صفة <b>الاسم الحقيقي</b> لم تتغير! يجب أن تختلف عن اسم القائمة بحالة الأحرف "
 "فقط."
 
-#: Mailman/Gui/General.py:471
+#: Mailman/Gui/General.py:483
 msgid ""
 "The <b>info</b> attribute you saved\n"
 "contains suspicious HTML that could potentially expose your users to cross-"
@@ -5278,7 +5337,7 @@
 "                        "
 msgstr ""
 
-#: Mailman/Gui/General.py:482
+#: Mailman/Gui/General.py:494
 #, fuzzy
 msgid ""
 "<b>admin_member_chunksize</b> attribute not\n"
@@ -5287,7 +5346,7 @@
 "صفة <b>الاسم الحقيقي</b> لم تتغير! يجب أن تختلف عن اسم القائمة بحالة الأحرف "
 "فقط."
 
-#: Mailman/Gui/General.py:492
+#: Mailman/Gui/General.py:504
 msgid ""
 "You cannot add a Reply-To: to an explicit\n"
 "            address if that address is blank.  Resetting these values."
@@ -5628,12 +5687,32 @@
 
 #: Mailman/Gui/NonDigest.py:163
 msgid ""
+"Ignore regular_exlude_lists of which the poster is not a\n"
+"             member."
+msgstr ""
+
+#: Mailman/Gui/NonDigest.py:165
+msgid ""
+"If a post is addressed to this list and to one or more of\n"
+"             the exclude lists, regular members of those lists will not be\n"
+"             sent the post from this list, but if the poster is not a "
+"member\n"
+"             of an excluded list, the post may not be accepted by that list\n"
+"             which leaves the members of that list with no copy of the "
+"post.\n"
+"             Setting this to Yes ignores any of the exclude lists of which "
+"the\n"
+"             poster is not a member."
+msgstr ""
+
+#: Mailman/Gui/NonDigest.py:174
+msgid ""
 "Other mailing lists on this site whose members are\n"
 "             included in the regular (non-digest) delivery if those\n"
 "             list addresses don't appear in a To: or Cc: header."
 msgstr ""
 
-#: Mailman/Gui/NonDigest.py:166
+#: Mailman/Gui/NonDigest.py:177
 msgid ""
 "The list addresses should be written in full mail address\n"
 "             format (e.g. mailman at example.com). Note also that the site\n"
@@ -6964,6 +7043,14 @@
 msgid "%(realname)s post acknowledgement"
 msgstr "إعلام وصول الإرسال إلى %(realname)s"
 
+#: Mailman/Handlers/Approve.py:45
+msgid ""
+"Message rejected.\n"
+"It appears that this message contains an HTML part with the\n"
+"Approved: password line, but due to the way it is coded in the\n"
+"HTML it can't be safely removed.\n"
+msgstr ""
+
 #: Mailman/Handlers/CalcRecips.py:78
 msgid ""
 "Your urgent message to the %(realname)s mailing list was not authorized for\n"
@@ -7069,15 +7156,15 @@
 msgid "Posting to a moderated newsgroup"
 msgstr "إرسال إلى قائمة إخبارية منظمة"
 
-#: Mailman/Handlers/Hold.py:250
+#: Mailman/Handlers/Hold.py:247
 msgid "Your message to %(listname)s awaits moderator approval"
 msgstr "رسالتك إلى القائمة البريدية %(listname)s تنتظر موافقة المنظم"
 
-#: Mailman/Handlers/Hold.py:269
+#: Mailman/Handlers/Hold.py:266
 msgid "%(listname)s post from %(sender)s requires approval"
 msgstr "إرسال إلى القائمة %(listname)s من قبل %(sender)s تحتاج للموافقة"
 
-#: Mailman/Handlers/Hold.py:276
+#: Mailman/Handlers/Hold.py:273
 msgid ""
 "If you reply to this message, keeping the Subject: header intact, Mailman "
 "will\n"
@@ -7113,7 +7200,7 @@
 msgid "After content filtering, the message was empty"
 msgstr "بعد تصفية المحتويات صارت الرسالة فارغة"
 
-#: Mailman/Handlers/MimeDel.py:235
+#: Mailman/Handlers/MimeDel.py:264
 msgid ""
 "The attached message matched the %(listname)s mailing list's content "
 "filtering\n"
@@ -7127,11 +7214,11 @@
 "المتبقية من الرسالة المهملة.\n"
 "\n"
 
-#: Mailman/Handlers/MimeDel.py:241
+#: Mailman/Handlers/MimeDel.py:270
 msgid "Content filtered message notification"
 msgstr "تنبيه رسالة مصفاة المحتوى"
 
-#: Mailman/Handlers/Moderate.py:162
+#: Mailman/Handlers/Moderate.py:163
 msgid ""
 "You are not allowed to post to this mailing list, and your message has been\n"
 "automatically rejected.  If you think that your messages are being rejected "
@@ -7142,11 +7229,11 @@
 "إن كنت تعتقد أنه تم رفض رسالتك بالخطأ، اتصل بمالك القائمة البريدية على "
 "العنوان %(listowner)s."
 
-#: Mailman/Handlers/Moderate.py:178
+#: Mailman/Handlers/Moderate.py:179
 msgid "Auto-discard notification"
 msgstr "تنبيه الإهمال التلقائي"
 
-#: Mailman/Handlers/Moderate.py:181
+#: Mailman/Handlers/Moderate.py:182
 msgid "The attached message has been automatically discarded."
 msgstr "تم إهمال الرسالة المرفقة تلقائياً."
 
@@ -7225,11 +7312,11 @@
 "شرح: %(desc)s\n"
 "الرابط : %(url)s\n"
 
-#: Mailman/Handlers/Scrubber.py:341
+#: Mailman/Handlers/Scrubber.py:344
 msgid "Skipped content of type %(partctype)s\n"
 msgstr "أنواع المحتويات المتروكة %(partctype)s\n"
 
-#: Mailman/Handlers/Scrubber.py:382
+#: Mailman/Handlers/Scrubber.py:385
 msgid "-------------- next part --------------\n"
 msgstr "-------------- القسم الثاني --------------\n"
 
@@ -7237,7 +7324,7 @@
 msgid "The message headers matched a filter rule"
 msgstr "تطابقت ترويسات الرسالة مع قاعدة مصفي"
 
-#: Mailman/Handlers/SpamDetect.py:135
+#: Mailman/Handlers/SpamDetect.py:119
 msgid "Message rejected by filter rule match"
 msgstr "رفضت الرسالة بسبب تطابق قاعدة مصفي"
 
@@ -7269,47 +7356,47 @@
 msgid "digest footer"
 msgstr "تذييل دفعة"
 
-#: Mailman/Handlers/ToDigest.py:361
+#: Mailman/Handlers/ToDigest.py:361 Mailman/Handlers/ToDigest.py:369
 msgid "Digest Footer"
 msgstr "تذييل دفعة"
 
-#: Mailman/Handlers/ToDigest.py:375
+#: Mailman/Handlers/ToDigest.py:376
 msgid "End of "
 msgstr "نهاية "
 
-#: Mailman/ListAdmin.py:297
+#: Mailman/ListAdmin.py:299
 msgid "Posting of your message titled \"%(subject)s\""
 msgstr "إرسال رسالتك المعنونة \"%(subject)s\""
 
-#: Mailman/ListAdmin.py:298 Mailman/ListAdmin.py:417
+#: Mailman/ListAdmin.py:300 Mailman/ListAdmin.py:419
 msgid "[No reason given]"
 msgstr "]بدون سبب معطى["
 
-#: Mailman/ListAdmin.py:336
+#: Mailman/ListAdmin.py:338
 msgid "Forward of moderated message"
 msgstr "تحويل لرسالة منظمة"
 
-#: Mailman/ListAdmin.py:392
+#: Mailman/ListAdmin.py:394
 msgid "New subscription request to list %(realname)s from %(addr)s"
 msgstr "طلب اشتراك جديد في القائمة %(realname)s من العنوان %(addr)s"
 
-#: Mailman/ListAdmin.py:416
+#: Mailman/ListAdmin.py:418
 msgid "Subscription request"
 msgstr "طلب اشتراك"
 
-#: Mailman/ListAdmin.py:447
+#: Mailman/ListAdmin.py:449
 msgid "New unsubscription request from %(realname)s by %(addr)s"
 msgstr "طلب إلغاء اشتراك من القائمة %(realname)s من قبل %(addr)s"
 
-#: Mailman/ListAdmin.py:471
+#: Mailman/ListAdmin.py:473
 msgid "Unsubscription request"
 msgstr "طلب إلغاء اشتراك"
 
-#: Mailman/ListAdmin.py:504
+#: Mailman/ListAdmin.py:506
 msgid "Original Message"
 msgstr "الرسالة الأصلية"
 
-#: Mailman/ListAdmin.py:507
+#: Mailman/ListAdmin.py:509
 msgid "Request to mailing list %(realname)s rejected"
 msgstr "تم رفض طلب إلى القائمة البريدية %(realname)s"
 
@@ -7378,16 +7465,16 @@
 msgid "Mailing list removal request for list %(listname)s"
 msgstr "طلب إزالة القائمة البريدية %(listname)s"
 
-#: Mailman/MTA/Postfix.py:317
+#: Mailman/MTA/Postfix.py:320
 msgid "checking permissions on %(file)s"
 msgstr "تفحص أذونات الملف %(file)s"
 
-#: Mailman/MTA/Postfix.py:327
+#: Mailman/MTA/Postfix.py:330
 msgid "%(file)s permissions must be 066x (got %(octmode)s)"
 msgstr "أذونات الملف %(file)s  يجب أن تكون 066x (وهي الآن %(octmode)s)"
 
-#: Mailman/MTA/Postfix.py:329 Mailman/MTA/Postfix.py:356
-#: Mailman/MTA/Postfix.py:367 bin/check_perms:125 bin/check_perms:153
+#: Mailman/MTA/Postfix.py:332 Mailman/MTA/Postfix.py:359
+#: Mailman/MTA/Postfix.py:370 bin/check_perms:125 bin/check_perms:153
 #: bin/check_perms:163 bin/check_perms:174 bin/check_perms:199
 #: bin/check_perms:216 bin/check_perms:242 bin/check_perms:265
 #: bin/check_perms:284 bin/check_perms:298 bin/check_perms:318
@@ -7395,16 +7482,16 @@
 msgid "(fixing)"
 msgstr "إصلاح"
 
-#: Mailman/MTA/Postfix.py:345
+#: Mailman/MTA/Postfix.py:348
 msgid "checking ownership of %(dbfile)s"
 msgstr "التحقق من ملكية الملف %(dbfile)s"
 
-#: Mailman/MTA/Postfix.py:353
+#: Mailman/MTA/Postfix.py:356
 msgid "%(dbfile)s owned by %(owner)s (must be owned by %(user)s"
 msgstr ""
 "الملف %(dbfile)s مملوك من قبل %(owner)s (ويجب أن يكون مملوكاً من قبل %(user)s"
 
-#: Mailman/MTA/Postfix.py:365
+#: Mailman/MTA/Postfix.py:368
 #, fuzzy
 msgid "%(dbfile)s permissions must be 066x (got %(octmode)s)"
 msgstr "أذونات الملف %(file)s  يجب أن تكون 066x (وهي الآن %(octmode)s)"
@@ -7417,31 +7504,31 @@
 msgid "Your confirmation is required to leave the %(listname)s mailing list"
 msgstr "تأكيدك مطلوب لترك القائمة البريدية %(listname)s ."
 
-#: Mailman/MailList.py:891 Mailman/MailList.py:1313
+#: Mailman/MailList.py:900 Mailman/MailList.py:1322
 msgid " from %(remote)s"
 msgstr "من قبل %(remote)s"
 
-#: Mailman/MailList.py:924
+#: Mailman/MailList.py:933
 msgid "subscriptions to %(realname)s require moderator approval"
 msgstr "تحتاج الاشتراكات في %(realname) موافقة المنظم"
 
-#: Mailman/MailList.py:993 bin/add_members:245
+#: Mailman/MailList.py:1002 bin/add_members:245
 msgid "%(realname)s subscription notification"
 msgstr "تنبيه اشتراك %(realname)s"
 
-#: Mailman/MailList.py:1012
+#: Mailman/MailList.py:1021
 msgid "unsubscriptions require moderator approval"
 msgstr "يحتاج إلغاء الاشتراك إلى موافقة المدير"
 
-#: Mailman/MailList.py:1032
+#: Mailman/MailList.py:1041
 msgid "%(realname)s unsubscribe notification"
 msgstr "تنبيه إلغاء اشتراك %(realname)s"
 
-#: Mailman/MailList.py:1222
+#: Mailman/MailList.py:1231
 msgid "subscriptions to %(name)s require administrator approval"
 msgstr "تحتاج الاشتراكات في %(name)s إلى موافقة المدير"
 
-#: Mailman/MailList.py:1485
+#: Mailman/MailList.py:1494
 msgid "Last autoresponse notification for today"
 msgstr "آخر تنبيه رد تلقائي لهذا اليوم"
 
@@ -7469,21 +7556,21 @@
 msgid "Uncaught bounce notification"
 msgstr "تنبيه رد رفض غير مدرك"
 
-#: Mailman/Queue/CommandRunner.py:92
+#: Mailman/Queue/CommandRunner.py:97
 msgid "Ignoring non-text/plain MIME parts"
 msgstr "تجاهل الأقسام الغير نصية عادية ذات النوع MIME"
 
-#: Mailman/Queue/CommandRunner.py:148
+#: Mailman/Queue/CommandRunner.py:163
 msgid ""
 "The results of your email command are provided below.\n"
 "Attached is your original message.\n"
 msgstr "نتائج أمرك البريدي موجود تحت. رسالتك الأصلية مرفقة.\n"
 
-#: Mailman/Queue/CommandRunner.py:153
+#: Mailman/Queue/CommandRunner.py:168
 msgid "- Results:"
 msgstr "- نتائج:"
 
-#: Mailman/Queue/CommandRunner.py:159
+#: Mailman/Queue/CommandRunner.py:174
 msgid ""
 "\n"
 "- Unprocessed:"
@@ -7491,7 +7578,7 @@
 "\n"
 "- غير معالجة:"
 
-#: Mailman/Queue/CommandRunner.py:163
+#: Mailman/Queue/CommandRunner.py:178
 msgid ""
 "No commands were found in this message.\n"
 "To obtain instructions, send a message containing just the word \"help\".\n"
@@ -7499,7 +7586,7 @@
 "لا يوجد أي أوامر في هذه الرسالة. للحصول على التعليمات أرسل رسالة تحمل فقط "
 "الكلمة \"help\".\n"
 
-#: Mailman/Queue/CommandRunner.py:168
+#: Mailman/Queue/CommandRunner.py:183
 msgid ""
 "\n"
 "- Ignored:"
@@ -7507,7 +7594,7 @@
 "\n"
 "- متجاهل:"
 
-#: Mailman/Queue/CommandRunner.py:170
+#: Mailman/Queue/CommandRunner.py:185
 msgid ""
 "\n"
 "- Done.\n"
@@ -7517,19 +7604,27 @@
 "- انتهى.\n"
 "\n"
 
-#: Mailman/Queue/CommandRunner.py:194
+#: Mailman/Queue/CommandRunner.py:209
 msgid "The results of your email commands"
 msgstr "نتائج تعليماتك البريدية"
 
-#: Mailman/htmlformat.py:639
+#: Mailman/Queue/CommandRunner.py:215
+msgid "Message body suppressed by Mailman site configuration\n"
+msgstr ""
+
+#: Mailman/Queue/CommandRunner.py:217
+msgid "Original message suppressed by Mailman site configuration\n"
+msgstr ""
+
+#: Mailman/htmlformat.py:648
 msgid "Delivered by Mailman<br>version %(version)s"
 msgstr "تم توصيلها من قبل برنامج ميلمان <br>الاصدار %(version)s"
 
-#: Mailman/htmlformat.py:640
+#: Mailman/htmlformat.py:649
 msgid "Python Powered"
 msgstr "مدعومة بلغة بايثون"
 
-#: Mailman/htmlformat.py:641
+#: Mailman/htmlformat.py:650
 msgid "Gnu's Not Unix"
 msgstr "جي إن يو ليست يونيكس"
 
@@ -9405,39 +9500,44 @@
 "\n"
 msgstr ""
 
-#: bin/rmlist:72 bin/rmlist:75
+#: bin/rmlist:73 bin/rmlist:76
 msgid "Removing %(msg)s"
 msgstr ""
 
-#: bin/rmlist:80
+#: bin/rmlist:81
 msgid "%(listname)s %(msg)s not found as %(filename)s"
 msgstr ""
 
-#: bin/rmlist:104
+#: bin/rmlist:105
 msgid "No such list (or list already deleted): %(listname)s"
 msgstr ""
 
-#: bin/rmlist:106
+#: bin/rmlist:107
 msgid "No such list: %(listname)s.  Removing its residual archives."
 msgstr ""
 
-#: bin/rmlist:110
+#: bin/rmlist:111
 msgid "Not removing archives.  Reinvoke with -a to remove them."
 msgstr ""
 
-#: bin/rmlist:124
+#: bin/rmlist:125
 msgid "list info"
 msgstr ""
 
-#: bin/rmlist:132
+#: bin/rmlist:133
 msgid "stale lock file"
 msgstr ""
 
-#: bin/rmlist:137 bin/rmlist:139
+#: bin/rmlist:141
+#, fuzzy
+msgid "held message file"
+msgstr "جميع الرسائل المتوقفة."
+
+#: bin/rmlist:146 bin/rmlist:148
 msgid "private archives"
 msgstr ""
 
-#: bin/rmlist:141 bin/rmlist:143
+#: bin/rmlist:150 bin/rmlist:152
 msgid "public archives"
 msgstr ""
 
@@ -10100,7 +10200,7 @@
 "all lists are bumped.\n"
 msgstr ""
 
-#: cron/checkdbs:19
+#: cron/checkdbs:20
 msgid ""
 "Check for pending admin requests and mail the list owners if necessary.\n"
 "\n"
@@ -10112,31 +10212,36 @@
 "        Print this message and exit.\n"
 msgstr ""
 
-#: cron/checkdbs:107
+#: cron/checkdbs:108
 msgid ""
 "Notice: %(discarded)d old request(s) automatically expired.\n"
 "\n"
 msgstr ""
 
-#: cron/checkdbs:120
+#: cron/checkdbs:121
 msgid "%(count)d %(realname)s moderator request(s) waiting"
 msgstr ""
 
-#: cron/checkdbs:123
+#: cron/checkdbs:124
 msgid "%(realname)s moderator request check result"
 msgstr ""
 
-#: cron/checkdbs:143
+#: cron/checkdbs:144
 msgid "Pending subscriptions:"
 msgstr ""
 
-#: cron/checkdbs:154
+#: cron/checkdbs:155
+#, fuzzy
+msgid "Pending unsubscriptions:"
+msgstr "أكد طلب إلغاء اشتراكك."
+
+#: cron/checkdbs:162
 msgid ""
 "\n"
 "Pending posts:"
 msgstr ""
 
-#: cron/checkdbs:161
+#: cron/checkdbs:169
 msgid ""
 "From: %(sender)s on %(date)s\n"
 "Subject: %(subject)s\n"

Modified: trunk/messages/ast/LC_MESSAGES/mailman.po
===================================================================
--- trunk/messages/ast/LC_MESSAGES/mailman.po	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/messages/ast/LC_MESSAGES/mailman.po	2012-05-20 12:09:31 UTC (rev 716)
@@ -5,7 +5,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: Mailman\n"
-"POT-Creation-Date: Fri Sep 10 10:50:49 2010\n"
+"POT-Creation-Date: Sun Mar 25 16:40:47 2012\n"
 "PO-Revision-Date: 2009-12-07 17:01+0100\n"
 "Last-Translator: astur <malditoastur at gmail.com>\n"
 "Language-Team: Asturian <alministradores at softastur.org>\n"
@@ -217,14 +217,14 @@
 msgid " The last bounce received from you was dated %(date)s"
 msgstr "El caberu rebote recibíu de ti foi fae %(date)s"
 
-#: Mailman/Bouncer.py:321 Mailman/Deliverer.py:143
-#: Mailman/Handlers/Acknowledge.py:44 Mailman/Handlers/CookHeaders.py:286
+#: Mailman/Bouncer.py:322 Mailman/Deliverer.py:143
+#: Mailman/Handlers/Acknowledge.py:44 Mailman/Handlers/CookHeaders.py:284
 #: Mailman/Handlers/Hold.py:215 Mailman/Handlers/ToDigest.py:239
 #: Mailman/ListAdmin.py:223
 msgid "(no subject)"
 msgstr "(ensin asuntu)"
 
-#: Mailman/Bouncer.py:325
+#: Mailman/Bouncer.py:326
 msgid "[No bounce details are available]"
 msgstr "[Nun hai detalles de rebotes disponibles]"
 
@@ -236,20 +236,24 @@
 msgid "Administrator"
 msgstr "Alministrador"
 
-#: Mailman/Cgi/admin.py:76 Mailman/Cgi/admindb.py:93 Mailman/Cgi/confirm.py:62
-#: Mailman/Cgi/edithtml.py:70 Mailman/Cgi/listinfo.py:54
+#: Mailman/Cgi/admin.py:79 Mailman/Cgi/admindb.py:93 Mailman/Cgi/confirm.py:62
+#: Mailman/Cgi/edithtml.py:71 Mailman/Cgi/listinfo.py:54
 #: Mailman/Cgi/options.py:78 Mailman/Cgi/private.py:108
 #: Mailman/Cgi/rmlist.py:64 Mailman/Cgi/roster.py:59
 #: Mailman/Cgi/subscribe.py:62
 msgid "No such list <em>%(safelistname)s</em>"
 msgstr "La llista <em>%(safelistname)s</em> nun esiste"
 
-#: Mailman/Cgi/admin.py:91 Mailman/Cgi/admindb.py:109
-#: Mailman/Cgi/edithtml.py:90 Mailman/Cgi/private.py:135
+#: Mailman/Cgi/admin.py:107 Mailman/Cgi/admindb.py:109
+#: Mailman/Cgi/edithtml.py:91 Mailman/Cgi/private.py:135
 msgid "Authorization failed."
 msgstr "Autorización infructuosa."
 
-#: Mailman/Cgi/admin.py:181
+#: Mailman/Cgi/admin.py:198
+msgid "The form lifetime has expired. (request forgery check)"
+msgstr ""
+
+#: Mailman/Cgi/admin.py:204
 msgid ""
 "You have turned off delivery of both digest and\n"
 "                non-digest messages.  This is an incompatible state of\n"
@@ -263,44 +267,45 @@
 "porque\n"
 "               la to llista de corréu nun podrá usase."
 
-#: Mailman/Cgi/admin.py:185 Mailman/Cgi/admin.py:191 Mailman/Cgi/admin.py:196
-#: Mailman/Cgi/admin.py:1443 Mailman/Gui/GUIBase.py:204
+#: Mailman/Cgi/admin.py:208 Mailman/Cgi/admin.py:216 Mailman/Cgi/admin.py:223
+#: Mailman/Cgi/admin.py:1498 Mailman/Gui/GUIBase.py:204
 msgid "Warning: "
 msgstr "Avisu:"
 
-#: Mailman/Cgi/admin.py:189
+#: Mailman/Cgi/admin.py:213
 msgid ""
 "You have digest members, but digests are turned\n"
-"                off. Those people will not receive mail."
+"                off. Those people will not receive mail.\n"
+"                Affected member(s) %(dm)r."
 msgstr ""
 "Tienes soscritores col mou agrupáu activáu,\n"
 "               nesta llista'l mou agrupáu ta desactiváu.\n"
-"               Esos soscritores nun recibirán corréu."
+"               Esos soscritores nun recibirán corréu.%(dm)r"
 
-#: Mailman/Cgi/admin.py:194
+#: Mailman/Cgi/admin.py:220
 msgid ""
 "You have regular list members but non-digestified mail is\n"
 "                turned off.  They will receive non-digestified mail until "
 "you\n"
-"                fix this problem."
+"                fix this problem. Affected member(s) %(rm)r."
 msgstr ""
 "Tienes soscritores que quieren recibir el corréu a midía que\n"
 "                llega, pero esta modalidá ta desactivada. Ellos\n"
-"                recibirán corréu fasta qu'igües esti problema."
+"                recibirán corréu fasta qu'igües esti problema.%(rm)r"
 
-#: Mailman/Cgi/admin.py:218
+#: Mailman/Cgi/admin.py:245
 msgid "%(hostname)s mailing lists - Admin Links"
 msgstr "Llistes de corréu en %(hostname)s - Enllaces d'alministración"
 
-#: Mailman/Cgi/admin.py:249 Mailman/Cgi/listinfo.py:104
+#: Mailman/Cgi/admin.py:276 Mailman/Cgi/listinfo.py:104
 msgid "Welcome!"
 msgstr "¡Bienveníos!"
 
-#: Mailman/Cgi/admin.py:252 Mailman/Cgi/listinfo.py:107
+#: Mailman/Cgi/admin.py:279 Mailman/Cgi/listinfo.py:107
 msgid "Mailman"
 msgstr "Mailman"
 
-#: Mailman/Cgi/admin.py:256
+#: Mailman/Cgi/admin.py:283
 msgid ""
 "<p>There currently are no publicly-advertised %(mailmanlink)s\n"
 "            mailing lists on %(hostname)s."
@@ -308,7 +313,7 @@
 "<p>Anguaño nun hai llistes de %(mailmanlink)s qu'anunciar\n"
 "            públicamente en %(hostname)s. "
 
-#: Mailman/Cgi/admin.py:262
+#: Mailman/Cgi/admin.py:289
 msgid ""
 "<p>Below is the collection of publicly-advertised\n"
 "            %(mailmanlink)s mailing lists on %(hostname)s.  Click on a list\n"
@@ -319,11 +324,11 @@
 "nún nome de\n"
 "            llista pa dir a la páxina de configuración d'esa llista."
 
-#: Mailman/Cgi/admin.py:269
+#: Mailman/Cgi/admin.py:296
 msgid "right "
 msgstr "correuta"
 
-#: Mailman/Cgi/admin.py:271
+#: Mailman/Cgi/admin.py:298
 msgid ""
 "To visit the administrators configuration page for an\n"
 "        unadvertised list, open a URL similar to this one, but with a '/' "
@@ -342,32 +347,32 @@
 "\n"
 "        <p>Puedes alcontrar información xeneral sobro les llistes en "
 
-#: Mailman/Cgi/admin.py:278
+#: Mailman/Cgi/admin.py:305
 msgid "the mailing list overview page"
 msgstr "la páxina d'información xeneral de les llistes de corréu"
 
-#: Mailman/Cgi/admin.py:280
+#: Mailman/Cgi/admin.py:307
 msgid "<p>(Send questions and comments to "
 msgstr "<p>(Unvía les tos entrugues y comentarios a "
 
-#: Mailman/Cgi/admin.py:290 Mailman/Cgi/listinfo.py:139 cron/mailpasswds:216
+#: Mailman/Cgi/admin.py:317 Mailman/Cgi/listinfo.py:139 cron/mailpasswds:216
 msgid "List"
 msgstr "Llista"
 
-#: Mailman/Cgi/admin.py:291 Mailman/Cgi/admin.py:558
+#: Mailman/Cgi/admin.py:318 Mailman/Cgi/admin.py:586
 #: Mailman/Cgi/listinfo.py:140
 msgid "Description"
 msgstr "Descripción"
 
-#: Mailman/Cgi/admin.py:297 Mailman/Cgi/listinfo.py:146 bin/list_lists:116
+#: Mailman/Cgi/admin.py:324 Mailman/Cgi/listinfo.py:146 bin/list_lists:116
 msgid "[no description available]"
 msgstr "[descripción nun disponible]"
 
-#: Mailman/Cgi/admin.py:331
+#: Mailman/Cgi/admin.py:358
 msgid "No valid variable name found."
 msgstr "Atopóse un nome de variable non válidu."
 
-#: Mailman/Cgi/admin.py:341
+#: Mailman/Cgi/admin.py:368
 msgid ""
 "%(realname)s Mailing list Configuration Help\n"
 "    <br><em>%(varname)s</em> Option"
@@ -375,11 +380,11 @@
 "Aida de configuración de la llista de corréu %(realname)s, opción <br><em>%"
 "(varname)s</em>"
 
-#: Mailman/Cgi/admin.py:348
+#: Mailman/Cgi/admin.py:375
 msgid "Mailman %(varname)s List Option Help"
 msgstr "Aida de Mailman pa la opción de llista %(varname)s"
 
-#: Mailman/Cgi/admin.py:366
+#: Mailman/Cgi/admin.py:393
 #, fuzzy
 msgid ""
 "<em><strong>Warning:</strong> changing this option here\n"
@@ -395,62 +400,63 @@
 "    páxina que tes visualizando esta opción pa esta llista de corréu. Tamién "
 "puedes\n"
 
-#: Mailman/Cgi/admin.py:377
+#: Mailman/Cgi/admin.py:404
 msgid "return to the %(categoryname)s options page."
 msgstr "volver a la páxina d'opciones %(categoryname)s"
 
-#: Mailman/Cgi/admin.py:392
+#: Mailman/Cgi/admin.py:419
 msgid "%(realname)s Administration (%(label)s)"
 msgstr "Alministración de %(realname)s (%(label)s)"
 
-#: Mailman/Cgi/admin.py:393
+#: Mailman/Cgi/admin.py:420
 msgid "%(realname)s mailing list administration<br>%(label)s Section"
 msgstr ""
 "Alministración de la llista de corréu %(realname)s<br> Seición de %(label)s"
 
-#: Mailman/Cgi/admin.py:409
+#: Mailman/Cgi/admin.py:437
 msgid "Configuration Categories"
 msgstr "Categoríes de configuración"
 
-#: Mailman/Cgi/admin.py:410
+#: Mailman/Cgi/admin.py:438
 msgid "Other Administrative Activities"
 msgstr "Otres actividaes alministratives"
 
-#: Mailman/Cgi/admin.py:414
+#: Mailman/Cgi/admin.py:442
 msgid "Tend to pending moderator requests"
 msgstr "Ocupase de les peticiones pendientes de llendar"
 
-#: Mailman/Cgi/admin.py:416
+#: Mailman/Cgi/admin.py:444
 msgid "Go to the general list information page"
 msgstr "Dir a la páxina d'información xeneral sobre la llista."
 
-#: Mailman/Cgi/admin.py:418
+#: Mailman/Cgi/admin.py:446
 msgid "Edit the public HTML pages and text files"
 msgstr ""
 "Editar el códigu HTML de les páxines d'accesu\n"
 "y los ficheros de testu públicos"
 
-#: Mailman/Cgi/admin.py:420
+#: Mailman/Cgi/admin.py:448
 msgid "Go to list archives"
 msgstr "Dir al ficheru de la llista"
 
-#: Mailman/Cgi/admin.py:426
+#: Mailman/Cgi/admin.py:454
 msgid "Delete this mailing list"
 msgstr "Desaniciar esta llista de corréu"
 
-#: Mailman/Cgi/admin.py:427
+#: Mailman/Cgi/admin.py:455
 msgid " (requires confirmation)<br> <br>"
 msgstr " (requier confirmación)<br> <br>"
 
-#: Mailman/Cgi/admin.py:433
+#: Mailman/Cgi/admin.py:461 Mailman/Cgi/admindb.py:195
+#: Mailman/Cgi/admindb.py:272
 msgid "Logout"
 msgstr "Desconexón"
 
-#: Mailman/Cgi/admin.py:477
+#: Mailman/Cgi/admin.py:505
 msgid "Emergency moderation of all list traffic is enabled"
 msgstr "La llendadura d'emerxencia de tol tráficu de les llistes ta activada"
 
-#: Mailman/Cgi/admin.py:488
+#: Mailman/Cgi/admin.py:516
 msgid ""
 "Make your changes in the following section, then submit them\n"
 "        using the <em>Submit Your Changes</em> button below."
@@ -458,11 +464,11 @@
 "Fae los tos cambeos na seición siguiente, entós xubelos\n"
 "        usando'l botón d'embaxo <em>Unviar Los Cambeos</em>."
 
-#: Mailman/Cgi/admin.py:506
+#: Mailman/Cgi/admin.py:534
 msgid "Additional Member Tasks"
 msgstr "Xeres adicionales colos soscritores"
 
-#: Mailman/Cgi/admin.py:512
+#: Mailman/Cgi/admin.py:540
 msgid ""
 "<li>Set everyone's moderation bit, including\n"
 "            those members not currently visible"
@@ -470,23 +476,23 @@
 "<li>Activar el bit de llendadura de cualisquiera, incluyendo\n"
 "            a aquellos soscritores qu'anguaño nun ten visibles"
 
-#: Mailman/Cgi/admin.py:516
+#: Mailman/Cgi/admin.py:544
 msgid "Off"
 msgstr "Desactivar"
 
-#: Mailman/Cgi/admin.py:516
+#: Mailman/Cgi/admin.py:544
 msgid "On"
 msgstr "Activar"
 
-#: Mailman/Cgi/admin.py:518
+#: Mailman/Cgi/admin.py:546
 msgid "Set"
 msgstr "Afitar"
 
-#: Mailman/Cgi/admin.py:559
+#: Mailman/Cgi/admin.py:587
 msgid "Value"
 msgstr "Valor"
 
-#: Mailman/Cgi/admin.py:613
+#: Mailman/Cgi/admin.py:641
 msgid ""
 "Badly formed options entry:\n"
 " %(record)s"
@@ -494,105 +500,106 @@
 "La opción introducida formóse incorreutamente:\n"
 " %(record)s"
 
-#: Mailman/Cgi/admin.py:671
+#: Mailman/Cgi/admin.py:699
 msgid "<em>Enter the text below, or...</em><br>"
 msgstr "<em>Indica'l testu embaxo, o...</em><br>"
 
-#: Mailman/Cgi/admin.py:673
+#: Mailman/Cgi/admin.py:701
 msgid "<br><em>...specify a file to upload</em><br>"
 msgstr "<br><em>...especifica'l ficheru a xubir</em><br>"
 
-#: Mailman/Cgi/admin.py:699 Mailman/Cgi/admin.py:702
+#: Mailman/Cgi/admin.py:727 Mailman/Cgi/admin.py:730
 msgid "Topic %(i)d"
 msgstr "Asuntu %(i)d"
 
-#: Mailman/Cgi/admin.py:703 Mailman/Cgi/admin.py:753
+#: Mailman/Cgi/admin.py:731 Mailman/Cgi/admin.py:781
 msgid "Delete"
 msgstr "Desaniciar"
 
-#: Mailman/Cgi/admin.py:704
+#: Mailman/Cgi/admin.py:732
 msgid "Topic name:"
 msgstr "Nome del tema:"
 
-#: Mailman/Cgi/admin.py:706
+#: Mailman/Cgi/admin.py:734
 msgid "Regexp:"
 msgstr "Espresión regular:"
 
-#: Mailman/Cgi/admin.py:709 Mailman/Cgi/options.py:1047
+#: Mailman/Cgi/admin.py:737 Mailman/Cgi/options.py:1053
 msgid "Description:"
 msgstr "Descripción"
 
-#: Mailman/Cgi/admin.py:713 Mailman/Cgi/admin.py:771
+#: Mailman/Cgi/admin.py:741 Mailman/Cgi/admin.py:799
 msgid "Add new item..."
 msgstr "Amestar elementu nuevu..."
 
-#: Mailman/Cgi/admin.py:715 Mailman/Cgi/admin.py:773
+#: Mailman/Cgi/admin.py:743 Mailman/Cgi/admin.py:801
 msgid "...before this one."
 msgstr "...enantes d'esti."
 
-#: Mailman/Cgi/admin.py:716 Mailman/Cgi/admin.py:774
+#: Mailman/Cgi/admin.py:744 Mailman/Cgi/admin.py:802
 msgid "...after this one."
 msgstr "...dempués d'esti."
 
-#: Mailman/Cgi/admin.py:749 Mailman/Cgi/admin.py:752
+#: Mailman/Cgi/admin.py:777 Mailman/Cgi/admin.py:780
 msgid "Spam Filter Rule %(i)d"
 msgstr "Regla de Filtráu de Corréu Puxarra %(i)d"
 
-#: Mailman/Cgi/admin.py:754
+#: Mailman/Cgi/admin.py:782
 msgid "Spam Filter Regexp:"
 msgstr "Espresión regular pal peñeráu de corréu puxarra"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Cgi/admindb.py:306
-#: Mailman/Cgi/admindb.py:365 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641
+#: Mailman/Cgi/admin.py:793 Mailman/Cgi/admindb.py:327
+#: Mailman/Cgi/admindb.py:386 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671
 msgid "Defer"
 msgstr "Diferir"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Cgi/admindb.py:308
-#: Mailman/Cgi/admindb.py:367 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641 Mailman/Gui/ContentFilter.py:37
+#: Mailman/Cgi/admin.py:793 Mailman/Cgi/admindb.py:329
+#: Mailman/Cgi/admindb.py:388 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671 Mailman/Gui/ContentFilter.py:37
 #: Mailman/Gui/Privacy.py:216 Mailman/Gui/Privacy.py:297
 msgid "Reject"
 msgstr "Refugar"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Gui/Privacy.py:216
+#: Mailman/Cgi/admin.py:793 Mailman/Gui/Privacy.py:216
 #: Mailman/Gui/Privacy.py:297
 msgid "Hold"
 msgstr "Retener"
 
-#: Mailman/Cgi/admin.py:766 Mailman/Cgi/admindb.py:309
-#: Mailman/Cgi/admindb.py:368 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641 Mailman/Gui/ContentFilter.py:37
-#: Mailman/Gui/Privacy.py:216 Mailman/Gui/Privacy.py:297
+#: Mailman/Cgi/admin.py:794 Mailman/Cgi/admindb.py:330
+#: Mailman/Cgi/admindb.py:389 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671 Mailman/Commands/cmd_confirm.py:93
+#: Mailman/Gui/ContentFilter.py:37 Mailman/Gui/Privacy.py:216
+#: Mailman/Gui/Privacy.py:297
 msgid "Discard"
 msgstr "Descartar"
 
-#: Mailman/Cgi/admin.py:766 Mailman/Cgi/admindb.py:410
+#: Mailman/Cgi/admin.py:794 Mailman/Cgi/admindb.py:431
 #: Mailman/Gui/Privacy.py:297
 msgid "Accept"
 msgstr "Aceutar"
 
-#: Mailman/Cgi/admin.py:769 Mailman/Cgi/admindb.py:647
+#: Mailman/Cgi/admin.py:797 Mailman/Cgi/admindb.py:677
 msgid "Action:"
 msgstr "Aición: "
 
-#: Mailman/Cgi/admin.py:781
+#: Mailman/Cgi/admin.py:809
 msgid "Move rule up"
 msgstr "Mover la regla p'arriba"
 
-#: Mailman/Cgi/admin.py:782
+#: Mailman/Cgi/admin.py:810
 msgid "Move rule down"
 msgstr "Mover la regla p'abaxo"
 
-#: Mailman/Cgi/admin.py:815
+#: Mailman/Cgi/admin.py:843
 msgid "<br>(Edit <b>%(varname)s</b>)"
 msgstr "<br>(Editar <b>%(varname)s</b>)"
 
-#: Mailman/Cgi/admin.py:817
+#: Mailman/Cgi/admin.py:845
 msgid "<br>(Details for <b>%(varname)s</b>)"
 msgstr "<br>(Detalles de <b>%(varname)s</b>)"
 
-#: Mailman/Cgi/admin.py:824
+#: Mailman/Cgi/admin.py:852
 msgid ""
 "<br><em><strong>Note:</strong>\n"
 "        setting this value performs an immediate action but does not modify\n"
@@ -602,107 +609,107 @@
 "        activando esti valor fae una aición nel intre pero nun camuda\n"
 "        l'estáu permanente.</em>"
 
-#: Mailman/Cgi/admin.py:838
+#: Mailman/Cgi/admin.py:866
 msgid "Mass Subscriptions"
 msgstr "Soscripciones en bloque"
 
-#: Mailman/Cgi/admin.py:845
+#: Mailman/Cgi/admin.py:873
 msgid "Mass Removals"
 msgstr "Baxes en bloque"
 
-#: Mailman/Cgi/admin.py:852
+#: Mailman/Cgi/admin.py:880
 msgid "Membership List"
 msgstr "Llista de soscritores"
 
-#: Mailman/Cgi/admin.py:860
+#: Mailman/Cgi/admin.py:888
 msgid "(help)"
 msgstr "(aida)"
 
-#: Mailman/Cgi/admin.py:861
+#: Mailman/Cgi/admin.py:889
 msgid "Find member %(link)s:"
 msgstr "Atopar soscritor %(link)s:"
 
-#: Mailman/Cgi/admin.py:864
+#: Mailman/Cgi/admin.py:892
 msgid "Search..."
 msgstr "Guetar..."
 
-#: Mailman/Cgi/admin.py:881
+#: Mailman/Cgi/admin.py:909
 msgid "Bad regular expression: "
 msgstr "Espresión regular mal formada: "
 
-#: Mailman/Cgi/admin.py:935
+#: Mailman/Cgi/admin.py:963
 msgid "%(allcnt)s members total, %(membercnt)s shown"
 msgstr "%(allcnt)s soscritores en total, amuésense %(membercnt)s"
 
-#: Mailman/Cgi/admin.py:938
+#: Mailman/Cgi/admin.py:966
 msgid "%(allcnt)s members total"
 msgstr "%(allcnt)s soscritores en total"
 
-#: Mailman/Cgi/admin.py:962
+#: Mailman/Cgi/admin.py:990
 msgid "unsub"
 msgstr "desoscribir"
 
-#: Mailman/Cgi/admin.py:963
+#: Mailman/Cgi/admin.py:991
 msgid "member address<br>member name"
 msgstr "direición del soscritor<br>nome del soscritor"
 
-#: Mailman/Cgi/admin.py:964
+#: Mailman/Cgi/admin.py:992
 msgid "hide"
 msgstr "anubríu"
 
-#: Mailman/Cgi/admin.py:964
+#: Mailman/Cgi/admin.py:992
 msgid "mod"
 msgstr "mod"
 
-#: Mailman/Cgi/admin.py:965
+#: Mailman/Cgi/admin.py:993
 msgid "nomail<br>[reason]"
 msgstr "ensin corréu<br>[razón]"
 
-#: Mailman/Cgi/admin.py:966
+#: Mailman/Cgi/admin.py:994
 msgid "ack"
 msgstr "conf"
 
-#: Mailman/Cgi/admin.py:966
+#: Mailman/Cgi/admin.py:994
 msgid "not metoo"
 msgstr "a mí non"
 
-#: Mailman/Cgi/admin.py:967
+#: Mailman/Cgi/admin.py:995
 msgid "nodupes"
 msgstr "ensin duplicaos"
 
-#: Mailman/Cgi/admin.py:968
+#: Mailman/Cgi/admin.py:996
+msgid "plain"
+msgstr "testu"
+
+#: Mailman/Cgi/admin.py:996 Mailman/Cgi/options.py:307
 msgid "digest"
 msgstr "agrupáu"
 
-#: Mailman/Cgi/admin.py:968
-msgid "plain"
-msgstr "testu"
-
-#: Mailman/Cgi/admin.py:969
+#: Mailman/Cgi/admin.py:997
 msgid "language"
 msgstr "llingua"
 
-#: Mailman/Cgi/admin.py:980
+#: Mailman/Cgi/admin.py:1008
 msgid "?"
 msgstr "?"
 
-#: Mailman/Cgi/admin.py:981
+#: Mailman/Cgi/admin.py:1009
 msgid "U"
 msgstr "U"
 
-#: Mailman/Cgi/admin.py:982
+#: Mailman/Cgi/admin.py:1010
 msgid "A"
 msgstr "A"
 
-#: Mailman/Cgi/admin.py:983
+#: Mailman/Cgi/admin.py:1011
 msgid "B"
 msgstr "B"
 
-#: Mailman/Cgi/admin.py:1055
+#: Mailman/Cgi/admin.py:1083
 msgid "<b>unsub</b> -- Click on this to unsubscribe the member."
 msgstr "<b>desoscribir</b> -- Calca equí pa desoscribir a esta persona."
 
-#: Mailman/Cgi/admin.py:1057
+#: Mailman/Cgi/admin.py:1085
 msgid ""
 "<b>mod</b> -- The user's personal moderation flag.  If this is\n"
 "        set, postings from them will be moderated, otherwise they will be\n"
@@ -712,7 +719,7 @@
 "         ta activu, los unvíos que provengan d'él moderaránse, n'otru\n"
 "         casu van aprobase."
 
-#: Mailman/Cgi/admin.py:1061
+#: Mailman/Cgi/admin.py:1089
 msgid ""
 "<b>hide</b> -- Is the member's address concealed on\n"
 "        the list of subscribers?"
@@ -720,7 +727,7 @@
 "<b>anubríu</b> -- ¿Aparez la direición del soscritor\n"
 "        anubrida na llista de soscritores?"
 
-#: Mailman/Cgi/admin.py:1063
+#: Mailman/Cgi/admin.py:1091
 msgid ""
 "<b>nomail</b> -- Is delivery to the member disabled?  If so, an\n"
 "        abbreviation will be given describing the reason for the disabled\n"
@@ -759,7 +766,7 @@
 "                                feches en versiones anteriores de Mailman.\n"
 "            </ul>"
 
-#: Mailman/Cgi/admin.py:1078
+#: Mailman/Cgi/admin.py:1106
 msgid ""
 "<b>ack</b> -- Does the member get acknowledgements of their\n"
 "        posts?"
@@ -767,7 +774,7 @@
 "<b>conf</b> -- ¿Obtién el soscritor confirmación\n"
 "        de los sos unvíos?"
 
-#: Mailman/Cgi/admin.py:1081
+#: Mailman/Cgi/admin.py:1109
 msgid ""
 "<b>not metoo</b> -- Does the member want to avoid copies of their\n"
 "        own postings?"
@@ -775,7 +782,7 @@
 "<b>a mi non</b> -- ¿Recibirá'l soscritor copia de los sos propios\n"
 "        mensaxes?"
 
-#: Mailman/Cgi/admin.py:1084
+#: Mailman/Cgi/admin.py:1112
 msgid ""
 "<b>nodupes</b> -- Does the member want to avoid duplicates of the\n"
 "        same message?"
@@ -783,7 +790,7 @@
 "<b>ensin duplicaos</b> -- ¿Deseya'l soscritor recibir duplicaos de los\n"
 "        mensaxes?"
 
-#: Mailman/Cgi/admin.py:1087
+#: Mailman/Cgi/admin.py:1115
 msgid ""
 "<b>digest</b> -- Does the member get messages in digests?\n"
 "        (otherwise, individual messages)"
@@ -791,7 +798,7 @@
 "<b>agrupáu</b> -- ¿Recibirá'l soscritor los mensaxes agrupaos?\n"
 "        (en casu contrariu, mensaxes individuales)"
 
-#: Mailman/Cgi/admin.py:1090
+#: Mailman/Cgi/admin.py:1118
 msgid ""
 "<b>plain</b> -- If getting digests, does the member get plain\n"
 "        text digests?  (otherwise, MIME)"
@@ -799,19 +806,19 @@
 "<b>testu planu</b> -- Los mensaxes agrupaos, ¿recíbense como testu planu?\n"
 "        (en casu contrariu, MIME)"
 
-#: Mailman/Cgi/admin.py:1092
+#: Mailman/Cgi/admin.py:1120
 msgid "<b>language</b> -- Language preferred by the user"
 msgstr "<b>llingua</b> -- Llingua preferida pol usuariu"
 
-#: Mailman/Cgi/admin.py:1106
+#: Mailman/Cgi/admin.py:1134
 msgid "Click here to hide the legend for this table."
 msgstr "Calca p'anubrir la lleenda pa esta tabla."
 
-#: Mailman/Cgi/admin.py:1110
+#: Mailman/Cgi/admin.py:1138
 msgid "Click here to include the legend for this table."
 msgstr "Calca equí pa incluyir la lleenda pa esta tabla"
 
-#: Mailman/Cgi/admin.py:1117
+#: Mailman/Cgi/admin.py:1145
 msgid ""
 "<p><em>To view more members, click on the appropriate\n"
 "        range listed below:</em>"
@@ -819,28 +826,28 @@
 "<p><em>Pa ver más soscritores, calca nel rangu apropiáu\n"
 "         llistáu embaxo:</em>"
 
-#: Mailman/Cgi/admin.py:1126
+#: Mailman/Cgi/admin.py:1154
 msgid "from %(start)s to %(end)s"
 msgstr "de %(start)s a %(end)s"
 
-#: Mailman/Cgi/admin.py:1139
+#: Mailman/Cgi/admin.py:1167
 msgid "Subscribe these users now or invite them?"
 msgstr "¿Soscribir a esti nuevu grupu o invitalos?"
 
-#: Mailman/Cgi/admin.py:1141
+#: Mailman/Cgi/admin.py:1169
 msgid "Invite"
 msgstr "Invitar"
 
-#: Mailman/Cgi/admin.py:1141 Mailman/Cgi/listinfo.py:182
+#: Mailman/Cgi/admin.py:1169 Mailman/Cgi/listinfo.py:182
 msgid "Subscribe"
 msgstr "Soscribir"
 
-#: Mailman/Cgi/admin.py:1147
+#: Mailman/Cgi/admin.py:1175
 msgid "Send welcome messages to new subscribees?"
 msgstr "¿Unviar mensax de bienvenida a nuevos soscritores?"
 
-#: Mailman/Cgi/admin.py:1149 Mailman/Cgi/admin.py:1158
-#: Mailman/Cgi/admin.py:1191 Mailman/Cgi/admin.py:1199
+#: Mailman/Cgi/admin.py:1177 Mailman/Cgi/admin.py:1186
+#: Mailman/Cgi/admin.py:1219 Mailman/Cgi/admin.py:1227
 #: Mailman/Cgi/confirm.py:292 Mailman/Cgi/create.py:353
 #: Mailman/Cgi/create.py:388 Mailman/Cgi/create.py:426
 #: Mailman/Cgi/rmlist.py:230 Mailman/Gui/Archive.py:33
@@ -850,25 +857,25 @@
 #: Mailman/Gui/Bounce.py:155 Mailman/Gui/ContentFilter.py:74
 #: Mailman/Gui/ContentFilter.py:116 Mailman/Gui/ContentFilter.py:120
 #: Mailman/Gui/Digest.py:46 Mailman/Gui/Digest.py:62 Mailman/Gui/Digest.py:84
-#: Mailman/Gui/Digest.py:89 Mailman/Gui/General.py:156
-#: Mailman/Gui/General.py:162 Mailman/Gui/General.py:240
-#: Mailman/Gui/General.py:267 Mailman/Gui/General.py:294
-#: Mailman/Gui/General.py:305 Mailman/Gui/General.py:308
-#: Mailman/Gui/General.py:318 Mailman/Gui/General.py:323
-#: Mailman/Gui/General.py:329 Mailman/Gui/General.py:349
-#: Mailman/Gui/General.py:381 Mailman/Gui/General.py:404
-#: Mailman/Gui/General.py:421 Mailman/Gui/NonDigest.py:45
+#: Mailman/Gui/Digest.py:89 Mailman/Gui/General.py:157
+#: Mailman/Gui/General.py:163 Mailman/Gui/General.py:241
+#: Mailman/Gui/General.py:268 Mailman/Gui/General.py:295
+#: Mailman/Gui/General.py:306 Mailman/Gui/General.py:309
+#: Mailman/Gui/General.py:319 Mailman/Gui/General.py:324
+#: Mailman/Gui/General.py:330 Mailman/Gui/General.py:350
+#: Mailman/Gui/General.py:382 Mailman/Gui/General.py:405
+#: Mailman/Gui/General.py:422 Mailman/Gui/NonDigest.py:45
 #: Mailman/Gui/NonDigest.py:53 Mailman/Gui/NonDigest.py:140
-#: Mailman/Gui/Privacy.py:110 Mailman/Gui/Privacy.py:116
-#: Mailman/Gui/Privacy.py:149 Mailman/Gui/Privacy.py:197
-#: Mailman/Gui/Privacy.py:312 Mailman/Gui/Privacy.py:331
-#: Mailman/Gui/Usenet.py:52 Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93
-#: Mailman/Gui/Usenet.py:105
+#: Mailman/Gui/NonDigest.py:162 Mailman/Gui/Privacy.py:110
+#: Mailman/Gui/Privacy.py:116 Mailman/Gui/Privacy.py:149
+#: Mailman/Gui/Privacy.py:197 Mailman/Gui/Privacy.py:312
+#: Mailman/Gui/Privacy.py:331 Mailman/Gui/Usenet.py:52
+#: Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93 Mailman/Gui/Usenet.py:105
 msgid "No"
 msgstr "Non"
 
-#: Mailman/Cgi/admin.py:1149 Mailman/Cgi/admin.py:1158
-#: Mailman/Cgi/admin.py:1191 Mailman/Cgi/admin.py:1199
+#: Mailman/Cgi/admin.py:1177 Mailman/Cgi/admin.py:1186
+#: Mailman/Cgi/admin.py:1219 Mailman/Cgi/admin.py:1227
 #: Mailman/Cgi/confirm.py:292 Mailman/Cgi/create.py:353
 #: Mailman/Cgi/create.py:388 Mailman/Cgi/create.py:426
 #: Mailman/Cgi/rmlist.py:230 Mailman/Gui/Archive.py:33
@@ -878,36 +885,37 @@
 #: Mailman/Gui/ContentFilter.py:74 Mailman/Gui/ContentFilter.py:116
 #: Mailman/Gui/ContentFilter.py:120 Mailman/Gui/Digest.py:46
 #: Mailman/Gui/Digest.py:62 Mailman/Gui/Digest.py:84 Mailman/Gui/Digest.py:89
-#: Mailman/Gui/General.py:156 Mailman/Gui/General.py:162
-#: Mailman/Gui/General.py:240 Mailman/Gui/General.py:267
-#: Mailman/Gui/General.py:294 Mailman/Gui/General.py:305
-#: Mailman/Gui/General.py:308 Mailman/Gui/General.py:318
-#: Mailman/Gui/General.py:323 Mailman/Gui/General.py:329
-#: Mailman/Gui/General.py:349 Mailman/Gui/General.py:381
-#: Mailman/Gui/General.py:404 Mailman/Gui/General.py:421
+#: Mailman/Gui/General.py:157 Mailman/Gui/General.py:163
+#: Mailman/Gui/General.py:241 Mailman/Gui/General.py:268
+#: Mailman/Gui/General.py:295 Mailman/Gui/General.py:306
+#: Mailman/Gui/General.py:309 Mailman/Gui/General.py:319
+#: Mailman/Gui/General.py:324 Mailman/Gui/General.py:330
+#: Mailman/Gui/General.py:350 Mailman/Gui/General.py:382
+#: Mailman/Gui/General.py:405 Mailman/Gui/General.py:422
 #: Mailman/Gui/NonDigest.py:45 Mailman/Gui/NonDigest.py:53
-#: Mailman/Gui/NonDigest.py:140 Mailman/Gui/Privacy.py:110
-#: Mailman/Gui/Privacy.py:116 Mailman/Gui/Privacy.py:149
-#: Mailman/Gui/Privacy.py:197 Mailman/Gui/Privacy.py:312
-#: Mailman/Gui/Privacy.py:331 Mailman/Gui/Usenet.py:52
-#: Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93 Mailman/Gui/Usenet.py:105
+#: Mailman/Gui/NonDigest.py:140 Mailman/Gui/NonDigest.py:162
+#: Mailman/Gui/Privacy.py:110 Mailman/Gui/Privacy.py:116
+#: Mailman/Gui/Privacy.py:149 Mailman/Gui/Privacy.py:197
+#: Mailman/Gui/Privacy.py:312 Mailman/Gui/Privacy.py:331
+#: Mailman/Gui/Usenet.py:52 Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93
+#: Mailman/Gui/Usenet.py:105
 msgid "Yes"
 msgstr "Sí"
 
-#: Mailman/Cgi/admin.py:1156
+#: Mailman/Cgi/admin.py:1184
 msgid "Send notifications of new subscriptions to the list owner?"
 msgstr ""
 "¿Unviar notificaciones de nueves soscriciones al propietariu de la llista?"
 
-#: Mailman/Cgi/admin.py:1164 Mailman/Cgi/admin.py:1205
+#: Mailman/Cgi/admin.py:1192 Mailman/Cgi/admin.py:1233
 msgid "Enter one address per line below..."
 msgstr "Introduz una direición por llinia embaxo..."
 
-#: Mailman/Cgi/admin.py:1169 Mailman/Cgi/admin.py:1210
+#: Mailman/Cgi/admin.py:1197 Mailman/Cgi/admin.py:1238
 msgid "...or specify a file to upload:"
 msgstr "... o especifica un ficheru a xubir:"
 
-#: Mailman/Cgi/admin.py:1174
+#: Mailman/Cgi/admin.py:1202
 msgid ""
 "Below, enter additional text to be added to the\n"
 "    top of your invitation or the subscription notification.  Include at "
@@ -919,19 +927,19 @@
 "al menos\n"
 "        una llinia erma al final..."
 
-#: Mailman/Cgi/admin.py:1189
+#: Mailman/Cgi/admin.py:1217
 msgid "Send unsubscription acknowledgement to the user?"
 msgstr "¿Unviar notificación de baxa de soscrición al usuariu?"
 
-#: Mailman/Cgi/admin.py:1197
+#: Mailman/Cgi/admin.py:1225
 msgid "Send notifications to the list owner?"
 msgstr "¿Unviar notificaciones al propietariu de la llista?"
 
-#: Mailman/Cgi/admin.py:1219
+#: Mailman/Cgi/admin.py:1247
 msgid "Change list ownership passwords"
 msgstr "Camudar la contraseña del propietariu de la llista"
 
-#: Mailman/Cgi/admin.py:1222
+#: Mailman/Cgi/admin.py:1250
 msgid ""
 "The <em>list administrators</em> are the people who have ultimate control "
 "over\n"
@@ -968,237 +976,262 @@
 "distinta a los llendadores nel campu que ta embaxu ya indicar\n"
 "les direiciones de corréu electróniques na seición d'enriba."
 
-#: Mailman/Cgi/admin.py:1241
+#: Mailman/Cgi/admin.py:1269
 msgid "Enter new administrator password:"
 msgstr "Introduz la contraseña nueva d'alministrador:"
 
-#: Mailman/Cgi/admin.py:1243
+#: Mailman/Cgi/admin.py:1271
 msgid "Confirm administrator password:"
 msgstr "Confirma la contraseña del alministrador:"
 
-#: Mailman/Cgi/admin.py:1248
+#: Mailman/Cgi/admin.py:1276
 msgid "Enter new moderator password:"
 msgstr "Introduz la contraseña nueva del llendador:"
 
-#: Mailman/Cgi/admin.py:1250
+#: Mailman/Cgi/admin.py:1278
 msgid "Confirm moderator password:"
 msgstr "Confirma la contraseña del llendador:"
 
-#: Mailman/Cgi/admin.py:1260
+#: Mailman/Cgi/admin.py:1282
+msgid ""
+"In addition to the above passwords you may specify a password for\n"
+"pre-approving posts to the list. Either of the above two passwords can\n"
+"be used in an Approved: header or first body line pseudo-header to\n"
+"pre-approve a post that would otherwise be held for moderation. In\n"
+"addition, the password below, if set, can be used for that purpose and\n"
+"no other."
+msgstr ""
+
+#: Mailman/Cgi/admin.py:1293
+#, fuzzy
+msgid "Enter new poster password:"
+msgstr "Introduz la contraseña nueva del llendador:"
+
+#: Mailman/Cgi/admin.py:1295
+#, fuzzy
+msgid "Confirm poster password:"
+msgstr "Confirma la contraseña del llendador:"
+
+#: Mailman/Cgi/admin.py:1304
 msgid "Submit Your Changes"
 msgstr "Unviar los cambeos"
 
-#: Mailman/Cgi/admin.py:1283
+#: Mailman/Cgi/admin.py:1327
 msgid "Moderator passwords did not match"
 msgstr "Les contraseñes del Moderador nun concasen"
 
-#: Mailman/Cgi/admin.py:1293
+#: Mailman/Cgi/admin.py:1338
+#, fuzzy
+msgid "Poster passwords did not match"
+msgstr "Les tos contraseñes nun concasen."
+
+#: Mailman/Cgi/admin.py:1348
 msgid "Administrator passwords did not match"
 msgstr "Les contraseñes del Alministrador nun concasen"
 
-#: Mailman/Cgi/admin.py:1343
+#: Mailman/Cgi/admin.py:1398
 msgid "Already a member"
 msgstr "Ya tas soscritu"
 
-#: Mailman/Cgi/admin.py:1346
+#: Mailman/Cgi/admin.py:1401
 msgid "<blank line>"
 msgstr "<llinia vacía>"
 
-#: Mailman/Cgi/admin.py:1347 Mailman/Cgi/admin.py:1350
+#: Mailman/Cgi/admin.py:1402 Mailman/Cgi/admin.py:1405
 msgid "Bad/Invalid email address"
 msgstr "Direición de corréu electrónicu incorreuta/inválida"
 
-#: Mailman/Cgi/admin.py:1353
+#: Mailman/Cgi/admin.py:1408
 msgid "Hostile address (illegal characters)"
 msgstr "Direición hostil (carauteres nun válidos)"
 
-#: Mailman/Cgi/admin.py:1356 bin/add_members:140 bin/clone_member:136
+#: Mailman/Cgi/admin.py:1411 bin/add_members:140 bin/clone_member:136
 #: bin/sync_members:264
 msgid "Banned address (matched %(pattern)s)"
 msgstr "Direición baneada (coincidencia %(pattern)s)"
 
-#: Mailman/Cgi/admin.py:1362
+#: Mailman/Cgi/admin.py:1417
 msgid "Successfully invited:"
 msgstr "Invitaos satisfactoriamente:"
 
-#: Mailman/Cgi/admin.py:1364
+#: Mailman/Cgi/admin.py:1419
 msgid "Successfully subscribed:"
 msgstr "Subscritos satisfactoriamente:"
 
-#: Mailman/Cgi/admin.py:1369
+#: Mailman/Cgi/admin.py:1424
 msgid "Error inviting:"
 msgstr "Fallu invitando a soscribise:"
 
-#: Mailman/Cgi/admin.py:1371
+#: Mailman/Cgi/admin.py:1426
 msgid "Error subscribing:"
 msgstr "Fallu dando d'alta la soscrición:"
 
-#: Mailman/Cgi/admin.py:1400
+#: Mailman/Cgi/admin.py:1455
 msgid "Successfully Unsubscribed:"
 msgstr "Encaboxasti la soscripción darréu:"
 
-#: Mailman/Cgi/admin.py:1405
+#: Mailman/Cgi/admin.py:1460
 msgid "Cannot unsubscribe non-members:"
 msgstr "Nun puede desoscribise a los non soscritos:"
 
-#: Mailman/Cgi/admin.py:1417
+#: Mailman/Cgi/admin.py:1472
 msgid "Bad moderation flag value"
 msgstr "Flag incorreutu de llendadura"
 
-#: Mailman/Cgi/admin.py:1439
+#: Mailman/Cgi/admin.py:1494
 msgid "Not subscribed"
 msgstr "Non soscritu"
 
-#: Mailman/Cgi/admin.py:1442
+#: Mailman/Cgi/admin.py:1497
 msgid "Ignoring changes to deleted member: %(user)s"
 msgstr "Inorando los cambeos del usuariu desaniciáu: %(user)s"
 
-#: Mailman/Cgi/admin.py:1482
+#: Mailman/Cgi/admin.py:1537
 msgid "Successfully Removed:"
 msgstr "Desaniciáu Dafechu:"
 
-#: Mailman/Cgi/admin.py:1486
+#: Mailman/Cgi/admin.py:1541
 msgid "Error Unsubscribing:"
 msgstr "Fallu desoscribiendo:"
 
-#: Mailman/Cgi/admindb.py:163 Mailman/Cgi/admindb.py:171
+#: Mailman/Cgi/admindb.py:176 Mailman/Cgi/admindb.py:185
 msgid "%(realname)s Administrative Database"
 msgstr "Base de Datos Alministrativa %(realname)s"
 
-#: Mailman/Cgi/admindb.py:166
+#: Mailman/Cgi/admindb.py:179
 msgid "%(realname)s Administrative Database Results"
 msgstr "Resultaos de la base de datos alministrativa de %(realname)s"
 
-#: Mailman/Cgi/admindb.py:174
+#: Mailman/Cgi/admindb.py:188
 msgid "There are no pending requests."
 msgstr "Nun hai peticiones pendientes."
 
-#: Mailman/Cgi/admindb.py:177
+#: Mailman/Cgi/admindb.py:191
 msgid "Click here to reload this page."
 msgstr "Calca equí pa recargar la páxina."
 
-#: Mailman/Cgi/admindb.py:188
+#: Mailman/Cgi/admindb.py:205
 msgid "Detailed instructions for the administrative database"
 msgstr "Instrucciones detallaes de la base de datos alministrativa"
 
-#: Mailman/Cgi/admindb.py:192
+#: Mailman/Cgi/admindb.py:209
 msgid "Administrative requests for mailing list:"
 msgstr "Peticiones alministratives pa la llista de corréu:"
 
-#: Mailman/Cgi/admindb.py:195 Mailman/Cgi/admindb.py:251
+#: Mailman/Cgi/admindb.py:212 Mailman/Cgi/admindb.py:268
 msgid "Submit All Data"
 msgstr "Unviar tolos datos"
 
-#: Mailman/Cgi/admindb.py:201 Mailman/Cgi/admindb.py:249
+#: Mailman/Cgi/admindb.py:218 Mailman/Cgi/admindb.py:266
 msgid "Discard all messages marked <em>Defer</em>"
 msgstr "Descartar tolos mensaxes marcaos como <em>Diferir</em>"
 
-#: Mailman/Cgi/admindb.py:215
+#: Mailman/Cgi/admindb.py:232
 msgid "all of %(esender)s's held messages."
 msgstr "tolos mensaxes reteníos de %(esender)s."
 
-#: Mailman/Cgi/admindb.py:220
+#: Mailman/Cgi/admindb.py:237
 msgid "a single held message."
 msgstr "un únicu mensax reteníu."
 
-#: Mailman/Cgi/admindb.py:225
+#: Mailman/Cgi/admindb.py:242
 msgid "all held messages."
 msgstr "tolos mensaxes reteníos."
 
-#: Mailman/Cgi/admindb.py:266
+#: Mailman/Cgi/admindb.py:287
 msgid "Mailman Administrative Database Error"
 msgstr "Fallu de base de datos alministrativa de Mailman"
 
-#: Mailman/Cgi/admindb.py:271
+#: Mailman/Cgi/admindb.py:292
 msgid "list of available mailing lists."
 msgstr "llistáu de llistes de corréu que tán disponibles."
 
-#: Mailman/Cgi/admindb.py:272
+#: Mailman/Cgi/admindb.py:293
 msgid "You must specify a list name.  Here is the %(link)s"
 msgstr "Tienes qu'especificar un nome de llista. Equí ta'l %(link)s"
 
-#: Mailman/Cgi/admindb.py:285
+#: Mailman/Cgi/admindb.py:306
 msgid "Subscription Requests"
 msgstr "Peticiones de soscrición"
 
-#: Mailman/Cgi/admindb.py:287
+#: Mailman/Cgi/admindb.py:308
 msgid "Address/name"
 msgstr "Direición/nome"
 
-#: Mailman/Cgi/admindb.py:288 Mailman/Cgi/admindb.py:339
+#: Mailman/Cgi/admindb.py:309 Mailman/Cgi/admindb.py:360
 msgid "Your decision"
 msgstr "La to decisión"
 
-#: Mailman/Cgi/admindb.py:289 Mailman/Cgi/admindb.py:340
+#: Mailman/Cgi/admindb.py:310 Mailman/Cgi/admindb.py:361
 msgid "Reason for refusal"
 msgstr "Motivu del refugu"
 
-#: Mailman/Cgi/admindb.py:307 Mailman/Cgi/admindb.py:366
-#: Mailman/Cgi/admindb.py:641
+#: Mailman/Cgi/admindb.py:328 Mailman/Cgi/admindb.py:387
+#: Mailman/Cgi/admindb.py:671 Mailman/Commands/cmd_confirm.py:90
 msgid "Approve"
 msgstr "Aprobar"
 
-#: Mailman/Cgi/admindb.py:317
+#: Mailman/Cgi/admindb.py:338
 msgid "Permanently ban from this list"
 msgstr "Banear permanentemente d'esta llista"
 
-#: Mailman/Cgi/admindb.py:338
+#: Mailman/Cgi/admindb.py:359
 msgid "User address/name"
 msgstr "Direición/nome"
 
-#: Mailman/Cgi/admindb.py:378
+#: Mailman/Cgi/admindb.py:399
 msgid "Unsubscription Requests"
 msgstr "Solicitues de desoscrición"
 
-#: Mailman/Cgi/admindb.py:390
+#: Mailman/Cgi/admindb.py:411
 msgid "Held Messages"
 msgstr "Mensaxes Reteníos"
 
-#: Mailman/Cgi/admindb.py:403 Mailman/Cgi/admindb.py:624
+#: Mailman/Cgi/admindb.py:424 Mailman/Cgi/admindb.py:654
 msgid "From:"
 msgstr "De:"
 
-#: Mailman/Cgi/admindb.py:406
+#: Mailman/Cgi/admindb.py:427
 msgid "Action to take on all these held messages:"
 msgstr "Aición a tomar tocante a toos estos mensaxes reteníos"
 
-#: Mailman/Cgi/admindb.py:418
+#: Mailman/Cgi/admindb.py:439
 msgid "Preserve messages for the site administrator"
 msgstr "Preservar mensaxes pal alministrador del xestor de llistes"
 
-#: Mailman/Cgi/admindb.py:424
+#: Mailman/Cgi/admindb.py:445
 msgid "Forward messages (individually) to:"
 msgstr "Reunviar mensaxes (individualmente) a"
 
-#: Mailman/Cgi/admindb.py:442
+#: Mailman/Cgi/admindb.py:463
 msgid "Clear this member's <em>moderate</em> flag"
 msgstr "Llimpiar el banderín de <em>llendadura</em> d'esti soscritor"
 
-#: Mailman/Cgi/admindb.py:446
+#: Mailman/Cgi/admindb.py:467
 msgid "<em>The sender is now a member of this list</em>"
 msgstr "<em>El remitente ye agora soscritor d'esta llista</em>"
 
-#: Mailman/Cgi/admindb.py:455
+#: Mailman/Cgi/admindb.py:476
 msgid "Add <b>%(esender)s</b> to one of these sender filters:"
 msgstr "amestar <b>%(esender)s</b> a una d'estes peñeres de remitentes:"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Accepts"
 msgstr "Aceutar"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Discards"
 msgstr "Descartar"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Holds"
 msgstr "Retener"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Rejects"
 msgstr "Refugar"
 
-#: Mailman/Cgi/admindb.py:469
+#: Mailman/Cgi/admindb.py:490
 msgid ""
 "Ban <b>%(esender)s</b> from ever subscribing to this\n"
 "                    mailing list"
@@ -1206,7 +1239,7 @@
 "Banear a <b>%(esender)s</b> de volver a soscribise a esta\n"
 "                    llista de corréu"
 
-#: Mailman/Cgi/admindb.py:474
+#: Mailman/Cgi/admindb.py:495
 msgid ""
 "Click on the message number to view the individual\n"
 "            message, or you can "
@@ -1214,85 +1247,85 @@
 "Calcar nel númberu de mensax pa ver el mensax\n"
 "            individual, o tu puedes"
 
-#: Mailman/Cgi/admindb.py:476
+#: Mailman/Cgi/admindb.py:497
 msgid "view all messages from %(esender)s"
 msgstr "ver tolos mensaxes de %(esender)s"
 
-#: Mailman/Cgi/admindb.py:498 Mailman/Cgi/admindb.py:627
+#: Mailman/Cgi/admindb.py:519 Mailman/Cgi/admindb.py:657
 msgid "Subject:"
 msgstr "Asuntu:"
 
-#: Mailman/Cgi/admindb.py:501
+#: Mailman/Cgi/admindb.py:522
 msgid " bytes"
 msgstr " bytes"
 
-#: Mailman/Cgi/admindb.py:501
+#: Mailman/Cgi/admindb.py:522
 msgid "Size:"
 msgstr "Tamañu:"
 
-#: Mailman/Cgi/admindb.py:505 Mailman/Handlers/Scrubber.py:203
+#: Mailman/Cgi/admindb.py:526 Mailman/Handlers/Scrubber.py:203
 #: Mailman/Handlers/Scrubber.py:301 Mailman/Handlers/Scrubber.py:303
 msgid "not available"
 msgstr "nun disponible"
 
-#: Mailman/Cgi/admindb.py:506 Mailman/Cgi/admindb.py:630
+#: Mailman/Cgi/admindb.py:527 Mailman/Cgi/admindb.py:660
 msgid "Reason:"
 msgstr "Motivu:"
 
-#: Mailman/Cgi/admindb.py:510 Mailman/Cgi/admindb.py:634
+#: Mailman/Cgi/admindb.py:531 Mailman/Cgi/admindb.py:664
 msgid "Received:"
 msgstr "Recibíu:"
 
-#: Mailman/Cgi/admindb.py:565
+#: Mailman/Cgi/admindb.py:586
 msgid "Posting Held for Approval"
 msgstr "L'unvíu retúvose n'espera de la so aprobación"
 
-#: Mailman/Cgi/admindb.py:567
+#: Mailman/Cgi/admindb.py:588
 msgid " (%(count)d of %(total)d)"
 msgstr " (%(count)d de %(total)d"
 
-#: Mailman/Cgi/admindb.py:578
+#: Mailman/Cgi/admindb.py:599
 msgid "<em>Message with id #%(id)d was lost."
 msgstr "<em>Perdióse'l mensax col identificador #%(id)d"
 
-#: Mailman/Cgi/admindb.py:587
+#: Mailman/Cgi/admindb.py:608
 msgid "<em>Message with id #%(id)d is corrupted."
 msgstr "<em>El mensax col id #%(id)d ta corruptu."
 
-#: Mailman/Cgi/admindb.py:651
+#: Mailman/Cgi/admindb.py:681
 msgid "Preserve message for site administrator"
 msgstr "Preservar el mensax pal alministrador del xestor de llistes"
 
-#: Mailman/Cgi/admindb.py:655
+#: Mailman/Cgi/admindb.py:685
 msgid "Additionally, forward this message to: "
 msgstr "Adicionalmente, puedes reunviar esti mensax a: "
 
-#: Mailman/Cgi/admindb.py:659 Mailman/Cgi/admindb.py:724
-#: Mailman/Cgi/admindb.py:787 Mailman/Cgi/admindb.py:789
+#: Mailman/Cgi/admindb.py:689 Mailman/Cgi/admindb.py:754
+#: Mailman/Cgi/admindb.py:817 Mailman/Cgi/admindb.py:819
 msgid "[No explanation given]"
 msgstr "[Ensin esplicación dada]"
 
-#: Mailman/Cgi/admindb.py:661
+#: Mailman/Cgi/admindb.py:691
 msgid "If you reject this post,<br>please explain (optional):"
 msgstr "Si refugues esti mensax, <br>por favor, desplica la causa (opcional):"
 
-#: Mailman/Cgi/admindb.py:667
+#: Mailman/Cgi/admindb.py:697
 msgid "Message Headers:"
 msgstr "Cabeceres del mensax:"
 
-#: Mailman/Cgi/admindb.py:672
+#: Mailman/Cgi/admindb.py:702
 msgid "Message Excerpt:"
 msgstr "Estractu del Mensax"
 
-#: Mailman/Cgi/admindb.py:824
+#: Mailman/Cgi/admindb.py:854
 msgid "Database Updated..."
 msgstr "La base de datos foi anovada..."
 
-#: Mailman/Cgi/admindb.py:827
+#: Mailman/Cgi/admindb.py:857
 msgid " is already a member"
 msgstr " yá ta soscritu"
 
-#: Mailman/Cgi/admindb.py:830
+#: Mailman/Cgi/admindb.py:860
 msgid "%(addr)s is banned (matched: %(patt)s)"
 msgstr "%(addr)s ta vetada (concordancia: %(patt)s)"
 
@@ -1503,7 +1536,7 @@
 "            llista. Informarásete de la decisión del llendador."
 
 #: Mailman/Cgi/confirm.py:371 Mailman/Cgi/confirm.py:436
-#: Mailman/Cgi/confirm.py:525 Mailman/Cgi/confirm.py:761
+#: Mailman/Cgi/confirm.py:525 Mailman/Cgi/confirm.py:762
 msgid ""
 "Invalid confirmation string.  It is\n"
 "            possible that you are attempting to confirm a request for an\n"
@@ -1619,8 +1652,8 @@
 "    <p>O calca <em>Encaboxar y descartar</em> pa encaboxar esta solicitú\n"
 "    de baxa."
 
-#: Mailman/Cgi/confirm.py:491 Mailman/Cgi/options.py:761
-#: Mailman/Cgi/options.py:905 Mailman/Cgi/options.py:915
+#: Mailman/Cgi/confirm.py:491 Mailman/Cgi/options.py:767
+#: Mailman/Cgi/options.py:911 Mailman/Cgi/options.py:921
 msgid "Unsubscribe"
 msgstr "Esborrase de la llista"
 
@@ -1726,7 +1759,7 @@
 msgid "Change address"
 msgstr "Camudar la direición"
 
-#: Mailman/Cgi/confirm.py:611 Mailman/Cgi/confirm.py:726
+#: Mailman/Cgi/confirm.py:611 Mailman/Cgi/confirm.py:727
 msgid "Continue awaiting approval"
 msgstr "Siguir esperando aprobación"
 
@@ -1738,11 +1771,11 @@
 "D'alcuerdu, el llendador de la llista entá\n"
 "    tien la oportunidá d'aprobar o refugar esti mensax."
 
-#: Mailman/Cgi/confirm.py:646
+#: Mailman/Cgi/confirm.py:647
 msgid "Sender discarded message via web."
 msgstr "El remitente descartó'l mensax vía web."
 
-#: Mailman/Cgi/confirm.py:648
+#: Mailman/Cgi/confirm.py:649
 msgid ""
 "The held message with the Subject:\n"
 "            header <em>%(subject)s</em> could not be found.  The most "
@@ -1758,11 +1791,11 @@
 "refugó'l\n"
 "            mensax. Nun fuisti quien a encaboxalu a tiempu."
 
-#: Mailman/Cgi/confirm.py:656
+#: Mailman/Cgi/confirm.py:657
 msgid "Posted message canceled"
 msgstr "Mensax unviáu encaboxáu"
 
-#: Mailman/Cgi/confirm.py:659
+#: Mailman/Cgi/confirm.py:660
 msgid ""
 "            You have successfully canceled the posting of your message with\n"
 "            the Subject: header <em>%(subject)s</em> to the mailing list\n"
@@ -1772,11 +1805,11 @@
 "            col asuntu: <em>%(subject)s</em> a la llista de\n"
 "            corréu %(listname)s."
 
-#: Mailman/Cgi/confirm.py:670
+#: Mailman/Cgi/confirm.py:671
 msgid "Cancel held message posting"
 msgstr "Encaboxar l'unvíu del mensax reteníu"
 
-#: Mailman/Cgi/confirm.py:695
+#: Mailman/Cgi/confirm.py:696
 msgid ""
 "The held message you were referred to has\n"
 "        already been handled by the list administrator."
@@ -1784,7 +1817,7 @@
 "El mensax reteníu al que tas refiriéndote ya foi\n"
 "        tratáu pol alministrador de la llista."
 
-#: Mailman/Cgi/confirm.py:709
+#: Mailman/Cgi/confirm.py:710
 msgid ""
 "Your confirmation is required in order to cancel the\n"
 "    posting of your message to the mailing list <em>%(listname)s</em>:\n"
@@ -1812,11 +1845,11 @@
 "    <p>O calca'l botón <em>Siguir n'espera d'aprobación</em> pa siguir\n"
 "    permitiendo que'l llendador aprebe o refugue'l mensax."
 
-#: Mailman/Cgi/confirm.py:725
+#: Mailman/Cgi/confirm.py:726
 msgid "Cancel posting"
 msgstr "Encaboxar l'unvíu"
 
-#: Mailman/Cgi/confirm.py:737
+#: Mailman/Cgi/confirm.py:738
 msgid ""
 "You have canceled the re-enabling of your membership.  If\n"
 "    we continue to receive bounces from your address, it could be deleted "
@@ -1828,11 +1861,11 @@
 "dende\n"
 "    esta llista de corréu."
 
-#: Mailman/Cgi/confirm.py:767
+#: Mailman/Cgi/confirm.py:768
 msgid "Membership re-enabled."
 msgstr "Soscrición reactivada."
 
-#: Mailman/Cgi/confirm.py:771
+#: Mailman/Cgi/confirm.py:772
 msgid ""
 "            You have successfully re-enabled your membership in the\n"
 "            %(listname)s mailing list.  You can now <a\n"
@@ -1845,11 +1878,11 @@
 "            la páxina coles tos preferencies de soscrición</a>.\n"
 "            "
 
-#: Mailman/Cgi/confirm.py:783
+#: Mailman/Cgi/confirm.py:784
 msgid "Re-enable mailing list membership"
 msgstr "Reactivar la soscrición a la llista de corréu"
 
-#: Mailman/Cgi/confirm.py:800
+#: Mailman/Cgi/confirm.py:801
 msgid ""
 "We're sorry, but you have already been unsubscribed\n"
 "        from this mailing list.  To re-subscribe, please visit the\n"
@@ -1860,11 +1893,11 @@
 "        <a href=\"%(listinfourl)s\">páxina d'información xeneral\n"
 "        de la llista</a>."
 
-#: Mailman/Cgi/confirm.py:815
+#: Mailman/Cgi/confirm.py:816
 msgid "<em>not available</em>"
 msgstr "<em>Non disponible</em>"
 
-#: Mailman/Cgi/confirm.py:819
+#: Mailman/Cgi/confirm.py:820
 msgid ""
 "Your membership in the %(realname)s mailing list is\n"
 "    currently disabled due to excessive bounces.  Your confirmation is\n"
@@ -1904,11 +1937,11 @@
 "    reactivación de la soscrición.\n"
 "    "
 
-#: Mailman/Cgi/confirm.py:839
+#: Mailman/Cgi/confirm.py:840
 msgid "Re-enable membership"
 msgstr "Reactivar soscrición"
 
-#: Mailman/Cgi/confirm.py:840
+#: Mailman/Cgi/confirm.py:841
 msgid "Cancel"
 msgstr "Encaboxar"
 
@@ -2030,7 +2063,7 @@
 msgstr "Criar una llista de corréu de %(hostname)s"
 
 #: Mailman/Cgi/create.py:303 Mailman/Cgi/rmlist.py:201
-#: Mailman/Gui/Bounce.py:187 Mailman/htmlformat.py:343
+#: Mailman/Gui/Bounce.py:187 Mailman/htmlformat.py:345
 msgid "Error: "
 msgstr "Fallu: "
 
@@ -2170,51 +2203,56 @@
 msgid "Welcome email text file"
 msgstr "Ficheru de testu col mensax de corréu electrónicu de bienvenida"
 
-#: Mailman/Cgi/edithtml.py:60
+#: Mailman/Cgi/edithtml.py:49
+#, fuzzy
+msgid "Digest masthead"
+msgstr "Testera del agrupáu"
+
+#: Mailman/Cgi/edithtml.py:61
 msgid "List name is required."
 msgstr "Requierse'l Nome de Llista."
 
-#: Mailman/Cgi/edithtml.py:102
+#: Mailman/Cgi/edithtml.py:103
 msgid "%(realname)s -- Edit html for %(template_info)s"
 msgstr "%(realname)s -- Editar el códigu html pa %(template_info)s"
 
-#: Mailman/Cgi/edithtml.py:108
+#: Mailman/Cgi/edithtml.py:109
 msgid "Edit HTML : Error"
 msgstr "Editar HTML : Fallu"
 
-#: Mailman/Cgi/edithtml.py:109
+#: Mailman/Cgi/edithtml.py:110
 msgid "%(safetemplatename)s: Invalid template"
 msgstr "%(safetemplatename)s: Plantía non válida"
 
-#: Mailman/Cgi/edithtml.py:114 Mailman/Cgi/edithtml.py:115
+#: Mailman/Cgi/edithtml.py:115 Mailman/Cgi/edithtml.py:116
 msgid "%(realname)s -- HTML Page Editing"
 msgstr "%(realname)s -- Edición del códigu HTML de les Páxines"
 
-#: Mailman/Cgi/edithtml.py:116
+#: Mailman/Cgi/edithtml.py:117
 msgid "Select page to edit:"
 msgstr "Seleiciona la páxina a editar:"
 
-#: Mailman/Cgi/edithtml.py:142
+#: Mailman/Cgi/edithtml.py:143
 msgid "View or edit the list configuration information."
 msgstr "Ver o editar la información de configuración de la llista."
 
-#: Mailman/Cgi/edithtml.py:151
+#: Mailman/Cgi/edithtml.py:152
 msgid "When you are done making changes..."
 msgstr "Cuando tengas finao de facer cambeos..."
 
-#: Mailman/Cgi/edithtml.py:152
+#: Mailman/Cgi/edithtml.py:153
 msgid "Submit Changes"
 msgstr "Unviar los cambeos"
 
-#: Mailman/Cgi/edithtml.py:159
+#: Mailman/Cgi/edithtml.py:160
 msgid "Can't have empty html page."
 msgstr "Nun puede tenese una páxina html erma."
 
-#: Mailman/Cgi/edithtml.py:160
+#: Mailman/Cgi/edithtml.py:161
 msgid "HTML Unchanged."
 msgstr "Códigu HTML non camudáu."
 
-#: Mailman/Cgi/edithtml.py:166
+#: Mailman/Cgi/edithtml.py:167
 #, fuzzy
 msgid ""
 "The page you saved contains suspicious HTML that could\n"
@@ -2228,19 +2266,19 @@
 "refugóse. Si entá quies facer esos cambeos, tienes\n"
 "que tener accesu al to sirvidor Mailman.\n"
 
-#: Mailman/Cgi/edithtml.py:171
+#: Mailman/Cgi/edithtml.py:172
 msgid "See "
 msgstr "Mirar "
 
-#: Mailman/Cgi/edithtml.py:174
+#: Mailman/Cgi/edithtml.py:175
 msgid "FAQ 4.48."
 msgstr "FAQ 4.48."
 
-#: Mailman/Cgi/edithtml.py:175
+#: Mailman/Cgi/edithtml.py:176
 msgid "Page Unchanged."
 msgstr "Páxina Non Camudada."
 
-#: Mailman/Cgi/edithtml.py:193
+#: Mailman/Cgi/edithtml.py:194
 msgid "HTML successfully updated."
 msgstr "HTML anováu satisfactoriamente."
 
@@ -2305,7 +2343,7 @@
 msgid "Edit Options"
 msgstr "Editar Opciones"
 
-#: Mailman/Cgi/listinfo.py:201 Mailman/Cgi/options.py:870
+#: Mailman/Cgi/listinfo.py:201 Mailman/Cgi/options.py:876
 #: Mailman/Cgi/roster.py:118
 msgid "View this page in"
 msgstr "Ver esta páxina en "
@@ -2327,7 +2365,7 @@
 msgstr "Direición de corréu electrónicu incorreuta: %(safeuser)s"
 
 #: Mailman/Cgi/options.py:128 Mailman/Cgi/options.py:193
-#: Mailman/Cgi/options.py:215
+#: Mailman/Cgi/options.py:215 Mailman/Cgi/private.py:154
 msgid "No such member: %(safeuser)s."
 msgstr "Nun esiste soscritor: %(safeuser)s."
 
@@ -2360,8 +2398,8 @@
 "L'alministrador de la llista puede nun ver les otres\n"
 "            soscriciones pa esti usuariu."
 
-#: Mailman/Cgi/options.py:286 Mailman/Cgi/options.py:329
-#: Mailman/Cgi/options.py:457 Mailman/Cgi/options.py:673
+#: Mailman/Cgi/options.py:286 Mailman/Cgi/options.py:335
+#: Mailman/Cgi/options.py:463 Mailman/Cgi/options.py:679
 msgid "Note: "
 msgstr "Nota: "
 
@@ -2377,7 +2415,11 @@
 "Calca nel enllaz pa visitar la páxina de les tos opciones\n"
 "        na llista de corréu solicitada."
 
-#: Mailman/Cgi/options.py:326
+#: Mailman/Cgi/options.py:305
+msgid "nomail"
+msgstr ""
+
+#: Mailman/Cgi/options.py:332
 msgid ""
 "The list administrator may not change the names\n"
 "            or addresses for this user's other subscriptions.  However, the\n"
@@ -2388,15 +2430,15 @@
 "la\n"
 "            soscrición pa la llista de corréu camudóse."
 
-#: Mailman/Cgi/options.py:349
+#: Mailman/Cgi/options.py:355
 msgid "Addresses did not match!"
 msgstr "¡Les direiciones nun concasen!"
 
-#: Mailman/Cgi/options.py:354
+#: Mailman/Cgi/options.py:360
 msgid "You are already using that email address"
 msgstr "Yá tas usando esa direición de corréu electrónicu"
 
-#: Mailman/Cgi/options.py:366
+#: Mailman/Cgi/options.py:372
 msgid ""
 "The new address you requested %(newaddr)s is already a member of the\n"
 "%(listname)s mailing list, however you have also requested a global change "
@@ -2409,31 +2451,31 @@
 "global de direición. Una vegada que lo confirmes, tamién se camudará\n"
 "cualisquier otra llista de corréu que caltenga la direición %(safeuser)s."
 
-#: Mailman/Cgi/options.py:375
+#: Mailman/Cgi/options.py:381
 msgid "The new address is already a member: %(newaddr)s"
 msgstr "La direición nueva yá ta dada d'alta: %(newaddr)s"
 
-#: Mailman/Cgi/options.py:381
+#: Mailman/Cgi/options.py:387
 msgid "Addresses may not be blank"
 msgstr "Les direiciones nun pueden tar ermes"
 
-#: Mailman/Cgi/options.py:395
+#: Mailman/Cgi/options.py:401
 msgid "A confirmation message has been sent to %(newaddr)s. "
 msgstr "Unvióse un mensax de confirmación a %(newaddr)s"
 
-#: Mailman/Cgi/options.py:404
+#: Mailman/Cgi/options.py:410
 msgid "Bad email address provided"
 msgstr "Disti una direición de corréu electrónicu nun válida"
 
-#: Mailman/Cgi/options.py:406
+#: Mailman/Cgi/options.py:412
 msgid "Illegal email address provided"
 msgstr "Dióse una direición de corréu electrónicu illegal"
 
-#: Mailman/Cgi/options.py:408
+#: Mailman/Cgi/options.py:414
 msgid "%(newaddr)s is already a member of the list."
 msgstr "%(newaddr)s yá ta soscritu a la llista."
 
-#: Mailman/Cgi/options.py:411
+#: Mailman/Cgi/options.py:417
 msgid ""
 "%(newaddr)s is banned from this list.  If you\n"
 "                      think this restriction is erroneous, please contact\n"
@@ -2443,11 +2485,11 @@
 "                      qu'esta restrición ta mal, por favor, contauta\n"
 "                      colos propietarios de la llista en %(owneraddr)s."
 
-#: Mailman/Cgi/options.py:422
+#: Mailman/Cgi/options.py:428
 msgid "Member name successfully changed. "
 msgstr "Nome de soscritor camudaos dafechu."
 
-#: Mailman/Cgi/options.py:432
+#: Mailman/Cgi/options.py:438
 msgid ""
 "The list administrator may not change the\n"
 "                    password for a user."
@@ -2455,15 +2497,15 @@
 "L'alministrador de la llista puede non camudar\n"
 "            la contraseña pal usuariu."
 
-#: Mailman/Cgi/options.py:441
+#: Mailman/Cgi/options.py:447
 msgid "Passwords may not be blank"
 msgstr "Les contraseñes nun pueden tar ermes"
 
-#: Mailman/Cgi/options.py:446
+#: Mailman/Cgi/options.py:452
 msgid "Passwords did not match!"
 msgstr "¡Les contraseñes nun concasen!"
 
-#: Mailman/Cgi/options.py:454
+#: Mailman/Cgi/options.py:460
 msgid ""
 "The list administrator may not change the\n"
 "            password for this user's other subscriptions.  However, the\n"
@@ -2473,12 +2515,12 @@
 "            contraseña pa esti usuariu n'otres soscriciones. Sicasí,\n"
 "            camudóse la contraseña nesta llista de corréu."
 
-#: Mailman/Cgi/options.py:471 Mailman/Commands/cmd_password.py:83
+#: Mailman/Cgi/options.py:477 Mailman/Commands/cmd_password.py:83
 #: Mailman/Commands/cmd_password.py:109
 msgid "Password successfully changed."
 msgstr "Camudóse la contraseña dafechu."
 
-#: Mailman/Cgi/options.py:480
+#: Mailman/Cgi/options.py:486
 msgid ""
 "You must confirm your unsubscription request by turning\n"
 "                on the checkbox below the <em>Unsubscribe</em> button.  You\n"
@@ -2488,11 +2530,11 @@
 "                verificación que ta embaxu de <em>Desoscribir</em>. ¡Nun se\n"
 "                t'esborró de la soscrición!"
 
-#: Mailman/Cgi/options.py:512
+#: Mailman/Cgi/options.py:518
 msgid "Unsubscription results"
 msgstr "Resultaos de la desoscrición"
 
-#: Mailman/Cgi/options.py:516
+#: Mailman/Cgi/options.py:522
 msgid ""
 "Your unsubscription request has been received and\n"
 "            forwarded on to the list moderators for approval.  You will\n"
@@ -2503,7 +2545,7 @@
 "            de llendadores pa la so aprobación. Notificarásete\n"
 "            cuando'l llendador tenga tomao la so decisión."
 
-#: Mailman/Cgi/options.py:521
+#: Mailman/Cgi/options.py:527
 msgid ""
 "You have been successfully unsubscribed from the\n"
 "            mailing list %(fqdn_listname)s.  If you were receiving digest\n"
@@ -2520,7 +2562,7 @@
 "        baxa, por favor contauta colos propietarios de la llista en\n"
 "        %(owneraddr)s."
 
-#: Mailman/Cgi/options.py:670
+#: Mailman/Cgi/options.py:676
 msgid ""
 "The list administrator may not change the\n"
 "                options for this user's other subscriptions.  However the\n"
@@ -2532,7 +2574,7 @@
 "            casu, camudarónse les opciones pa la soscrición d'esta\n"
 "            llista."
 
-#: Mailman/Cgi/options.py:680
+#: Mailman/Cgi/options.py:686
 msgid ""
 "The list administrator has disabled digest delivery for\n"
 "            this list, so your delivery option has not been set.  However "
@@ -2544,7 +2586,7 @@
 "En tou\n"
 "            casu, les otres tos opciones afitáronse dafechu."
 
-#: Mailman/Cgi/options.py:684
+#: Mailman/Cgi/options.py:690
 msgid ""
 "The list administrator has disabled non-digest delivery\n"
 "            for this list, so your delivery option has not been set.  "
@@ -2556,63 +2598,63 @@
 "En tou\n"
 "            casu, les tos otres opciones afitáronse dafechu."
 
-#: Mailman/Cgi/options.py:688
+#: Mailman/Cgi/options.py:694
 msgid "You have successfully set your options."
 msgstr "Afitasti les tos opciones con ésitu."
 
-#: Mailman/Cgi/options.py:691
+#: Mailman/Cgi/options.py:697
 msgid "You may get one last digest."
 msgstr "Puede que tengas un caberu corréu agrupáu."
 
-#: Mailman/Cgi/options.py:763
+#: Mailman/Cgi/options.py:769
 msgid "<em>Yes, I really want to unsubscribe</em>"
 msgstr "<em>Sí, daveres quiero dame de baxa</em>"
 
-#: Mailman/Cgi/options.py:767
+#: Mailman/Cgi/options.py:773
 msgid "Change My Password"
 msgstr "Camudar la mio contraseña"
 
-#: Mailman/Cgi/options.py:770
+#: Mailman/Cgi/options.py:776
 msgid "List my other subscriptions"
 msgstr "Llistar les mios otres soscriciones"
 
-#: Mailman/Cgi/options.py:776
+#: Mailman/Cgi/options.py:782
 msgid "Email My Password To Me"
 msgstr "Unviame la mio contraseña per corréu-e"
 
-#: Mailman/Cgi/options.py:778
+#: Mailman/Cgi/options.py:784
 msgid "password"
 msgstr "contraseña"
 
-#: Mailman/Cgi/options.py:780
+#: Mailman/Cgi/options.py:786
 msgid "Log out"
 msgstr "Colar"
 
-#: Mailman/Cgi/options.py:782
+#: Mailman/Cgi/options.py:788
 msgid "Submit My Changes"
 msgstr "Confirmar los mios cambeos"
 
-#: Mailman/Cgi/options.py:794
+#: Mailman/Cgi/options.py:800
 msgid "days"
 msgstr "díes"
 
-#: Mailman/Cgi/options.py:796
+#: Mailman/Cgi/options.py:802
 msgid "day"
 msgstr "día"
 
-#: Mailman/Cgi/options.py:797
+#: Mailman/Cgi/options.py:803
 msgid "%(days)d %(units)s"
 msgstr "%(days)d %(units)s"
 
-#: Mailman/Cgi/options.py:803
+#: Mailman/Cgi/options.py:809
 msgid "Change My Address and Name"
 msgstr "Camudar la mio Direición y Nome"
 
-#: Mailman/Cgi/options.py:829
+#: Mailman/Cgi/options.py:835
 msgid "<em>No topics defined</em>"
 msgstr "<em>Temes non definíos</em>"
 
-#: Mailman/Cgi/options.py:837
+#: Mailman/Cgi/options.py:843
 msgid ""
 "\n"
 "You are subscribed to this list with the case-preserved address\n"
@@ -2622,19 +2664,19 @@
 "Tas soscritu a la llista cola direición respetando mayúscules y minúscules\n"
 "<em>%(cpuser)s</em>."
 
-#: Mailman/Cgi/options.py:851
+#: Mailman/Cgi/options.py:857
 msgid "%(realname)s list: member options login page"
 msgstr "Llista %(realname)s: páxina d'entrada d'opciones soscritor"
 
-#: Mailman/Cgi/options.py:852
+#: Mailman/Cgi/options.py:858
 msgid "email address and "
 msgstr "direición de corréu electrónicu y "
 
-#: Mailman/Cgi/options.py:855
+#: Mailman/Cgi/options.py:861
 msgid "%(realname)s list: member options for user %(safeuser)s"
 msgstr "Llista %(realname)s: opciones de soscrición de %(safeuser)s"
 
-#: Mailman/Cgi/options.py:881
+#: Mailman/Cgi/options.py:887
 msgid ""
 "In order to change your membership option, you must\n"
 "    first log in by giving your %(extra)smembership password in the section\n"
@@ -2669,19 +2711,19 @@
 "    "
 
 # In this entry insert a space at the end of string, it will be stripped.
-#: Mailman/Cgi/options.py:895
+#: Mailman/Cgi/options.py:901
 msgid "Email address:"
 msgstr "Corréu electrónicu: "
 
-#: Mailman/Cgi/options.py:899
+#: Mailman/Cgi/options.py:905
 msgid "Password:"
 msgstr "Contraseña:"
 
-#: Mailman/Cgi/options.py:901
+#: Mailman/Cgi/options.py:907
 msgid "Log in"
 msgstr "Entrar"
 
-#: Mailman/Cgi/options.py:909
+#: Mailman/Cgi/options.py:915
 msgid ""
 "By clicking on the <em>Unsubscribe</em> button, a\n"
 "    confirmation message will be emailed to you.  This message will have a\n"
@@ -2695,11 +2737,11 @@
 "    tamién confirmar per corréu electrónicu; mira les intrucciones nel\n"
 "    mensax de confirmación)."
 
-#: Mailman/Cgi/options.py:917
+#: Mailman/Cgi/options.py:923
 msgid "Password reminder"
 msgstr "Remembrar contraseña"
 
-#: Mailman/Cgi/options.py:921
+#: Mailman/Cgi/options.py:927
 msgid ""
 "By clicking on the <em>Remind</em> button, your\n"
 "    password will be emailed to you."
@@ -2707,27 +2749,27 @@
 "Al calcar en <em>Remembrar</em>, la to\n"
 "    contraseña unviarásete per email al to corréu."
 
-#: Mailman/Cgi/options.py:924
+#: Mailman/Cgi/options.py:930
 msgid "Remind"
 msgstr "Remembrar"
 
-#: Mailman/Cgi/options.py:1024
+#: Mailman/Cgi/options.py:1030 Mailman/ListAdmin.py:225
 msgid "<missing>"
 msgstr "<perdíu>"
 
-#: Mailman/Cgi/options.py:1035
+#: Mailman/Cgi/options.py:1041
 msgid "Requested topic is not valid: %(topicname)s"
 msgstr "El tema solicitáu nun ye válidu: %(topicname)s"
 
-#: Mailman/Cgi/options.py:1040
+#: Mailman/Cgi/options.py:1046
 msgid "Topic filter details"
 msgstr "Detalles de la peñera de temes"
 
-#: Mailman/Cgi/options.py:1043
+#: Mailman/Cgi/options.py:1049
 msgid "Name:"
 msgstr "Nome:"
 
-#: Mailman/Cgi/options.py:1045
+#: Mailman/Cgi/options.py:1051
 msgid "Pattern (as regexp):"
 msgstr "Patrón (como una espresión regular):"
 
@@ -2747,7 +2789,19 @@
 msgid "Private Archive Error - %(msg)s"
 msgstr "Fallu nel archivu Priváu - %(msg)s"
 
-#: Mailman/Cgi/private.py:185
+#: Mailman/Cgi/private.py:141
+#, fuzzy
+msgid ""
+"If you are a list member,\n"
+"                          your password has been emailed to you."
+msgstr "Unvióse un recordatoriu de la to contraseña al to corréu-e."
+
+#: Mailman/Cgi/private.py:145
+#, fuzzy
+msgid "Please enter your email address"
+msgstr "La to direición de corréu electrónicu:"
+
+#: Mailman/Cgi/private.py:206
 msgid "Private archive file not found"
 msgstr "Archivu priváu nun alcontráu"
 
@@ -3064,7 +3118,8 @@
 msgid "Bad approval password given.  Held message is still being held."
 msgstr "La contraseña d'aprobación ta mal. El mensax sigui reteníu."
 
-#: Mailman/Commands/cmd_confirm.py:87
+#: Mailman/Commands/cmd_confirm.py:89 Mailman/Commands/cmd_confirm.py:92
+#: Mailman/Commands/cmd_confirm.py:95
 msgid "Confirmation succeeded"
 msgstr "Confirmación fecha"
 
@@ -3754,151 +3809,155 @@
 msgid "Digest members:"
 msgstr "Soscritores con entrega agrupada:"
 
-#: Mailman/Defaults.py:1410
+#: Mailman/Defaults.py:1482
 msgid "Arabic"
 msgstr "Árabe"
 
-#: Mailman/Defaults.py:1411
+#: Mailman/Defaults.py:1483
 msgid "Asturian"
 msgstr "Asturianu"
 
-#: Mailman/Defaults.py:1412
+#: Mailman/Defaults.py:1484
 msgid "Catalan"
 msgstr "Catalán"
 
-#: Mailman/Defaults.py:1413
+#: Mailman/Defaults.py:1485
 msgid "Czech"
 msgstr "Checoslovacu"
 
-#: Mailman/Defaults.py:1414
+#: Mailman/Defaults.py:1486
 msgid "Danish"
 msgstr "Danés"
 
-#: Mailman/Defaults.py:1415
+#: Mailman/Defaults.py:1487
 msgid "German"
 msgstr "Alemán"
 
-#: Mailman/Defaults.py:1416
+#: Mailman/Defaults.py:1488
 msgid "English (USA)"
 msgstr "Inglés (EEUU)"
 
-#: Mailman/Defaults.py:1417
+#: Mailman/Defaults.py:1489
 msgid "Spanish (Spain)"
 msgstr "Español (España)"
 
-#: Mailman/Defaults.py:1418
+#: Mailman/Defaults.py:1490
 msgid "Estonian"
 msgstr "Estoniu"
 
-#: Mailman/Defaults.py:1419
+#: Mailman/Defaults.py:1491
 msgid "Euskara"
 msgstr "Euskera"
 
-#: Mailman/Defaults.py:1420
+#: Mailman/Defaults.py:1492
 msgid "Finnish"
 msgstr "Finés"
 
-#: Mailman/Defaults.py:1421
+#: Mailman/Defaults.py:1493
 msgid "French"
 msgstr "Francés"
 
-#: Mailman/Defaults.py:1422
+#: Mailman/Defaults.py:1494
 msgid "Galician"
 msgstr "Gallegu"
 
-#: Mailman/Defaults.py:1423
+#: Mailman/Defaults.py:1495
+msgid "Greek"
+msgstr ""
+
+#: Mailman/Defaults.py:1496
 msgid "Hebrew"
 msgstr "Hebréu"
 
-#: Mailman/Defaults.py:1424
+#: Mailman/Defaults.py:1497
 msgid "Croatian"
 msgstr "Croata"
 
-#: Mailman/Defaults.py:1425
+#: Mailman/Defaults.py:1498
 msgid "Hungarian"
 msgstr "Húngaru"
 
-#: Mailman/Defaults.py:1426
+#: Mailman/Defaults.py:1499
 msgid "Interlingua"
 msgstr "Interllingua"
 
-#: Mailman/Defaults.py:1427
+#: Mailman/Defaults.py:1500
 msgid "Italian"
 msgstr "Italianu"
 
-#: Mailman/Defaults.py:1428
+#: Mailman/Defaults.py:1501
 msgid "Japanese"
 msgstr "Xaponés"
 
-#: Mailman/Defaults.py:1429
+#: Mailman/Defaults.py:1502
 msgid "Korean"
 msgstr "Koreanu"
 
-#: Mailman/Defaults.py:1430
+#: Mailman/Defaults.py:1503
 msgid "Lithuanian"
 msgstr "Lituanu"
 
-#: Mailman/Defaults.py:1431
+#: Mailman/Defaults.py:1504
 msgid "Dutch"
 msgstr "Danés"
 
-#: Mailman/Defaults.py:1432
+#: Mailman/Defaults.py:1505
 msgid "Norwegian"
 msgstr "Noruegu"
 
-#: Mailman/Defaults.py:1433
+#: Mailman/Defaults.py:1506
 msgid "Polish"
 msgstr "Polacu"
 
-#: Mailman/Defaults.py:1434
+#: Mailman/Defaults.py:1507
 msgid "Portuguese"
 msgstr "Portugués"
 
-#: Mailman/Defaults.py:1435
+#: Mailman/Defaults.py:1508
 msgid "Portuguese (Brazil)"
 msgstr "Portugués (Brasil)"
 
-#: Mailman/Defaults.py:1436
+#: Mailman/Defaults.py:1509
 msgid "Romanian"
 msgstr "Rumanu"
 
-#: Mailman/Defaults.py:1437
+#: Mailman/Defaults.py:1510
 msgid "Russian"
 msgstr "Rusu"
 
-#: Mailman/Defaults.py:1438
+#: Mailman/Defaults.py:1511
 msgid "Slovak"
 msgstr "Eslovacu"
 
-#: Mailman/Defaults.py:1439
+#: Mailman/Defaults.py:1512
 msgid "Slovenian"
 msgstr "Eslovenu"
 
-#: Mailman/Defaults.py:1440
+#: Mailman/Defaults.py:1513
 msgid "Serbian"
 msgstr "Serbiu"
 
-#: Mailman/Defaults.py:1441
+#: Mailman/Defaults.py:1514
 msgid "Swedish"
 msgstr "Suecu"
 
-#: Mailman/Defaults.py:1442
+#: Mailman/Defaults.py:1515
 msgid "Turkish"
 msgstr "Turcu"
 
-#: Mailman/Defaults.py:1443
+#: Mailman/Defaults.py:1516
 msgid "Ukrainian"
 msgstr "Ucranianu"
 
-#: Mailman/Defaults.py:1444
+#: Mailman/Defaults.py:1517
 msgid "Vietnamese"
 msgstr "Vitnamita"
 
-#: Mailman/Defaults.py:1445
+#: Mailman/Defaults.py:1518
 msgid "Chinese (China)"
 msgstr "Chinu (China)"
 
-#: Mailman/Defaults.py:1446
+#: Mailman/Defaults.py:1519
 msgid "Chinese (Taiwan)"
 msgstr "Chinu (Taiwan)"
 
@@ -4346,7 +4405,7 @@
 "El númberu de díes ente avisos <em>la to soscrición desactivóse</em>.\n"
 "             Esti valor tien que ser un valor enteru."
 
-#: Mailman/Gui/Bounce.py:117 Mailman/Gui/General.py:265
+#: Mailman/Gui/Bounce.py:117 Mailman/Gui/General.py:266
 msgid "Notifications"
 msgstr "Notificaciones"
 
@@ -4901,27 +4960,27 @@
 "                    Usaráse'l valor correxíu. Por favor,\n"
 "                    compreba que ye lo que pretendíes."
 
-#: Mailman/Gui/General.py:36
+#: Mailman/Gui/General.py:37
 msgid "General Options"
 msgstr "Opciones Xenerales"
 
-#: Mailman/Gui/General.py:50
+#: Mailman/Gui/General.py:51
 msgid "Conceal the member's address"
 msgstr "Anubrir la direición del soscritor"
 
-#: Mailman/Gui/General.py:51
+#: Mailman/Gui/General.py:52
 msgid "Acknowledge the member's posting"
 msgstr "Confirmar los unvíos a la llista del soscritor"
 
-#: Mailman/Gui/General.py:52
+#: Mailman/Gui/General.py:53
 msgid "Do not send a copy of a member's own post"
 msgstr "Nun unviar copia de los miembros unviaos na llista"
 
-#: Mailman/Gui/General.py:54
+#: Mailman/Gui/General.py:55
 msgid "Filter out duplicate messages to list members (if possible)"
 msgstr "Peñerar mensaxes duplicaos a los soscritores (si ye posible)"
 
-#: Mailman/Gui/General.py:61
+#: Mailman/Gui/General.py:62
 msgid ""
 "Fundamental list characteristics, including descriptive\n"
 "            info and basic behaviors."
@@ -4929,15 +4988,15 @@
 "Característiques fundamentales de la llista, incluyendo\n"
 "            información descriptiva y básica."
 
-#: Mailman/Gui/General.py:64
+#: Mailman/Gui/General.py:65
 msgid "General list personality"
 msgstr "Personalidá xeneral de la llista"
 
-#: Mailman/Gui/General.py:67
+#: Mailman/Gui/General.py:68
 msgid "The public name of this list (make case-changes only)."
 msgstr "El nome públicu d'esta llista (sólo cambeos convincentes)"
 
-#: Mailman/Gui/General.py:68
+#: Mailman/Gui/General.py:69
 msgid ""
 "The capitalization of this name can be changed to make it\n"
 "             presentable in polite company as a proper noun, or to make an\n"
@@ -4960,7 +5019,7 @@
 "             distinguen mayúscules de minúscules, pero sí se\n"
 "             distinguen pa cualisquier otru propósitu :-)"
 
-#: Mailman/Gui/General.py:77
+#: Mailman/Gui/General.py:78
 msgid ""
 "The list administrator email addresses.  Multiple\n"
 "             administrator addresses, each on separate line is okay."
@@ -4968,7 +5027,7 @@
 "Les direiciones de los alministradores de la\n"
 "             llista. Son válides varies direiciones, cada una nuna llinia."
 
-#: Mailman/Gui/General.py:80
+#: Mailman/Gui/General.py:81
 msgid ""
 "There are two ownership roles associated with each mailing\n"
 "             list.  The <em>list administrators</em> are the people who "
@@ -5023,7 +5082,7 @@
 "             Observa que los campos que se camuden equí son específicos\n"
 "             de los alministradores de la llista."
 
-#: Mailman/Gui/General.py:101
+#: Mailman/Gui/General.py:102
 msgid ""
 "The list moderator email addresses.  Multiple\n"
 "             moderator addresses, each on separate line is okay."
@@ -5032,7 +5091,7 @@
 "             Son válides delles direiciones de llendador, separtaes\n"
 "             cada una nuna llinia distinta."
 
-#: Mailman/Gui/General.py:104
+#: Mailman/Gui/General.py:105
 msgid ""
 "There are two ownership roles associated with each mailing\n"
 "             list.  The <em>list administrators</em> are the people who "
@@ -5086,11 +5145,11 @@
 "             campos que camuden son especificos de los alministradores de la "
 "llista."
 
-#: Mailman/Gui/General.py:125
+#: Mailman/Gui/General.py:126
 msgid "A terse phrase identifying this list."
 msgstr "Una frase breve qu'identifique a esta llista"
 
-#: Mailman/Gui/General.py:127
+#: Mailman/Gui/General.py:128
 msgid ""
 "This description is used when the mailing list is listed with\n"
 "                other mailing lists, or in headers, and so forth.  It "
@@ -5104,7 +5163,7 @@
 "                Tendría de ser tolo concisa que puedas, de mou que pueda\n"
 "                identificar pa qué ye la llista."
 
-#: Mailman/Gui/General.py:133
+#: Mailman/Gui/General.py:134
 msgid ""
 "An introductory description - a few paragraphs - about the\n"
 "             list.  It will be included, as html, at the top of the "
@@ -5118,7 +5177,7 @@
 "             de carru finarán un párrafu - mira los detalles\n"
 "             pa más información."
 
-#: Mailman/Gui/General.py:137
+#: Mailman/Gui/General.py:138
 msgid ""
 "The text will be treated as html <em>except</em> that\n"
 "             newlines will be translated to <br> - so you can use "
@@ -5138,11 +5197,11 @@
 "             fallos nel códigu html pueden evitar que la páxina\n"
 "             d'información de la llista se visualize correutamente."
 
-#: Mailman/Gui/General.py:145
+#: Mailman/Gui/General.py:146
 msgid "Prefix for subject line of list postings."
 msgstr "Prefixu pa la llinia del tema de los unvíos a la llista"
 
-#: Mailman/Gui/General.py:146
+#: Mailman/Gui/General.py:147
 msgid ""
 "This text will be prepended to subject lines of messages\n"
 "             posted to the list, to distinguish mailing list messages in\n"
@@ -5169,7 +5228,7 @@
 "                           (miollista %%05d) -> (miollista 00123)\n"
 "             "
 
-#: Mailman/Gui/General.py:157
+#: Mailman/Gui/General.py:158
 msgid ""
 "Hide the sender of a message, replacing it with the list\n"
 "             address (Removes From, Sender and Reply-To fields)"
@@ -5178,11 +5237,11 @@
 "             direición de la llista (esto desanicia los campos Dende, "
 "Remitente y Responder A)"
 
-#: Mailman/Gui/General.py:160
+#: Mailman/Gui/General.py:161
 msgid "<tt>Reply-To:</tt> header munging"
 msgstr "Cabecera esplícita <tt>Responder A:</tt>"
 
-#: Mailman/Gui/General.py:163
+#: Mailman/Gui/General.py:164
 msgid ""
 "Should any existing <tt>Reply-To:</tt> header found in the\n"
 "             original message be stripped?  If so, this will be done\n"
@@ -5195,19 +5254,19 @@
 "             cuenta si Mailman amiesta un cabecera <tt>Responder A:</tt>\n"
 "             o non."
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "Explicit address"
 msgstr "Direición esplícita"
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "Poster"
 msgstr "Remitente"
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "This list"
 msgstr "Esta llista"
 
-#: Mailman/Gui/General.py:170
+#: Mailman/Gui/General.py:171
 msgid ""
 "Where are replies to list messages directed?\n"
 "             <tt>Poster</tt> is <em>strongly</em> recommended for most "
@@ -5219,7 +5278,7 @@
 "mayoría\n"
 "             de les llistes."
 
-#: Mailman/Gui/General.py:175
+#: Mailman/Gui/General.py:176
 msgid ""
 "This option controls what Mailman does to the\n"
 "             <tt>Reply-To:</tt> header in messages flowing through this\n"
@@ -5308,11 +5367,11 @@
 "             <tt>Direición esplícita</tt> ya indique la direición\n"
 "             <tt>Responder A:</tt> embaxo p'apuntar a la llista paralela."
 
-#: Mailman/Gui/General.py:207
+#: Mailman/Gui/General.py:208
 msgid "Explicit <tt>Reply-To:</tt> header."
 msgstr "Cabecera esplícita <tt>Responder A:</tt>"
 
-#: Mailman/Gui/General.py:209
+#: Mailman/Gui/General.py:210
 msgid ""
 "This is the address set in the <tt>Reply-To:</tt> header\n"
 "             when the <a\n"
@@ -5387,11 +5446,11 @@
 "             <p>Observa que si'l mensax orixinal caltién yá una\n"
 "             cabecera <tt>Responder A:</tt>, esa cabecera nun se camudará."
 
-#: Mailman/Gui/General.py:238
+#: Mailman/Gui/General.py:239
 msgid "Umbrella list settings"
 msgstr "Configuración de llista en cascada"
 
-#: Mailman/Gui/General.py:241
+#: Mailman/Gui/General.py:242
 msgid ""
 "Send password reminders to, eg, \"-owner\" address instead of\n"
 "             directly to user."
@@ -5399,7 +5458,7 @@
 "Unviar el recordatoriu de les contraseñes a la direición \"-owner\"\n"
 "             en llugar d'unvialu al usuariu direutamente."
 
-#: Mailman/Gui/General.py:244
+#: Mailman/Gui/General.py:245
 msgid ""
 "Set this to yes when this list is intended to cascade only\n"
 "             to other mailing lists.  When set, meta notices like\n"
@@ -5417,7 +5476,7 @@
 "             tendrá'l valor de \"umbrella_member_suffix\"\n"
 "             amestáu al nome d'usuariu."
 
-#: Mailman/Gui/General.py:252
+#: Mailman/Gui/General.py:253
 msgid ""
 "Suffix for use when this list is an umbrella for other\n"
 "             lists, according to setting of previous \"umbrella_list\"\n"
@@ -5427,7 +5486,7 @@
 "             d'alcuerdu cola configuración puesta na\n"
 "             opción anterior \"umbrella_list\""
 
-#: Mailman/Gui/General.py:256
+#: Mailman/Gui/General.py:257
 msgid ""
 "When \"umbrella_list\" is set to indicate that this list has\n"
 "             other mailing lists as members, then administrative notices "
@@ -5452,11 +5511,11 @@
 "             eses notificaciones. '-owner' ye la eleición típica.\n"
 "             Esta opción nun tien efeutu si \"umbrella_list\" ye \"Non\"."
 
-#: Mailman/Gui/General.py:268
+#: Mailman/Gui/General.py:269
 msgid "Send monthly password reminders?"
 msgstr "¿Unviar mensualmente los recordatorios de les contraseñes?"
 
-#: Mailman/Gui/General.py:270
+#: Mailman/Gui/General.py:271
 msgid ""
 "Turn this on if you want password reminders to be sent once\n"
 "             per month to your members.  Note that members may disable "
@@ -5468,7 +5527,7 @@
 "             tos soscritores podríen desactivar el recordatoriu de les\n"
 "             contraseñes a nivel individual."
 
-#: Mailman/Gui/General.py:275
+#: Mailman/Gui/General.py:276
 msgid ""
 "List-specific text prepended to new-subscriber welcome\n"
 "             message"
@@ -5477,7 +5536,7 @@
 "             del mensax de bienvenida unviáu a\n"
 "             los nuevos soscritores"
 
-#: Mailman/Gui/General.py:278
+#: Mailman/Gui/General.py:279
 msgid ""
 "This value, if any, will be added to the front of the\n"
 "             new-subscriber welcome message.  The rest of the welcome "
@@ -5520,11 +5579,11 @@
 "                 <li>Una llinia erma dixebra párrafos.\n"
 "             </ul>"
 
-#: Mailman/Gui/General.py:295
+#: Mailman/Gui/General.py:296
 msgid "Send welcome message to newly subscribed members?"
 msgstr "¿Unviar el mensax de bienvenida cuando se soscriba la xente?"
 
-#: Mailman/Gui/General.py:296
+#: Mailman/Gui/General.py:297
 msgid ""
 "Turn this off only if you plan on subscribing people manually\n"
 "             and don't want them to know that you did so.  This option is "
@@ -5538,7 +5597,7 @@
 "             útil pa migrar de forma tresparente llistes d'otros\n"
 "             xestores de llistes de corréu a Mailman."
 
-#: Mailman/Gui/General.py:302
+#: Mailman/Gui/General.py:303
 msgid ""
 "Text sent to people leaving the list.  If empty, no special\n"
 "             text will be added to the unsubscribe message."
@@ -5547,11 +5606,11 @@
 "             ermu, nun s'amestará nengún testu\n"
 "             n'especial al mensax de baxa de la soscrición."
 
-#: Mailman/Gui/General.py:306
+#: Mailman/Gui/General.py:307
 msgid "Send goodbye message to members when they are unsubscribed?"
 msgstr "¿Unviar mensax de despedida cuando heba baxes na soscrición?"
 
-#: Mailman/Gui/General.py:309
+#: Mailman/Gui/General.py:310
 msgid ""
 "Should the list moderators get immediate notice of new\n"
 "             requests, as well as daily notices about collected ones?"
@@ -5560,7 +5619,7 @@
 "             llista de llendadores? ¿Asina como unvia-yos un\n"
 "             recordatoriu diariu coles pendientes?"
 
-#: Mailman/Gui/General.py:312
+#: Mailman/Gui/General.py:313
 msgid ""
 "List moderators (and list administrators) are sent daily\n"
 "             reminders of requests pending approval, like subscriptions to "
@@ -5578,7 +5637,7 @@
 "             opción fai que les notificaciones s'unvíen\n"
 "             nel intre cuando aporten nueves peticiones."
 
-#: Mailman/Gui/General.py:319
+#: Mailman/Gui/General.py:320
 msgid ""
 "Should administrator get notices of subscribes and\n"
 "             unsubscribes?"
@@ -5586,19 +5645,19 @@
 "Deberíen aportar al alministrador los avisos de\n"
 "             soscrición y desoscrición?"
 
-#: Mailman/Gui/General.py:324
+#: Mailman/Gui/General.py:325
 msgid "Send mail to poster when their posting is held for approval?"
 msgstr "¿Unviar un mensax al remitente cuando se retién n'espera d'aprobación?"
 
-#: Mailman/Gui/General.py:327
+#: Mailman/Gui/General.py:328
 msgid "Additional settings"
 msgstr "Configuraciones adicionales"
 
-#: Mailman/Gui/General.py:330
+#: Mailman/Gui/General.py:331
 msgid "Emergency moderation of all list traffic."
 msgstr "Moderación d'emerxencia de tol tráficu de la llista:"
 
-#: Mailman/Gui/General.py:331
+#: Mailman/Gui/General.py:332
 msgid ""
 "When this option is enabled, all list traffic is emergency\n"
 "             moderated, i.e. held for moderation.  Turn this option on when\n"
@@ -5610,7 +5669,7 @@
 "        por ex. reteníos pa llendar. Activa esta opción cuando s'use\n"
 "        la llista pa ofenses personales y quieras dar un periodu calmu."
 
-#: Mailman/Gui/General.py:343
+#: Mailman/Gui/General.py:344
 msgid ""
 "Default options for new members joining this list.<input\n"
 "             type=\"hidden\" name=\"new_member_options\" value=\"ignore\">"
@@ -5618,7 +5677,7 @@
 "Opciones por defeutu pa los nuevos soscritores de la llista.<input\n"
 "             type=\"hidden\" name=\"new_member_options\" value=\"ignore\">"
 
-#: Mailman/Gui/General.py:346
+#: Mailman/Gui/General.py:347
 msgid ""
 "When a new member is subscribed to this list, their initial\n"
 "             set of options is taken from this variable's setting."
@@ -5627,7 +5686,7 @@
 "             d'aniciu de les sos opciones tomaránse del conteníu d'esta "
 "variable."
 
-#: Mailman/Gui/General.py:350
+#: Mailman/Gui/General.py:351
 msgid ""
 "(Administrivia filter) Check postings and intercept ones\n"
 "             that seem to be administrative requests?"
@@ -5635,7 +5694,7 @@
 "(Peñera alministrativa) ¿Comprebar los unvíos ya\n"
 "             interceutar los que parezan ser peticiones alministratives?"
 
-#: Mailman/Gui/General.py:353
+#: Mailman/Gui/General.py:354
 msgid ""
 "Administrivia tests will check postings to see whether it's\n"
 "             really meant as an administrative request (like subscribe,\n"
@@ -5651,7 +5710,7 @@
 "alministrador,\n"
 "             de la nueva petición."
 
-#: Mailman/Gui/General.py:360
+#: Mailman/Gui/General.py:361
 msgid ""
 "Maximum length in kilobytes (KB) of a message body.  Use 0\n"
 "             for no limit."
@@ -5659,7 +5718,7 @@
 "Llonxitú másima del cuerpu del mensax (KB).\n"
 "             Ponlu a 0 pa nun afitar llímites."
 
-#: Mailman/Gui/General.py:364
+#: Mailman/Gui/General.py:365
 msgid ""
 "Maximum number of members to show on one page of the\n"
 "             Membership List."
@@ -5667,11 +5726,11 @@
 "Másimu númberu de soscritores pa ver por páxina na llista\n"
 "             de soscritores."
 
-#: Mailman/Gui/General.py:368
+#: Mailman/Gui/General.py:369
 msgid "Host name this list prefers for email."
 msgstr "Nome de la máquina que prefier la llista."
 
-#: Mailman/Gui/General.py:370
+#: Mailman/Gui/General.py:371
 msgid ""
 "The \"host_name\" is the preferred name for email to\n"
 "             mailman-related addresses on this host, and generally should "
@@ -5689,7 +5748,7 @@
 "             puede ser útil pa seleicionar ente distintos nomes\n"
 "             alternativos d'una máquina que tien varies direiciones."
 
-#: Mailman/Gui/General.py:382
+#: Mailman/Gui/General.py:383
 msgid ""
 "Should messages from this mailing list include the\n"
 "                 <a href=\"http://www.faqs.org/rfcs/rfc2369.html\">RFC 2369</"
@@ -5702,7 +5761,7 @@
 "a>\n"
 "                 (ex: <tt>List-*</tt>)? Encamiéntase <em>Sí</em>."
 
-#: Mailman/Gui/General.py:387
+#: Mailman/Gui/General.py:388
 msgid ""
 "RFC 2369 defines a set of List-* headers that are\n"
 "                 normally added to every message sent to the list "
@@ -5742,13 +5801,13 @@
 "                 d'estes cabeceres pero nun s'encamienta (de fechu, la to\n"
 "                 capacidá pa non incluyiles podría desactivase)."
 
-#: Mailman/Gui/General.py:405
+#: Mailman/Gui/General.py:406
 msgid "Should postings include the <tt>List-Post:</tt> header?"
 msgstr ""
 "¿Debería incluyise la cabecera <tt>List-Post:</tt> nos mensaxes unviaos a la "
 "llista?"
 
-#: Mailman/Gui/General.py:406
+#: Mailman/Gui/General.py:407
 msgid ""
 "The <tt>List-Post:</tt> header is one of the headers\n"
 "             recommended by\n"
@@ -5780,7 +5839,7 @@
 "             nun afeuta otres cabeceres <tt>List-*:</tt> que puedan "
 "incluyise)."
 
-#: Mailman/Gui/General.py:422
+#: Mailman/Gui/General.py:423
 #, fuzzy
 msgid ""
 "Should the <tt>Sender</tt> header be rewritten for this\n"
@@ -5791,7 +5850,7 @@
 "             que'l sistema de procesamientu de rebotes nun pudo deteutar?\n"
 "             La opción encamentada ye <em>Sí</em>."
 
-#: Mailman/Gui/General.py:426
+#: Mailman/Gui/General.py:427
 msgid ""
 "<a href=\"http://www.faqs.org/rfcs/rfc2822.html\">RFC\n"
 "                 2822</a> defines the <tt>Sender</tt> header and defines it\n"
@@ -5813,7 +5872,7 @@
 "                 here."
 msgstr ""
 
-#: Mailman/Gui/General.py:444
+#: Mailman/Gui/General.py:445
 msgid ""
 "Discard held messages older than this number of days.\n"
 "            Use 0 for no automatic discarding."
@@ -5821,7 +5880,7 @@
 "Descartar los mensaxes reteníos más antiguos qu'esti númberu de díes.\n"
 "            Usa 0 pa desactivar el descarte automáticu."
 
-#: Mailman/Gui/General.py:454
+#: Mailman/Gui/General.py:455
 msgid ""
 "<b>real_name</b> attribute not\n"
 "            changed!  It must differ from the list's name by case\n"
@@ -5831,7 +5890,7 @@
 "            se camudó! Tien que diferenciase del nome de la llista\n"
 "            sólo en cambeos a mayúscules o minúscules."
 
-#: Mailman/Gui/General.py:471
+#: Mailman/Gui/General.py:483
 msgid ""
 "The <b>info</b> attribute you saved\n"
 "contains suspicious HTML that could potentially expose your users to cross-"
@@ -5853,7 +5912,7 @@
 "mlist.info.\n"
 "                        "
 
-#: Mailman/Gui/General.py:482
+#: Mailman/Gui/General.py:494
 msgid ""
 "<b>admin_member_chunksize</b> attribute not\n"
 "            changed!  It must be an integer > 0."
@@ -5861,7 +5920,7 @@
 "<b>admin_member_chunksize</b> atributu non\n"
 "            camudáu!  Tien de ser un enteru > 0."
 
-#: Mailman/Gui/General.py:492
+#: Mailman/Gui/General.py:504
 msgid ""
 "You cannot add a Reply-To: to an explicit\n"
 "            address if that address is blank.  Resetting these values."
@@ -6277,6 +6336,26 @@
 
 #: Mailman/Gui/NonDigest.py:163
 msgid ""
+"Ignore regular_exlude_lists of which the poster is not a\n"
+"             member."
+msgstr ""
+
+#: Mailman/Gui/NonDigest.py:165
+msgid ""
+"If a post is addressed to this list and to one or more of\n"
+"             the exclude lists, regular members of those lists will not be\n"
+"             sent the post from this list, but if the poster is not a "
+"member\n"
+"             of an excluded list, the post may not be accepted by that list\n"
+"             which leaves the members of that list with no copy of the "
+"post.\n"
+"             Setting this to Yes ignores any of the exclude lists of which "
+"the\n"
+"             poster is not a member."
+msgstr ""
+
+#: Mailman/Gui/NonDigest.py:174
+msgid ""
 "Other mailing lists on this site whose members are\n"
 "             included in the regular (non-digest) delivery if those\n"
 "             list addresses don't appear in a To: or Cc: header."
@@ -6285,7 +6364,7 @@
 "             incluyíos na entrega non agrupada si les sos\n"
 "             direiciones de corréu nun aparecen na tiesta Pa: o Cc:."
 
-#: Mailman/Gui/NonDigest.py:166
+#: Mailman/Gui/NonDigest.py:177
 msgid ""
 "The list addresses should be written in full mail address\n"
 "             format (e.g. mailman at example.com). Note also that the site\n"
@@ -7880,6 +7959,14 @@
 msgid "%(realname)s post acknowledgement"
 msgstr "Confirmación d'unvíu a llista de corréu %(realname)s"
 
+#: Mailman/Handlers/Approve.py:45
+msgid ""
+"Message rejected.\n"
+"It appears that this message contains an HTML part with the\n"
+"Approved: password line, but due to the way it is coded in the\n"
+"HTML it can't be safely removed.\n"
+msgstr ""
+
 #: Mailman/Handlers/CalcRecips.py:78
 msgid ""
 "Your urgent message to the %(realname)s mailing list was not authorized for\n"
@@ -7993,15 +8080,15 @@
 msgid "Posting to a moderated newsgroup"
 msgstr "Unvíu a un grupu de noticies moderáu"
 
-#: Mailman/Handlers/Hold.py:250
+#: Mailman/Handlers/Hold.py:247
 msgid "Your message to %(listname)s awaits moderator approval"
 msgstr "Mensax unviáu a %(listname)s espera l'aprobacion del llendador"
 
-#: Mailman/Handlers/Hold.py:269
+#: Mailman/Handlers/Hold.py:266
 msgid "%(listname)s post from %(sender)s requires approval"
 msgstr "L'unvíu a %(listname)s de %(sender)s precisa d'aprobacion"
 
-#: Mailman/Handlers/Hold.py:276
+#: Mailman/Handlers/Hold.py:273
 msgid ""
 "If you reply to this message, keeping the Subject: header intact, Mailman "
 "will\n"
@@ -8040,7 +8127,7 @@
 msgid "After content filtering, the message was empty"
 msgstr "Dempués de la peñera del conteníu, el mensax quedó ermu"
 
-#: Mailman/Handlers/MimeDel.py:235
+#: Mailman/Handlers/MimeDel.py:264
 msgid ""
 "The attached message matched the %(listname)s mailing list's content "
 "filtering\n"
@@ -8054,11 +8141,11 @@
 "soscritores de la llista. Recibisti la única copia que queda del mensax\n"
 "descartáu\n"
 
-#: Mailman/Handlers/MimeDel.py:241
+#: Mailman/Handlers/MimeDel.py:270
 msgid "Content filtered message notification"
 msgstr "Notificación de mensax peñeráu por conteníu"
 
-#: Mailman/Handlers/Moderate.py:162
+#: Mailman/Handlers/Moderate.py:163
 msgid ""
 "You are not allowed to post to this mailing list, and your message has been\n"
 "automatically rejected.  If you think that your messages are being rejected "
@@ -8070,11 +8157,11 @@
 "Si camientes que los tos mensaxes tan refugándose por error,\n"
 "contauta col propietariu de la llista en %(listowner)s."
 
-#: Mailman/Handlers/Moderate.py:178
+#: Mailman/Handlers/Moderate.py:179
 msgid "Auto-discard notification"
 msgstr "Notificación de descarte automáticu"
 
-#: Mailman/Handlers/Moderate.py:181
+#: Mailman/Handlers/Moderate.py:182
 msgid "The attached message has been automatically discarded."
 msgstr "El siguiente mensaxe refugóse automáticamente."
 
@@ -8152,11 +8239,11 @@
 "Descripción: %(desc)s\n"
 "Url        : %(url)s\n"
 
-#: Mailman/Handlers/Scrubber.py:341
+#: Mailman/Handlers/Scrubber.py:344
 msgid "Skipped content of type %(partctype)s\n"
 msgstr "Saltada la triba de conteníu %(partctype)s\n"
 
-#: Mailman/Handlers/Scrubber.py:382
+#: Mailman/Handlers/Scrubber.py:385
 msgid "-------------- next part --------------\n"
 msgstr "---------- siguiente parte ------------\n"
 
@@ -8164,7 +8251,7 @@
 msgid "The message headers matched a filter rule"
 msgstr "Les testeres del mensax activaron una regla de peñera"
 
-#: Mailman/Handlers/SpamDetect.py:135
+#: Mailman/Handlers/SpamDetect.py:119
 msgid "Message rejected by filter rule match"
 msgstr "Mensax refugáu por activar una regla de peñera"
 
@@ -8196,47 +8283,47 @@
 msgid "digest footer"
 msgstr "pie de páxina del agrupáu"
 
-#: Mailman/Handlers/ToDigest.py:361
+#: Mailman/Handlers/ToDigest.py:361 Mailman/Handlers/ToDigest.py:369
 msgid "Digest Footer"
 msgstr "Pie de páxina del agrupáu"
 
-#: Mailman/Handlers/ToDigest.py:375
+#: Mailman/Handlers/ToDigest.py:376
 msgid "End of "
 msgstr "Fin de "
 
-#: Mailman/ListAdmin.py:297
+#: Mailman/ListAdmin.py:299
 msgid "Posting of your message titled \"%(subject)s\""
 msgstr "El mensax unviáu tenía como asuntu \"%(subject)s\""
 
-#: Mailman/ListAdmin.py:298 Mailman/ListAdmin.py:417
+#: Mailman/ListAdmin.py:300 Mailman/ListAdmin.py:419
 msgid "[No reason given]"
 msgstr "[Nun se dió nenguna razón]"
 
-#: Mailman/ListAdmin.py:336
+#: Mailman/ListAdmin.py:338
 msgid "Forward of moderated message"
 msgstr "Reunvíu de mensax moderáu"
 
-#: Mailman/ListAdmin.py:392
+#: Mailman/ListAdmin.py:394
 msgid "New subscription request to list %(realname)s from %(addr)s"
 msgstr "Peticion de soscrición a la llista %(realname)s de %(addr)s"
 
-#: Mailman/ListAdmin.py:416
+#: Mailman/ListAdmin.py:418
 msgid "Subscription request"
 msgstr "Solicitú de soscrición"
 
-#: Mailman/ListAdmin.py:447
+#: Mailman/ListAdmin.py:449
 msgid "New unsubscription request from %(realname)s by %(addr)s"
 msgstr "Solicitú de baxa de la llista %(realname)s de %(addr)s"
 
-#: Mailman/ListAdmin.py:471
+#: Mailman/ListAdmin.py:473
 msgid "Unsubscription request"
 msgstr "Solicitú de desoscrición"
 
-#: Mailman/ListAdmin.py:504
+#: Mailman/ListAdmin.py:506
 msgid "Original Message"
 msgstr "Mensax orixinal"
 
-#: Mailman/ListAdmin.py:507
+#: Mailman/ListAdmin.py:509
 msgid "Request to mailing list %(realname)s rejected"
 msgstr "La peticion a la llista de corréu %(realname)s refugóse"
 
@@ -8315,16 +8402,16 @@
 msgid "Mailing list removal request for list %(listname)s"
 msgstr "Solicitú de desaniciáu de la llista de corréu %(listname)s"
 
-#: Mailman/MTA/Postfix.py:317
+#: Mailman/MTA/Postfix.py:320
 msgid "checking permissions on %(file)s"
 msgstr "comprobando los permisos de %(file)s"
 
-#: Mailman/MTA/Postfix.py:327
+#: Mailman/MTA/Postfix.py:330
 msgid "%(file)s permissions must be 066x (got %(octmode)s)"
 msgstr "Los permisos de %(file)s tendríen de ser 066x (y son %(octmode)s)"
 
-#: Mailman/MTA/Postfix.py:329 Mailman/MTA/Postfix.py:356
-#: Mailman/MTA/Postfix.py:367 bin/check_perms:125 bin/check_perms:153
+#: Mailman/MTA/Postfix.py:332 Mailman/MTA/Postfix.py:359
+#: Mailman/MTA/Postfix.py:370 bin/check_perms:125 bin/check_perms:153
 #: bin/check_perms:163 bin/check_perms:174 bin/check_perms:199
 #: bin/check_perms:216 bin/check_perms:242 bin/check_perms:265
 #: bin/check_perms:284 bin/check_perms:298 bin/check_perms:318
@@ -8332,16 +8419,16 @@
 msgid "(fixing)"
 msgstr "(iguando)"
 
-#: Mailman/MTA/Postfix.py:345
+#: Mailman/MTA/Postfix.py:348
 msgid "checking ownership of %(dbfile)s"
 msgstr "Comprobando la propiedá de %(dbfile)s"
 
-#: Mailman/MTA/Postfix.py:353
+#: Mailman/MTA/Postfix.py:356
 msgid "%(dbfile)s owned by %(owner)s (must be owned by %(user)s"
 msgstr ""
 "el propietariu de%(dbfile)s ye %(owner)s (tien de pertenecer a %(user)s"
 
-#: Mailman/MTA/Postfix.py:365
+#: Mailman/MTA/Postfix.py:368
 msgid "%(dbfile)s permissions must be 066x (got %(octmode)s)"
 msgstr "Los permisos de %(dbfile)s tendríen de ser 066x (y son %(octmode)s)"
 
@@ -8354,32 +8441,32 @@
 msgid "Your confirmation is required to leave the %(listname)s mailing list"
 msgstr "Fai falta que confirmes p'abandonar la llista de corréu %(listname)s"
 
-#: Mailman/MailList.py:891 Mailman/MailList.py:1313
+#: Mailman/MailList.py:900 Mailman/MailList.py:1322
 msgid " from %(remote)s"
 msgstr " de %(remote)s"
 
-#: Mailman/MailList.py:924
+#: Mailman/MailList.py:933
 msgid "subscriptions to %(realname)s require moderator approval"
 msgstr ""
 "les soscriciones a %(realname)s necesiten l'aprobación del alministrador"
 
-#: Mailman/MailList.py:993 bin/add_members:245
+#: Mailman/MailList.py:1002 bin/add_members:245
 msgid "%(realname)s subscription notification"
 msgstr "Notificación de soscrición a %(realname)s"
 
-#: Mailman/MailList.py:1012
+#: Mailman/MailList.py:1021
 msgid "unsubscriptions require moderator approval"
 msgstr "les baxes de %(realname)s necesiten l'aprobación del llendador"
 
-#: Mailman/MailList.py:1032
+#: Mailman/MailList.py:1041
 msgid "%(realname)s unsubscribe notification"
 msgstr "Notificación de desoscrición a %(realname)s"
 
-#: Mailman/MailList.py:1222
+#: Mailman/MailList.py:1231
 msgid "subscriptions to %(name)s require administrator approval"
 msgstr "La soscrición a %(name)s requier aprobación del alministrador"
 
-#: Mailman/MailList.py:1485
+#: Mailman/MailList.py:1494
 msgid "Last autoresponse notification for today"
 msgstr "Cabera notificación d'autorempuesta pa güei"
 
@@ -8409,11 +8496,11 @@
 msgid "Uncaught bounce notification"
 msgstr "Notificación de rebote non captáu"
 
-#: Mailman/Queue/CommandRunner.py:92
+#: Mailman/Queue/CommandRunner.py:97
 msgid "Ignoring non-text/plain MIME parts"
 msgstr "Inorando partes MIME que nun son testu planu"
 
-#: Mailman/Queue/CommandRunner.py:148
+#: Mailman/Queue/CommandRunner.py:163
 msgid ""
 "The results of your email command are provided below.\n"
 "Attached is your original message.\n"
@@ -8421,11 +8508,11 @@
 "Los resultaos del comandu qu'unviaste per corréu electrónicu\n"
 "más abaxo. Incluyóse tamién el to mensaxe orixinal.\n"
 
-#: Mailman/Queue/CommandRunner.py:153
+#: Mailman/Queue/CommandRunner.py:168
 msgid "- Results:"
 msgstr "- Resultaos:"
 
-#: Mailman/Queue/CommandRunner.py:159
+#: Mailman/Queue/CommandRunner.py:174
 msgid ""
 "\n"
 "- Unprocessed:"
@@ -8433,7 +8520,7 @@
 "\n"
 "- Ensin procesar:"
 
-#: Mailman/Queue/CommandRunner.py:163
+#: Mailman/Queue/CommandRunner.py:178
 msgid ""
 "No commands were found in this message.\n"
 "To obtain instructions, send a message containing just the word \"help\".\n"
@@ -8442,7 +8529,7 @@
 "Pa obtener instruiciones, unvía un mensax que caltenga únicamente la\n"
 "pallabra \"help\".\n"
 
-#: Mailman/Queue/CommandRunner.py:168
+#: Mailman/Queue/CommandRunner.py:183
 msgid ""
 "\n"
 "- Ignored:"
@@ -8450,7 +8537,7 @@
 "\n"
 "- Inoraos:"
 
-#: Mailman/Queue/CommandRunner.py:170
+#: Mailman/Queue/CommandRunner.py:185
 msgid ""
 "\n"
 "- Done.\n"
@@ -8460,19 +8547,27 @@
 "- Fecho.\n"
 "\n"
 
-#: Mailman/Queue/CommandRunner.py:194
+#: Mailman/Queue/CommandRunner.py:209
 msgid "The results of your email commands"
 msgstr "Resultaos de los comandos unviaos per corréu electrónicu"
 
-#: Mailman/htmlformat.py:639
+#: Mailman/Queue/CommandRunner.py:215
+msgid "Message body suppressed by Mailman site configuration\n"
+msgstr ""
+
+#: Mailman/Queue/CommandRunner.py:217
+msgid "Original message suppressed by Mailman site configuration\n"
+msgstr ""
+
+#: Mailman/htmlformat.py:648
 msgid "Delivered by Mailman<br>version %(version)s"
 msgstr "Entregáu per Mailman<br>versión %(version)s"
 
-#: Mailman/htmlformat.py:640
+#: Mailman/htmlformat.py:649
 msgid "Python Powered"
 msgstr "Fecho en Python"
 
-#: Mailman/htmlformat.py:641
+#: Mailman/htmlformat.py:650
 msgid "Gnu's Not Unix"
 msgstr "Gnu Nun ye Unix"
 
@@ -11376,40 +11471,45 @@
 "    -h\n"
 "        amosar esti mensax d'aida y colar.\n"
 
-#: bin/rmlist:72 bin/rmlist:75
+#: bin/rmlist:73 bin/rmlist:76
 msgid "Removing %(msg)s"
 msgstr "Desaniciando %(msg)s"
 
-#: bin/rmlist:80
+#: bin/rmlist:81
 msgid "%(listname)s %(msg)s not found as %(filename)s"
 msgstr "%(msg)s de %(listname)s nun s'alcontró como %(filename)s"
 
-#: bin/rmlist:104
+#: bin/rmlist:105
 msgid "No such list (or list already deleted): %(listname)s"
 msgstr "Nun esiste tal llista (o esborróse dafechu): %(listname)s"
 
-#: bin/rmlist:106
+#: bin/rmlist:107
 msgid "No such list: %(listname)s.  Removing its residual archives."
 msgstr "Nun esiste llista: %(listname)s. Esborrando ficheros residuales."
 
-#: bin/rmlist:110
+#: bin/rmlist:111
 msgid "Not removing archives.  Reinvoke with -a to remove them."
 msgstr ""
 "Nun tan esborrándose archivos. Executa otra vegada con -a pa esborralos."
 
-#: bin/rmlist:124
+#: bin/rmlist:125
 msgid "list info"
 msgstr "información de la llista"
 
-#: bin/rmlist:132
+#: bin/rmlist:133
 msgid "stale lock file"
 msgstr "ficheru de bloquéu frayáu"
 
-#: bin/rmlist:137 bin/rmlist:139
+#: bin/rmlist:141
+#, fuzzy
+msgid "held message file"
+msgstr "tolos mensaxes reteníos."
+
+#: bin/rmlist:146 bin/rmlist:148
 msgid "private archives"
 msgstr "ficheros privaos"
 
-#: bin/rmlist:141 bin/rmlist:143
+#: bin/rmlist:150 bin/rmlist:152
 msgid "public archives"
 msgstr "archivos públicos"
 
@@ -12406,7 +12506,7 @@
 "Aplícase a les llistes nomaes na llinia d'órdenes. Si nun se da'l\n"
 "nome de nenguna llista, aplícase a toes.\n"
 
-#: cron/checkdbs:19
+#: cron/checkdbs:20
 msgid ""
 "Check for pending admin requests and mail the list owners if necessary.\n"
 "\n"
@@ -12427,7 +12527,7 @@
 "    -h/--help\n"
 "        Amosar esti mensax y colar.\n"
 
-#: cron/checkdbs:107
+#: cron/checkdbs:108
 msgid ""
 "Notice: %(discarded)d old request(s) automatically expired.\n"
 "\n"
@@ -12435,19 +12535,24 @@
 "Avisu: %(discarded)d petición(es) antigua(es) espirada(es) automáticamente.\n"
 "\n"
 
-#: cron/checkdbs:120
+#: cron/checkdbs:121
 msgid "%(count)d %(realname)s moderator request(s) waiting"
 msgstr "%(count)d solicitudes de %(realname)s a la espera del llendador"
 
-#: cron/checkdbs:123
+#: cron/checkdbs:124
 msgid "%(realname)s moderator request check result"
 msgstr "Resultáu de la comprebación solicitada pol llendador de %(realname)s"
 
-#: cron/checkdbs:143
+#: cron/checkdbs:144
 msgid "Pending subscriptions:"
 msgstr "Soscripciones pendientes:"
 
-#: cron/checkdbs:154
+#: cron/checkdbs:155
+#, fuzzy
+msgid "Pending unsubscriptions:"
+msgstr "Soscripciones pendientes:"
+
+#: cron/checkdbs:162
 msgid ""
 "\n"
 "Pending posts:"
@@ -12455,7 +12560,7 @@
 "\n"
 "Unvíos pendientes:"
 
-#: cron/checkdbs:161
+#: cron/checkdbs:169
 msgid ""
 "From: %(sender)s on %(date)s\n"
 "Subject: %(subject)s\n"

Modified: trunk/messages/ca/LC_MESSAGES/mailman.po
===================================================================
--- trunk/messages/ca/LC_MESSAGES/mailman.po	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/messages/ca/LC_MESSAGES/mailman.po	2012-05-20 12:09:31 UTC (rev 716)
@@ -14,7 +14,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: mailman 2.1.11\n"
-"POT-Creation-Date: Fri Sep 10 10:50:49 2010\n"
+"POT-Creation-Date: Sun Mar 25 16:40:47 2012\n"
 "PO-Revision-Date: 2009-01-28 01:23+0100\n"
 "Last-Translator: David Planella <david.planella at gmail.com>\n"
 "Language-Team: Catalan <mailman at llistes.softcatala.org>\n"
@@ -227,14 +227,14 @@
 msgid " The last bounce received from you was dated %(date)s"
 msgstr " El vostre darrer missatge retornat rebut és del %(date)s"
 
-#: Mailman/Bouncer.py:321 Mailman/Deliverer.py:143
-#: Mailman/Handlers/Acknowledge.py:44 Mailman/Handlers/CookHeaders.py:286
+#: Mailman/Bouncer.py:322 Mailman/Deliverer.py:143
+#: Mailman/Handlers/Acknowledge.py:44 Mailman/Handlers/CookHeaders.py:284
 #: Mailman/Handlers/Hold.py:215 Mailman/Handlers/ToDigest.py:239
 #: Mailman/ListAdmin.py:223
 msgid "(no subject)"
 msgstr "(sense assumpte)"
 
-#: Mailman/Bouncer.py:325
+#: Mailman/Bouncer.py:326
 msgid "[No bounce details are available]"
 msgstr "[No hi ha detalls disponibles sobre retorns]"
 
@@ -246,20 +246,24 @@
 msgid "Administrator"
 msgstr "Administrador"
 
-#: Mailman/Cgi/admin.py:76 Mailman/Cgi/admindb.py:93 Mailman/Cgi/confirm.py:62
-#: Mailman/Cgi/edithtml.py:70 Mailman/Cgi/listinfo.py:54
+#: Mailman/Cgi/admin.py:79 Mailman/Cgi/admindb.py:93 Mailman/Cgi/confirm.py:62
+#: Mailman/Cgi/edithtml.py:71 Mailman/Cgi/listinfo.py:54
 #: Mailman/Cgi/options.py:78 Mailman/Cgi/private.py:108
 #: Mailman/Cgi/rmlist.py:64 Mailman/Cgi/roster.py:59
 #: Mailman/Cgi/subscribe.py:62
 msgid "No such list <em>%(safelistname)s</em>"
 msgstr "La llista <em>%(safelistname)s</em> no existeix"
 
-#: Mailman/Cgi/admin.py:91 Mailman/Cgi/admindb.py:109
-#: Mailman/Cgi/edithtml.py:90 Mailman/Cgi/private.py:135
+#: Mailman/Cgi/admin.py:107 Mailman/Cgi/admindb.py:109
+#: Mailman/Cgi/edithtml.py:91 Mailman/Cgi/private.py:135
 msgid "Authorization failed."
 msgstr "Ha fallat l'autorització."
 
-#: Mailman/Cgi/admin.py:181
+#: Mailman/Cgi/admin.py:198
+msgid "The form lifetime has expired. (request forgery check)"
+msgstr ""
+
+#: Mailman/Cgi/admin.py:204
 msgid ""
 "You have turned off delivery of both digest and\n"
 "                non-digest messages.  This is an incompatible state of\n"
@@ -273,46 +277,47 @@
 "                de resum. En cas contrari, la vostra llista de correu\n"
 "                serà inutilitzable."
 
-#: Mailman/Cgi/admin.py:185 Mailman/Cgi/admin.py:191 Mailman/Cgi/admin.py:196
-#: Mailman/Cgi/admin.py:1443 Mailman/Gui/GUIBase.py:204
+#: Mailman/Cgi/admin.py:208 Mailman/Cgi/admin.py:216 Mailman/Cgi/admin.py:223
+#: Mailman/Cgi/admin.py:1498 Mailman/Gui/GUIBase.py:204
 msgid "Warning: "
 msgstr "Avís: "
 
-#: Mailman/Cgi/admin.py:189
+#: Mailman/Cgi/admin.py:213
 msgid ""
 "You have digest members, but digests are turned\n"
-"                off. Those people will not receive mail."
+"                off. Those people will not receive mail.\n"
+"                Affected member(s) %(dm)r."
 msgstr ""
 "Hi ha subscriptors que reben el correu de forma agrupada, però l'enviament\n"
 "                de missatge agrupats està desactivat. Aquests usuaris no\n"
-"                podran rebre cap correu."
+"                podran rebre cap correu.%(dm)r"
 
-#: Mailman/Cgi/admin.py:194
+#: Mailman/Cgi/admin.py:220
 msgid ""
 "You have regular list members but non-digestified mail is\n"
 "                turned off.  They will receive non-digestified mail until "
 "you\n"
-"                fix this problem."
+"                fix this problem. Affected member(s) %(rm)r."
 msgstr ""
 "Hi ha subscriptors que reben els correus de forma individual, però "
 "l'enviament\n"
 "                de missatges individuals està desactivat. En aquesta "
 "situació,\n"
-"                aquests usuaris no podran rebre cap correu."
+"                aquests usuaris no podran rebre cap correu.%(rm)r"
 
-#: Mailman/Cgi/admin.py:218
+#: Mailman/Cgi/admin.py:245
 msgid "%(hostname)s mailing lists - Admin Links"
 msgstr "Llistes de correu de %(hostname)s - Enllaços administratius"
 
-#: Mailman/Cgi/admin.py:249 Mailman/Cgi/listinfo.py:104
+#: Mailman/Cgi/admin.py:276 Mailman/Cgi/listinfo.py:104
 msgid "Welcome!"
 msgstr "Us donem la benvinguda"
 
-#: Mailman/Cgi/admin.py:252 Mailman/Cgi/listinfo.py:107
+#: Mailman/Cgi/admin.py:279 Mailman/Cgi/listinfo.py:107
 msgid "Mailman"
 msgstr "Mailman"
 
-#: Mailman/Cgi/admin.py:256
+#: Mailman/Cgi/admin.py:283
 msgid ""
 "<p>There currently are no publicly-advertised %(mailmanlink)s\n"
 "            mailing lists on %(hostname)s."
@@ -320,7 +325,7 @@
 "<p>Actualment no hi ha llistes públiques de correu\n"
 "            %(mailmanlink)s a %(hostname)s."
 
-#: Mailman/Cgi/admin.py:262
+#: Mailman/Cgi/admin.py:289
 msgid ""
 "<p>Below is the collection of publicly-advertised\n"
 "            %(mailmanlink)s mailing lists on %(hostname)s.  Click on a list\n"
@@ -330,11 +335,11 @@
 "            a %(hostname)s. Feu clic al nom d'una llista per a\n"
 "            accedir a la seva pàgina de configuració."
 
-#: Mailman/Cgi/admin.py:269
+#: Mailman/Cgi/admin.py:296
 msgid "right "
 msgstr "correcte "
 
-#: Mailman/Cgi/admin.py:271
+#: Mailman/Cgi/admin.py:298
 msgid ""
 "To visit the administrators configuration page for an\n"
 "        unadvertised list, open a URL similar to this one, but with a '/' "
@@ -353,32 +358,32 @@
 "\n"
 "        <p>Trobareu informació general sobre les llistes a "
 
-#: Mailman/Cgi/admin.py:278
+#: Mailman/Cgi/admin.py:305
 msgid "the mailing list overview page"
 msgstr "la pàgina d'informació general de les llistes de correu"
 
-#: Mailman/Cgi/admin.py:280
+#: Mailman/Cgi/admin.py:307
 msgid "<p>(Send questions and comments to "
 msgstr "<p>(Envieu les preguntes o comentaris a "
 
-#: Mailman/Cgi/admin.py:290 Mailman/Cgi/listinfo.py:139 cron/mailpasswds:216
+#: Mailman/Cgi/admin.py:317 Mailman/Cgi/listinfo.py:139 cron/mailpasswds:216
 msgid "List"
 msgstr "Llista"
 
-#: Mailman/Cgi/admin.py:291 Mailman/Cgi/admin.py:558
+#: Mailman/Cgi/admin.py:318 Mailman/Cgi/admin.py:586
 #: Mailman/Cgi/listinfo.py:140
 msgid "Description"
 msgstr "Descripció"
 
-#: Mailman/Cgi/admin.py:297 Mailman/Cgi/listinfo.py:146 bin/list_lists:116
+#: Mailman/Cgi/admin.py:324 Mailman/Cgi/listinfo.py:146 bin/list_lists:116
 msgid "[no description available]"
 msgstr "[no té cap descripció]"
 
-#: Mailman/Cgi/admin.py:331
+#: Mailman/Cgi/admin.py:358
 msgid "No valid variable name found."
 msgstr "No s'ha trobat cap nom de variable vàlid."
 
-#: Mailman/Cgi/admin.py:341
+#: Mailman/Cgi/admin.py:368
 msgid ""
 "%(realname)s Mailing list Configuration Help\n"
 "    <br><em>%(varname)s</em> Option"
@@ -386,11 +391,11 @@
 "Ajuda per a la configuració de la llista de correu %(realname)s\n"
 "    <br>opció <em>%(varname)s</em>"
 
-#: Mailman/Cgi/admin.py:348
+#: Mailman/Cgi/admin.py:375
 msgid "Mailman %(varname)s List Option Help"
 msgstr "Ajuda per a l'opció de llista %(varname)s del Mailman"
 
-#: Mailman/Cgi/admin.py:366
+#: Mailman/Cgi/admin.py:393
 msgid ""
 "<em><strong>Warning:</strong> changing this option here\n"
 "    could cause other screens to be out-of-sync.  Be sure to reload any "
@@ -406,59 +411,60 @@
 "podeu\n"
 "    "
 
-#: Mailman/Cgi/admin.py:377
+#: Mailman/Cgi/admin.py:404
 msgid "return to the %(categoryname)s options page."
 msgstr "tornar a la pàgina d'opcions de la categoria %(categoryname)s."
 
-#: Mailman/Cgi/admin.py:392
+#: Mailman/Cgi/admin.py:419
 msgid "%(realname)s Administration (%(label)s)"
 msgstr "Administració de la llista %(realname)s (%(label)s)"
 
-#: Mailman/Cgi/admin.py:393
+#: Mailman/Cgi/admin.py:420
 msgid "%(realname)s mailing list administration<br>%(label)s Section"
 msgstr "Administració de la llista de correu %(realname)s<br>Secció %(label)s"
 
-#: Mailman/Cgi/admin.py:409
+#: Mailman/Cgi/admin.py:437
 msgid "Configuration Categories"
 msgstr "Categories de configuració"
 
-#: Mailman/Cgi/admin.py:410
+#: Mailman/Cgi/admin.py:438
 msgid "Other Administrative Activities"
 msgstr "Altres tasques administratives"
 
-#: Mailman/Cgi/admin.py:414
+#: Mailman/Cgi/admin.py:442
 msgid "Tend to pending moderator requests"
 msgstr "Atén les peticions pendents de moderació"
 
-#: Mailman/Cgi/admin.py:416
+#: Mailman/Cgi/admin.py:444
 msgid "Go to the general list information page"
 msgstr "Vés a la pàgina d'informació general de la llista"
 
-#: Mailman/Cgi/admin.py:418
+#: Mailman/Cgi/admin.py:446
 msgid "Edit the public HTML pages and text files"
 msgstr "Edita les pàgines HTML i fitxers de text públics"
 
-#: Mailman/Cgi/admin.py:420
+#: Mailman/Cgi/admin.py:448
 msgid "Go to list archives"
 msgstr "Vés als arxius de la llista"
 
-#: Mailman/Cgi/admin.py:426
+#: Mailman/Cgi/admin.py:454
 msgid "Delete this mailing list"
 msgstr "Suprimeix aquesta llista de correu"
 
-#: Mailman/Cgi/admin.py:427
+#: Mailman/Cgi/admin.py:455
 msgid " (requires confirmation)<br> <br>"
 msgstr " (requereix confirmació)<br> <br>"
 
-#: Mailman/Cgi/admin.py:433
+#: Mailman/Cgi/admin.py:461 Mailman/Cgi/admindb.py:195
+#: Mailman/Cgi/admindb.py:272
 msgid "Logout"
 msgstr "Surt"
 
-#: Mailman/Cgi/admin.py:477
+#: Mailman/Cgi/admin.py:505
 msgid "Emergency moderation of all list traffic is enabled"
 msgstr "La moderació d'emergència de tot el tràfic de la llista està activada"
 
-#: Mailman/Cgi/admin.py:488
+#: Mailman/Cgi/admin.py:516
 msgid ""
 "Make your changes in the following section, then submit them\n"
 "        using the <em>Submit Your Changes</em> button below."
@@ -466,11 +472,11 @@
 "Feu els canvis a la secció següent, i feu clic al botó\n"
 "        <em>Envia els canvis</em> de més avall per a enviar-los."
 
-#: Mailman/Cgi/admin.py:506
+#: Mailman/Cgi/admin.py:534
 msgid "Additional Member Tasks"
 msgstr "Tasques addicionals de subscriptors"
 
-#: Mailman/Cgi/admin.py:512
+#: Mailman/Cgi/admin.py:540
 msgid ""
 "<li>Set everyone's moderation bit, including\n"
 "            those members not currently visible"
@@ -478,23 +484,23 @@
 "<li>Activa l'opció de moderació per a tothom,\n"
 "            fins i tot per als subscriptors no visibles"
 
-#: Mailman/Cgi/admin.py:516
+#: Mailman/Cgi/admin.py:544
 msgid "Off"
 msgstr "Desactivat"
 
-#: Mailman/Cgi/admin.py:516
+#: Mailman/Cgi/admin.py:544
 msgid "On"
 msgstr "Activat"
 
-#: Mailman/Cgi/admin.py:518
+#: Mailman/Cgi/admin.py:546
 msgid "Set"
 msgstr "Estableix"
 
-#: Mailman/Cgi/admin.py:559
+#: Mailman/Cgi/admin.py:587
 msgid "Value"
 msgstr "Valor"
 
-#: Mailman/Cgi/admin.py:613
+#: Mailman/Cgi/admin.py:641
 msgid ""
 "Badly formed options entry:\n"
 " %(record)s"
@@ -502,105 +508,106 @@
 "Entrada d'opcions mal formada:\n"
 " %(record)s"
 
-#: Mailman/Cgi/admin.py:671
+#: Mailman/Cgi/admin.py:699
 msgid "<em>Enter the text below, or...</em><br>"
 msgstr "<em>Introduïu el text a continuació, o bé...</em><br>"
 
-#: Mailman/Cgi/admin.py:673
+#: Mailman/Cgi/admin.py:701
 msgid "<br><em>...specify a file to upload</em><br>"
 msgstr "<br><em>...especifiqueu un fitxer per a pujar</em><br>"
 
-#: Mailman/Cgi/admin.py:699 Mailman/Cgi/admin.py:702
+#: Mailman/Cgi/admin.py:727 Mailman/Cgi/admin.py:730
 msgid "Topic %(i)d"
 msgstr "Tema %(i)d"
 
-#: Mailman/Cgi/admin.py:703 Mailman/Cgi/admin.py:753
+#: Mailman/Cgi/admin.py:731 Mailman/Cgi/admin.py:781
 msgid "Delete"
 msgstr "Suprimeix"
 
-#: Mailman/Cgi/admin.py:704
+#: Mailman/Cgi/admin.py:732
 msgid "Topic name:"
 msgstr "Nom del tema:"
 
-#: Mailman/Cgi/admin.py:706
+#: Mailman/Cgi/admin.py:734
 msgid "Regexp:"
 msgstr "Expressió regular:"
 
-#: Mailman/Cgi/admin.py:709 Mailman/Cgi/options.py:1047
+#: Mailman/Cgi/admin.py:737 Mailman/Cgi/options.py:1053
 msgid "Description:"
 msgstr "Descripció:"
 
-#: Mailman/Cgi/admin.py:713 Mailman/Cgi/admin.py:771
+#: Mailman/Cgi/admin.py:741 Mailman/Cgi/admin.py:799
 msgid "Add new item..."
 msgstr "Afegeix un element nou..."
 
-#: Mailman/Cgi/admin.py:715 Mailman/Cgi/admin.py:773
+#: Mailman/Cgi/admin.py:743 Mailman/Cgi/admin.py:801
 msgid "...before this one."
 msgstr "...abans d'aquest."
 
-#: Mailman/Cgi/admin.py:716 Mailman/Cgi/admin.py:774
+#: Mailman/Cgi/admin.py:744 Mailman/Cgi/admin.py:802
 msgid "...after this one."
 msgstr "...després d'aquest."
 
-#: Mailman/Cgi/admin.py:749 Mailman/Cgi/admin.py:752
+#: Mailman/Cgi/admin.py:777 Mailman/Cgi/admin.py:780
 msgid "Spam Filter Rule %(i)d"
 msgstr "Regla de filtre d'«spam» %(i)d"
 
-#: Mailman/Cgi/admin.py:754
+#: Mailman/Cgi/admin.py:782
 msgid "Spam Filter Regexp:"
 msgstr "Expressió regular de filtre d'«spam»:"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Cgi/admindb.py:306
-#: Mailman/Cgi/admindb.py:365 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641
+#: Mailman/Cgi/admin.py:793 Mailman/Cgi/admindb.py:327
+#: Mailman/Cgi/admindb.py:386 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671
 msgid "Defer"
 msgstr "Ajorna"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Cgi/admindb.py:308
-#: Mailman/Cgi/admindb.py:367 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641 Mailman/Gui/ContentFilter.py:37
+#: Mailman/Cgi/admin.py:793 Mailman/Cgi/admindb.py:329
+#: Mailman/Cgi/admindb.py:388 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671 Mailman/Gui/ContentFilter.py:37
 #: Mailman/Gui/Privacy.py:216 Mailman/Gui/Privacy.py:297
 msgid "Reject"
 msgstr "Rebutja"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Gui/Privacy.py:216
+#: Mailman/Cgi/admin.py:793 Mailman/Gui/Privacy.py:216
 #: Mailman/Gui/Privacy.py:297
 msgid "Hold"
 msgstr "Mantén"
 
-#: Mailman/Cgi/admin.py:766 Mailman/Cgi/admindb.py:309
-#: Mailman/Cgi/admindb.py:368 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641 Mailman/Gui/ContentFilter.py:37
-#: Mailman/Gui/Privacy.py:216 Mailman/Gui/Privacy.py:297
+#: Mailman/Cgi/admin.py:794 Mailman/Cgi/admindb.py:330
+#: Mailman/Cgi/admindb.py:389 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671 Mailman/Commands/cmd_confirm.py:93
+#: Mailman/Gui/ContentFilter.py:37 Mailman/Gui/Privacy.py:216
+#: Mailman/Gui/Privacy.py:297
 msgid "Discard"
 msgstr "Descarta"
 
-#: Mailman/Cgi/admin.py:766 Mailman/Cgi/admindb.py:410
+#: Mailman/Cgi/admin.py:794 Mailman/Cgi/admindb.py:431
 #: Mailman/Gui/Privacy.py:297
 msgid "Accept"
 msgstr "Accepta"
 
-#: Mailman/Cgi/admin.py:769 Mailman/Cgi/admindb.py:647
+#: Mailman/Cgi/admin.py:797 Mailman/Cgi/admindb.py:677
 msgid "Action:"
 msgstr "Acció:"
 
-#: Mailman/Cgi/admin.py:781
+#: Mailman/Cgi/admin.py:809
 msgid "Move rule up"
 msgstr "Mou la regla cap a amunt"
 
-#: Mailman/Cgi/admin.py:782
+#: Mailman/Cgi/admin.py:810
 msgid "Move rule down"
 msgstr "Mou la regla cap a avall"
 
-#: Mailman/Cgi/admin.py:815
+#: Mailman/Cgi/admin.py:843
 msgid "<br>(Edit <b>%(varname)s</b>)"
 msgstr "<br>(Edita <b>%(varname)s</b>)"
 
-#: Mailman/Cgi/admin.py:817
+#: Mailman/Cgi/admin.py:845
 msgid "<br>(Details for <b>%(varname)s</b>)"
 msgstr "<br>(Detalls per a <b>%(varname)s</b>)"
 
-#: Mailman/Cgi/admin.py:824
+#: Mailman/Cgi/admin.py:852
 msgid ""
 "<br><em><strong>Note:</strong>\n"
 "        setting this value performs an immediate action but does not modify\n"
@@ -611,111 +618,111 @@
 "no\n"
 "        modifica l'estat permanent.</em>"
 
-#: Mailman/Cgi/admin.py:838
+#: Mailman/Cgi/admin.py:866
 msgid "Mass Subscriptions"
 msgstr "Subscripcions en massa"
 
-#: Mailman/Cgi/admin.py:845
+#: Mailman/Cgi/admin.py:873
 msgid "Mass Removals"
 msgstr "Cancel·lació de subscripcions en massa"
 
-#: Mailman/Cgi/admin.py:852
+#: Mailman/Cgi/admin.py:880
 msgid "Membership List"
 msgstr "Llista de subscriptors"
 
-#: Mailman/Cgi/admin.py:860
+#: Mailman/Cgi/admin.py:888
 msgid "(help)"
 msgstr "(ajuda)"
 
 # El %(link)s mostra un enllaç a l'ajuda del Python per a la sintaxi de les
 # expressions regulars (dpm)
-#: Mailman/Cgi/admin.py:861
+#: Mailman/Cgi/admin.py:889
 msgid "Find member %(link)s:"
 msgstr "Cerca de subscriptors %(link)s:"
 
-#: Mailman/Cgi/admin.py:864
+#: Mailman/Cgi/admin.py:892
 msgid "Search..."
 msgstr "Cerca..."
 
-#: Mailman/Cgi/admin.py:881
+#: Mailman/Cgi/admin.py:909
 msgid "Bad regular expression: "
 msgstr "L'expressió regular és incorrecta: "
 
-#: Mailman/Cgi/admin.py:935
+#: Mailman/Cgi/admin.py:963
 msgid "%(allcnt)s members total, %(membercnt)s shown"
 msgstr "%(allcnt)s subscriptors en total, %(membercnt)s mostrats"
 
-#: Mailman/Cgi/admin.py:938
+#: Mailman/Cgi/admin.py:966
 msgid "%(allcnt)s members total"
 msgstr "%(allcnt)s membres en total"
 
-#: Mailman/Cgi/admin.py:962
+#: Mailman/Cgi/admin.py:990
 msgid "unsub"
 msgstr "desubs"
 
-#: Mailman/Cgi/admin.py:963
+#: Mailman/Cgi/admin.py:991
 msgid "member address<br>member name"
 msgstr "adreça electrònica del subscriptor<br>nom del subscriptor"
 
-#: Mailman/Cgi/admin.py:964
+#: Mailman/Cgi/admin.py:992
 msgid "hide"
 msgstr "amaga"
 
-#: Mailman/Cgi/admin.py:964
+#: Mailman/Cgi/admin.py:992
 msgid "mod"
 msgstr "moderat"
 
-#: Mailman/Cgi/admin.py:965
+#: Mailman/Cgi/admin.py:993
 msgid "nomail<br>[reason]"
 msgstr "sense correu<br>[motiu]"
 
-#: Mailman/Cgi/admin.py:966
+#: Mailman/Cgi/admin.py:994
 msgid "ack"
 msgstr "confirmació"
 
-#: Mailman/Cgi/admin.py:966
+#: Mailman/Cgi/admin.py:994
 msgid "not metoo"
 msgstr "sense còpia"
 
-#: Mailman/Cgi/admin.py:967
+#: Mailman/Cgi/admin.py:995
 msgid "nodupes"
 msgstr "sense dupls"
 
-#: Mailman/Cgi/admin.py:968
+#: Mailman/Cgi/admin.py:996
+msgid "plain"
+msgstr "text pla"
+
+#: Mailman/Cgi/admin.py:996 Mailman/Cgi/options.py:307
 msgid "digest"
 msgstr "agrupats"
 
-#: Mailman/Cgi/admin.py:968
-msgid "plain"
-msgstr "text pla"
-
-#: Mailman/Cgi/admin.py:969
+#: Mailman/Cgi/admin.py:997
 msgid "language"
 msgstr "llengua"
 
-#: Mailman/Cgi/admin.py:980
+#: Mailman/Cgi/admin.py:1008
 msgid "?"
 msgstr "?"
 
-#: Mailman/Cgi/admin.py:981
+#: Mailman/Cgi/admin.py:1009
 msgid "U"
 msgstr "U"
 
-#: Mailman/Cgi/admin.py:982
+#: Mailman/Cgi/admin.py:1010
 msgid "A"
 msgstr "A"
 
-#: Mailman/Cgi/admin.py:983
+#: Mailman/Cgi/admin.py:1011
 msgid "B"
 msgstr "R"
 
-#: Mailman/Cgi/admin.py:1055
+#: Mailman/Cgi/admin.py:1083
 msgid "<b>unsub</b> -- Click on this to unsubscribe the member."
 msgstr ""
 "<b>desubs</b> -- feu clic aquí per a cancel·lar la subscripció del "
 "subscriptor."
 
-#: Mailman/Cgi/admin.py:1057
+#: Mailman/Cgi/admin.py:1085
 msgid ""
 "<b>mod</b> -- The user's personal moderation flag.  If this is\n"
 "        set, postings from them will be moderated, otherwise they will be\n"
@@ -725,7 +732,7 @@
 "        està establert, els seus enviaments es moderaran. En cas contrari,\n"
 "        s'aprovaran."
 
-#: Mailman/Cgi/admin.py:1061
+#: Mailman/Cgi/admin.py:1089
 msgid ""
 "<b>hide</b> -- Is the member's address concealed on\n"
 "        the list of subscribers?"
@@ -733,7 +740,7 @@
 "<b>amaga</b> -- s'ha d'amagar l'adreça del subscriptor a la\n"
 "        llista de subscriptors"
 
-#: Mailman/Cgi/admin.py:1063
+#: Mailman/Cgi/admin.py:1091
 msgid ""
 "<b>nomail</b> -- Is delivery to the member disabled?  If so, an\n"
 "        abbreviation will be given describing the reason for the disabled\n"
@@ -773,7 +780,7 @@
 "                    antigues del Mailman.\n"
 "            </ul>"
 
-#: Mailman/Cgi/admin.py:1078
+#: Mailman/Cgi/admin.py:1106
 msgid ""
 "<b>ack</b> -- Does the member get acknowledgements of their\n"
 "        posts?"
@@ -781,7 +788,7 @@
 "<b>confirmació</b> -- si el subscriptor rep confirmació dels\n"
 "        seus enviaments"
 
-#: Mailman/Cgi/admin.py:1081
+#: Mailman/Cgi/admin.py:1109
 msgid ""
 "<b>not metoo</b> -- Does the member want to avoid copies of their\n"
 "        own postings?"
@@ -789,7 +796,7 @@
 "<b>sense còpia</b> -- si el subscriptor no vol rebre còpia dels\n"
 "        seus enviaments"
 
-#: Mailman/Cgi/admin.py:1084
+#: Mailman/Cgi/admin.py:1112
 msgid ""
 "<b>nodupes</b> -- Does the member want to avoid duplicates of the\n"
 "        same message?"
@@ -797,7 +804,7 @@
 "<b>sense dupls</b> -- si el subscriptor no vol rebre duplicats d'un\n"
 "        mateix missatge"
 
-#: Mailman/Cgi/admin.py:1087
+#: Mailman/Cgi/admin.py:1115
 msgid ""
 "<b>digest</b> -- Does the member get messages in digests?\n"
 "        (otherwise, individual messages)"
@@ -805,7 +812,7 @@
 "<b>agrupats</b> -- si el subscriptor rep els missatges agrupats\n"
 "        (en cas contrari, rebrà els missatges individuals)"
 
-#: Mailman/Cgi/admin.py:1090
+#: Mailman/Cgi/admin.py:1118
 msgid ""
 "<b>plain</b> -- If getting digests, does the member get plain\n"
 "        text digests?  (otherwise, MIME)"
@@ -813,19 +820,19 @@
 "<b>text pla</b> -- en cas de rebre missatges agrupats, si s'envien\n"
 "        en text pla (en cas contrari, s'enviaran en MIME)"
 
-#: Mailman/Cgi/admin.py:1092
+#: Mailman/Cgi/admin.py:1120
 msgid "<b>language</b> -- Language preferred by the user"
 msgstr "<b>llengua</b> -- llengua preferida de l'usuari"
 
-#: Mailman/Cgi/admin.py:1106
+#: Mailman/Cgi/admin.py:1134
 msgid "Click here to hide the legend for this table."
 msgstr "Feu clic aquí per a amagar la llegenda d'aquesta taula."
 
-#: Mailman/Cgi/admin.py:1110
+#: Mailman/Cgi/admin.py:1138
 msgid "Click here to include the legend for this table."
 msgstr "Feu clic aquí per a mostrar la llegenda d'aquesta taula."
 
-#: Mailman/Cgi/admin.py:1117
+#: Mailman/Cgi/admin.py:1145
 msgid ""
 "<p><em>To view more members, click on the appropriate\n"
 "        range listed below:</em>"
@@ -833,29 +840,29 @@
 "<p><em>Per a veure més subscriptors, feu clic al rang corresponent\n"
 "       que es llista a continuació:</em>"
 
-#: Mailman/Cgi/admin.py:1126
+#: Mailman/Cgi/admin.py:1154
 msgid "from %(start)s to %(end)s"
 msgstr "des de %(start)s fins a %(end)s"
 
-#: Mailman/Cgi/admin.py:1139
+#: Mailman/Cgi/admin.py:1167
 msgid "Subscribe these users now or invite them?"
 msgstr "Voleu subscriure a aquests usuaris immediatament, o bé convidar-los?"
 
-#: Mailman/Cgi/admin.py:1141
+#: Mailman/Cgi/admin.py:1169
 msgid "Invite"
 msgstr "Convida'ls"
 
 # FIXME: Subscriu-los vs Subscriu-me. La segona és molt més visible. jm
-#: Mailman/Cgi/admin.py:1141 Mailman/Cgi/listinfo.py:182
+#: Mailman/Cgi/admin.py:1169 Mailman/Cgi/listinfo.py:182
 msgid "Subscribe"
 msgstr "Subscriu"
 
-#: Mailman/Cgi/admin.py:1147
+#: Mailman/Cgi/admin.py:1175
 msgid "Send welcome messages to new subscribees?"
 msgstr "Voleu enviar el missatge de benvinguda als subscriptors nous?"
 
-#: Mailman/Cgi/admin.py:1149 Mailman/Cgi/admin.py:1158
-#: Mailman/Cgi/admin.py:1191 Mailman/Cgi/admin.py:1199
+#: Mailman/Cgi/admin.py:1177 Mailman/Cgi/admin.py:1186
+#: Mailman/Cgi/admin.py:1219 Mailman/Cgi/admin.py:1227
 #: Mailman/Cgi/confirm.py:292 Mailman/Cgi/create.py:353
 #: Mailman/Cgi/create.py:388 Mailman/Cgi/create.py:426
 #: Mailman/Cgi/rmlist.py:230 Mailman/Gui/Archive.py:33
@@ -865,25 +872,25 @@
 #: Mailman/Gui/Bounce.py:155 Mailman/Gui/ContentFilter.py:74
 #: Mailman/Gui/ContentFilter.py:116 Mailman/Gui/ContentFilter.py:120
 #: Mailman/Gui/Digest.py:46 Mailman/Gui/Digest.py:62 Mailman/Gui/Digest.py:84
-#: Mailman/Gui/Digest.py:89 Mailman/Gui/General.py:156
-#: Mailman/Gui/General.py:162 Mailman/Gui/General.py:240
-#: Mailman/Gui/General.py:267 Mailman/Gui/General.py:294
-#: Mailman/Gui/General.py:305 Mailman/Gui/General.py:308
-#: Mailman/Gui/General.py:318 Mailman/Gui/General.py:323
-#: Mailman/Gui/General.py:329 Mailman/Gui/General.py:349
-#: Mailman/Gui/General.py:381 Mailman/Gui/General.py:404
-#: Mailman/Gui/General.py:421 Mailman/Gui/NonDigest.py:45
+#: Mailman/Gui/Digest.py:89 Mailman/Gui/General.py:157
+#: Mailman/Gui/General.py:163 Mailman/Gui/General.py:241
+#: Mailman/Gui/General.py:268 Mailman/Gui/General.py:295
+#: Mailman/Gui/General.py:306 Mailman/Gui/General.py:309
+#: Mailman/Gui/General.py:319 Mailman/Gui/General.py:324
+#: Mailman/Gui/General.py:330 Mailman/Gui/General.py:350
+#: Mailman/Gui/General.py:382 Mailman/Gui/General.py:405
+#: Mailman/Gui/General.py:422 Mailman/Gui/NonDigest.py:45
 #: Mailman/Gui/NonDigest.py:53 Mailman/Gui/NonDigest.py:140
-#: Mailman/Gui/Privacy.py:110 Mailman/Gui/Privacy.py:116
-#: Mailman/Gui/Privacy.py:149 Mailman/Gui/Privacy.py:197
-#: Mailman/Gui/Privacy.py:312 Mailman/Gui/Privacy.py:331
-#: Mailman/Gui/Usenet.py:52 Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93
-#: Mailman/Gui/Usenet.py:105
+#: Mailman/Gui/NonDigest.py:162 Mailman/Gui/Privacy.py:110
+#: Mailman/Gui/Privacy.py:116 Mailman/Gui/Privacy.py:149
+#: Mailman/Gui/Privacy.py:197 Mailman/Gui/Privacy.py:312
+#: Mailman/Gui/Privacy.py:331 Mailman/Gui/Usenet.py:52
+#: Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93 Mailman/Gui/Usenet.py:105
 msgid "No"
 msgstr "No"
 
-#: Mailman/Cgi/admin.py:1149 Mailman/Cgi/admin.py:1158
-#: Mailman/Cgi/admin.py:1191 Mailman/Cgi/admin.py:1199
+#: Mailman/Cgi/admin.py:1177 Mailman/Cgi/admin.py:1186
+#: Mailman/Cgi/admin.py:1219 Mailman/Cgi/admin.py:1227
 #: Mailman/Cgi/confirm.py:292 Mailman/Cgi/create.py:353
 #: Mailman/Cgi/create.py:388 Mailman/Cgi/create.py:426
 #: Mailman/Cgi/rmlist.py:230 Mailman/Gui/Archive.py:33
@@ -893,37 +900,38 @@
 #: Mailman/Gui/ContentFilter.py:74 Mailman/Gui/ContentFilter.py:116
 #: Mailman/Gui/ContentFilter.py:120 Mailman/Gui/Digest.py:46
 #: Mailman/Gui/Digest.py:62 Mailman/Gui/Digest.py:84 Mailman/Gui/Digest.py:89
-#: Mailman/Gui/General.py:156 Mailman/Gui/General.py:162
-#: Mailman/Gui/General.py:240 Mailman/Gui/General.py:267
-#: Mailman/Gui/General.py:294 Mailman/Gui/General.py:305
-#: Mailman/Gui/General.py:308 Mailman/Gui/General.py:318
-#: Mailman/Gui/General.py:323 Mailman/Gui/General.py:329
-#: Mailman/Gui/General.py:349 Mailman/Gui/General.py:381
-#: Mailman/Gui/General.py:404 Mailman/Gui/General.py:421
+#: Mailman/Gui/General.py:157 Mailman/Gui/General.py:163
+#: Mailman/Gui/General.py:241 Mailman/Gui/General.py:268
+#: Mailman/Gui/General.py:295 Mailman/Gui/General.py:306
+#: Mailman/Gui/General.py:309 Mailman/Gui/General.py:319
+#: Mailman/Gui/General.py:324 Mailman/Gui/General.py:330
+#: Mailman/Gui/General.py:350 Mailman/Gui/General.py:382
+#: Mailman/Gui/General.py:405 Mailman/Gui/General.py:422
 #: Mailman/Gui/NonDigest.py:45 Mailman/Gui/NonDigest.py:53
-#: Mailman/Gui/NonDigest.py:140 Mailman/Gui/Privacy.py:110
-#: Mailman/Gui/Privacy.py:116 Mailman/Gui/Privacy.py:149
-#: Mailman/Gui/Privacy.py:197 Mailman/Gui/Privacy.py:312
-#: Mailman/Gui/Privacy.py:331 Mailman/Gui/Usenet.py:52
-#: Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93 Mailman/Gui/Usenet.py:105
+#: Mailman/Gui/NonDigest.py:140 Mailman/Gui/NonDigest.py:162
+#: Mailman/Gui/Privacy.py:110 Mailman/Gui/Privacy.py:116
+#: Mailman/Gui/Privacy.py:149 Mailman/Gui/Privacy.py:197
+#: Mailman/Gui/Privacy.py:312 Mailman/Gui/Privacy.py:331
+#: Mailman/Gui/Usenet.py:52 Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93
+#: Mailman/Gui/Usenet.py:105
 msgid "Yes"
 msgstr "Sí"
 
-#: Mailman/Cgi/admin.py:1156
+#: Mailman/Cgi/admin.py:1184
 msgid "Send notifications of new subscriptions to the list owner?"
 msgstr ""
 "Voleu enviar notificacions de les subscripcions noves a l'administrador de "
 "la llista?"
 
-#: Mailman/Cgi/admin.py:1164 Mailman/Cgi/admin.py:1205
+#: Mailman/Cgi/admin.py:1192 Mailman/Cgi/admin.py:1233
 msgid "Enter one address per line below..."
 msgstr "Introduïu una adreça per línia aquí sota..."
 
-#: Mailman/Cgi/admin.py:1169 Mailman/Cgi/admin.py:1210
+#: Mailman/Cgi/admin.py:1197 Mailman/Cgi/admin.py:1238
 msgid "...or specify a file to upload:"
 msgstr "...o especifiqueu un fitxer per a pujar:"
 
-#: Mailman/Cgi/admin.py:1174
+#: Mailman/Cgi/admin.py:1202
 msgid ""
 "Below, enter additional text to be added to the\n"
 "    top of your invitation or the subscription notification.  Include at "
@@ -934,20 +942,20 @@
 "    a la part superior de la vostra invitació o notificació de subscripció.\n"
 "    Incloeu almenys una línia en blanc al final..."
 
-#: Mailman/Cgi/admin.py:1189
+#: Mailman/Cgi/admin.py:1217
 msgid "Send unsubscription acknowledgement to the user?"
 msgstr ""
 "Voleu enviar una confirmació de la cancel·lació de la subscripció a l'usuari?"
 
-#: Mailman/Cgi/admin.py:1197
+#: Mailman/Cgi/admin.py:1225
 msgid "Send notifications to the list owner?"
 msgstr "Voleu enviar notificacions a l'administrador de la llista?"
 
-#: Mailman/Cgi/admin.py:1219
+#: Mailman/Cgi/admin.py:1247
 msgid "Change list ownership passwords"
 msgstr "Canvi de les contrasenyes d'administració de la llista"
 
-#: Mailman/Cgi/admin.py:1222
+#: Mailman/Cgi/admin.py:1250
 msgid ""
 "The <em>list administrators</em> are the people who have ultimate control "
 "over\n"
@@ -986,237 +994,262 @@
 "proveir les adreces de correu electrònic dels moderadors a la\n"
 "<a href=\"%(adminurl)s/general\">secció d'opcions generals</a>."
 
-#: Mailman/Cgi/admin.py:1241
+#: Mailman/Cgi/admin.py:1269
 msgid "Enter new administrator password:"
 msgstr "Introduïu una contrasenya nova per a l'administrador:"
 
-#: Mailman/Cgi/admin.py:1243
+#: Mailman/Cgi/admin.py:1271
 msgid "Confirm administrator password:"
 msgstr "Confirmeu la contrasenya de l'administrador:"
 
-#: Mailman/Cgi/admin.py:1248
+#: Mailman/Cgi/admin.py:1276
 msgid "Enter new moderator password:"
 msgstr "Introduïu una contrasenya nova per al moderador:"
 
-#: Mailman/Cgi/admin.py:1250
+#: Mailman/Cgi/admin.py:1278
 msgid "Confirm moderator password:"
 msgstr "Confirmeu la contrasenya del moderador:"
 
-#: Mailman/Cgi/admin.py:1260
+#: Mailman/Cgi/admin.py:1282
+msgid ""
+"In addition to the above passwords you may specify a password for\n"
+"pre-approving posts to the list. Either of the above two passwords can\n"
+"be used in an Approved: header or first body line pseudo-header to\n"
+"pre-approve a post that would otherwise be held for moderation. In\n"
+"addition, the password below, if set, can be used for that purpose and\n"
+"no other."
+msgstr ""
+
+#: Mailman/Cgi/admin.py:1293
+#, fuzzy
+msgid "Enter new poster password:"
+msgstr "Introduïu una contrasenya nova per al moderador:"
+
+#: Mailman/Cgi/admin.py:1295
+#, fuzzy
+msgid "Confirm poster password:"
+msgstr "Confirmeu la contrasenya del moderador:"
+
+#: Mailman/Cgi/admin.py:1304
 msgid "Submit Your Changes"
 msgstr "Envia els canvis"
 
-#: Mailman/Cgi/admin.py:1283
+#: Mailman/Cgi/admin.py:1327
 msgid "Moderator passwords did not match"
 msgstr "Les contrasenyes del moderador no coincideixen"
 
-#: Mailman/Cgi/admin.py:1293
+#: Mailman/Cgi/admin.py:1338
+#, fuzzy
+msgid "Poster passwords did not match"
+msgstr "La vostra contrasenya no coincideix."
+
+#: Mailman/Cgi/admin.py:1348
 msgid "Administrator passwords did not match"
 msgstr "Les contrasenyes de l'administrador no coincideixen"
 
-#: Mailman/Cgi/admin.py:1343
+#: Mailman/Cgi/admin.py:1398
 msgid "Already a member"
 msgstr "Ja sou membre"
 
-#: Mailman/Cgi/admin.py:1346
+#: Mailman/Cgi/admin.py:1401
 msgid "<blank line>"
 msgstr "<línia en blanc>"
 
-#: Mailman/Cgi/admin.py:1347 Mailman/Cgi/admin.py:1350
+#: Mailman/Cgi/admin.py:1402 Mailman/Cgi/admin.py:1405
 msgid "Bad/Invalid email address"
 msgstr "Adreça de correu electrònic errònia/invàlida"
 
-#: Mailman/Cgi/admin.py:1353
+#: Mailman/Cgi/admin.py:1408
 msgid "Hostile address (illegal characters)"
 msgstr "Adreça hostil (caràcters il·legals)"
 
-#: Mailman/Cgi/admin.py:1356 bin/add_members:140 bin/clone_member:136
+#: Mailman/Cgi/admin.py:1411 bin/add_members:140 bin/clone_member:136
 #: bin/sync_members:264
 msgid "Banned address (matched %(pattern)s)"
 msgstr "L'adreça està bandejada (coincideix amb %(pattern)s)"
 
-#: Mailman/Cgi/admin.py:1362
+#: Mailman/Cgi/admin.py:1417
 msgid "Successfully invited:"
 msgstr "Convidat satisfactòriament:"
 
-#: Mailman/Cgi/admin.py:1364
+#: Mailman/Cgi/admin.py:1419
 msgid "Successfully subscribed:"
 msgstr "Subscrit satisfactòriament:"
 
-#: Mailman/Cgi/admin.py:1369
+#: Mailman/Cgi/admin.py:1424
 msgid "Error inviting:"
 msgstr "Error en convidar:"
 
-#: Mailman/Cgi/admin.py:1371
+#: Mailman/Cgi/admin.py:1426
 msgid "Error subscribing:"
 msgstr "Error en subscriure:"
 
-#: Mailman/Cgi/admin.py:1400
+#: Mailman/Cgi/admin.py:1455
 msgid "Successfully Unsubscribed:"
 msgstr "Subscripció cancel·lada satisfactòriament:"
 
-#: Mailman/Cgi/admin.py:1405
+#: Mailman/Cgi/admin.py:1460
 msgid "Cannot unsubscribe non-members:"
 msgstr "No es pot cancel·lar la subscripció d'adreces que no són membres:"
 
-#: Mailman/Cgi/admin.py:1417
+#: Mailman/Cgi/admin.py:1472
 msgid "Bad moderation flag value"
 msgstr "Valor erroni del senyal de moderació"
 
-#: Mailman/Cgi/admin.py:1439
+#: Mailman/Cgi/admin.py:1494
 msgid "Not subscribed"
 msgstr "No subscrit"
 
-#: Mailman/Cgi/admin.py:1442
+#: Mailman/Cgi/admin.py:1497
 msgid "Ignoring changes to deleted member: %(user)s"
 msgstr "S'estan ignorant els canvis al membre suprimit: %(user)s"
 
-#: Mailman/Cgi/admin.py:1482
+#: Mailman/Cgi/admin.py:1537
 msgid "Successfully Removed:"
 msgstr "Suprimit satisfactòriament:"
 
-#: Mailman/Cgi/admin.py:1486
+#: Mailman/Cgi/admin.py:1541
 msgid "Error Unsubscribing:"
 msgstr "Error en cancel·lar la subscripció:"
 
-#: Mailman/Cgi/admindb.py:163 Mailman/Cgi/admindb.py:171
+#: Mailman/Cgi/admindb.py:176 Mailman/Cgi/admindb.py:185
 msgid "%(realname)s Administrative Database"
 msgstr "Base de dades administrativa de la llista %(realname)s"
 
-#: Mailman/Cgi/admindb.py:166
+#: Mailman/Cgi/admindb.py:179
 msgid "%(realname)s Administrative Database Results"
 msgstr "Resultats de la base de dades administrativa de la llista %(realname)s"
 
-#: Mailman/Cgi/admindb.py:174
+#: Mailman/Cgi/admindb.py:188
 msgid "There are no pending requests."
 msgstr "No hi ha cap sol·licitud pendent."
 
-#: Mailman/Cgi/admindb.py:177
+#: Mailman/Cgi/admindb.py:191
 msgid "Click here to reload this page."
 msgstr "Feu clic aquí per a tornar a carregar aquesta pàgina."
 
-#: Mailman/Cgi/admindb.py:188
+#: Mailman/Cgi/admindb.py:205
 msgid "Detailed instructions for the administrative database"
 msgstr "Instruccions detallades per a la base de dades administrativa"
 
-#: Mailman/Cgi/admindb.py:192
+#: Mailman/Cgi/admindb.py:209
 msgid "Administrative requests for mailing list:"
 msgstr "Sol·licituds administratives per a la llista de correu:"
 
-#: Mailman/Cgi/admindb.py:195 Mailman/Cgi/admindb.py:251
+#: Mailman/Cgi/admindb.py:212 Mailman/Cgi/admindb.py:268
 msgid "Submit All Data"
 msgstr "Envia totes les dades"
 
-#: Mailman/Cgi/admindb.py:201 Mailman/Cgi/admindb.py:249
+#: Mailman/Cgi/admindb.py:218 Mailman/Cgi/admindb.py:266
 msgid "Discard all messages marked <em>Defer</em>"
 msgstr "Descarta tots els missatges marcats com a <em>Ajorna</em>"
 
-#: Mailman/Cgi/admindb.py:215
+#: Mailman/Cgi/admindb.py:232
 msgid "all of %(esender)s's held messages."
 msgstr "tots els missatges retinguts de %(esender)s."
 
-#: Mailman/Cgi/admindb.py:220
+#: Mailman/Cgi/admindb.py:237
 msgid "a single held message."
 msgstr "un sol missatge retingut."
 
-#: Mailman/Cgi/admindb.py:225
+#: Mailman/Cgi/admindb.py:242
 msgid "all held messages."
 msgstr "tots els missatges retinguts."
 
-#: Mailman/Cgi/admindb.py:266
+#: Mailman/Cgi/admindb.py:287
 msgid "Mailman Administrative Database Error"
 msgstr "S'ha produït un error a la base de dades administrativa del Mailman"
 
-#: Mailman/Cgi/admindb.py:271
+#: Mailman/Cgi/admindb.py:292
 msgid "list of available mailing lists."
 msgstr "llista de les llista de correu disponibles"
 
-#: Mailman/Cgi/admindb.py:272
+#: Mailman/Cgi/admindb.py:293
 msgid "You must specify a list name.  Here is the %(link)s"
 msgstr "Heu d'especificar el nom d'una llista. Aquí hi ha la %(link)s"
 
-#: Mailman/Cgi/admindb.py:285
+#: Mailman/Cgi/admindb.py:306
 msgid "Subscription Requests"
 msgstr "Sol·licituds de subscripció"
 
-#: Mailman/Cgi/admindb.py:287
+#: Mailman/Cgi/admindb.py:308
 msgid "Address/name"
 msgstr "Adreça/nom"
 
-#: Mailman/Cgi/admindb.py:288 Mailman/Cgi/admindb.py:339
+#: Mailman/Cgi/admindb.py:309 Mailman/Cgi/admindb.py:360
 msgid "Your decision"
 msgstr "La vostra decisió"
 
-#: Mailman/Cgi/admindb.py:289 Mailman/Cgi/admindb.py:340
+#: Mailman/Cgi/admindb.py:310 Mailman/Cgi/admindb.py:361
 msgid "Reason for refusal"
 msgstr "Motiu del rebuig"
 
-#: Mailman/Cgi/admindb.py:307 Mailman/Cgi/admindb.py:366
-#: Mailman/Cgi/admindb.py:641
+#: Mailman/Cgi/admindb.py:328 Mailman/Cgi/admindb.py:387
+#: Mailman/Cgi/admindb.py:671 Mailman/Commands/cmd_confirm.py:90
 msgid "Approve"
 msgstr "Aprova"
 
-#: Mailman/Cgi/admindb.py:317
+#: Mailman/Cgi/admindb.py:338
 msgid "Permanently ban from this list"
 msgstr "Bandeja permanentment d'aquesta llista"
 
-#: Mailman/Cgi/admindb.py:338
+#: Mailman/Cgi/admindb.py:359
 msgid "User address/name"
 msgstr "Adreça/nom de l'usuari"
 
-#: Mailman/Cgi/admindb.py:378
+#: Mailman/Cgi/admindb.py:399
 msgid "Unsubscription Requests"
 msgstr "Sol·licituds de cancel·lació de subscripció"
 
-#: Mailman/Cgi/admindb.py:390
+#: Mailman/Cgi/admindb.py:411
 msgid "Held Messages"
 msgstr "Missatges retinguts"
 
-#: Mailman/Cgi/admindb.py:403 Mailman/Cgi/admindb.py:624
+#: Mailman/Cgi/admindb.py:424 Mailman/Cgi/admindb.py:654
 msgid "From:"
 msgstr "De:"
 
-#: Mailman/Cgi/admindb.py:406
+#: Mailman/Cgi/admindb.py:427
 msgid "Action to take on all these held messages:"
 msgstr "Acció a dur a terme per a tots aquests missatges retinguts:"
 
-#: Mailman/Cgi/admindb.py:418
+#: Mailman/Cgi/admindb.py:439
 msgid "Preserve messages for the site administrator"
 msgstr "Mantingues els missatges per a l'administrador del lloc."
 
-#: Mailman/Cgi/admindb.py:424
+#: Mailman/Cgi/admindb.py:445
 msgid "Forward messages (individually) to:"
 msgstr "Reenvia els missatges (individualment) a:"
 
-#: Mailman/Cgi/admindb.py:442
+#: Mailman/Cgi/admindb.py:463
 msgid "Clear this member's <em>moderate</em> flag"
 msgstr "Neteja el senyalador de <em>moderació</em> d'aquest membre"
 
-#: Mailman/Cgi/admindb.py:446
+#: Mailman/Cgi/admindb.py:467
 msgid "<em>The sender is now a member of this list</em>"
 msgstr "<em>El remitent és ara membre de la llista</em>"
 
-#: Mailman/Cgi/admindb.py:455
+#: Mailman/Cgi/admindb.py:476
 msgid "Add <b>%(esender)s</b> to one of these sender filters:"
 msgstr "Afegeix <b>%(esender)s</b> a un dels filtres de remitents següents:"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Accepts"
 msgstr "Acceptacions"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Discards"
 msgstr "Descarts"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Holds"
 msgstr "Retencions"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Rejects"
 msgstr "Rebutjos"
 
-#: Mailman/Cgi/admindb.py:469
+#: Mailman/Cgi/admindb.py:490
 msgid ""
 "Ban <b>%(esender)s</b> from ever subscribing to this\n"
 "                    mailing list"
@@ -1224,7 +1257,7 @@
 "Bandeja <b>%(esender)s</b> perquè mai pugui subscriure's\n"
 "                    aquesta llista de correu"
 
-#: Mailman/Cgi/admindb.py:474
+#: Mailman/Cgi/admindb.py:495
 msgid ""
 "Click on the message number to view the individual\n"
 "            message, or you can "
@@ -1232,85 +1265,85 @@
 "Feu clic al número del missatge per a veure el missatge\n"
 "            individual, o també podeu "
 
-#: Mailman/Cgi/admindb.py:476
+#: Mailman/Cgi/admindb.py:497
 msgid "view all messages from %(esender)s"
 msgstr "veure tots els missatges de %(esender)s"
 
-#: Mailman/Cgi/admindb.py:498 Mailman/Cgi/admindb.py:627
+#: Mailman/Cgi/admindb.py:519 Mailman/Cgi/admindb.py:657
 msgid "Subject:"
 msgstr "Assumpte:"
 
-#: Mailman/Cgi/admindb.py:501
+#: Mailman/Cgi/admindb.py:522
 msgid " bytes"
 msgstr " bytes"
 
-#: Mailman/Cgi/admindb.py:501
+#: Mailman/Cgi/admindb.py:522
 msgid "Size:"
 msgstr "Mida:"
 
-#: Mailman/Cgi/admindb.py:505 Mailman/Handlers/Scrubber.py:203
+#: Mailman/Cgi/admindb.py:526 Mailman/Handlers/Scrubber.py:203
 #: Mailman/Handlers/Scrubber.py:301 Mailman/Handlers/Scrubber.py:303
 msgid "not available"
 msgstr "no disponible"
 
-#: Mailman/Cgi/admindb.py:506 Mailman/Cgi/admindb.py:630
+#: Mailman/Cgi/admindb.py:527 Mailman/Cgi/admindb.py:660
 msgid "Reason:"
 msgstr "Motiu:"
 
-#: Mailman/Cgi/admindb.py:510 Mailman/Cgi/admindb.py:634
+#: Mailman/Cgi/admindb.py:531 Mailman/Cgi/admindb.py:664
 msgid "Received:"
 msgstr "Rebut:"
 
-#: Mailman/Cgi/admindb.py:565
+#: Mailman/Cgi/admindb.py:586
 msgid "Posting Held for Approval"
 msgstr "El missatge enviat es retindrà fins la seva aprovació"
 
-#: Mailman/Cgi/admindb.py:567
+#: Mailman/Cgi/admindb.py:588
 msgid " (%(count)d of %(total)d)"
 msgstr " (%(count)d de %(total)d)"
 
-#: Mailman/Cgi/admindb.py:578
+#: Mailman/Cgi/admindb.py:599
 msgid "<em>Message with id #%(id)d was lost."
 msgstr "<em>El missatge amb id #%(id)d s'ha perdut."
 
-#: Mailman/Cgi/admindb.py:587
+#: Mailman/Cgi/admindb.py:608
 msgid "<em>Message with id #%(id)d is corrupted."
 msgstr "<em>El missatge amb id #%(id)d està malmès."
 
-#: Mailman/Cgi/admindb.py:651
+#: Mailman/Cgi/admindb.py:681
 msgid "Preserve message for site administrator"
 msgstr "Mantingues una còpia del missatge per a l'administrador del lloc"
 
-#: Mailman/Cgi/admindb.py:655
+#: Mailman/Cgi/admindb.py:685
 msgid "Additionally, forward this message to: "
 msgstr "Addicionalment, reenvia aquest missatge a: "
 
-#: Mailman/Cgi/admindb.py:659 Mailman/Cgi/admindb.py:724
-#: Mailman/Cgi/admindb.py:787 Mailman/Cgi/admindb.py:789
+#: Mailman/Cgi/admindb.py:689 Mailman/Cgi/admindb.py:754
+#: Mailman/Cgi/admindb.py:817 Mailman/Cgi/admindb.py:819
 msgid "[No explanation given]"
 msgstr "[No s'ha donat cap explicació]"
 
-#: Mailman/Cgi/admindb.py:661
+#: Mailman/Cgi/admindb.py:691
 msgid "If you reject this post,<br>please explain (optional):"
 msgstr "Si rebutgeu aquest missatge,<br>expliqueu-ne el motiu (opcional):"
 
-#: Mailman/Cgi/admindb.py:667
+#: Mailman/Cgi/admindb.py:697
 msgid "Message Headers:"
 msgstr "Capçaleres del missatge:"
 
-#: Mailman/Cgi/admindb.py:672
+#: Mailman/Cgi/admindb.py:702
 msgid "Message Excerpt:"
 msgstr "Resum del missatge:"
 
-#: Mailman/Cgi/admindb.py:824
+#: Mailman/Cgi/admindb.py:854
 msgid "Database Updated..."
 msgstr "S'ha actualitzat la base de dades..."
 
-#: Mailman/Cgi/admindb.py:827
+#: Mailman/Cgi/admindb.py:857
 msgid " is already a member"
 msgstr " ja és un membre"
 
-#: Mailman/Cgi/admindb.py:830
+#: Mailman/Cgi/admindb.py:860
 msgid "%(addr)s is banned (matched: %(patt)s)"
 msgstr "%(addr)s està bandejat (coincideix amb: %(patt)s)"
 
@@ -1523,7 +1556,7 @@
 "            notícies de la seva decisió."
 
 #: Mailman/Cgi/confirm.py:371 Mailman/Cgi/confirm.py:436
-#: Mailman/Cgi/confirm.py:525 Mailman/Cgi/confirm.py:761
+#: Mailman/Cgi/confirm.py:525 Mailman/Cgi/confirm.py:762
 msgid ""
 "Invalid confirmation string.  It is\n"
 "            possible that you are attempting to confirm a request for an\n"
@@ -1646,8 +1679,8 @@
 "de\n"
 "    cancel·lació de subscripció."
 
-#: Mailman/Cgi/confirm.py:491 Mailman/Cgi/options.py:761
-#: Mailman/Cgi/options.py:905 Mailman/Cgi/options.py:915
+#: Mailman/Cgi/confirm.py:491 Mailman/Cgi/options.py:767
+#: Mailman/Cgi/options.py:911 Mailman/Cgi/options.py:921
 msgid "Unsubscribe"
 msgstr "Cancel·la la subscripció"
 
@@ -1758,7 +1791,7 @@
 msgid "Change address"
 msgstr "Canvia l'adreça"
 
-#: Mailman/Cgi/confirm.py:611 Mailman/Cgi/confirm.py:726
+#: Mailman/Cgi/confirm.py:611 Mailman/Cgi/confirm.py:727
 msgid "Continue awaiting approval"
 msgstr "Continua esperant l'aprovació"
 
@@ -1770,11 +1803,11 @@
 "Bé, el moderador de la llista encara tindrà\n"
 "    l'oportunitat d'aprovar o denegar aquest missatge."
 
-#: Mailman/Cgi/confirm.py:646
+#: Mailman/Cgi/confirm.py:647
 msgid "Sender discarded message via web."
 msgstr "El remitent ha descartat el missatge via web."
 
-#: Mailman/Cgi/confirm.py:648
+#: Mailman/Cgi/confirm.py:649
 msgid ""
 "The held message with the Subject:\n"
 "            header <em>%(subject)s</em> could not be found.  The most "
@@ -1790,11 +1823,11 @@
 "         de la llista ja l'hagi aprovat o denegat. No l'has pogut cancel·lar "
 "a temps."
 
-#: Mailman/Cgi/confirm.py:656
+#: Mailman/Cgi/confirm.py:657
 msgid "Posted message canceled"
 msgstr "L'enviament ha estat cancel·lat"
 
-#: Mailman/Cgi/confirm.py:659
+#: Mailman/Cgi/confirm.py:660
 msgid ""
 "            You have successfully canceled the posting of your message with\n"
 "            the Subject: header <em>%(subject)s</em> to the mailing list\n"
@@ -1806,11 +1839,11 @@
 "correu\n"
 "            %(listname)s."
 
-#: Mailman/Cgi/confirm.py:670
+#: Mailman/Cgi/confirm.py:671
 msgid "Cancel held message posting"
 msgstr "Cancel·la l'enviament del missatge retingut"
 
-#: Mailman/Cgi/confirm.py:695
+#: Mailman/Cgi/confirm.py:696
 msgid ""
 "The held message you were referred to has\n"
 "        already been handled by the list administrator."
@@ -1818,7 +1851,7 @@
 "El missatge retingut al que s'estava referint\n"
 "ja ha estat tractat per l'administrador de la llista. "
 
-#: Mailman/Cgi/confirm.py:709
+#: Mailman/Cgi/confirm.py:710
 msgid ""
 "Your confirmation is required in order to cancel the\n"
 "    posting of your message to the mailing list <em>%(listname)s</em>:\n"
@@ -1847,11 +1880,11 @@
 "continuar\n"
 "    esperant que el moderador aprovi o denegui el missatge."
 
-#: Mailman/Cgi/confirm.py:725
+#: Mailman/Cgi/confirm.py:726
 msgid "Cancel posting"
 msgstr "Cancel·la l'enviament"
 
-#: Mailman/Cgi/confirm.py:737
+#: Mailman/Cgi/confirm.py:738
 msgid ""
 "You have canceled the re-enabling of your membership.  If\n"
 "    we continue to receive bounces from your address, it could be deleted "
@@ -1862,11 +1895,11 @@
 "     continuem rebent rebots de la vostra adreça, podria ser eliminada\n"
 "     de la llista de correu."
 
-#: Mailman/Cgi/confirm.py:767
+#: Mailman/Cgi/confirm.py:768
 msgid "Membership re-enabled."
 msgstr "Subscripció reactivada."
 
-#: Mailman/Cgi/confirm.py:771
+#: Mailman/Cgi/confirm.py:772
 msgid ""
 "            You have successfully re-enabled your membership in the\n"
 "            %(listname)s mailing list.  You can now <a\n"
@@ -1879,11 +1912,11 @@
 "            pàgina d'opcions de subscriptor</a>.\n"
 "           "
 
-#: Mailman/Cgi/confirm.py:783
+#: Mailman/Cgi/confirm.py:784
 msgid "Re-enable mailing list membership"
 msgstr "Re-activar subscripció a la llista de correu."
 
-#: Mailman/Cgi/confirm.py:800
+#: Mailman/Cgi/confirm.py:801
 msgid ""
 "We're sorry, but you have already been unsubscribed\n"
 "        from this mailing list.  To re-subscribe, please visit the\n"
@@ -1894,11 +1927,11 @@
 "        aneu a la <a href=\"%(listinfourl)s\">pàgina d'informació de la "
 "llista</a>."
 
-#: Mailman/Cgi/confirm.py:815
+#: Mailman/Cgi/confirm.py:816
 msgid "<em>not available</em>"
 msgstr "<em>no disponible</em>"
 
-#: Mailman/Cgi/confirm.py:819
+#: Mailman/Cgi/confirm.py:820
 msgid ""
 "Your membership in the %(realname)s mailing list is\n"
 "    currently disabled due to excessive bounces.  Your confirmation is\n"
@@ -1938,11 +1971,11 @@
 "    reactivació de la vostra subscripció.\n"
 "    "
 
-#: Mailman/Cgi/confirm.py:839
+#: Mailman/Cgi/confirm.py:840
 msgid "Re-enable membership"
 msgstr "Reactiva la subscripció"
 
-#: Mailman/Cgi/confirm.py:840
+#: Mailman/Cgi/confirm.py:841
 msgid "Cancel"
 msgstr "Cancel·la"
 
@@ -2064,7 +2097,7 @@
 msgstr "Crea una llista de correu a %(hostname)s"
 
 #: Mailman/Cgi/create.py:303 Mailman/Cgi/rmlist.py:201
-#: Mailman/Gui/Bounce.py:187 Mailman/htmlformat.py:343
+#: Mailman/Gui/Bounce.py:187 Mailman/htmlformat.py:345
 msgid "Error: "
 msgstr "Error: "
 
@@ -2206,52 +2239,57 @@
 msgid "Welcome email text file"
 msgstr "Fitxer de text del correu de benvinguda"
 
-#: Mailman/Cgi/edithtml.py:60
+#: Mailman/Cgi/edithtml.py:49
+#, fuzzy
+msgid "Digest masthead"
+msgstr "capçalera del resum"
+
+#: Mailman/Cgi/edithtml.py:61
 msgid "List name is required."
 msgstr "Es requereix el nom de la llista."
 
 # FIXME: l'HTML o el HTML? jm
-#: Mailman/Cgi/edithtml.py:102
+#: Mailman/Cgi/edithtml.py:103
 msgid "%(realname)s -- Edit html for %(template_info)s"
 msgstr "%(realname)s -- Edita l'html per %(template_info)s"
 
-#: Mailman/Cgi/edithtml.py:108
+#: Mailman/Cgi/edithtml.py:109
 msgid "Edit HTML : Error"
 msgstr "Edita l'HTML: Error"
 
-#: Mailman/Cgi/edithtml.py:109
+#: Mailman/Cgi/edithtml.py:110
 msgid "%(safetemplatename)s: Invalid template"
 msgstr "%(safetemplatename)s: és una plantilla errònia"
 
-#: Mailman/Cgi/edithtml.py:114 Mailman/Cgi/edithtml.py:115
+#: Mailman/Cgi/edithtml.py:115 Mailman/Cgi/edithtml.py:116
 msgid "%(realname)s -- HTML Page Editing"
 msgstr "%(realname)s -- Edició de la pàgina HTML"
 
-#: Mailman/Cgi/edithtml.py:116
+#: Mailman/Cgi/edithtml.py:117
 msgid "Select page to edit:"
 msgstr "Seleccioneu una pàgina a editar:"
 
-#: Mailman/Cgi/edithtml.py:142
+#: Mailman/Cgi/edithtml.py:143
 msgid "View or edit the list configuration information."
 msgstr "Vegeu o editeu la informació de la configuració de la llista."
 
-#: Mailman/Cgi/edithtml.py:151
+#: Mailman/Cgi/edithtml.py:152
 msgid "When you are done making changes..."
 msgstr "Quan hageu acabat de fer canvis..."
 
-#: Mailman/Cgi/edithtml.py:152
+#: Mailman/Cgi/edithtml.py:153
 msgid "Submit Changes"
 msgstr "Envia els canvis"
 
-#: Mailman/Cgi/edithtml.py:159
+#: Mailman/Cgi/edithtml.py:160
 msgid "Can't have empty html page."
 msgstr "No hi pot haver una pàgina html buida."
 
-#: Mailman/Cgi/edithtml.py:160
+#: Mailman/Cgi/edithtml.py:161
 msgid "HTML Unchanged."
 msgstr "No s'ha modificat l'HTML."
 
-#: Mailman/Cgi/edithtml.py:166
+#: Mailman/Cgi/edithtml.py:167
 msgid ""
 "The page you saved contains suspicious HTML that could\n"
 "potentially expose your users to cross-site scripting attacks.  This change\n"
@@ -2268,19 +2306,19 @@
 "accés al vostre servidor del Mailman a través de l'intèrpret d'ordres\n"
 "              "
 
-#: Mailman/Cgi/edithtml.py:171
+#: Mailman/Cgi/edithtml.py:172
 msgid "See "
 msgstr "Vegeu "
 
-#: Mailman/Cgi/edithtml.py:174
+#: Mailman/Cgi/edithtml.py:175
 msgid "FAQ 4.48."
 msgstr "PMF 4.48"
 
-#: Mailman/Cgi/edithtml.py:175
+#: Mailman/Cgi/edithtml.py:176
 msgid "Page Unchanged."
 msgstr "No s'ha modificat la pàgina."
 
-#: Mailman/Cgi/edithtml.py:193
+#: Mailman/Cgi/edithtml.py:194
 msgid "HTML successfully updated."
 msgstr "S'ha actualitzat l'HTML satisfactòriament."
 
@@ -2344,7 +2382,7 @@
 msgid "Edit Options"
 msgstr "Edita les opcions"
 
-#: Mailman/Cgi/listinfo.py:201 Mailman/Cgi/options.py:870
+#: Mailman/Cgi/listinfo.py:201 Mailman/Cgi/options.py:876
 #: Mailman/Cgi/roster.py:118
 msgid "View this page in"
 msgstr "Mostra aquesta pàgina en"
@@ -2366,7 +2404,7 @@
 msgstr "Adreça de correu electrònic errònia: %(safeuser)s"
 
 #: Mailman/Cgi/options.py:128 Mailman/Cgi/options.py:193
-#: Mailman/Cgi/options.py:215
+#: Mailman/Cgi/options.py:215 Mailman/Cgi/private.py:154
 msgid "No such member: %(safeuser)s."
 msgstr "El membre no existeix: %(safeuser)s."
 
@@ -2402,8 +2440,8 @@
 "L'administrador de la llista no pot visualitzar les\n"
 "            altres subscripcions d'aquest usuari."
 
-#: Mailman/Cgi/options.py:286 Mailman/Cgi/options.py:329
-#: Mailman/Cgi/options.py:457 Mailman/Cgi/options.py:673
+#: Mailman/Cgi/options.py:286 Mailman/Cgi/options.py:335
+#: Mailman/Cgi/options.py:463 Mailman/Cgi/options.py:679
 msgid "Note: "
 msgstr "Nota: "
 
@@ -2419,7 +2457,11 @@
 "Feu clic en un enllaç per a visitar la vostra pàgina\n"
 "        d'opcions de la llista sol·licitada."
 
-#: Mailman/Cgi/options.py:326
+#: Mailman/Cgi/options.py:305
+msgid "nomail"
+msgstr ""
+
+#: Mailman/Cgi/options.py:332
 msgid ""
 "The list administrator may not change the names\n"
 "            or addresses for this user's other subscriptions.  However, the\n"
@@ -2430,15 +2472,15 @@
 "            maneres, s'ha canviat la subscripció per a aquesta llista de "
 "correu."
 
-#: Mailman/Cgi/options.py:349
+#: Mailman/Cgi/options.py:355
 msgid "Addresses did not match!"
 msgstr "Les adreces no coincideixen"
 
-#: Mailman/Cgi/options.py:354
+#: Mailman/Cgi/options.py:360
 msgid "You are already using that email address"
 msgstr "Ja esteu fent servir aquesta adreça de correu electrònic"
 
-#: Mailman/Cgi/options.py:366
+#: Mailman/Cgi/options.py:372
 msgid ""
 "The new address you requested %(newaddr)s is already a member of the\n"
 "%(listname)s mailing list, however you have also requested a global change "
@@ -2452,31 +2494,31 @@
 "qualsevol altra llista que contingui l'adreça %(safeuser)s també serà "
 "canviada."
 
-#: Mailman/Cgi/options.py:375
+#: Mailman/Cgi/options.py:381
 msgid "The new address is already a member: %(newaddr)s"
 msgstr "La nova adreça de correu electrònic ja es un membre: %(newaddr)s"
 
-#: Mailman/Cgi/options.py:381
+#: Mailman/Cgi/options.py:387
 msgid "Addresses may not be blank"
 msgstr "les adreces no poden estar en blanc"
 
-#: Mailman/Cgi/options.py:395
+#: Mailman/Cgi/options.py:401
 msgid "A confirmation message has been sent to %(newaddr)s. "
 msgstr "Un missatge de confirmació ha estat enviat a %(newaddr)s."
 
-#: Mailman/Cgi/options.py:404
+#: Mailman/Cgi/options.py:410
 msgid "Bad email address provided"
 msgstr "L'adreça proporcionada es errònia "
 
-#: Mailman/Cgi/options.py:406
+#: Mailman/Cgi/options.py:412
 msgid "Illegal email address provided"
 msgstr "L'adreça proporcionada es errònia "
 
-#: Mailman/Cgi/options.py:408
+#: Mailman/Cgi/options.py:414
 msgid "%(newaddr)s is already a member of the list."
 msgstr "%(newaddr)s ja es un membre de la llista."
 
-#: Mailman/Cgi/options.py:411
+#: Mailman/Cgi/options.py:417
 msgid ""
 "%(newaddr)s is banned from this list.  If you\n"
 "                      think this restriction is erroneous, please contact\n"
@@ -2487,11 +2529,11 @@
 "                      contacteu amb el propietari de la llista a %(owneraddr)"
 "s."
 
-#: Mailman/Cgi/options.py:422
+#: Mailman/Cgi/options.py:428
 msgid "Member name successfully changed. "
 msgstr "Nom de membre canviat satisfactòriament."
 
-#: Mailman/Cgi/options.py:432
+#: Mailman/Cgi/options.py:438
 msgid ""
 "The list administrator may not change the\n"
 "                    password for a user."
@@ -2499,15 +2541,15 @@
 "L'administrador de la llista no pot canviar\n"
 "                    la contrasenya d'un usuari."
 
-#: Mailman/Cgi/options.py:441
+#: Mailman/Cgi/options.py:447
 msgid "Passwords may not be blank"
 msgstr "La contrasenya no ha d'estar en blanc"
 
-#: Mailman/Cgi/options.py:446
+#: Mailman/Cgi/options.py:452
 msgid "Passwords did not match!"
 msgstr "La contrasenya no coincideix!"
 
-#: Mailman/Cgi/options.py:454
+#: Mailman/Cgi/options.py:460
 msgid ""
 "The list administrator may not change the\n"
 "            password for this user's other subscriptions.  However, the\n"
@@ -2519,12 +2561,12 @@
 "llista \n"
 "            de correu"
 
-#: Mailman/Cgi/options.py:471 Mailman/Commands/cmd_password.py:83
+#: Mailman/Cgi/options.py:477 Mailman/Commands/cmd_password.py:83
 #: Mailman/Commands/cmd_password.py:109
 msgid "Password successfully changed."
 msgstr "Contrasenya canviada satisfactòriament."
 
-#: Mailman/Cgi/options.py:480
+#: Mailman/Cgi/options.py:486
 msgid ""
 "You must confirm your unsubscription request by turning\n"
 "                on the checkbox below the <em>Unsubscribe</em> button.  You\n"
@@ -2535,11 +2577,11 @@
 "                la casella sota el botó <em>cancel·lar subscripció</em>.\n"
 "                La vostra subscripció no ha estat cancel·lada!"
 
-#: Mailman/Cgi/options.py:512
+#: Mailman/Cgi/options.py:518
 msgid "Unsubscription results"
 msgstr "Resultats de la cancel·lació de la subscripció"
 
-#: Mailman/Cgi/options.py:516
+#: Mailman/Cgi/options.py:522
 msgid ""
 "Your unsubscription request has been received and\n"
 "            forwarded on to the list moderators for approval.  You will\n"
@@ -2552,7 +2594,7 @@
 "Rebràs una\n"
 "            notificació quan el moderador prengui una decisió."
 
-#: Mailman/Cgi/options.py:521
+#: Mailman/Cgi/options.py:527
 msgid ""
 "You have been successfully unsubscribed from the\n"
 "            mailing list %(fqdn_listname)s.  If you were receiving digest\n"
@@ -2569,7 +2611,7 @@
 "            subscripció contacta amb l'amo de la llista a\n"
 "            %(owneraddr)s."
 
-#: Mailman/Cgi/options.py:670
+#: Mailman/Cgi/options.py:676
 msgid ""
 "The list administrator may not change the\n"
 "                options for this user's other subscriptions.  However the\n"
@@ -2583,7 +2625,7 @@
 "de\n"
 "                 correu sí que s'han canviat."
 
-#: Mailman/Cgi/options.py:680
+#: Mailman/Cgi/options.py:686
 msgid ""
 "The list administrator has disabled digest delivery for\n"
 "            this list, so your delivery option has not been set.  However "
@@ -2597,7 +2639,7 @@
 "totes \n"
 "            les altres opcions s'han establert satisfactòriament."
 
-#: Mailman/Cgi/options.py:684
+#: Mailman/Cgi/options.py:690
 msgid ""
 "The list administrator has disabled non-digest delivery\n"
 "            for this list, so your delivery option has not been set.  "
@@ -2611,63 +2653,63 @@
 "establert\n"
 "            satisfactòriament."
 
-#: Mailman/Cgi/options.py:688
+#: Mailman/Cgi/options.py:694
 msgid "You have successfully set your options."
 msgstr "Heu establert les teves opcions satisfactòriament."
 
-#: Mailman/Cgi/options.py:691
+#: Mailman/Cgi/options.py:697
 msgid "You may get one last digest."
 msgstr "Pot ser que encara rebeu un últim resum."
 
-#: Mailman/Cgi/options.py:763
+#: Mailman/Cgi/options.py:769
 msgid "<em>Yes, I really want to unsubscribe</em>"
 msgstr "<em>Sí, realment vull cancel·lar la subscripció</em>"
 
-#: Mailman/Cgi/options.py:767
+#: Mailman/Cgi/options.py:773
 msgid "Change My Password"
 msgstr "Canvia la meva contrasenya"
 
-#: Mailman/Cgi/options.py:770
+#: Mailman/Cgi/options.py:776
 msgid "List my other subscriptions"
 msgstr "Llista les meves altres subscripcions"
 
-#: Mailman/Cgi/options.py:776
+#: Mailman/Cgi/options.py:782
 msgid "Email My Password To Me"
 msgstr "Envia'm la meva contrasenya per correu electrònic"
 
-#: Mailman/Cgi/options.py:778
+#: Mailman/Cgi/options.py:784
 msgid "password"
 msgstr "contrasenya"
 
-#: Mailman/Cgi/options.py:780
+#: Mailman/Cgi/options.py:786
 msgid "Log out"
 msgstr "Surt"
 
-#: Mailman/Cgi/options.py:782
+#: Mailman/Cgi/options.py:788
 msgid "Submit My Changes"
 msgstr "Envia els meus canvis"
 
-#: Mailman/Cgi/options.py:794
+#: Mailman/Cgi/options.py:800
 msgid "days"
 msgstr "dies"
 
-#: Mailman/Cgi/options.py:796
+#: Mailman/Cgi/options.py:802
 msgid "day"
 msgstr "dia"
 
-#: Mailman/Cgi/options.py:797
+#: Mailman/Cgi/options.py:803
 msgid "%(days)d %(units)s"
 msgstr "%(days)d %(units)s"
 
-#: Mailman/Cgi/options.py:803
+#: Mailman/Cgi/options.py:809
 msgid "Change My Address and Name"
 msgstr "Canvia la meva adreça i el meu nom"
 
-#: Mailman/Cgi/options.py:829
+#: Mailman/Cgi/options.py:835
 msgid "<em>No topics defined</em>"
 msgstr "<em>No hi ha temes definits </em>"
 
-#: Mailman/Cgi/options.py:837
+#: Mailman/Cgi/options.py:843
 msgid ""
 "\n"
 "You are subscribed to this list with the case-preserved address\n"
@@ -2677,19 +2719,19 @@
 "Esteu subscrit a aquesta llista amb l'adreça <em>%(cpuser)s</em>, de la qual "
 "se n'han mantingut les majúscules i minúscules. "
 
-#: Mailman/Cgi/options.py:851
+#: Mailman/Cgi/options.py:857
 msgid "%(realname)s list: member options login page"
 msgstr "Llista %(realname)s: pàgina d'entrada a les opcions de membre "
 
-#: Mailman/Cgi/options.py:852
+#: Mailman/Cgi/options.py:858
 msgid "email address and "
 msgstr "adreça electrònica i "
 
-#: Mailman/Cgi/options.py:855
+#: Mailman/Cgi/options.py:861
 msgid "%(realname)s list: member options for user %(safeuser)s"
 msgstr "Llista %(realname)s: opcions d'usuari per a %(safeuser)s"
 
-#: Mailman/Cgi/options.py:881
+#: Mailman/Cgi/options.py:887
 msgid ""
 "In order to change your membership option, you must\n"
 "    first log in by giving your %(extra)smembership password in the section\n"
@@ -2720,19 +2762,19 @@
 "    efecte.\n"
 "    "
 
-#: Mailman/Cgi/options.py:895
+#: Mailman/Cgi/options.py:901
 msgid "Email address:"
 msgstr "Adreça electrònica:"
 
-#: Mailman/Cgi/options.py:899
+#: Mailman/Cgi/options.py:905
 msgid "Password:"
 msgstr "Contrasenya:"
 
-#: Mailman/Cgi/options.py:901
+#: Mailman/Cgi/options.py:907
 msgid "Log in"
 msgstr "Entra"
 
-#: Mailman/Cgi/options.py:909
+#: Mailman/Cgi/options.py:915
 msgid ""
 "By clicking on the <em>Unsubscribe</em> button, a\n"
 "    confirmation message will be emailed to you.  This message will have a\n"
@@ -2747,11 +2789,11 @@
 "    les instruccions en el missatge de confirmació per a obtenir-ne més \n"
 "    informació)."
 
-#: Mailman/Cgi/options.py:917
+#: Mailman/Cgi/options.py:923
 msgid "Password reminder"
 msgstr "Recordatori de la contrasenya"
 
-#: Mailman/Cgi/options.py:921
+#: Mailman/Cgi/options.py:927
 msgid ""
 "By clicking on the <em>Remind</em> button, your\n"
 "    password will be emailed to you."
@@ -2759,27 +2801,27 @@
 "En fer clic en el botó <em>Recorda-me-la</em>, se us enviarà\n"
 "    la contrasenya per correu electrònic."
 
-#: Mailman/Cgi/options.py:924
+#: Mailman/Cgi/options.py:930
 msgid "Remind"
 msgstr "Recorda-me-la"
 
-#: Mailman/Cgi/options.py:1024
+#: Mailman/Cgi/options.py:1030 Mailman/ListAdmin.py:225
 msgid "<missing>"
 msgstr "<manca>"
 
-#: Mailman/Cgi/options.py:1035
+#: Mailman/Cgi/options.py:1041
 msgid "Requested topic is not valid: %(topicname)s"
 msgstr "El tema sol·licitat no és vàlid: %(topicname)s"
 
-#: Mailman/Cgi/options.py:1040
+#: Mailman/Cgi/options.py:1046
 msgid "Topic filter details"
 msgstr "Detalls del filtre de temes"
 
-#: Mailman/Cgi/options.py:1043
+#: Mailman/Cgi/options.py:1049
 msgid "Name:"
 msgstr "Nom:"
 
-#: Mailman/Cgi/options.py:1045
+#: Mailman/Cgi/options.py:1051
 msgid "Pattern (as regexp):"
 msgstr "Patró (com a regexp):"
 
@@ -2799,7 +2841,21 @@
 msgid "Private Archive Error - %(msg)s"
 msgstr "Error a l'arxiu privat - %(msg)s"
 
-#: Mailman/Cgi/private.py:185
+#: Mailman/Cgi/private.py:141
+#, fuzzy
+msgid ""
+"If you are a list member,\n"
+"                          your password has been emailed to you."
+msgstr ""
+"Se us ha enviat un recordatori de la vostra contrasenya per correu "
+"electrònic."
+
+#: Mailman/Cgi/private.py:145
+#, fuzzy
+msgid "Please enter your email address"
+msgstr "La vostra adreça de correu electrònic:"
+
+#: Mailman/Cgi/private.py:206
 msgid "Private archive file not found"
 msgstr "No s'ha trobat el l'arxiu privat"
 
@@ -3124,7 +3180,8 @@
 "Heu introduït una contrasenya d'aprovació incorrecta. El missatge retingut "
 "es continuarà retenint."
 
-#: Mailman/Commands/cmd_confirm.py:87
+#: Mailman/Commands/cmd_confirm.py:89 Mailman/Commands/cmd_confirm.py:92
+#: Mailman/Commands/cmd_confirm.py:95
 msgid "Confirmation succeeded"
 msgstr "Confirmació satisfactòria"
 
@@ -3806,152 +3863,156 @@
 msgid "Digest members:"
 msgstr "Membres amb resum:"
 
-#: Mailman/Defaults.py:1410
+#: Mailman/Defaults.py:1482
 msgid "Arabic"
 msgstr "àrab"
 
-#: Mailman/Defaults.py:1411
+#: Mailman/Defaults.py:1483
 #, fuzzy
 msgid "Asturian"
 msgstr "estonià"
 
-#: Mailman/Defaults.py:1412
+#: Mailman/Defaults.py:1484
 msgid "Catalan"
 msgstr "català"
 
-#: Mailman/Defaults.py:1413
+#: Mailman/Defaults.py:1485
 msgid "Czech"
 msgstr "txec"
 
-#: Mailman/Defaults.py:1414
+#: Mailman/Defaults.py:1486
 msgid "Danish"
 msgstr "danès"
 
-#: Mailman/Defaults.py:1415
+#: Mailman/Defaults.py:1487
 msgid "German"
 msgstr "alemany"
 
-#: Mailman/Defaults.py:1416
+#: Mailman/Defaults.py:1488
 msgid "English (USA)"
 msgstr "anglès (EUA)"
 
-#: Mailman/Defaults.py:1417
+#: Mailman/Defaults.py:1489
 msgid "Spanish (Spain)"
 msgstr "espanyol (Espanya)"
 
-#: Mailman/Defaults.py:1418
+#: Mailman/Defaults.py:1490
 msgid "Estonian"
 msgstr "estonià"
 
-#: Mailman/Defaults.py:1419
+#: Mailman/Defaults.py:1491
 msgid "Euskara"
 msgstr "euskera"
 
-#: Mailman/Defaults.py:1420
+#: Mailman/Defaults.py:1492
 msgid "Finnish"
 msgstr "finlandès"
 
-#: Mailman/Defaults.py:1421
+#: Mailman/Defaults.py:1493
 msgid "French"
 msgstr "francès "
 
-#: Mailman/Defaults.py:1422
+#: Mailman/Defaults.py:1494
 msgid "Galician"
 msgstr "gallec"
 
-#: Mailman/Defaults.py:1423
+#: Mailman/Defaults.py:1495
+msgid "Greek"
+msgstr ""
+
+#: Mailman/Defaults.py:1496
 msgid "Hebrew"
 msgstr "hebreu"
 
-#: Mailman/Defaults.py:1424
+#: Mailman/Defaults.py:1497
 msgid "Croatian"
 msgstr "croat"
 
-#: Mailman/Defaults.py:1425
+#: Mailman/Defaults.py:1498
 msgid "Hungarian"
 msgstr "hongarès"
 
-#: Mailman/Defaults.py:1426
+#: Mailman/Defaults.py:1499
 msgid "Interlingua"
 msgstr "interlingua"
 
-#: Mailman/Defaults.py:1427
+#: Mailman/Defaults.py:1500
 msgid "Italian"
 msgstr "italià"
 
-#: Mailman/Defaults.py:1428
+#: Mailman/Defaults.py:1501
 msgid "Japanese"
 msgstr "japonès"
 
-#: Mailman/Defaults.py:1429
+#: Mailman/Defaults.py:1502
 msgid "Korean"
 msgstr "coreà"
 
-#: Mailman/Defaults.py:1430
+#: Mailman/Defaults.py:1503
 msgid "Lithuanian"
 msgstr "lituà"
 
-#: Mailman/Defaults.py:1431
+#: Mailman/Defaults.py:1504
 msgid "Dutch"
 msgstr "holandès"
 
-#: Mailman/Defaults.py:1432
+#: Mailman/Defaults.py:1505
 msgid "Norwegian"
 msgstr "noruec"
 
-#: Mailman/Defaults.py:1433
+#: Mailman/Defaults.py:1506
 msgid "Polish"
 msgstr "polonès"
 
-#: Mailman/Defaults.py:1434
+#: Mailman/Defaults.py:1507
 msgid "Portuguese"
 msgstr "portuguès"
 
-#: Mailman/Defaults.py:1435
+#: Mailman/Defaults.py:1508
 msgid "Portuguese (Brazil)"
 msgstr "portuguès (Brasil)"
 
-#: Mailman/Defaults.py:1436
+#: Mailman/Defaults.py:1509
 msgid "Romanian"
 msgstr "romanès"
 
-#: Mailman/Defaults.py:1437
+#: Mailman/Defaults.py:1510
 msgid "Russian"
 msgstr "rus"
 
-#: Mailman/Defaults.py:1438
+#: Mailman/Defaults.py:1511
 msgid "Slovak"
 msgstr "eslovac"
 
-#: Mailman/Defaults.py:1439
+#: Mailman/Defaults.py:1512
 msgid "Slovenian"
 msgstr "eslovè"
 
-#: Mailman/Defaults.py:1440
+#: Mailman/Defaults.py:1513
 msgid "Serbian"
 msgstr "serbi"
 
-#: Mailman/Defaults.py:1441
+#: Mailman/Defaults.py:1514
 msgid "Swedish"
 msgstr "suec"
 
-#: Mailman/Defaults.py:1442
+#: Mailman/Defaults.py:1515
 msgid "Turkish"
 msgstr "turc"
 
-#: Mailman/Defaults.py:1443
+#: Mailman/Defaults.py:1516
 msgid "Ukrainian"
 msgstr "ucraïnès"
 
-#: Mailman/Defaults.py:1444
+#: Mailman/Defaults.py:1517
 msgid "Vietnamese"
 msgstr "vietnamita"
 
-#: Mailman/Defaults.py:1445
+#: Mailman/Defaults.py:1518
 msgid "Chinese (China)"
 msgstr "xinès (Xina)"
 
-#: Mailman/Defaults.py:1446
+#: Mailman/Defaults.py:1519
 msgid "Chinese (Taiwan)"
 msgstr "xinès (Taiwan)"
 
@@ -4405,7 +4466,7 @@
 "Nombre de dies entre els enviaments de la notificació <em>Your Membership\n"
 "            Is Disabled</em>. Aquest valor ha de ser un sencer."
 
-#: Mailman/Gui/Bounce.py:117 Mailman/Gui/General.py:265
+#: Mailman/Gui/Bounce.py:117 Mailman/Gui/General.py:266
 msgid "Notifications"
 msgstr "Notificacions"
 
@@ -4972,28 +5033,28 @@
 "                    és el que vostè pretenia aconseguir. \n"
 "                    "
 
-#: Mailman/Gui/General.py:36
+#: Mailman/Gui/General.py:37
 msgid "General Options"
 msgstr "Opcions Generals"
 
-#: Mailman/Gui/General.py:50
+#: Mailman/Gui/General.py:51
 msgid "Conceal the member's address"
 msgstr "Oculta l'adreça del subscriptor"
 
-#: Mailman/Gui/General.py:51
+#: Mailman/Gui/General.py:52
 msgid "Acknowledge the member's posting"
 msgstr "Confirma l'enviament del subscriptor"
 
-#: Mailman/Gui/General.py:52
+#: Mailman/Gui/General.py:53
 msgid "Do not send a copy of a member's own post"
 msgstr "No enviïs una còpia dels enviaments propis dels subscriptors"
 
-#: Mailman/Gui/General.py:54
+#: Mailman/Gui/General.py:55
 msgid "Filter out duplicate messages to list members (if possible)"
 msgstr ""
 "Filtra els missatges duplicats als membres de la llista (si és possible)"
 
-#: Mailman/Gui/General.py:61
+#: Mailman/Gui/General.py:62
 msgid ""
 "Fundamental list characteristics, including descriptive\n"
 "            info and basic behaviors."
@@ -5001,17 +5062,17 @@
 "Característiques fonamentals de la llista, com ara la \n"
 "            informació i el seu comportament bàsic."
 
-#: Mailman/Gui/General.py:64
+#: Mailman/Gui/General.py:65
 msgid "General list personality"
 msgstr "Personalitat general de la llista"
 
-#: Mailman/Gui/General.py:67
+#: Mailman/Gui/General.py:68
 msgid "The public name of this list (make case-changes only)."
 msgstr ""
 "El nom públic d'aquesta llista (feu-hi només canvis de majúscules i "
 "minúscules)."
 
-#: Mailman/Gui/General.py:68
+#: Mailman/Gui/General.py:69
 msgid ""
 "The capitalization of this name can be changed to make it\n"
 "             presentable in polite company as a proper noun, or to make an\n"
@@ -5035,7 +5096,7 @@
 "majúscules de minúscules, però\n"
 "           si es distingeixen per a qualsevol altre propòsit :-) "
 
-#: Mailman/Gui/General.py:77
+#: Mailman/Gui/General.py:78
 msgid ""
 "The list administrator email addresses.  Multiple\n"
 "             administrator addresses, each on separate line is okay."
@@ -5044,7 +5105,7 @@
 "            Si en té més d'una, especifiqueu cadascuna d'elles en una línea "
 "separada."
 
-#: Mailman/Gui/General.py:80
+#: Mailman/Gui/General.py:81
 msgid ""
 "There are two ownership roles associated with each mailing\n"
 "             list.  The <em>list administrators</em> are the people who "
@@ -5101,7 +5162,7 @@
 "indiquen\n"
 "            els administradors de la llista. "
 
-#: Mailman/Gui/General.py:101
+#: Mailman/Gui/General.py:102
 msgid ""
 "The list moderator email addresses.  Multiple\n"
 "             moderator addresses, each on separate line is okay."
@@ -5109,7 +5170,7 @@
 "Les adreces de correu electrònic del moderador de la llista. Múltiples\n"
 "            adreces del moderador, cada una en una línea separada."
 
-#: Mailman/Gui/General.py:104
+#: Mailman/Gui/General.py:105
 msgid ""
 "There are two ownership roles associated with each mailing\n"
 "             list.  The <em>list administrators</em> are the people who "
@@ -5165,11 +5226,11 @@
 "indiquen\n"
 "            els moderadors de la llista. "
 
-#: Mailman/Gui/General.py:125
+#: Mailman/Gui/General.py:126
 msgid "A terse phrase identifying this list."
 msgstr "Una frase breu que identifiqui a aquesta llista."
 
-#: Mailman/Gui/General.py:127
+#: Mailman/Gui/General.py:128
 msgid ""
 "This description is used when the mailing list is listed with\n"
 "                other mailing lists, or in headers, and so forth.  It "
@@ -5184,7 +5245,7 @@
 "                ser tot el concisa que pugui, mentre que pugui identificar "
 "que va la llista. "
 
-#: Mailman/Gui/General.py:133
+#: Mailman/Gui/General.py:134
 msgid ""
 "An introductory description - a few paragraphs - about the\n"
 "             list.  It will be included, as html, at the top of the "
@@ -5199,7 +5260,7 @@
 "per\n"
 "            a més informació."
 
-#: Mailman/Gui/General.py:137
+#: Mailman/Gui/General.py:138
 msgid ""
 "The text will be treated as html <em>except</em> that\n"
 "             newlines will be translated to <br> - so you can use "
@@ -5221,11 +5282,11 @@
 "            que la pàgina d'informació de la llista es visualitzi "
 "completament."
 
-#: Mailman/Gui/General.py:145
+#: Mailman/Gui/General.py:146
 msgid "Prefix for subject line of list postings."
 msgstr "Prefix per a la línia Tema dels enviaments de la llista."
 
-#: Mailman/Gui/General.py:146
+#: Mailman/Gui/General.py:147
 msgid ""
 "This text will be prepended to subject lines of messages\n"
 "             posted to the list, to distinguish mailing list messages in\n"
@@ -5254,7 +5315,7 @@
 "                            (nomllista %%05d) -> (nomllista 00123)\n"
 "             "
 
-#: Mailman/Gui/General.py:157
+#: Mailman/Gui/General.py:158
 msgid ""
 "Hide the sender of a message, replacing it with the list\n"
 "             address (Removes From, Sender and Reply-To fields)"
@@ -5262,11 +5323,11 @@
 "Ocultar el remitent del missatge, reemplaçant-lo amb\n"
 "            l'adreça de la llista (elimina els camps From, Sender i Reply-To)"
 
-#: Mailman/Gui/General.py:160
+#: Mailman/Gui/General.py:161
 msgid "<tt>Reply-To:</tt> header munging"
 msgstr "Capçalera explícita <tt>Reply-To:</tt>"
 
-#: Mailman/Gui/General.py:163
+#: Mailman/Gui/General.py:164
 msgid ""
 "Should any existing <tt>Reply-To:</tt> header found in the\n"
 "             original message be stripped?  If so, this will be done\n"
@@ -5278,19 +5339,19 @@
 "en\n"
 "            conta si Mailman afegeix un capçalera <tt>Reply-To:</tt> o no. "
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "Explicit address"
 msgstr "Adreça explícita"
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "Poster"
 msgstr "Remitent"
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "This list"
 msgstr "Aquesta llista"
 
-#: Mailman/Gui/General.py:170
+#: Mailman/Gui/General.py:171
 msgid ""
 "Where are replies to list messages directed?\n"
 "             <tt>Poster</tt> is <em>strongly</em> recommended for most "
@@ -5301,7 +5362,7 @@
 "<tt>Remitent</tt> és <em>altament</em>recomanat per la\n"
 "             majoria de llistes."
 
-#: Mailman/Gui/General.py:175
+#: Mailman/Gui/General.py:176
 #, fuzzy
 msgid ""
 "This option controls what Mailman does to the\n"
@@ -5388,11 +5449,11 @@
 "<tt>Adreça explícita</tt> i indiqui l'adreça\n"
 "             <tt>Reply-To:</tt> a sota per a apuntar a la llista paral·lela "
 
-#: Mailman/Gui/General.py:207
+#: Mailman/Gui/General.py:208
 msgid "Explicit <tt>Reply-To:</tt> header."
 msgstr "Capçalera <tt>Contestar-a:</tt> explícita."
 
-#: Mailman/Gui/General.py:209
+#: Mailman/Gui/General.py:210
 #, fuzzy
 msgid ""
 "This is the address set in the <tt>Reply-To:</tt> header\n"
@@ -5476,11 +5537,11 @@
 "<tt>Reply-To:</tt>\n"
 "           aquesta capçalera no es reemplaçarà. "
 
-#: Mailman/Gui/General.py:238
+#: Mailman/Gui/General.py:239
 msgid "Umbrella list settings"
 msgstr "Configuració de llista en cascada"
 
-#: Mailman/Gui/General.py:241
+#: Mailman/Gui/General.py:242
 msgid ""
 "Send password reminders to, eg, \"-owner\" address instead of\n"
 "             directly to user."
@@ -5488,7 +5549,7 @@
 "Enviar recordatoris de contrasenya a, ex, l'adreça de \"-owner\"\n"
 "            en lloc de directament al usuari."
 
-#: Mailman/Gui/General.py:244
+#: Mailman/Gui/General.py:245
 msgid ""
 "Set this to yes when this list is intended to cascade only\n"
 "             to other mailing lists.  When set, meta notices like\n"
@@ -5507,7 +5568,7 @@
 "valor\n"
 "            de \"umbrella_member_suffix\" afegit al nom d'usuari del membre."
 
-#: Mailman/Gui/General.py:252
+#: Mailman/Gui/General.py:253
 msgid ""
 "Suffix for use when this list is an umbrella for other\n"
 "             lists, according to setting of previous \"umbrella_list\"\n"
@@ -5517,7 +5578,7 @@
 "            d'acord amb la configuració posada en l'opció anterior\n"
 "            \"umbrella_list\"."
 
-#: Mailman/Gui/General.py:256
+#: Mailman/Gui/General.py:257
 msgid ""
 "When \"umbrella_list\" is set to indicate that this list has\n"
 "             other mailing lists as members, then administrative notices "
@@ -5542,11 +5603,11 @@
 "l'elecció típica.\n"
 "             Aquesta opció no té efecte si \"umbrella_list\" és \"No\"."
 
-#: Mailman/Gui/General.py:268
+#: Mailman/Gui/General.py:269
 msgid "Send monthly password reminders?"
 msgstr "Voleu enviar recordatoris mensuals de la contrasenya?"
 
-#: Mailman/Gui/General.py:270
+#: Mailman/Gui/General.py:271
 msgid ""
 "Turn this on if you want password reminders to be sent once\n"
 "             per month to your members.  Note that members may disable "
@@ -5558,7 +5619,7 @@
 "desactivar amb\n"
 "            els seus recordatoris de contrasenya individuals."
 
-#: Mailman/Gui/General.py:275
+#: Mailman/Gui/General.py:276
 msgid ""
 "List-specific text prepended to new-subscriber welcome\n"
 "             message"
@@ -5566,7 +5627,7 @@
 "text específic a la llista que es posarà al principi del missatge\n"
 "            de benvinguda enviat als nous subscriptors"
 
-#: Mailman/Gui/General.py:278
+#: Mailman/Gui/General.py:279
 msgid ""
 "This value, if any, will be added to the front of the\n"
 "             new-subscriber welcome message.  The rest of the welcome "
@@ -5608,11 +5669,11 @@
 "                    <li>Una línia en blanc separa paràgrafs.\n"
 "              </ul>"
 
-#: Mailman/Gui/General.py:295
+#: Mailman/Gui/General.py:296
 msgid "Send welcome message to newly subscribed members?"
 msgstr "Voleu enviar un missatge de benvinguda als subscriptors nous?"
 
-#: Mailman/Gui/General.py:296
+#: Mailman/Gui/General.py:297
 msgid ""
 "Turn this off only if you plan on subscribing people manually\n"
 "             and don't want them to know that you did so.  This option is "
@@ -5627,7 +5688,7 @@
 "llistes\n"
 "            de correu a Mailman."
 
-#: Mailman/Gui/General.py:302
+#: Mailman/Gui/General.py:303
 msgid ""
 "Text sent to people leaving the list.  If empty, no special\n"
 "             text will be added to the unsubscribe message."
@@ -5636,13 +5697,13 @@
 "              cap text especial s'afegira al missatge de cancel·lar la "
 "subscripció."
 
-#: Mailman/Gui/General.py:306
+#: Mailman/Gui/General.py:307
 msgid "Send goodbye message to members when they are unsubscribed?"
 msgstr ""
 "Voleu enviar un missatge de comiat quan els membres cancel·lin la seva "
 "subscripció?"
 
-#: Mailman/Gui/General.py:309
+#: Mailman/Gui/General.py:310
 msgid ""
 "Should the list moderators get immediate notice of new\n"
 "             requests, as well as daily notices about collected ones?"
@@ -5651,7 +5712,7 @@
 "            així com enviar-li un recordatori diari amb les peticions "
 "pendents? "
 
-#: Mailman/Gui/General.py:312
+#: Mailman/Gui/General.py:313
 msgid ""
 "List moderators (and list administrators) are sent daily\n"
 "             reminders of requests pending approval, like subscriptions to "
@@ -5669,7 +5730,7 @@
 "            opció causa que les notificacions s'enviïn\n"
 "            immediatament quan arribin noves peticions. "
 
-#: Mailman/Gui/General.py:319
+#: Mailman/Gui/General.py:320
 msgid ""
 "Should administrator get notices of subscribes and\n"
 "             unsubscribes?"
@@ -5677,21 +5738,21 @@
 "L'administrador ha de rebre notificacions de les subscripcións i de\n"
 "            les cancel·lacions de subscripció?"
 
-#: Mailman/Gui/General.py:324
+#: Mailman/Gui/General.py:325
 msgid "Send mail to poster when their posting is held for approval?"
 msgstr ""
 "Voleu enviar un missatge al remitent se li retingui un missatge per a "
 "aprovar-lo?"
 
-#: Mailman/Gui/General.py:327
+#: Mailman/Gui/General.py:328
 msgid "Additional settings"
 msgstr "Paràmetres addicionals"
 
-#: Mailman/Gui/General.py:330
+#: Mailman/Gui/General.py:331
 msgid "Emergency moderation of all list traffic."
 msgstr "Moderació d'emergència de tot el tràfic de la llista."
 
-#: Mailman/Gui/General.py:331
+#: Mailman/Gui/General.py:332
 msgid ""
 "When this option is enabled, all list traffic is emergency\n"
 "             moderated, i.e. held for moderation.  Turn this option on when\n"
@@ -5705,7 +5766,7 @@
 "            fent servir la llista per a ofenses personals i vulgui donar un\n"
 "            període de calma."
 
-#: Mailman/Gui/General.py:343
+#: Mailman/Gui/General.py:344
 msgid ""
 "Default options for new members joining this list.<input\n"
 "             type=\"hidden\" name=\"new_member_options\" value=\"ignore\">"
@@ -5713,7 +5774,7 @@
 "Opcions per defecte per als nous membres unint-se a la llista.<input\n"
 "             type=\"hidden\" name=\"new_member_options\" value=\"ignore\">"
 
-#: Mailman/Gui/General.py:346
+#: Mailman/Gui/General.py:347
 msgid ""
 "When a new member is subscribed to this list, their initial\n"
 "             set of options is taken from this variable's setting."
@@ -5721,7 +5782,7 @@
 "Quan un nou membre es subscrit a aquest llista, les seves opcions inicials\n"
 "             son agafades d'aquest conjunt de variables."
 
-#: Mailman/Gui/General.py:350
+#: Mailman/Gui/General.py:351
 msgid ""
 "(Administrivia filter) Check postings and intercept ones\n"
 "             that seem to be administrative requests?"
@@ -5729,7 +5790,7 @@
 "(Filtre administratiu) Voleu que es comprovin els enviaments i\n"
 "             s'interceptin aquells que semblin ser peticions administratives?"
 
-#: Mailman/Gui/General.py:353
+#: Mailman/Gui/General.py:354
 msgid ""
 "Administrivia tests will check postings to see whether it's\n"
 "             really meant as an administrative request (like subscribe,\n"
@@ -5745,7 +5806,7 @@
 "de passada\n"
 "            a l'administrador, de la nova sol·licitud."
 
-#: Mailman/Gui/General.py:360
+#: Mailman/Gui/General.py:361
 msgid ""
 "Maximum length in kilobytes (KB) of a message body.  Use 0\n"
 "             for no limit."
@@ -5753,7 +5814,7 @@
 "Mida màxima per al cos del missatge en kilobytes (KB). Useu 0\n"
 "             per a no posar límit."
 
-#: Mailman/Gui/General.py:364
+#: Mailman/Gui/General.py:365
 msgid ""
 "Maximum number of members to show on one page of the\n"
 "             Membership List."
@@ -5761,11 +5822,11 @@
 "El màxim nombre d'usuaris a mostrar en una pàgina de la\n"
 "             llista de subscriptors."
 
-#: Mailman/Gui/General.py:368
+#: Mailman/Gui/General.py:369
 msgid "Host name this list prefers for email."
 msgstr "Nom de servidor que prefereix aquesta llista per al correu electrònic."
 
-#: Mailman/Gui/General.py:370
+#: Mailman/Gui/General.py:371
 msgid ""
 "The \"host_name\" is the preferred name for email to\n"
 "             mailman-related addresses on this host, and generally should "
@@ -5784,7 +5845,7 @@
 "alternatius\n"
 "            d'una màquina que té diverses adreces. "
 
-#: Mailman/Gui/General.py:382
+#: Mailman/Gui/General.py:383
 msgid ""
 "Should messages from this mailing list include the\n"
 "                 <a href=\"http://www.faqs.org/rfcs/rfc2369.html\">RFC 2369</"
@@ -5797,7 +5858,7 @@
 "a>\n"
 "                 (i.e. <tt>List-*</tt>)?  es recomana que <em>Si</em>."
 
-#: Mailman/Gui/General.py:387
+#: Mailman/Gui/General.py:388
 msgid ""
 "RFC 2369 defines a set of List-* headers that are\n"
 "                 normally added to every message sent to the list "
@@ -5838,11 +5899,11 @@
 "                  ocultarles. Com a ultim recurs les pots deshabilitar, però "
 "això no es recomana."
 
-#: Mailman/Gui/General.py:405
+#: Mailman/Gui/General.py:406
 msgid "Should postings include the <tt>List-Post:</tt> header?"
 msgstr "L'enviament ha d'incloure la capçalera <tt>List-Post:</tt>?"
 
-#: Mailman/Gui/General.py:406
+#: Mailman/Gui/General.py:407
 msgid ""
 "The <tt>List-Post:</tt> header is one of the headers\n"
 "             recommended by\n"
@@ -5873,7 +5934,7 @@
 "capçalera. (Això\n"
 "             no afectarà l'inclusió d'altres capçaleres <tt>List-*:</tt>)."
 
-#: Mailman/Gui/General.py:422
+#: Mailman/Gui/General.py:423
 #, fuzzy
 msgid ""
 "Should the <tt>Sender</tt> header be rewritten for this\n"
@@ -5885,7 +5946,7 @@
 "            de processament de rebots no hagi pogut detectar?\n"
 "            l'opció recomanada és <em>Si</em>."
 
-#: Mailman/Gui/General.py:426
+#: Mailman/Gui/General.py:427
 msgid ""
 "<a href=\"http://www.faqs.org/rfcs/rfc2822.html\">RFC\n"
 "                 2822</a> defines the <tt>Sender</tt> header and defines it\n"
@@ -5907,7 +5968,7 @@
 "                 here."
 msgstr ""
 
-#: Mailman/Gui/General.py:444
+#: Mailman/Gui/General.py:445
 msgid ""
 "Discard held messages older than this number of days.\n"
 "            Use 0 for no automatic discarding."
@@ -5916,7 +5977,7 @@
 "dies.\n"
 "            Utilitzeu el valor 0 per a no descartar-los automàticament."
 
-#: Mailman/Gui/General.py:454
+#: Mailman/Gui/General.py:455
 msgid ""
 "<b>real_name</b> attribute not\n"
 "            changed!  It must differ from the list's name by case\n"
@@ -5926,7 +5987,7 @@
 "            canviat! s'ha de diferenciar del nom de la llista només\n"
 "            per les majúscules i minúscules."
 
-#: Mailman/Gui/General.py:471
+#: Mailman/Gui/General.py:483
 msgid ""
 "The <b>info</b> attribute you saved\n"
 "contains suspicious HTML that could potentially expose your users to cross-"
@@ -5952,7 +6013,7 @@
 "mlist.info.\n"
 "                        "
 
-#: Mailman/Gui/General.py:482
+#: Mailman/Gui/General.py:494
 msgid ""
 "<b>admin_member_chunksize</b> attribute not\n"
 "            changed!  It must be an integer > 0."
@@ -5960,7 +6021,7 @@
 "No s'ha canviat l'atribut <b>admin_member_chunksize</b>.\n"
 "            Cal que sigui in enter més gran que 0."
 
-#: Mailman/Gui/General.py:492
+#: Mailman/Gui/General.py:504
 msgid ""
 "You cannot add a Reply-To: to an explicit\n"
 "            address if that address is blank.  Resetting these values."
@@ -6369,6 +6430,26 @@
 
 #: Mailman/Gui/NonDigest.py:163
 msgid ""
+"Ignore regular_exlude_lists of which the poster is not a\n"
+"             member."
+msgstr ""
+
+#: Mailman/Gui/NonDigest.py:165
+msgid ""
+"If a post is addressed to this list and to one or more of\n"
+"             the exclude lists, regular members of those lists will not be\n"
+"             sent the post from this list, but if the poster is not a "
+"member\n"
+"             of an excluded list, the post may not be accepted by that list\n"
+"             which leaves the members of that list with no copy of the "
+"post.\n"
+"             Setting this to Yes ignores any of the exclude lists of which "
+"the\n"
+"             poster is not a member."
+msgstr ""
+
+#: Mailman/Gui/NonDigest.py:174
+msgid ""
 "Other mailing lists on this site whose members are\n"
 "             included in the regular (non-digest) delivery if those\n"
 "             list addresses don't appear in a To: or Cc: header."
@@ -6378,7 +6459,7 @@
 "             si les adreces de les llistes apareixen en alguna de les\n"
 "             capçaleres Per a: o Cc:."
 
-#: Mailman/Gui/NonDigest.py:166
+#: Mailman/Gui/NonDigest.py:177
 msgid ""
 "The list addresses should be written in full mail address\n"
 "             format (e.g. mailman at example.com). Note also that the site\n"
@@ -7965,6 +8046,14 @@
 msgid "%(realname)s post acknowledgement"
 msgstr "Confirmació de l'enviament de la llista %(realname)s."
 
+#: Mailman/Handlers/Approve.py:45
+msgid ""
+"Message rejected.\n"
+"It appears that this message contains an HTML part with the\n"
+"Approved: password line, but due to the way it is coded in the\n"
+"HTML it can't be safely removed.\n"
+msgstr ""
+
 #: Mailman/Handlers/CalcRecips.py:78
 msgid ""
 "Your urgent message to the %(realname)s mailing list was not authorized for\n"
@@ -8083,17 +8172,17 @@
 msgid "Posting to a moderated newsgroup"
 msgstr "Enviament a un grup de notícies moderat"
 
-#: Mailman/Handlers/Hold.py:250
+#: Mailman/Handlers/Hold.py:247
 msgid "Your message to %(listname)s awaits moderator approval"
 msgstr ""
 "El vostre missatge a la llista %(listname)s espera l'aprovació de "
 "l'administrador"
 
-#: Mailman/Handlers/Hold.py:269
+#: Mailman/Handlers/Hold.py:266
 msgid "%(listname)s post from %(sender)s requires approval"
 msgstr "Els enviaments a %(listname)s de %(sender)s requereixen aprovació"
 
-#: Mailman/Handlers/Hold.py:276
+#: Mailman/Handlers/Hold.py:273
 msgid ""
 "If you reply to this message, keeping the Subject: header intact, Mailman "
 "will\n"
@@ -8132,7 +8221,7 @@
 msgid "After content filtering, the message was empty"
 msgstr "Després de filtrar el contigut, el missatga era buit"
 
-#: Mailman/Handlers/MimeDel.py:235
+#: Mailman/Handlers/MimeDel.py:264
 msgid ""
 "The attached message matched the %(listname)s mailing list's content "
 "filtering\n"
@@ -8147,11 +8236,11 @@
 "descartat.\n"
 "\n"
 
-#: Mailman/Handlers/MimeDel.py:241
+#: Mailman/Handlers/MimeDel.py:270
 msgid "Content filtered message notification"
 msgstr "Notificació de contingut filtrat"
 
-#: Mailman/Handlers/Moderate.py:162
+#: Mailman/Handlers/Moderate.py:163
 msgid ""
 "You are not allowed to post to this mailing list, and your message has been\n"
 "automatically rejected.  If you think that your messages are being rejected "
@@ -8164,11 +8253,11 @@
 "denegats\n"
 "per error, contacte amb l'amo de la llista a %(listowner)s."
 
-#: Mailman/Handlers/Moderate.py:178
+#: Mailman/Handlers/Moderate.py:179
 msgid "Auto-discard notification"
 msgstr "Auto-descartar notificació "
 
-#: Mailman/Handlers/Moderate.py:181
+#: Mailman/Handlers/Moderate.py:182
 msgid "The attached message has been automatically discarded."
 msgstr "El missatge adjunt ha estat automàticament descartat."
 
@@ -8245,11 +8334,11 @@
 "Desc: %(desc)s\n"
 "Url : %(url)s\n"
 
-#: Mailman/Handlers/Scrubber.py:341
+#: Mailman/Handlers/Scrubber.py:344
 msgid "Skipped content of type %(partctype)s\n"
 msgstr "S'ha omès el contingut de tipus %(partctype)s\n"
 
-#: Mailman/Handlers/Scrubber.py:382
+#: Mailman/Handlers/Scrubber.py:385
 msgid "-------------- next part --------------\n"
 msgstr "-------------- part següent --------------\n"
 
@@ -8257,7 +8346,7 @@
 msgid "The message headers matched a filter rule"
 msgstr "Les capçaleres del missatge coincideixen amb una regla de filtre"
 
-#: Mailman/Handlers/SpamDetect.py:135
+#: Mailman/Handlers/SpamDetect.py:119
 msgid "Message rejected by filter rule match"
 msgstr "S'ha rebutjat el missatge perquè coincideix amb una regla de filtre"
 
@@ -8289,49 +8378,49 @@
 msgid "digest footer"
 msgstr "peu de pàgina del resum"
 
-#: Mailman/Handlers/ToDigest.py:361
+#: Mailman/Handlers/ToDigest.py:361 Mailman/Handlers/ToDigest.py:369
 msgid "Digest Footer"
 msgstr "Peu de pàgina del resum"
 
-#: Mailman/Handlers/ToDigest.py:375
+#: Mailman/Handlers/ToDigest.py:376
 msgid "End of "
 msgstr "Final de "
 
-#: Mailman/ListAdmin.py:297
+#: Mailman/ListAdmin.py:299
 msgid "Posting of your message titled \"%(subject)s\""
 msgstr "Enviament del vostre missatge anomenat «%(subject)s»"
 
-#: Mailman/ListAdmin.py:298 Mailman/ListAdmin.py:417
+#: Mailman/ListAdmin.py:300 Mailman/ListAdmin.py:419
 msgid "[No reason given]"
 msgstr "[No s'ha donat cap motiu]"
 
-#: Mailman/ListAdmin.py:336
+#: Mailman/ListAdmin.py:338
 msgid "Forward of moderated message"
 msgstr "Reenviament de missatge moderat"
 
-#: Mailman/ListAdmin.py:392
+#: Mailman/ListAdmin.py:394
 msgid "New subscription request to list %(realname)s from %(addr)s"
 msgstr ""
 "Sol·licitud de subscripció nova per a la llista %(realname)s de %(addr)s"
 
-#: Mailman/ListAdmin.py:416
+#: Mailman/ListAdmin.py:418
 msgid "Subscription request"
 msgstr "Sol·licitud de subscripció"
 
-#: Mailman/ListAdmin.py:447
+#: Mailman/ListAdmin.py:449
 msgid "New unsubscription request from %(realname)s by %(addr)s"
 msgstr ""
 "Sol·licitud de cancel·lació de subscripció nova a %(realname)s de %(addr)s"
 
-#: Mailman/ListAdmin.py:471
+#: Mailman/ListAdmin.py:473
 msgid "Unsubscription request"
 msgstr "Sol·licitud de cancel·lació de subscripció"
 
-#: Mailman/ListAdmin.py:504
+#: Mailman/ListAdmin.py:506
 msgid "Original Message"
 msgstr "Missatge original"
 
-#: Mailman/ListAdmin.py:507
+#: Mailman/ListAdmin.py:509
 msgid "Request to mailing list %(realname)s rejected"
 msgstr "S'ha refusat la sol·licitud a la llista de correu %(realname)s"
 
@@ -8411,16 +8500,16 @@
 msgid "Mailing list removal request for list %(listname)s"
 msgstr "Sol·licitud de supressió de la llista %(listname)s"
 
-#: Mailman/MTA/Postfix.py:317
+#: Mailman/MTA/Postfix.py:320
 msgid "checking permissions on %(file)s"
 msgstr "s'estan comprovant els permisos de %(file)s"
 
-#: Mailman/MTA/Postfix.py:327
+#: Mailman/MTA/Postfix.py:330
 msgid "%(file)s permissions must be 066x (got %(octmode)s)"
 msgstr "El fitxer %(file)s hauria de tenir permisos 066x (té %(octmode)s)"
 
-#: Mailman/MTA/Postfix.py:329 Mailman/MTA/Postfix.py:356
-#: Mailman/MTA/Postfix.py:367 bin/check_perms:125 bin/check_perms:153
+#: Mailman/MTA/Postfix.py:332 Mailman/MTA/Postfix.py:359
+#: Mailman/MTA/Postfix.py:370 bin/check_perms:125 bin/check_perms:153
 #: bin/check_perms:163 bin/check_perms:174 bin/check_perms:199
 #: bin/check_perms:216 bin/check_perms:242 bin/check_perms:265
 #: bin/check_perms:284 bin/check_perms:298 bin/check_perms:318
@@ -8428,15 +8517,15 @@
 msgid "(fixing)"
 msgstr "(s'està reparant)"
 
-#: Mailman/MTA/Postfix.py:345
+#: Mailman/MTA/Postfix.py:348
 msgid "checking ownership of %(dbfile)s"
 msgstr "s'està comprovant el propietari de %(dbfile)s"
 
-#: Mailman/MTA/Postfix.py:353
+#: Mailman/MTA/Postfix.py:356
 msgid "%(dbfile)s owned by %(owner)s (must be owned by %(user)s"
 msgstr "%(dbfile)s propietat de %(owner)s (ha de ser propietat de %(user)s"
 
-#: Mailman/MTA/Postfix.py:365
+#: Mailman/MTA/Postfix.py:368
 msgid "%(dbfile)s permissions must be 066x (got %(octmode)s)"
 msgstr "El fitxer %(dbfile)s hauria de tenir permisos 066x (té %(octmode)s)"
 
@@ -8452,33 +8541,33 @@
 "Es requereix la vostra confirmació per a abandonar la llista de correu %"
 "(listname)s"
 
-#: Mailman/MailList.py:891 Mailman/MailList.py:1313
+#: Mailman/MailList.py:900 Mailman/MailList.py:1322
 msgid " from %(remote)s"
 msgstr " de %(remote)s"
 
-#: Mailman/MailList.py:924
+#: Mailman/MailList.py:933
 msgid "subscriptions to %(realname)s require moderator approval"
 msgstr "les subscripcions a %(realname)s requereixen l'aprovació del moderador"
 
-#: Mailman/MailList.py:993 bin/add_members:245
+#: Mailman/MailList.py:1002 bin/add_members:245
 msgid "%(realname)s subscription notification"
 msgstr "Notificació de subscripció a %(realname)s"
 
-#: Mailman/MailList.py:1012
+#: Mailman/MailList.py:1021
 msgid "unsubscriptions require moderator approval"
 msgstr ""
 "les cancel·lacions de subscripció requereixen l'aprovació del moderador"
 
-#: Mailman/MailList.py:1032
+#: Mailman/MailList.py:1041
 msgid "%(realname)s unsubscribe notification"
 msgstr "Notificació de la cancel·lació de la subscripció a %(realname)s"
 
-#: Mailman/MailList.py:1222
+#: Mailman/MailList.py:1231
 msgid "subscriptions to %(name)s require administrator approval"
 msgstr ""
 "les subscripcions a %(name)s requereixen l'aprovació de l'administrador"
 
-#: Mailman/MailList.py:1485
+#: Mailman/MailList.py:1494
 msgid "Last autoresponse notification for today"
 msgstr "Última notificació d'auto-resposta per avui"
 
@@ -8508,11 +8597,11 @@
 msgid "Uncaught bounce notification"
 msgstr "Notificació de retorn no capturada"
 
-#: Mailman/Queue/CommandRunner.py:92
+#: Mailman/Queue/CommandRunner.py:97
 msgid "Ignoring non-text/plain MIME parts"
 msgstr "Ignorant parts MIME que no siguin text net"
 
-#: Mailman/Queue/CommandRunner.py:148
+#: Mailman/Queue/CommandRunner.py:163
 msgid ""
 "The results of your email command are provided below.\n"
 "Attached is your original message.\n"
@@ -8521,11 +8610,11 @@
 "ordre de correu.\n"
 "El vostre missatge original s'hi adjunta al final.\n"
 
-#: Mailman/Queue/CommandRunner.py:153
+#: Mailman/Queue/CommandRunner.py:168
 msgid "- Results:"
 msgstr "- Resultats:"
 
-#: Mailman/Queue/CommandRunner.py:159
+#: Mailman/Queue/CommandRunner.py:174
 msgid ""
 "\n"
 "- Unprocessed:"
@@ -8533,7 +8622,7 @@
 "\n"
 "- No processat:"
 
-#: Mailman/Queue/CommandRunner.py:163
+#: Mailman/Queue/CommandRunner.py:178
 msgid ""
 "No commands were found in this message.\n"
 "To obtain instructions, send a message containing just the word \"help\".\n"
@@ -8542,7 +8631,7 @@
 "Envieu un missatge que contingui només la paraula «help» per a rebre "
 "instruccions.\n"
 
-#: Mailman/Queue/CommandRunner.py:168
+#: Mailman/Queue/CommandRunner.py:183
 msgid ""
 "\n"
 "- Ignored:"
@@ -8550,7 +8639,7 @@
 "\n"
 "- Ignorat:"
 
-#: Mailman/Queue/CommandRunner.py:170
+#: Mailman/Queue/CommandRunner.py:185
 msgid ""
 "\n"
 "- Done.\n"
@@ -8560,21 +8649,29 @@
 "- Fet.\n"
 "\n"
 
-#: Mailman/Queue/CommandRunner.py:194
+#: Mailman/Queue/CommandRunner.py:209
 msgid "The results of your email commands"
 msgstr "Els resultats de les ordres del vostre correu electrònic"
 
+#: Mailman/Queue/CommandRunner.py:215
+msgid "Message body suppressed by Mailman site configuration\n"
+msgstr ""
+
+#: Mailman/Queue/CommandRunner.py:217
+msgid "Original message suppressed by Mailman site configuration\n"
+msgstr ""
+
 # FIXME: Ve a ser el mateix que «Powered by», però juguen amb el fet que «delivery»
 # té més connotació de correu.
-#: Mailman/htmlformat.py:639
+#: Mailman/htmlformat.py:648
 msgid "Delivered by Mailman<br>version %(version)s"
 msgstr "Funciona amb el Mailman<br>versió %(version)s"
 
-#: Mailman/htmlformat.py:640
+#: Mailman/htmlformat.py:649
 msgid "Python Powered"
 msgstr "Funciona amb el Python"
 
-#: Mailman/htmlformat.py:641
+#: Mailman/htmlformat.py:650
 msgid "Gnu's Not Unix"
 msgstr "GNU No és Unix"
 
@@ -11422,44 +11519,49 @@
 "        Mostra aquest missatge d'ajuda i surt.\n"
 "\n"
 
-#: bin/rmlist:72 bin/rmlist:75
+#: bin/rmlist:73 bin/rmlist:76
 msgid "Removing %(msg)s"
 msgstr "Eliminant %(msg)s"
 
-#: bin/rmlist:80
+#: bin/rmlist:81
 msgid "%(listname)s %(msg)s not found as %(filename)s"
 msgstr ""
 "No s'ha trobat el missatge %(msg)s de la llista %(listname)s com a fitxer %"
 "(filename)s"
 
-#: bin/rmlist:104
+#: bin/rmlist:105
 msgid "No such list (or list already deleted): %(listname)s"
 msgstr ""
 "La llista no existeix (o la llista ja ha estat eliminada): %(listname)s"
 
-#: bin/rmlist:106
+#: bin/rmlist:107
 msgid "No such list: %(listname)s.  Removing its residual archives."
 msgstr ""
 "La llista no existeix: %(listname)s.  Eliminant els seus fitxers residuals."
 
-#: bin/rmlist:110
+#: bin/rmlist:111
 msgid "Not removing archives.  Reinvoke with -a to remove them."
 msgstr ""
 "No s'estan eliminant els fitxers. Re-invoca amb l'opció -a per eliminar-los."
 
-#: bin/rmlist:124
+#: bin/rmlist:125
 msgid "list info"
 msgstr "informació de la llista"
 
-#: bin/rmlist:132
+#: bin/rmlist:133
 msgid "stale lock file"
 msgstr "fitxer de bloqueig obsolet"
 
-#: bin/rmlist:137 bin/rmlist:139
+#: bin/rmlist:141
+#, fuzzy
+msgid "held message file"
+msgstr "tots els missatges retinguts."
+
+#: bin/rmlist:146 bin/rmlist:148
 msgid "private archives"
 msgstr "fitxers privats"
 
-#: bin/rmlist:141 bin/rmlist:143
+#: bin/rmlist:150 bin/rmlist:152
 msgid "public archives"
 msgstr "fitxers públics"
 
@@ -12451,7 +12553,7 @@
 "que\n"
 "no s'especifiqui cap llista, s'incrementaran totes.\n"
 
-#: cron/checkdbs:19
+#: cron/checkdbs:20
 msgid ""
 "Check for pending admin requests and mail the list owners if necessary.\n"
 "\n"
@@ -12472,7 +12574,7 @@
 "    -h/--help\n"
 "        Mostra aquest missatge d'ajuda i surt.\n"
 
-#: cron/checkdbs:107
+#: cron/checkdbs:108
 msgid ""
 "Notice: %(discarded)d old request(s) automatically expired.\n"
 "\n"
@@ -12480,21 +12582,26 @@
 "Avís: han expirat automàticament %(discarded)d sol·licituds antigues.\n"
 "\n"
 
-#: cron/checkdbs:120
+#: cron/checkdbs:121
 msgid "%(count)d %(realname)s moderator request(s) waiting"
 msgstr ""
 "Hi ha %(count)d sol·licituds de moderació de la llista %(realname)s per "
 "processar"
 
-#: cron/checkdbs:123
+#: cron/checkdbs:124
 msgid "%(realname)s moderator request check result"
 msgstr "resultat de la comprovació de la petició de moderació de %(realname)s"
 
-#: cron/checkdbs:143
+#: cron/checkdbs:144
 msgid "Pending subscriptions:"
 msgstr "Subscripcions pendents:"
 
-#: cron/checkdbs:154
+#: cron/checkdbs:155
+#, fuzzy
+msgid "Pending unsubscriptions:"
+msgstr "Subscripcions pendents:"
+
+#: cron/checkdbs:162
 msgid ""
 "\n"
 "Pending posts:"
@@ -12502,7 +12609,7 @@
 "\n"
 "Enviaments pendents:"
 
-#: cron/checkdbs:161
+#: cron/checkdbs:169
 msgid ""
 "From: %(sender)s on %(date)s\n"
 "Subject: %(subject)s\n"

Modified: trunk/messages/cs/LC_MESSAGES/mailman.po
===================================================================
--- trunk/messages/cs/LC_MESSAGES/mailman.po	2012-03-29 10:55:23 UTC (rev 715)
+++ trunk/messages/cs/LC_MESSAGES/mailman.po	2012-05-20 12:09:31 UTC (rev 716)
@@ -7,7 +7,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: a\n"
-"POT-Creation-Date: Fri Sep 10 10:50:49 2010\n"
+"POT-Creation-Date: Sun Mar 25 16:40:47 2012\n"
 "PO-Revision-Date: 2007-03-23 11:26+0100\n"
 "Last-Translator: Dan Ohnesorg <dan at ohnesorg.cz>\n"
 "Language-Team:  <cs at li.org>\n"
@@ -224,14 +224,14 @@
 " Poslední pøíspìvek, který se vrátil jako nedoruèitelný na Va¹i adresu má "
 "datum: %(date)s"
 
-#: Mailman/Bouncer.py:321 Mailman/Deliverer.py:143
-#: Mailman/Handlers/Acknowledge.py:44 Mailman/Handlers/CookHeaders.py:286
+#: Mailman/Bouncer.py:322 Mailman/Deliverer.py:143
+#: Mailman/Handlers/Acknowledge.py:44 Mailman/Handlers/CookHeaders.py:284
 #: Mailman/Handlers/Hold.py:215 Mailman/Handlers/ToDigest.py:239
 #: Mailman/ListAdmin.py:223
 msgid "(no subject)"
 msgstr "(no subject)"
 
-#: Mailman/Bouncer.py:325
+#: Mailman/Bouncer.py:326
 msgid "[No bounce details are available]"
 msgstr "[®ádné dal¹í informace nejsou dostupné.]"
 
@@ -243,20 +243,24 @@
 msgid "Administrator"
 msgstr "Administrátor"
 
-#: Mailman/Cgi/admin.py:76 Mailman/Cgi/admindb.py:93 Mailman/Cgi/confirm.py:62
-#: Mailman/Cgi/edithtml.py:70 Mailman/Cgi/listinfo.py:54
+#: Mailman/Cgi/admin.py:79 Mailman/Cgi/admindb.py:93 Mailman/Cgi/confirm.py:62
+#: Mailman/Cgi/edithtml.py:71 Mailman/Cgi/listinfo.py:54
 #: Mailman/Cgi/options.py:78 Mailman/Cgi/private.py:108
 #: Mailman/Cgi/rmlist.py:64 Mailman/Cgi/roster.py:59
 #: Mailman/Cgi/subscribe.py:62
 msgid "No such list <em>%(safelistname)s</em>"
 msgstr "Nenalezl jsem konferenci <em>%(safelistname)s</em>."
 
-#: Mailman/Cgi/admin.py:91 Mailman/Cgi/admindb.py:109
-#: Mailman/Cgi/edithtml.py:90 Mailman/Cgi/private.py:135
+#: Mailman/Cgi/admin.py:107 Mailman/Cgi/admindb.py:109
+#: Mailman/Cgi/edithtml.py:91 Mailman/Cgi/private.py:135
 msgid "Authorization failed."
 msgstr "Selhání autorizace."
 
-#: Mailman/Cgi/admin.py:181
+#: Mailman/Cgi/admin.py:198
+msgid "The form lifetime has expired. (request forgery check)"
+msgstr ""
+
+#: Mailman/Cgi/admin.py:204
 msgid ""
 "You have turned off delivery of both digest and\n"
 "                non-digest messages.  This is an incompatible state of\n"
@@ -269,42 +273,43 @@
 "           nepro¹el ¾ádný pøíspìvek. Musíte alespoò jeden\n"
 "           zpùsob doruèení zapnout."
 
-#: Mailman/Cgi/admin.py:185 Mailman/Cgi/admin.py:191 Mailman/Cgi/admin.py:196
-#: Mailman/Cgi/admin.py:1443 Mailman/Gui/GUIBase.py:204
+#: Mailman/Cgi/admin.py:208 Mailman/Cgi/admin.py:216 Mailman/Cgi/admin.py:223
+#: Mailman/Cgi/admin.py:1498 Mailman/Gui/GUIBase.py:204
 msgid "Warning: "
 msgstr "Pozor: "
 
-#: Mailman/Cgi/admin.py:189
+#: Mailman/Cgi/admin.py:213
 msgid ""
 "You have digest members, but digests are turned\n"
-"                off. Those people will not receive mail."
+"                off. Those people will not receive mail.\n"
+"                Affected member(s) %(dm)r."
 msgstr ""
 "Pozor: Konference obsahuje digest úèastníky.\n"
-"     Pokud digest vypnete nebudou dostávat po¹tu."
+"     Pokud digest vypnete nebudou dostávat po¹tu.%(dm)r"
 
-#: Mailman/Cgi/admin.py:194
+#: Mailman/Cgi/admin.py:220
 msgid ""
 "You have regular list members but non-digestified mail is\n"
 "                turned off.  They will receive non-digestified mail until "
 "you\n"
-"                fix this problem."
+"                fix this problem. Affected member(s) %(rm)r."
 msgstr ""
 "Pozor: V konferenci máte ne-digest úèastníky, ale je\n"
-"      povoleno jen rozesíláni digestu. Tito nebudou dostávat po¹tu."
+"      povoleno jen rozesíláni digestu. Tito nebudou dostávat po¹tu.%(rm)r"
 
-#: Mailman/Cgi/admin.py:218
+#: Mailman/Cgi/admin.py:245
 msgid "%(hostname)s mailing lists - Admin Links"
 msgstr "Konference na serveru %(hostname)s - Administrativní odkazy"
 
-#: Mailman/Cgi/admin.py:249 Mailman/Cgi/listinfo.py:104
+#: Mailman/Cgi/admin.py:276 Mailman/Cgi/listinfo.py:104
 msgid "Welcome!"
 msgstr "Vítejte!"
 
-#: Mailman/Cgi/admin.py:252 Mailman/Cgi/listinfo.py:107
+#: Mailman/Cgi/admin.py:279 Mailman/Cgi/listinfo.py:107
 msgid "Mailman"
 msgstr "Mailman"
 
-#: Mailman/Cgi/admin.py:256
+#: Mailman/Cgi/admin.py:283
 msgid ""
 "<p>There currently are no publicly-advertised %(mailmanlink)s\n"
 "            mailing lists on %(hostname)s."
@@ -312,7 +317,7 @@
 "<p>Na serveru %(hostname)s nejsou v této dobì ¾ádné\n"
 "          veøejnì pøístupné konference spravované  %(mailmanlink)s."
 
-#: Mailman/Cgi/admin.py:262
+#: Mailman/Cgi/admin.py:289
 msgid ""
 "<p>Below is the collection of publicly-advertised\n"
 "            %(mailmanlink)s mailing lists on %(hostname)s.  Click on a list\n"
@@ -322,11 +327,11 @@
 "            %(mailmanlink)s na serveru %(hostname)s.  Kliknutím na\n"
 "            jméno konference se dostanete na její konfiguraèní stránky."
 
-#: Mailman/Cgi/admin.py:269
+#: Mailman/Cgi/admin.py:296
 msgid "right "
 msgstr "Vpravo"
 
-#: Mailman/Cgi/admin.py:271
+#: Mailman/Cgi/admin.py:298
 msgid ""
 "To visit the administrators configuration page for an\n"
 "        unadvertised list, open a URL similar to this one, but with a '/' "
@@ -345,32 +350,32 @@
 "\n"
 "        <p>V¹eobecné informace o konferencích jsou na "
 
-#: Mailman/Cgi/admin.py:278
+#: Mailman/Cgi/admin.py:305
 msgid "the mailing list overview page"
 msgstr "informaèní stránce konference"
 
-#: Mailman/Cgi/admin.py:280
+#: Mailman/Cgi/admin.py:307
 msgid "<p>(Send questions and comments to "
 msgstr "<p>(Zasílejte dotazy a pøipomínky na "
 
-#: Mailman/Cgi/admin.py:290 Mailman/Cgi/listinfo.py:139 cron/mailpasswds:216
+#: Mailman/Cgi/admin.py:317 Mailman/Cgi/listinfo.py:139 cron/mailpasswds:216
 msgid "List"
 msgstr "Do konference"
 
-#: Mailman/Cgi/admin.py:291 Mailman/Cgi/admin.py:558
+#: Mailman/Cgi/admin.py:318 Mailman/Cgi/admin.py:586
 #: Mailman/Cgi/listinfo.py:140
 msgid "Description"
 msgstr "Popis"
 
-#: Mailman/Cgi/admin.py:297 Mailman/Cgi/listinfo.py:146 bin/list_lists:116
+#: Mailman/Cgi/admin.py:324 Mailman/Cgi/listinfo.py:146 bin/list_lists:116
 msgid "[no description available]"
 msgstr "[¾ádný popis není k dispozici]"
 
-#: Mailman/Cgi/admin.py:331
+#: Mailman/Cgi/admin.py:358
 msgid "No valid variable name found."
 msgstr "Nenalezl jsem ¾ádný platný název promìnné"
 
-#: Mailman/Cgi/admin.py:341
+#: Mailman/Cgi/admin.py:368
 msgid ""
 "%(realname)s Mailing list Configuration Help\n"
 "    <br><em>%(varname)s</em> Option"
@@ -378,11 +383,11 @@
 "Konference %(realname)s \n"
 "    <br>Nápovìda pro volbu<em> %(varname)s</em>."
 
-#: Mailman/Cgi/admin.py:348
+#: Mailman/Cgi/admin.py:375
 msgid "Mailman %(varname)s List Option Help"
 msgstr "Nápovìda pro promìnnou %(varname)s"
 
-#: Mailman/Cgi/admin.py:366
+#: Mailman/Cgi/admin.py:393
 msgid ""
 "<em><strong>Warning:</strong> changing this option here\n"
 "    could cause other screens to be out-of-sync.  Be sure to reload any "
@@ -395,59 +400,60 @@
 "    budou ostatní stránky s konfigurací konference out-of-sync.Musíte je\n"
 "    v¹echny obnovit, ne¾ na nich budete dìlat nìjaké zmìny. Nebo mù¾ete "
 
-#: Mailman/Cgi/admin.py:377
+#: Mailman/Cgi/admin.py:404
 msgid "return to the %(categoryname)s options page."
 msgstr "pøejít zpìt na stránku %(categoryname)s."
 
-#: Mailman/Cgi/admin.py:392
+#: Mailman/Cgi/admin.py:419
 msgid "%(realname)s Administration (%(label)s)"
 msgstr "Administrace konference %(realname)s (%(label)s)"
 
-#: Mailman/Cgi/admin.py:393
+#: Mailman/Cgi/admin.py:420
 msgid "%(realname)s mailing list administration<br>%(label)s Section"
 msgstr "Konfigurace konference %(realname)s <br>%(label)s"
 
-#: Mailman/Cgi/admin.py:409
+#: Mailman/Cgi/admin.py:437
 msgid "Configuration Categories"
 msgstr "Konfiguraèní kategorie"
 
-#: Mailman/Cgi/admin.py:410
+#: Mailman/Cgi/admin.py:438
 msgid "Other Administrative Activities"
 msgstr "Dal¹í administrativní úkony"
 
-#: Mailman/Cgi/admin.py:414
+#: Mailman/Cgi/admin.py:442
 msgid "Tend to pending moderator requests"
 msgstr "Pøejdi na stránku administativních po¾adavkù."
 
-#: Mailman/Cgi/admin.py:416
+#: Mailman/Cgi/admin.py:444
 msgid "Go to the general list information page"
 msgstr "Pøejdi na stránku se v¹eobecnými informacemi o konferenci."
 
-#: Mailman/Cgi/admin.py:418
+#: Mailman/Cgi/admin.py:446
 msgid "Edit the public HTML pages and text files"
 msgstr "Edituj HTML ¹ablony pro veøejnì pøístupné stránky konference."
 
-#: Mailman/Cgi/admin.py:420
+#: Mailman/Cgi/admin.py:448
 msgid "Go to list archives"
 msgstr "Jdi na archiv konference"
 
-#: Mailman/Cgi/admin.py:426
+#: Mailman/Cgi/admin.py:454
 msgid "Delete this mailing list"
 msgstr "Sma¾te tuto konferenci"
 
-#: Mailman/Cgi/admin.py:427
+#: Mailman/Cgi/admin.py:455
 msgid " (requires confirmation)<br> <br>"
 msgstr ".(vy¾aduje potvrzení)<br> <br>"
 
-#: Mailman/Cgi/admin.py:433
+#: Mailman/Cgi/admin.py:461 Mailman/Cgi/admindb.py:195
+#: Mailman/Cgi/admindb.py:272
 msgid "Logout"
 msgstr "Odhlá¹ení"
 
-#: Mailman/Cgi/admin.py:477
+#: Mailman/Cgi/admin.py:505
 msgid "Emergency moderation of all list traffic is enabled"
 msgstr "Nouzová moderace v¹ech pøíspìvkù do konference je povolena."
 
-#: Mailman/Cgi/admin.py:488
+#: Mailman/Cgi/admin.py:516
 msgid ""
 "Make your changes in the following section, then submit them\n"
 "        using the <em>Submit Your Changes</em> button below."
@@ -456,11 +462,11 @@
 "        a ulo¾te je kliknutím na tlaèítko <em>Provést zmìny</em>na konci "
 "stránky."
 
-#: Mailman/Cgi/admin.py:506
+#: Mailman/Cgi/admin.py:534
 msgid "Additional Member Tasks"
 msgstr "Dal¹í vlastnosti úèastníkù"
 
-#: Mailman/Cgi/admin.py:512
+#: Mailman/Cgi/admin.py:540
 msgid ""
 "<li>Set everyone's moderation bit, including\n"
 "            those members not currently visible"
@@ -468,23 +474,23 @@
 "<li>Nastav ka¾dému pøíznak moderace, vèetnì tìch úèastníkù, \n"
 "            kteøí nejsou zobrazeni."
 
-#: Mailman/Cgi/admin.py:516
+#: Mailman/Cgi/admin.py:544
 msgid "Off"
 msgstr "Off"
 
-#: Mailman/Cgi/admin.py:516
+#: Mailman/Cgi/admin.py:544
 msgid "On"
 msgstr "On"
 
-#: Mailman/Cgi/admin.py:518
+#: Mailman/Cgi/admin.py:546
 msgid "Set"
 msgstr "Nastav"
 
-#: Mailman/Cgi/admin.py:559
+#: Mailman/Cgi/admin.py:587
 msgid "Value"
 msgstr "Hodnota"
 
-#: Mailman/Cgi/admin.py:613
+#: Mailman/Cgi/admin.py:641
 msgid ""
 "Badly formed options entry:\n"
 " %(record)s"
@@ -492,105 +498,106 @@
 "Tato volba nemá po¾adovaný formát:\n"
 " %(record)s"
 
-#: Mailman/Cgi/admin.py:671
+#: Mailman/Cgi/admin.py:699
 msgid "<em>Enter the text below, or...</em><br>"
 msgstr "<em>Zadejte text, nebo...</em><br>"
 
-#: Mailman/Cgi/admin.py:673
+#: Mailman/Cgi/admin.py:701
 msgid "<br><em>...specify a file to upload</em><br>"
 msgstr "<br><em>...vyberte soubor, který bude poslán na server</em><br>"
 
-#: Mailman/Cgi/admin.py:699 Mailman/Cgi/admin.py:702
+#: Mailman/Cgi/admin.py:727 Mailman/Cgi/admin.py:730
 msgid "Topic %(i)d"
 msgstr "Téma è. %(i)d"
 
-#: Mailman/Cgi/admin.py:703 Mailman/Cgi/admin.py:753
+#: Mailman/Cgi/admin.py:731 Mailman/Cgi/admin.py:781
 msgid "Delete"
 msgstr "Sma¾"
 
-#: Mailman/Cgi/admin.py:704
+#: Mailman/Cgi/admin.py:732
 msgid "Topic name:"
 msgstr "Název tématu:"
 
-#: Mailman/Cgi/admin.py:706
+#: Mailman/Cgi/admin.py:734
 msgid "Regexp:"
 msgstr "Regulární výraz:"
 
-#: Mailman/Cgi/admin.py:709 Mailman/Cgi/options.py:1047
+#: Mailman/Cgi/admin.py:737 Mailman/Cgi/options.py:1053
 msgid "Description:"
 msgstr "Popis:"
 
-#: Mailman/Cgi/admin.py:713 Mailman/Cgi/admin.py:771
+#: Mailman/Cgi/admin.py:741 Mailman/Cgi/admin.py:799
 msgid "Add new item..."
 msgstr "Pøidej novou polo¾ku...."
 
-#: Mailman/Cgi/admin.py:715 Mailman/Cgi/admin.py:773
+#: Mailman/Cgi/admin.py:743 Mailman/Cgi/admin.py:801
 msgid "...before this one."
 msgstr "... pøed tuto."
 
-#: Mailman/Cgi/admin.py:716 Mailman/Cgi/admin.py:774
+#: Mailman/Cgi/admin.py:744 Mailman/Cgi/admin.py:802
 msgid "...after this one."
 msgstr "... za tuto."
 
-#: Mailman/Cgi/admin.py:749 Mailman/Cgi/admin.py:752
+#: Mailman/Cgi/admin.py:777 Mailman/Cgi/admin.py:780
 msgid "Spam Filter Rule %(i)d"
 msgstr "Pravidlo spam filtru è. %(i)d"
 
-#: Mailman/Cgi/admin.py:754
+#: Mailman/Cgi/admin.py:782
 msgid "Spam Filter Regexp:"
 msgstr "Regexp pravidlo spam filtru:"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Cgi/admindb.py:306
-#: Mailman/Cgi/admindb.py:365 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641
+#: Mailman/Cgi/admin.py:793 Mailman/Cgi/admindb.py:327
+#: Mailman/Cgi/admindb.py:386 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671
 msgid "Defer"
 msgstr "Odlo¾"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Cgi/admindb.py:308
-#: Mailman/Cgi/admindb.py:367 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641 Mailman/Gui/ContentFilter.py:37
+#: Mailman/Cgi/admin.py:793 Mailman/Cgi/admindb.py:329
+#: Mailman/Cgi/admindb.py:388 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671 Mailman/Gui/ContentFilter.py:37
 #: Mailman/Gui/Privacy.py:216 Mailman/Gui/Privacy.py:297
 msgid "Reject"
 msgstr "Odmítni"
 
-#: Mailman/Cgi/admin.py:765 Mailman/Gui/Privacy.py:216
+#: Mailman/Cgi/admin.py:793 Mailman/Gui/Privacy.py:216
 #: Mailman/Gui/Privacy.py:297
 msgid "Hold"
 msgstr "Pozastav"
 
-#: Mailman/Cgi/admin.py:766 Mailman/Cgi/admindb.py:309
-#: Mailman/Cgi/admindb.py:368 Mailman/Cgi/admindb.py:410
-#: Mailman/Cgi/admindb.py:641 Mailman/Gui/ContentFilter.py:37
-#: Mailman/Gui/Privacy.py:216 Mailman/Gui/Privacy.py:297
+#: Mailman/Cgi/admin.py:794 Mailman/Cgi/admindb.py:330
+#: Mailman/Cgi/admindb.py:389 Mailman/Cgi/admindb.py:431
+#: Mailman/Cgi/admindb.py:671 Mailman/Commands/cmd_confirm.py:93
+#: Mailman/Gui/ContentFilter.py:37 Mailman/Gui/Privacy.py:216
+#: Mailman/Gui/Privacy.py:297
 msgid "Discard"
 msgstr "Zahoï"
 
-#: Mailman/Cgi/admin.py:766 Mailman/Cgi/admindb.py:410
+#: Mailman/Cgi/admin.py:794 Mailman/Cgi/admindb.py:431
 #: Mailman/Gui/Privacy.py:297
 msgid "Accept"
 msgstr "Akceptuj"
 
-#: Mailman/Cgi/admin.py:769 Mailman/Cgi/admindb.py:647
+#: Mailman/Cgi/admin.py:797 Mailman/Cgi/admindb.py:677
 msgid "Action:"
 msgstr "Akce:"
 
-#: Mailman/Cgi/admin.py:781
+#: Mailman/Cgi/admin.py:809
 msgid "Move rule up"
 msgstr "Posunout pravidlo vý¹e"
 
-#: Mailman/Cgi/admin.py:782
+#: Mailman/Cgi/admin.py:810
 msgid "Move rule down"
 msgstr "Posunout pravidlo ní¾e"
 
-#: Mailman/Cgi/admin.py:815
+#: Mailman/Cgi/admin.py:843
 msgid "<br>(Edit <b>%(varname)s</b>)"
 msgstr "<br>(Editovat <b>%(varname)s</b>)"
 
-#: Mailman/Cgi/admin.py:817
+#: Mailman/Cgi/admin.py:845
 msgid "<br>(Details for <b>%(varname)s</b>)"
 msgstr "<br>(Detaily o <b>%(varname)s</b>)"
 
-#: Mailman/Cgi/admin.py:824
+#: Mailman/Cgi/admin.py:852
 msgid ""
 "<br><em><strong>Note:</strong>\n"
 "        setting this value performs an immediate action but does not modify\n"
@@ -600,107 +607,107 @@
 "        Zmìna této hodnoty vyvolá okam¾itou akci, ale nezmìní konfiguraci "
 "konference.</em>"
 
-#: Mailman/Cgi/admin.py:838
+#: Mailman/Cgi/admin.py:866
 msgid "Mass Subscriptions"
 msgstr "Hromadné pøihlá¹ení"
 
-#: Mailman/Cgi/admin.py:845
+#: Mailman/Cgi/admin.py:873
 msgid "Mass Removals"
 msgstr "Hromadné odhlá¹ení úèastníkù"
 
-#: Mailman/Cgi/admin.py:852
+#: Mailman/Cgi/admin.py:880
 msgid "Membership List"
 msgstr "Seznam úèastníkù"
 
-#: Mailman/Cgi/admin.py:860
+#: Mailman/Cgi/admin.py:888
 msgid "(help)"
 msgstr "(nápovìda)"
 
-#: Mailman/Cgi/admin.py:861
+#: Mailman/Cgi/admin.py:889
 msgid "Find member %(link)s:"
 msgstr "Nalezni úèastníka %(link)s:"
 
-#: Mailman/Cgi/admin.py:864
+#: Mailman/Cgi/admin.py:892
 msgid "Search..."
 msgstr "Hledej..."
 
-#: Mailman/Cgi/admin.py:881
+#: Mailman/Cgi/admin.py:909
 msgid "Bad regular expression: "
 msgstr "Chybný regulární výraz: "
 
-#: Mailman/Cgi/admin.py:935
+#: Mailman/Cgi/admin.py:963
 msgid "%(allcnt)s members total, %(membercnt)s shown"
 msgstr "Konference má %(allcnt)s úèastníkù, %(membercnt)s je zobrazeno"
 
-#: Mailman/Cgi/admin.py:938
+#: Mailman/Cgi/admin.py:966
 msgid "%(allcnt)s members total"
 msgstr "Celkem %(allcnt)s úèastníkù"
 
-#: Mailman/Cgi/admin.py:962
+#: Mailman/Cgi/admin.py:990
 msgid "unsub"
 msgstr "unsub"
 
-#: Mailman/Cgi/admin.py:963
+#: Mailman/Cgi/admin.py:991
 msgid "member address<br>member name"
 msgstr "adresa úèastníka<br>jméno úèastníka"
 
-#: Mailman/Cgi/admin.py:964
+#: Mailman/Cgi/admin.py:992
 msgid "hide"
 msgstr "skryj"
 
-#: Mailman/Cgi/admin.py:964
+#: Mailman/Cgi/admin.py:992
 msgid "mod"
 msgstr "mod"
 
-#: Mailman/Cgi/admin.py:965
+#: Mailman/Cgi/admin.py:993
 msgid "nomail<br>[reason]"
 msgstr "nomail<br>[dùvod]"
 
-#: Mailman/Cgi/admin.py:966
+#: Mailman/Cgi/admin.py:994
 msgid "ack"
 msgstr "potvrzení"
 
-#: Mailman/Cgi/admin.py:966
+#: Mailman/Cgi/admin.py:994
 msgid "not metoo"
 msgstr "not metoo"
 
-#: Mailman/Cgi/admin.py:967
+#: Mailman/Cgi/admin.py:995
 msgid "nodupes"
 msgstr "nodupes"
 
-#: Mailman/Cgi/admin.py:968
+#: Mailman/Cgi/admin.py:996
+msgid "plain"
+msgstr "plain"
+
+#: Mailman/Cgi/admin.py:996 Mailman/Cgi/options.py:307
 msgid "digest"
 msgstr "digest"
 
-#: Mailman/Cgi/admin.py:968
-msgid "plain"
-msgstr "plain"
-
-#: Mailman/Cgi/admin.py:969
+#: Mailman/Cgi/admin.py:997
 msgid "language"
 msgstr "jazyk"
 
-#: Mailman/Cgi/admin.py:980
+#: Mailman/Cgi/admin.py:1008
 msgid "?"
 msgstr "?"
 
-#: Mailman/Cgi/admin.py:981
+#: Mailman/Cgi/admin.py:1009
 msgid "U"
 msgstr "U"
 
-#: Mailman/Cgi/admin.py:982
+#: Mailman/Cgi/admin.py:1010
 msgid "A"
 msgstr "A"
 
-#: Mailman/Cgi/admin.py:983
+#: Mailman/Cgi/admin.py:1011
 msgid "B"
 msgstr "B"
 
-#: Mailman/Cgi/admin.py:1055
+#: Mailman/Cgi/admin.py:1083
 msgid "<b>unsub</b> -- Click on this to unsubscribe the member."
 msgstr "<b>unsub</b> -- Vykliknìte pro odhlá¹ení úèastníka."
 
-#: Mailman/Cgi/admin.py:1057
+#: Mailman/Cgi/admin.py:1085
 msgid ""
 "<b>mod</b> -- The user's personal moderation flag.  If this is\n"
 "        set, postings from them will be moderated, otherwise they will be\n"
@@ -711,13 +718,13 @@
 "                      schváleny moderátorem. V opaèném pøípadì budou \n"
 "                      pøímo distribuovány."
 
-#: Mailman/Cgi/admin.py:1061
+#: Mailman/Cgi/admin.py:1089
 msgid ""
 "<b>hide</b> -- Is the member's address concealed on\n"
 "        the list of subscribers?"
 msgstr "<b>skryj</b> -- Je úèastník viditelný v seznamu úèastníkù?"
 
-#: Mailman/Cgi/admin.py:1063
+#: Mailman/Cgi/admin.py:1091
 msgid ""
 "<b>nomail</b> -- Is delivery to the member disabled?  If so, an\n"
 "        abbreviation will be given describing the reason for the disabled\n"
@@ -747,20 +754,20 @@
 "                  která tyto pøíznaky nepodporovala. \n"
 "            </ul>"
 
-#: Mailman/Cgi/admin.py:1078
+#: Mailman/Cgi/admin.py:1106
 msgid ""
 "<b>ack</b> -- Does the member get acknowledgements of their\n"
 "        posts?"
 msgstr "<b>potvrzení</b> -- Dostává pøispìvatel potvrzení o pøijetí pøíspìvku?"
 
-#: Mailman/Cgi/admin.py:1081
+#: Mailman/Cgi/admin.py:1109
 msgid ""
 "<b>not metoo</b> -- Does the member want to avoid copies of their\n"
 "        own postings?"
 msgstr ""
 "<b>not metoo</b> -- Úèastník si nepøeje dostávat kopie vlastních pøíspìvkù."
 
-#: Mailman/Cgi/admin.py:1084
+#: Mailman/Cgi/admin.py:1112
 msgid ""
 "<b>nodupes</b> -- Does the member want to avoid duplicates of the\n"
 "        same message?"
@@ -768,7 +775,7 @@
 "<b>nodupes</b> -- Má se systém pokou¹et nedoruèovat duplicitní pøíspìvky "
 "tomuto u¾ivateli?"
 
-#: Mailman/Cgi/admin.py:1087
+#: Mailman/Cgi/admin.py:1115
 msgid ""
 "<b>digest</b> -- Does the member get messages in digests?\n"
 "        (otherwise, individual messages)"
@@ -776,7 +783,7 @@
 "<b>digest</b> -- Dostává úèastník pøíspìvky jako digest? (V opaèném pøípadì "
 "dostává ka¾dý pøíspìvek samostatnì a ihned.)"
 
-#: Mailman/Cgi/admin.py:1090
+#: Mailman/Cgi/admin.py:1118
 msgid ""
 "<b>plain</b> -- If getting digests, does the member get plain\n"
 "        text digests?  (otherwise, MIME)"
@@ -784,19 +791,19 @@
 "<b>plain</b> -- Pokud má úèastník nastaven digest, dostává jej jako èistý "
 "text? (jinak bude formátován podle MIME)"
 
-#: Mailman/Cgi/admin.py:1092
+#: Mailman/Cgi/admin.py:1120
 msgid "<b>language</b> -- Language preferred by the user"
 msgstr "<b>Jazyk</b> -- Jazyk preferovaný úèastníky konference."
 
-#: Mailman/Cgi/admin.py:1106
+#: Mailman/Cgi/admin.py:1134
 msgid "Click here to hide the legend for this table."
 msgstr "Kliknutím sem skryjete popisek této tabulky."
 
-#: Mailman/Cgi/admin.py:1110
+#: Mailman/Cgi/admin.py:1138
 msgid "Click here to include the legend for this table."
 msgstr "Kliknutím sem zobrazíte popisek této tabulky."
 
-#: Mailman/Cgi/admin.py:1117
+#: Mailman/Cgi/admin.py:1145
 msgid ""
 "<p><em>To view more members, click on the appropriate\n"
 "        range listed below:</em>"
@@ -804,29 +811,29 @@
 "<p><em>Pro zobrazení dal¹ích èástí výpisu kliknìte ní¾e na segment, který "
 "chcete zobrazit.</em>"
 
-#: Mailman/Cgi/admin.py:1126
+#: Mailman/Cgi/admin.py:1154
 msgid "from %(start)s to %(end)s"
 msgstr "od %(start)s do %(end)s"
 
-#: Mailman/Cgi/admin.py:1139
+#: Mailman/Cgi/admin.py:1167
 msgid "Subscribe these users now or invite them?"
 msgstr ""
 "Mají být tito úèastníci pøihlá¹eni a nebo pozváni k úèasti v konferenci?"
 
-#: Mailman/Cgi/admin.py:1141
+#: Mailman/Cgi/admin.py:1169
 msgid "Invite"
 msgstr "Pozváni"
 
-#: Mailman/Cgi/admin.py:1141 Mailman/Cgi/listinfo.py:182
+#: Mailman/Cgi/admin.py:1169 Mailman/Cgi/listinfo.py:182
 msgid "Subscribe"
 msgstr "Pøihlas"
 
-#: Mailman/Cgi/admin.py:1147
+#: Mailman/Cgi/admin.py:1175
 msgid "Send welcome messages to new subscribees?"
 msgstr "Poslat novì pøihlá¹eným uvítací zprávu?"
 
-#: Mailman/Cgi/admin.py:1149 Mailman/Cgi/admin.py:1158
-#: Mailman/Cgi/admin.py:1191 Mailman/Cgi/admin.py:1199
+#: Mailman/Cgi/admin.py:1177 Mailman/Cgi/admin.py:1186
+#: Mailman/Cgi/admin.py:1219 Mailman/Cgi/admin.py:1227
 #: Mailman/Cgi/confirm.py:292 Mailman/Cgi/create.py:353
 #: Mailman/Cgi/create.py:388 Mailman/Cgi/create.py:426
 #: Mailman/Cgi/rmlist.py:230 Mailman/Gui/Archive.py:33
@@ -836,25 +843,25 @@
 #: Mailman/Gui/Bounce.py:155 Mailman/Gui/ContentFilter.py:74
 #: Mailman/Gui/ContentFilter.py:116 Mailman/Gui/ContentFilter.py:120
 #: Mailman/Gui/Digest.py:46 Mailman/Gui/Digest.py:62 Mailman/Gui/Digest.py:84
-#: Mailman/Gui/Digest.py:89 Mailman/Gui/General.py:156
-#: Mailman/Gui/General.py:162 Mailman/Gui/General.py:240
-#: Mailman/Gui/General.py:267 Mailman/Gui/General.py:294
-#: Mailman/Gui/General.py:305 Mailman/Gui/General.py:308
-#: Mailman/Gui/General.py:318 Mailman/Gui/General.py:323
-#: Mailman/Gui/General.py:329 Mailman/Gui/General.py:349
-#: Mailman/Gui/General.py:381 Mailman/Gui/General.py:404
-#: Mailman/Gui/General.py:421 Mailman/Gui/NonDigest.py:45
+#: Mailman/Gui/Digest.py:89 Mailman/Gui/General.py:157
+#: Mailman/Gui/General.py:163 Mailman/Gui/General.py:241
+#: Mailman/Gui/General.py:268 Mailman/Gui/General.py:295
+#: Mailman/Gui/General.py:306 Mailman/Gui/General.py:309
+#: Mailman/Gui/General.py:319 Mailman/Gui/General.py:324
+#: Mailman/Gui/General.py:330 Mailman/Gui/General.py:350
+#: Mailman/Gui/General.py:382 Mailman/Gui/General.py:405
+#: Mailman/Gui/General.py:422 Mailman/Gui/NonDigest.py:45
 #: Mailman/Gui/NonDigest.py:53 Mailman/Gui/NonDigest.py:140
-#: Mailman/Gui/Privacy.py:110 Mailman/Gui/Privacy.py:116
-#: Mailman/Gui/Privacy.py:149 Mailman/Gui/Privacy.py:197
-#: Mailman/Gui/Privacy.py:312 Mailman/Gui/Privacy.py:331
-#: Mailman/Gui/Usenet.py:52 Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93
-#: Mailman/Gui/Usenet.py:105
+#: Mailman/Gui/NonDigest.py:162 Mailman/Gui/Privacy.py:110
+#: Mailman/Gui/Privacy.py:116 Mailman/Gui/Privacy.py:149
+#: Mailman/Gui/Privacy.py:197 Mailman/Gui/Privacy.py:312
+#: Mailman/Gui/Privacy.py:331 Mailman/Gui/Usenet.py:52
+#: Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93 Mailman/Gui/Usenet.py:105
 msgid "No"
 msgstr "Ne"
 
-#: Mailman/Cgi/admin.py:1149 Mailman/Cgi/admin.py:1158
-#: Mailman/Cgi/admin.py:1191 Mailman/Cgi/admin.py:1199
+#: Mailman/Cgi/admin.py:1177 Mailman/Cgi/admin.py:1186
+#: Mailman/Cgi/admin.py:1219 Mailman/Cgi/admin.py:1227
 #: Mailman/Cgi/confirm.py:292 Mailman/Cgi/create.py:353
 #: Mailman/Cgi/create.py:388 Mailman/Cgi/create.py:426
 #: Mailman/Cgi/rmlist.py:230 Mailman/Gui/Archive.py:33
@@ -864,35 +871,36 @@
 #: Mailman/Gui/ContentFilter.py:74 Mailman/Gui/ContentFilter.py:116
 #: Mailman/Gui/ContentFilter.py:120 Mailman/Gui/Digest.py:46
 #: Mailman/Gui/Digest.py:62 Mailman/Gui/Digest.py:84 Mailman/Gui/Digest.py:89
-#: Mailman/Gui/General.py:156 Mailman/Gui/General.py:162
-#: Mailman/Gui/General.py:240 Mailman/Gui/General.py:267
-#: Mailman/Gui/General.py:294 Mailman/Gui/General.py:305
-#: Mailman/Gui/General.py:308 Mailman/Gui/General.py:318
-#: Mailman/Gui/General.py:323 Mailman/Gui/General.py:329
-#: Mailman/Gui/General.py:349 Mailman/Gui/General.py:381
-#: Mailman/Gui/General.py:404 Mailman/Gui/General.py:421
+#: Mailman/Gui/General.py:157 Mailman/Gui/General.py:163
+#: Mailman/Gui/General.py:241 Mailman/Gui/General.py:268
+#: Mailman/Gui/General.py:295 Mailman/Gui/General.py:306
+#: Mailman/Gui/General.py:309 Mailman/Gui/General.py:319
+#: Mailman/Gui/General.py:324 Mailman/Gui/General.py:330
+#: Mailman/Gui/General.py:350 Mailman/Gui/General.py:382
+#: Mailman/Gui/General.py:405 Mailman/Gui/General.py:422
 #: Mailman/Gui/NonDigest.py:45 Mailman/Gui/NonDigest.py:53
-#: Mailman/Gui/NonDigest.py:140 Mailman/Gui/Privacy.py:110
-#: Mailman/Gui/Privacy.py:116 Mailman/Gui/Privacy.py:149
-#: Mailman/Gui/Privacy.py:197 Mailman/Gui/Privacy.py:312
-#: Mailman/Gui/Privacy.py:331 Mailman/Gui/Usenet.py:52
-#: Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93 Mailman/Gui/Usenet.py:105
+#: Mailman/Gui/NonDigest.py:140 Mailman/Gui/NonDigest.py:162
+#: Mailman/Gui/Privacy.py:110 Mailman/Gui/Privacy.py:116
+#: Mailman/Gui/Privacy.py:149 Mailman/Gui/Privacy.py:197
+#: Mailman/Gui/Privacy.py:312 Mailman/Gui/Privacy.py:331
+#: Mailman/Gui/Usenet.py:52 Mailman/Gui/Usenet.py:56 Mailman/Gui/Usenet.py:93
+#: Mailman/Gui/Usenet.py:105
 msgid "Yes"
 msgstr "Ano"
 
-#: Mailman/Cgi/admin.py:1156
+#: Mailman/Cgi/admin.py:1184
 msgid "Send notifications of new subscriptions to the list owner?"
 msgstr "Zasílat upozornìní na nová pøihlá¹ení vlastníkovi konference?"
 
-#: Mailman/Cgi/admin.py:1164 Mailman/Cgi/admin.py:1205
+#: Mailman/Cgi/admin.py:1192 Mailman/Cgi/admin.py:1233
 msgid "Enter one address per line below..."
 msgstr "Zadejte na ka¾dý øádek jednu adresu..."
 
-#: Mailman/Cgi/admin.py:1169 Mailman/Cgi/admin.py:1210
+#: Mailman/Cgi/admin.py:1197 Mailman/Cgi/admin.py:1238
 msgid "...or specify a file to upload:"
 msgstr "...nebo vyberte soubor, který bude poslán na server:"
 
-#: Mailman/Cgi/admin.py:1174
+#: Mailman/Cgi/admin.py:1202
 msgid ""
 "Below, enter additional text to be added to the\n"
 "    top of your invitation or the subscription notification.  Include at "
@@ -904,19 +912,19 @@
 "o pøihlá¹ení. Na konci nechte alespoò jeden prázdný øádek,\n"
 "aby se text po kompletaci neslil dohromady."
 
-#: Mailman/Cgi/admin.py:1189
+#: Mailman/Cgi/admin.py:1217
 msgid "Send unsubscription acknowledgement to the user?"
 msgstr "Zaslat úèastníkovi upozornìní o odhlá¹ení?"
 
-#: Mailman/Cgi/admin.py:1197
+#: Mailman/Cgi/admin.py:1225
 msgid "Send notifications to the list owner?"
 msgstr "Zasílat upozornìní vlastníkovi konference?"
 
-#: Mailman/Cgi/admin.py:1219
+#: Mailman/Cgi/admin.py:1247
 msgid "Change list ownership passwords"
 msgstr "Zmìna hesla vlastníka konference"
 
-#: Mailman/Cgi/admin.py:1222
+#: Mailman/Cgi/admin.py:1250
 msgid ""
 "The <em>list administrators</em> are the people who have ultimate control "
 "over\n"
@@ -949,238 +957,263 @@
 "(adminurl)s/general\"> do pøíslu¹ných políèek na stránce v¹eobecných "
 "vlastností</a>. a zadáním hesla do ní¾e uvedeného vstupního pole."
 
-#: Mailman/Cgi/admin.py:1241
+#: Mailman/Cgi/admin.py:1269
 msgid "Enter new administrator password:"
 msgstr "Zadejte nové heslo pro administrátora konference:"
 
-#: Mailman/Cgi/admin.py:1243
+#: Mailman/Cgi/admin.py:1271
 msgid "Confirm administrator password:"
 msgstr "Potvrïte heslo administrátora konference:"
 
-#: Mailman/Cgi/admin.py:1248
+#: Mailman/Cgi/admin.py:1276
 msgid "Enter new moderator password:"
 msgstr "Zadejte nové heslo pro moderátora:"
 
-#: Mailman/Cgi/admin.py:1250
+#: Mailman/Cgi/admin.py:1278
 msgid "Confirm moderator password:"
 msgstr "Potvrï nové heslo pro moderátora:"
 
-#: Mailman/Cgi/admin.py:1260
+#: Mailman/Cgi/admin.py:1282
+msgid ""
+"In addition to the above passwords you may specify a password for\n"
+"pre-approving posts to the list. Either of the above two passwords can\n"
+"be used in an Approved: header or first body line pseudo-header to\n"
+"pre-approve a post that would otherwise be held for moderation. In\n"
+"addition, the password below, if set, can be used for that purpose and\n"
+"no other."
+msgstr ""
+
+#: Mailman/Cgi/admin.py:1293
+#, fuzzy
+msgid "Enter new poster password:"
+msgstr "Zadejte nové heslo pro moderátora:"
+
+#: Mailman/Cgi/admin.py:1295
+#, fuzzy
+msgid "Confirm poster password:"
+msgstr "Potvrï nové heslo pro moderátora:"
+
+#: Mailman/Cgi/admin.py:1304
 msgid "Submit Your Changes"
 msgstr "Ulo¾it zmìny"
 
-#: Mailman/Cgi/admin.py:1283
+#: Mailman/Cgi/admin.py:1327
 msgid "Moderator passwords did not match"
 msgstr "Hesla moderátora se neshodují."
 
-#: Mailman/Cgi/admin.py:1293
+#: Mailman/Cgi/admin.py:1338
+#, fuzzy
+msgid "Poster passwords did not match"
+msgstr "Va¹e hesla se neshodují."
+
+#: Mailman/Cgi/admin.py:1348
 msgid "Administrator passwords did not match"
 msgstr "Hesla administrátora se neshodují."
 
-#: Mailman/Cgi/admin.py:1343
+#: Mailman/Cgi/admin.py:1398
 msgid "Already a member"
 msgstr "Je ji¾ úèastníkem"
 
-#: Mailman/Cgi/admin.py:1346
+#: Mailman/Cgi/admin.py:1401
 msgid "<blank line>"
 msgstr "<prázdný øádek>"
 
-#: Mailman/Cgi/admin.py:1347 Mailman/Cgi/admin.py:1350
+#: Mailman/Cgi/admin.py:1402 Mailman/Cgi/admin.py:1405
 msgid "Bad/Invalid email address"
 msgstr "Neplatná emailová adresa"
 
-#: Mailman/Cgi/admin.py:1353
+#: Mailman/Cgi/admin.py:1408
 msgid "Hostile address (illegal characters)"
 msgstr "Neplatná adresa (obsahuje nepovolené znaky)"
 
-#: Mailman/Cgi/admin.py:1356 bin/add_members:140 bin/clone_member:136
+#: Mailman/Cgi/admin.py:1411 bin/add_members:140 bin/clone_member:136
 #: bin/sync_members:264
 msgid "Banned address (matched %(pattern)s)"
 msgstr "Zakázaná adresa (vyhovuje vzoru %(pattern)s)"
 
-#: Mailman/Cgi/admin.py:1362
+#: Mailman/Cgi/admin.py:1417
 msgid "Successfully invited:"
 msgstr "Úspì¹nì pøizváni:"
 
-#: Mailman/Cgi/admin.py:1364
+#: Mailman/Cgi/admin.py:1419
 msgid "Successfully subscribed:"
 msgstr "Úspì¹nì pøihlá¹eni:"
 
-#: Mailman/Cgi/admin.py:1369
+#: Mailman/Cgi/admin.py:1424
 msgid "Error inviting:"
 msgstr "Chyba pøi pozvání:"
 
-#: Mailman/Cgi/admin.py:1371
+#: Mailman/Cgi/admin.py:1426
 msgid "Error subscribing:"
 msgstr "Chyba pøi pøihla¹ování:"
 
-#: Mailman/Cgi/admin.py:1400
+#: Mailman/Cgi/admin.py:1455
 msgid "Successfully Unsubscribed:"
 msgstr "Úspì¹nì odhlá¹eni:"
 
-#: Mailman/Cgi/admin.py:1405
+#: Mailman/Cgi/admin.py:1460
 msgid "Cannot unsubscribe non-members:"
 msgstr "Nemohu odhlásit nìkoho, kdo není úèastníkem:"
 
-#: Mailman/Cgi/admin.py:1417
+#: Mailman/Cgi/admin.py:1472
 msgid "Bad moderation flag value"
 msgstr "Chybná hodnota pøíznaku moderace."
 
-#: Mailman/Cgi/admin.py:1439
+#: Mailman/Cgi/admin.py:1494
 msgid "Not subscribed"
 msgstr "Není pøihlá¹en"
 
-#: Mailman/Cgi/admin.py:1442
+#: Mailman/Cgi/admin.py:1497
 msgid "Ignoring changes to deleted member: %(user)s"
 msgstr "Ignoruji zmìny provedené u odhlá¹eného úèastníka: %(user)s"
 
-#: Mailman/Cgi/admin.py:1482
+#: Mailman/Cgi/admin.py:1537
 msgid "Successfully Removed:"
 msgstr "Úspì¹nì odstranìni:"
 
-#: Mailman/Cgi/admin.py:1486
+#: Mailman/Cgi/admin.py:1541
 msgid "Error Unsubscribing:"
 msgstr "Chyba pøi odhla¹ování"
 
-#: Mailman/Cgi/admindb.py:163 Mailman/Cgi/admindb.py:171
+#: Mailman/Cgi/admindb.py:176 Mailman/Cgi/admindb.py:185
 msgid "%(realname)s Administrative Database"
 msgstr "Konference %(realname)s -- administrace"
 
-#: Mailman/Cgi/admindb.py:166
+#: Mailman/Cgi/admindb.py:179
 msgid "%(realname)s Administrative Database Results"
 msgstr "Konference %(realname)s -- výsledky editace databáze po¾adavkù"
 
-#: Mailman/Cgi/admindb.py:174
+#: Mailman/Cgi/admindb.py:188
 msgid "There are no pending requests."
 msgstr "®ádné po¾adavky neèekají na vyøízení."
 
-#: Mailman/Cgi/admindb.py:177
+#: Mailman/Cgi/admindb.py:191
 msgid "Click here to reload this page."
 msgstr "Kliknutím sem obnovíte obsah této stránky."
 
-#: Mailman/Cgi/admindb.py:188
+#: Mailman/Cgi/admindb.py:205
 msgid "Detailed instructions for the administrative database"
 msgstr "Podrobnìj¹í instrukce pro práci s databází po¾adavkù"
 
-#: Mailman/Cgi/admindb.py:192
+#: Mailman/Cgi/admindb.py:209
 msgid "Administrative requests for mailing list:"
 msgstr "Administrativní po¾adavky pro konference"
 
-#: Mailman/Cgi/admindb.py:195 Mailman/Cgi/admindb.py:251
+#: Mailman/Cgi/admindb.py:212 Mailman/Cgi/admindb.py:268
 msgid "Submit All Data"
 msgstr "Potvrï v¹echny akce"
 
-#: Mailman/Cgi/admindb.py:201 Mailman/Cgi/admindb.py:249
+#: Mailman/Cgi/admindb.py:218 Mailman/Cgi/admindb.py:266
 msgid "Discard all messages marked <em>Defer</em>"
 msgstr "Zahodit v¹echny zprávy oznaèené jako <em>Odlo¾</em>"
 
-#: Mailman/Cgi/admindb.py:215
+#: Mailman/Cgi/admindb.py:232
 msgid "all of %(esender)s's held messages."
 msgstr "v¹echny pozdr¾ené zprávy od úèastníka %(esender)s."
 
-#: Mailman/Cgi/admindb.py:220
+#: Mailman/Cgi/admindb.py:237
 msgid "a single held message."
 msgstr "jedna pozdr¾ená zpráva."
 
-#: Mailman/Cgi/admindb.py:225
+#: Mailman/Cgi/admindb.py:242
 msgid "all held messages."
 msgstr "v¹echny pozdr¾ené pøíspìvky."
 
-#: Mailman/Cgi/admindb.py:266
+#: Mailman/Cgi/admindb.py:287
 msgid "Mailman Administrative Database Error"
 msgstr "Pøi zpracování databáze po¾adavkù (Admindb) do¹lo k chybì."
 
-#: Mailman/Cgi/admindb.py:271
+#: Mailman/Cgi/admindb.py:292
 msgid "list of available mailing lists."
 msgstr "seznam konferencí"
 
-#: Mailman/Cgi/admindb.py:272
+#: Mailman/Cgi/admindb.py:293
 msgid "You must specify a list name.  Here is the %(link)s"
 msgstr "Musíte zadat název konference, zde je odkaz %(link)s"
 
-#: Mailman/Cgi/admindb.py:285
+#: Mailman/Cgi/admindb.py:306
 msgid "Subscription Requests"
 msgstr "Po¾adavky na pøihlá¹ení"
 
-#: Mailman/Cgi/admindb.py:287
+#: Mailman/Cgi/admindb.py:308
 msgid "Address/name"
 msgstr "Adresa/jméno"
 
-#: Mailman/Cgi/admindb.py:288 Mailman/Cgi/admindb.py:339
+#: Mailman/Cgi/admindb.py:309 Mailman/Cgi/admindb.py:360
 msgid "Your decision"
 msgstr "Va¹e rozhodnutí"
 
-#: Mailman/Cgi/admindb.py:289 Mailman/Cgi/admindb.py:340
+#: Mailman/Cgi/admindb.py:310 Mailman/Cgi/admindb.py:361
 msgid "Reason for refusal"
 msgstr "Dùvod pro zamítnutí"
 
-#: Mailman/Cgi/admindb.py:307 Mailman/Cgi/admindb.py:366
-#: Mailman/Cgi/admindb.py:641
+#: Mailman/Cgi/admindb.py:328 Mailman/Cgi/admindb.py:387
+#: Mailman/Cgi/admindb.py:671 Mailman/Commands/cmd_confirm.py:90
 msgid "Approve"
 msgstr "Odsouhlas"
 
-#: Mailman/Cgi/admindb.py:317
+#: Mailman/Cgi/admindb.py:338
 msgid "Permanently ban from this list"
 msgstr "Trvale zakázat pøístup do konference"
 
-#: Mailman/Cgi/admindb.py:338
+#: Mailman/Cgi/admindb.py:359
 msgid "User address/name"
 msgstr "adresa úèastníka/jméno úèastníka"
 
-#: Mailman/Cgi/admindb.py:378
+#: Mailman/Cgi/admindb.py:399
 msgid "Unsubscription Requests"
 msgstr "Po¾adavky na odhlá¹ení"
 
-#: Mailman/Cgi/admindb.py:390
+#: Mailman/Cgi/admindb.py:411
 #, fuzzy
 msgid "Held Messages"
 msgstr "v¹echny pozdr¾ené pøíspìvky."
 
-#: Mailman/Cgi/admindb.py:403 Mailman/Cgi/admindb.py:624
+#: Mailman/Cgi/admindb.py:424 Mailman/Cgi/admindb.py:654
 msgid "From:"
 msgstr "Od:"
 
-#: Mailman/Cgi/admindb.py:406
+#: Mailman/Cgi/admindb.py:427
 msgid "Action to take on all these held messages:"
 msgstr "Co se má udìlat se v¹emi pozdr¾enými zprávami:"
 
-#: Mailman/Cgi/admindb.py:418
+#: Mailman/Cgi/admindb.py:439
 msgid "Preserve messages for the site administrator"
 msgstr "Uschovej tuto zprávu pro administrátora serveru"
 
-#: Mailman/Cgi/admindb.py:424
+#: Mailman/Cgi/admindb.py:445
 msgid "Forward messages (individually) to:"
 msgstr "Pøepo¹li zprávy (jednotlivì) na:"
 
-#: Mailman/Cgi/admindb.py:442
+#: Mailman/Cgi/admindb.py:463
 msgid "Clear this member's <em>moderate</em> flag"
 msgstr "Zru¹it tomuto úèastníkovi pøíznak <em>moderovat</em>."
 
-#: Mailman/Cgi/admindb.py:446
+#: Mailman/Cgi/admindb.py:467
 msgid "<em>The sender is now a member of this list</em>"
 msgstr "<em>Odesílatel je nyní úèastníkem konference.</em>"
 
-#: Mailman/Cgi/admindb.py:455
+#: Mailman/Cgi/admindb.py:476
 msgid "Add <b>%(esender)s</b> to one of these sender filters:"
 msgstr "Pøidej <b>%(esender)s</b> do jednoho z tìchto filtrù odesílatelù:"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Accepts"
 msgstr "Akceptovat"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Discards"
 msgstr "Zahoï"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Holds"
 msgstr "Pozdr¾et"
 
-#: Mailman/Cgi/admindb.py:460
+#: Mailman/Cgi/admindb.py:481
 msgid "Rejects"
 msgstr "Odmítni"
 
-#: Mailman/Cgi/admindb.py:469
+#: Mailman/Cgi/admindb.py:490
 msgid ""
 "Ban <b>%(esender)s</b> from ever subscribing to this\n"
 "                    mailing list"
@@ -1188,7 +1221,7 @@
 "Zaka¾ úèastníkovi <b>%(esender)s</b> nav¾dy pøihlá¹ení do \n"
 "této konference."
 
-#: Mailman/Cgi/admindb.py:474
+#: Mailman/Cgi/admindb.py:495
 msgid ""
 "Click on the message number to view the individual\n"
 "            message, or you can "
@@ -1196,85 +1229,85 @@
 "Buï mù¾ete kliknout na èíslo zprávy, abyste si ji zobrazili, \n"
 "nebo mù¾ete"
 
-#: Mailman/Cgi/admindb.py:476
+#: Mailman/Cgi/admindb.py:497
 msgid "view all messages from %(esender)s"
 msgstr "zobrazit v¹echny zprávy od %(esender)s"
 
-#: Mailman/Cgi/admindb.py:498 Mailman/Cgi/admindb.py:627
+#: Mailman/Cgi/admindb.py:519 Mailman/Cgi/admindb.py:657
 msgid "Subject:"
 msgstr "Subject:"
 
-#: Mailman/Cgi/admindb.py:501
+#: Mailman/Cgi/admindb.py:522
 msgid " bytes"
 msgstr " bytù"
 
-#: Mailman/Cgi/admindb.py:501
+#: Mailman/Cgi/admindb.py:522
 msgid "Size:"
 msgstr "Velikost:"
 
-#: Mailman/Cgi/admindb.py:505 Mailman/Handlers/Scrubber.py:203
+#: Mailman/Cgi/admindb.py:526 Mailman/Handlers/Scrubber.py:203
 #: Mailman/Handlers/Scrubber.py:301 Mailman/Handlers/Scrubber.py:303
 msgid "not available"
 msgstr "[¾ádný popis není k dispozici]"
 
-#: Mailman/Cgi/admindb.py:506 Mailman/Cgi/admindb.py:630
+#: Mailman/Cgi/admindb.py:527 Mailman/Cgi/admindb.py:660
 msgid "Reason:"
 msgstr "Dùvod:"
 
-#: Mailman/Cgi/admindb.py:510 Mailman/Cgi/admindb.py:634
+#: Mailman/Cgi/admindb.py:531 Mailman/Cgi/admindb.py:664
 msgid "Received:"
 msgstr "Doruèeno:"
 
-#: Mailman/Cgi/admindb.py:565
+#: Mailman/Cgi/admindb.py:586
 msgid "Posting Held for Approval"
 msgstr "Pøíspìvek byl pozastaven do souhlasu moderátora"
 
-#: Mailman/Cgi/admindb.py:567
+#: Mailman/Cgi/admindb.py:588
 msgid " (%(count)d of %(total)d)"
 msgstr " (%(count)d z %(total)d)"
 
-#: Mailman/Cgi/admindb.py:578
+#: Mailman/Cgi/admindb.py:599
 msgid "<em>Message with id #%(id)d was lost."
 msgstr "<em>Pøíspìvek s ID #%(id)d byl ztracen."
 
-#: Mailman/Cgi/admindb.py:587
+#: Mailman/Cgi/admindb.py:608
 msgid "<em>Message with id #%(id)d is corrupted."
 msgstr "<em>Pøíspìvek s ID #%(id)d byl po¹kozen."
 
-#: Mailman/Cgi/admindb.py:651
+#: Mailman/Cgi/admindb.py:681
 msgid "Preserve message for site administrator"
 msgstr "Uschovej tuto zprávu pro administrátora serveru"
 
-#: Mailman/Cgi/admindb.py:655
+#: Mailman/Cgi/admindb.py:685
 msgid "Additionally, forward this message to: "
 msgstr "Kromì toho za¹lete tuto zprávu na adresu:"
 
-#: Mailman/Cgi/admindb.py:659 Mailman/Cgi/admindb.py:724
-#: Mailman/Cgi/admindb.py:787 Mailman/Cgi/admindb.py:789
+#: Mailman/Cgi/admindb.py:689 Mailman/Cgi/admindb.py:754
+#: Mailman/Cgi/admindb.py:817 Mailman/Cgi/admindb.py:819
 msgid "[No explanation given]"
 msgstr "[Bez udání dùvodu]"
 
-#: Mailman/Cgi/admindb.py:661
+#: Mailman/Cgi/admindb.py:691
 msgid "If you reject this post,<br>please explain (optional):"
 msgstr "Pokud zamítnete tento pøíspìvek, <br>prosím, napi¹te proè (nepovinné):"
 
-#: Mailman/Cgi/admindb.py:667
+#: Mailman/Cgi/admindb.py:697
 msgid "Message Headers:"
 msgstr "Hlavièky pøíspìvku:"
 
-#: Mailman/Cgi/admindb.py:672
+#: Mailman/Cgi/admindb.py:702
 msgid "Message Excerpt:"
 msgstr "Èást zprávy"
 
-#: Mailman/Cgi/admindb.py:824
+#: Mailman/Cgi/admindb.py:854
 msgid "Database Updated..."
 msgstr "Databáze byla aktualizována"
 
-#: Mailman/Cgi/admindb.py:827
+#: Mailman/Cgi/admindb.py:857
 msgid " is already a member"
 msgstr "je úèastníkem konference"
 
-#: Mailman/Cgi/admindb.py:830
+#: Mailman/Cgi/admindb.py:860
 msgid "%(addr)s is banned (matched: %(patt)s)"
 msgstr "%(addr)s je zakázána (vyhovuje vzoru: %(patt)s)"
 
@@ -1479,7 +1512,7 @@
 "            O jeho rozhodnutí budete informován."
 
 #: Mailman/Cgi/confirm.py:371 Mailman/Cgi/confirm.py:436
-#: Mailman/Cgi/confirm.py:525 Mailman/Cgi/confirm.py:761
+#: Mailman/Cgi/confirm.py:525 Mailman/Cgi/confirm.py:762
 msgid ""
 "Invalid confirmation string.  It is\n"
 "            possible that you are attempting to confirm a request for an\n"
@@ -1593,8 +1626,8 @@
 "\n"
 "    <p>A nebo kliknìte na <em>Zru¹it</em> a odhlá¹ení se neprovede."
 
-#: Mailman/Cgi/confirm.py:491 Mailman/Cgi/options.py:761
-#: Mailman/Cgi/options.py:905 Mailman/Cgi/options.py:915
+#: Mailman/Cgi/confirm.py:491 Mailman/Cgi/options.py:767
+#: Mailman/Cgi/options.py:911 Mailman/Cgi/options.py:921
 msgid "Unsubscribe"
 msgstr "Odhlásit"
 
@@ -1699,7 +1732,7 @@
 msgid "Change address"
 msgstr "Po¾adavek na zmìnu"
 
-#: Mailman/Cgi/confirm.py:611 Mailman/Cgi/confirm.py:726
+#: Mailman/Cgi/confirm.py:611 Mailman/Cgi/confirm.py:727
 msgid "Continue awaiting approval"
 msgstr "Pokraèuj v èekání na souhlas"
 
@@ -1711,11 +1744,11 @@
 "Dobøe, moderátor konference bude mít mo¾nost pøíspìvek\n"
 "    povolit nebo zamítnout."
 
-#: Mailman/Cgi/confirm.py:646
+#: Mailman/Cgi/confirm.py:647
 msgid "Sender discarded message via web."
 msgstr "Odesílatel zru¹il pøíspìvek pøes webovské rozhraní."
 
-#: Mailman/Cgi/confirm.py:648
+#: Mailman/Cgi/confirm.py:649
 msgid ""
 "The held message with the Subject:\n"
 "            header <em>%(subject)s</em> could not be found.  The most "
@@ -1730,11 +1763,11 @@
 "             a tak byla rozeslána a nebo ji zamítl. S po¾adavkem na zru¹ení\n"
 "             pøíspìvku jste pøi¹el pozdì."
 
-#: Mailman/Cgi/confirm.py:656
+#: Mailman/Cgi/confirm.py:657
 msgid "Posted message canceled"
 msgstr "Pøíspìvek byl stornován"
 
-#: Mailman/Cgi/confirm.py:659
+#: Mailman/Cgi/confirm.py:660
 msgid ""
 "            You have successfully canceled the posting of your message with\n"
 "            the Subject: header <em>%(subject)s</em> to the mailing list\n"
@@ -1744,17 +1777,17 @@
 "            <em>%(subject)s</em> do konference \n"
 "            %(listname)s."
 
-#: Mailman/Cgi/confirm.py:670
+#: Mailman/Cgi/confirm.py:671
 msgid "Cancel held message posting"
 msgstr "Zahoï pøíspìvek"
 
-#: Mailman/Cgi/confirm.py:695
+#: Mailman/Cgi/confirm.py:696
 msgid ""
 "The held message you were referred to has\n"
 "        already been handled by the list administrator."
 msgstr "Pøíspìvek, který jste chtìl zobrazit byl ji¾ vyøízen moderátorem."
 
-#: Mailman/Cgi/confirm.py:709
+#: Mailman/Cgi/confirm.py:710
 msgid ""
 "Your confirmation is required in order to cancel the\n"
 "    posting of your message to the mailing list <em>%(listname)s</em>:\n"
@@ -1783,11 +1816,11 @@
 "poèká na\n"
 "    rozhodnutí moderátora."
 
-#: Mailman/Cgi/confirm.py:725
+#: Mailman/Cgi/confirm.py:726
 msgid "Cancel posting"
 msgstr "Zahoï pøíspìvek"
 
-#: Mailman/Cgi/confirm.py:737
+#: Mailman/Cgi/confirm.py:738
 msgid ""
 "You have canceled the re-enabling of your membership.  If\n"
 "    we continue to receive bounces from your address, it could be deleted "
@@ -1797,11 +1830,11 @@
 "Zru¹il jste po¾adavek na obnovení èlenství. Pokud se budou \n"
 "i nadále vracet pøíspìvky, bude Va¹e adresa z konference odhlá¹ena."
 
-#: Mailman/Cgi/confirm.py:767
+#: Mailman/Cgi/confirm.py:768
 msgid "Membership re-enabled."
 msgstr "Èlenství bylo znovu povoleno."
 
-#: Mailman/Cgi/confirm.py:771
+#: Mailman/Cgi/confirm.py:772
 msgid ""
 "            You have successfully re-enabled your membership in the\n"
 "            %(listname)s mailing list.  You can now <a\n"
@@ -1813,11 +1846,11 @@
 "            href=\"%(optionsurl)s\">na stránku s konfigurací èlena</a>.\n"
 "            "
 
-#: Mailman/Cgi/confirm.py:783
+#: Mailman/Cgi/confirm.py:784
 msgid "Re-enable mailing list membership"
 msgstr "Povol èlenství v konferenci"
 
-#: Mailman/Cgi/confirm.py:800
+#: Mailman/Cgi/confirm.py:801
 msgid ""
 "We're sorry, but you have already been unsubscribed\n"
 "        from this mailing list.  To re-subscribe, please visit the\n"
@@ -1827,11 +1860,11 @@
 "        Pokud se chcete znovu pøihlásit, \n"
 "        <a href=\"%(listinfourl)s\">nav¹tivte informaèní stránku.</a>."
 
-#: Mailman/Cgi/confirm.py:815
+#: Mailman/Cgi/confirm.py:816
 msgid "<em>not available</em>"
 msgstr "<em>není k dispozici</em>"
 
-#: Mailman/Cgi/confirm.py:819
+#: Mailman/Cgi/confirm.py:820
 msgid ""
 "Your membership in the %(realname)s mailing list is\n"
 "    currently disabled due to excessive bounces.  Your confirmation is\n"
@@ -1868,11 +1901,11 @@
 "    Nebo kliknìte na <em>Zru¹it</em> a systém bude dále èekat.\n"
 "    "
 
-#: Mailman/Cgi/confirm.py:839
+#: Mailman/Cgi/confirm.py:840
 msgid "Re-enable membership"
 msgstr "Obnov èlenství"
 
-#: Mailman/Cgi/confirm.py:840
+#: Mailman/Cgi/confirm.py:841
 msgid "Cancel"
 msgstr "Zru¹"
 
@@ -1992,7 +2025,7 @@
 msgstr "Vytvoø konferenci %(hostname)s"
 
 #: Mailman/Cgi/create.py:303 Mailman/Cgi/rmlist.py:201
-#: Mailman/Gui/Bounce.py:187 Mailman/htmlformat.py:343
+#: Mailman/Gui/Bounce.py:187 Mailman/htmlformat.py:345
 msgid "Error: "
 msgstr "Chyba: "
 
@@ -2120,51 +2153,56 @@
 msgid "Welcome email text file"
 msgstr "Soubor obsahující text pro uvítací email"
 
-#: Mailman/Cgi/edithtml.py:60
+#: Mailman/Cgi/edithtml.py:49
+#, fuzzy
+msgid "Digest masthead"
+msgstr "Záhlaví Digest zprávy"
+
+#: Mailman/Cgi/edithtml.py:61
 msgid "List name is required."
 msgstr "Jméno konference je vy¾adováno."
 
-#: Mailman/Cgi/edithtml.py:102
+#: Mailman/Cgi/edithtml.py:103
 msgid "%(realname)s -- Edit html for %(template_info)s"
 msgstr "Konference %(realname)s -- Editovat ¹ablony pro %(template_info)s"
 
-#: Mailman/Cgi/edithtml.py:108
+#: Mailman/Cgi/edithtml.py:109
 msgid "Edit HTML : Error"
 msgstr "Chyba pøi editaci HTML ¹ablon"
 
-#: Mailman/Cgi/edithtml.py:109
+#: Mailman/Cgi/edithtml.py:110
 msgid "%(safetemplatename)s: Invalid template"
 msgstr "%(safetemplatename)s: vadná ¹ablona"
 
-#: Mailman/Cgi/edithtml.py:114 Mailman/Cgi/edithtml.py:115
+#: Mailman/Cgi/edithtml.py:115 Mailman/Cgi/edithtml.py:116
 msgid "%(realname)s -- HTML Page Editing"
 msgstr "Konference %(realname)s -- Editace HTML stránek"
 
-#: Mailman/Cgi/edithtml.py:116
+#: Mailman/Cgi/edithtml.py:117
 msgid "Select page to edit:"
 msgstr "Vyberte, kterou ¹ablonu si pøejete editovat:"
 
-#: Mailman/Cgi/edithtml.py:142
+#: Mailman/Cgi/edithtml.py:143
 msgid "View or edit the list configuration information."
 msgstr "Zobraz a/nebo modifikuj konfiguraci konference."
 
-#: Mailman/Cgi/edithtml.py:151
+#: Mailman/Cgi/edithtml.py:152
 msgid "When you are done making changes..."
 msgstr "Kdy¾ jste skonèil se zmìnami...."
 
-#: Mailman/Cgi/edithtml.py:152
+#: Mailman/Cgi/edithtml.py:153
 msgid "Submit Changes"
 msgstr "Ulo¾ zmìny"
 
-#: Mailman/Cgi/edithtml.py:159
+#: Mailman/Cgi/edithtml.py:160
 msgid "Can't have empty html page."
 msgstr "Není mo¾né mít prázdnou ¹ablonu pro generování HTML stránek."
 
-#: Mailman/Cgi/edithtml.py:160
+#: Mailman/Cgi/edithtml.py:161
 msgid "HTML Unchanged."
 msgstr "HTML ¹ablony nebyly zmìnìny"
 
-#: Mailman/Cgi/edithtml.py:166
+#: Mailman/Cgi/edithtml.py:167
 msgid ""
 "The page you saved contains suspicious HTML that could\n"
 "potentially expose your users to cross-site scripting attacks.  This change\n"
@@ -2173,20 +2211,20 @@
 "             "
 msgstr ""
 
-#: Mailman/Cgi/edithtml.py:171
+#: Mailman/Cgi/edithtml.py:172
 msgid "See "
 msgstr ""
 
-#: Mailman/Cgi/edithtml.py:174
+#: Mailman/Cgi/edithtml.py:175
 msgid "FAQ 4.48."
 msgstr ""
 
-#: Mailman/Cgi/edithtml.py:175
+#: Mailman/Cgi/edithtml.py:176
 #, fuzzy
 msgid "Page Unchanged."
 msgstr "HTML ¹ablony nebyly zmìnìny"
 
-#: Mailman/Cgi/edithtml.py:193
+#: Mailman/Cgi/edithtml.py:194
 msgid "HTML successfully updated."
 msgstr "HTML ¹ablony byly úspì¹nì aktualizovány."
 
@@ -2249,7 +2287,7 @@
 msgid "Edit Options"
 msgstr "Editace vlastností"
 
-#: Mailman/Cgi/listinfo.py:201 Mailman/Cgi/options.py:870
+#: Mailman/Cgi/listinfo.py:201 Mailman/Cgi/options.py:876
 #: Mailman/Cgi/roster.py:118
 msgid "View this page in"
 msgstr "Zobraz tuto stránku v "
@@ -2271,7 +2309,7 @@
 msgstr "Neplatná emailová adresa: %(safeuser)s"
 
 #: Mailman/Cgi/options.py:128 Mailman/Cgi/options.py:193
-#: Mailman/Cgi/options.py:215
+#: Mailman/Cgi/options.py:215 Mailman/Cgi/private.py:154
 msgid "No such member: %(safeuser)s."
 msgstr "Nenalezl jsem úèastníka: %(safeuser)s."
 
@@ -2304,8 +2342,8 @@
 "Správce konference nemù¾e vidìt ostatní\n"
 "    konference, do kterých u¾ivatel pøihlá¹en."
 
-#: Mailman/Cgi/options.py:286 Mailman/Cgi/options.py:329
-#: Mailman/Cgi/options.py:457 Mailman/Cgi/options.py:673
+#: Mailman/Cgi/options.py:286 Mailman/Cgi/options.py:335
+#: Mailman/Cgi/options.py:463 Mailman/Cgi/options.py:679
 msgid "Note: "
 msgstr "Poznámka "
 
@@ -2321,7 +2359,11 @@
 "        requested mailing list."
 msgstr "Pro zobrazení vlastností této konference kliknìte na odkaz."
 
-#: Mailman/Cgi/options.py:326
+#: Mailman/Cgi/options.py:305
+msgid "nomail"
+msgstr ""
+
+#: Mailman/Cgi/options.py:332
 msgid ""
 "The list administrator may not change the names\n"
 "            or addresses for this user's other subscriptions.  However, the\n"
@@ -2331,15 +2373,15 @@
 "    tohoto u¾ivatele v ostatních konferencích, kde je pøihlá¹en.\n"
 "    Nicménì údaje platné pro tuto konferenci byly zmìnìny."
 
-#: Mailman/Cgi/options.py:349
+#: Mailman/Cgi/options.py:355
 msgid "Addresses did not match!"
 msgstr "Adresy nesouhlasí!"
 
-#: Mailman/Cgi/options.py:354
+#: Mailman/Cgi/options.py:360
 msgid "You are already using that email address"
 msgstr "Tuto emailovou adresu ji¾ pou¾íváte"
 
-#: Mailman/Cgi/options.py:366
+#: Mailman/Cgi/options.py:372
 msgid ""
 "The new address you requested %(newaddr)s is already a member of the\n"
 "%(listname)s mailing list, however you have also requested a global change "
@@ -2352,31 +2394,31 @@
 "zmìnu adresy a tak budou po potvrzení zmìnìny adresy v ostatních\n"
 "konferencích, kterých je u¾ivatel %(safeuser)s èlenem."
 
-#: Mailman/Cgi/options.py:375
+#: Mailman/Cgi/options.py:381
 msgid "The new address is already a member: %(newaddr)s"
 msgstr "Nová adresa je v konferenci ji¾ pøihlá¹ena: %(newaddr)s"
 
-#: Mailman/Cgi/options.py:381
+#: Mailman/Cgi/options.py:387
 msgid "Addresses may not be blank"
 msgstr "Adresy nesmí zùstat nevyplnìné."
 
-#: Mailman/Cgi/options.py:395
+#: Mailman/Cgi/options.py:401
 msgid "A confirmation message has been sent to %(newaddr)s. "
 msgstr "Zpráva s upozornìním byla zaslána na adresu %(newaddr)s"
 
-#: Mailman/Cgi/options.py:404
+#: Mailman/Cgi/options.py:410
 msgid "Bad email address provided"
 msgstr "Neplatná emailová adresa"
 
-#: Mailman/Cgi/options.py:406
+#: Mailman/Cgi/options.py:412
 msgid "Illegal email address provided"
 msgstr "Neplatná emailová adresa"
 
-#: Mailman/Cgi/options.py:408
+#: Mailman/Cgi/options.py:414
 msgid "%(newaddr)s is already a member of the list."
 msgstr "%(newaddr)s ji¾ je pøihlá¹en."
 
-#: Mailman/Cgi/options.py:411
+#: Mailman/Cgi/options.py:417
 msgid ""
 "%(newaddr)s is banned from this list.  If you\n"
 "                      think this restriction is erroneous, please contact\n"
@@ -2386,11 +2428,11 @@
 "které se nesmí pøihlásit do konference. Pokud máte pocit, ¾e je to chyba\n"
 "kontaktujte správce konference na adrese %(owneraddr)s."
 
-#: Mailman/Cgi/options.py:422
+#: Mailman/Cgi/options.py:428
 msgid "Member name successfully changed. "
 msgstr "Jméno bylo úspì¹nì zmìnìno."
 
-#: Mailman/Cgi/options.py:432
+#: Mailman/Cgi/options.py:438
 #, fuzzy
 msgid ""
 "The list administrator may not change the\n"
@@ -2399,15 +2441,15 @@
 "Správce konference nemù¾e vidìt ostatní\n"
 "    konference, do kterých u¾ivatel pøihlá¹en."
 
-#: Mailman/Cgi/options.py:441
+#: Mailman/Cgi/options.py:447
 msgid "Passwords may not be blank"
 msgstr "Nejsou povolena prázdná hesla."
 
-#: Mailman/Cgi/options.py:446
+#: Mailman/Cgi/options.py:452
 msgid "Passwords did not match!"
 msgstr "Hesla nesouhlasí"
 
-#: Mailman/Cgi/options.py:454
+#: Mailman/Cgi/options.py:460
 msgid ""
 "The list administrator may not change the\n"
 "            password for this user's other subscriptions.  However, the\n"
@@ -2417,12 +2459,12 @@
 "    ve kterých je úèastník pøihlá¹en. Nicménì heslo pro tuto konferenci\n"
 "    bylo zmìnìno."
 
-#: Mailman/Cgi/options.py:471 Mailman/Commands/cmd_password.py:83
+#: Mailman/Cgi/options.py:477 Mailman/Commands/cmd_password.py:83
 #: Mailman/Commands/cmd_password.py:109
 msgid "Password successfully changed."
 msgstr "Heslo bylo úspì¹nì zmìnìno."
 
-#: Mailman/Cgi/options.py:480
+#: Mailman/Cgi/options.py:486
 msgid ""
 "You must confirm your unsubscription request by turning\n"
 "                on the checkbox below the <em>Unsubscribe</em> button.  You\n"
@@ -2432,11 +2474,11 @@
 "Za¹krtnìte políèko pod tlaèítkem <em>Odhlásit</em>.\n"
 "V tomto okam¾iku je¹tì nejste odhlá¹en!"
 
-#: Mailman/Cgi/options.py:512
+#: Mailman/Cgi/options.py:518
 msgid "Unsubscription results"
 msgstr "Výsledky odhlá¹ení"
 
-#: Mailman/Cgi/options.py:516
+#: Mailman/Cgi/options.py:522
 msgid ""
 "Your unsubscription request has been received and\n"
 "            forwarded on to the list moderators for approval.  You will\n"
@@ -2446,7 +2488,7 @@
 "Vá¹ po¾adavek na odhlá¹ení byl pøijat a pøedán moderátorovi ke schválení.\n"
 "            O výsledku budete informován "
 
-#: Mailman/Cgi/options.py:521
+#: Mailman/Cgi/options.py:527
 msgid ""
 "You have been successfully unsubscribed from the\n"
 "            mailing list %(fqdn_listname)s.  If you were receiving digest\n"
@@ -2461,7 +2503,7 @@
 "kontaktujte správce\n"
 "na adrese:        %(owneraddr)s."
 
-#: Mailman/Cgi/options.py:670
+#: Mailman/Cgi/options.py:676
 msgid ""
 "The list administrator may not change the\n"
 "                options for this user's other subscriptions.  However the\n"
@@ -2472,7 +2514,7 @@
 "    ostatní konference, kde je u¾ivatel pøihlá¹en. Nicménì\n"
 "    pravidla pro tuto konferenci byla zmìnìna."
 
-#: Mailman/Cgi/options.py:680
+#: Mailman/Cgi/options.py:686
 msgid ""
 "The list administrator has disabled digest delivery for\n"
 "            this list, so your delivery option has not been set.  However "
@@ -2483,7 +2525,7 @@
 "konferenci.\n"
 "Ale ostatní volby, které jste nastavil, byly akceptovány."
 
-#: Mailman/Cgi/options.py:684
+#: Mailman/Cgi/options.py:690
 msgid ""
 "The list administrator has disabled non-digest delivery\n"
 "            for this list, so your delivery option has not been set.  "
@@ -2494,63 +2536,63 @@
 "módu.\n"
 "Ale ostatní volby, které jste nastavil, byly akceptovány."
 
-#: Mailman/Cgi/options.py:688
+#: Mailman/Cgi/options.py:694
 msgid "You have successfully set your options."
 msgstr "Va¹e nastavení bylo úspì¹nì zmìnìno."
 
-#: Mailman/Cgi/options.py:691
+#: Mailman/Cgi/options.py:697
 msgid "You may get one last digest."
 msgstr "Je¹tì mo¾ná obdr¾íte jeden poslední digest."
 
-#: Mailman/Cgi/options.py:763
+#: Mailman/Cgi/options.py:769
 msgid "<em>Yes, I really want to unsubscribe</em>"
 msgstr "<em>Ano; skuteènì se chci odhlásit</em>"
 
-#: Mailman/Cgi/options.py:767
+#: Mailman/Cgi/options.py:773
 msgid "Change My Password"
 msgstr "Zmìnit heslo"
 
-#: Mailman/Cgi/options.py:770
+#: Mailman/Cgi/options.py:776
 msgid "List my other subscriptions"
 msgstr "Zobraz ostatní konference, ve kterých jsem pøihlá¹en."
 
-#: Mailman/Cgi/options.py:776
+#: Mailman/Cgi/options.py:782
 msgid "Email My Password To Me"
 msgstr "Za¹li mi heslo emailem"
 
-#: Mailman/Cgi/options.py:778
+#: Mailman/Cgi/options.py:784
 msgid "password"
 msgstr "heslo"
 
-#: Mailman/Cgi/options.py:780
+#: Mailman/Cgi/options.py:786
 msgid "Log out"
 msgstr "Odhlásit"
 
-#: Mailman/Cgi/options.py:782
+#: Mailman/Cgi/options.py:788
 msgid "Submit My Changes"
 msgstr "Proveï zmìny"
 
-#: Mailman/Cgi/options.py:794
+#: Mailman/Cgi/options.py:800
 msgid "days"
 msgstr "dny"
 
-#: Mailman/Cgi/options.py:796
+#: Mailman/Cgi/options.py:802
 msgid "day"
 msgstr "den"
 
-#: Mailman/Cgi/options.py:797
+#: Mailman/Cgi/options.py:803
 msgid "%(days)d %(units)s"
 msgstr "%(days)d %(units)s"
 
-#: Mailman/Cgi/options.py:803
+#: Mailman/Cgi/options.py:809
 msgid "Change My Address and Name"
 msgstr "Zmìò mojí adresu a jméno"
 
-#: Mailman/Cgi/options.py:829
+#: Mailman/Cgi/options.py:835
 msgid "<em>No topics defined</em>"
 msgstr "<em>Není definováno ¾ádné téma</em>"
 
-#: Mailman/Cgi/options.py:837
+#: Mailman/Cgi/options.py:843
 msgid ""
 "\n"
 "You are subscribed to this list with the case-preserved address\n"
@@ -2561,19 +2603,19 @@
 "písmen\n"
 "<em>%(cpuser)s</em>."
 
-#: Mailman/Cgi/options.py:851
+#: Mailman/Cgi/options.py:857
 msgid "%(realname)s list: member options login page"
 msgstr "Konference %(realname)s: pøihlá¹ení úèastníka pro editaci parametrù"
 
-#: Mailman/Cgi/options.py:852
+#: Mailman/Cgi/options.py:858
 msgid "email address and "
 msgstr "emailová adresa a "
 
-#: Mailman/Cgi/options.py:855
+#: Mailman/Cgi/options.py:861
 msgid "%(realname)s list: member options for user %(safeuser)s"
 msgstr "Nastavení parametrù pro %(safeuser)s v konferenci %(realname)s"
 
-#: Mailman/Cgi/options.py:881
+#: Mailman/Cgi/options.py:887
 msgid ""
 "In order to change your membership option, you must\n"
 "    first log in by giving your %(extra)smembership password in the section\n"
@@ -2604,19 +2646,19 @@
 "do kliknutí na odhlásit."
 
 # In this entry insert a space at the end of string, it will be stripped.
-#: Mailman/Cgi/options.py:895
+#: Mailman/Cgi/options.py:901
 msgid "Email address:"
 msgstr "Emailová adresa:"
 
-#: Mailman/Cgi/options.py:899
+#: Mailman/Cgi/options.py:905
 msgid "Password:"
 msgstr "Heslo:"
 
-#: Mailman/Cgi/options.py:901
+#: Mailman/Cgi/options.py:907
 msgid "Log in"
 msgstr "Pøihlásit"
 
-#: Mailman/Cgi/options.py:909
+#: Mailman/Cgi/options.py:915
 msgid ""
 "By clicking on the <em>Unsubscribe</em> button, a\n"
 "    confirmation message will be emailed to you.  This message will have a\n"
@@ -2630,38 +2672,38 @@
 "Nebo\n"
 "mù¾ete odhlá¹ení potvrdit mailem, podrobnosti budou uvedeny v té zprávì."
 
-#: Mailman/Cgi/options.py:917
+#: Mailman/Cgi/options.py:923
 msgid "Password reminder"
 msgstr "Pøipomínka hesla"
 
-#: Mailman/Cgi/options.py:921
+#: Mailman/Cgi/options.py:927
 msgid ""
 "By clicking on the <em>Remind</em> button, your\n"
 "    password will be emailed to you."
 msgstr ""
 "Kliknutím na tlaèítko <em>Po¹li heslo</em> Vám bude zaslána Va¹e heslo."
 
-#: Mailman/Cgi/options.py:924
+#: Mailman/Cgi/options.py:930
 msgid "Remind"
 msgstr "Upozorni"
 
-#: Mailman/Cgi/options.py:1024
+#: Mailman/Cgi/options.py:1030 Mailman/ListAdmin.py:225
 msgid "<missing>"
 msgstr "<chybí>"
 
-#: Mailman/Cgi/options.py:1035
+#: Mailman/Cgi/options.py:1041
 msgid "Requested topic is not valid: %(topicname)s"
 msgstr "Téma, které po¾adujete, neexistuje: %(topicname)s"
 
-#: Mailman/Cgi/options.py:1040
+#: Mailman/Cgi/options.py:1046
 msgid "Topic filter details"
 msgstr "Parametry tématického filtru"
 
-#: Mailman/Cgi/options.py:1043
+#: Mailman/Cgi/options.py:1049
 msgid "Name:"
 msgstr "Jméno:"
 
-#: Mailman/Cgi/options.py:1045
+#: Mailman/Cgi/options.py:1051
 msgid "Pattern (as regexp):"
 msgstr "Pravidlo (regulární výraz):"
 
@@ -2681,7 +2723,20 @@
 msgid "Private Archive Error - %(msg)s"
 msgstr "Chyba v neveøejném archivu - %(msg)s"
 
-#: Mailman/Cgi/private.py:185
+#: Mailman/Cgi/private.py:141
+#, fuzzy
+msgid ""
+"If you are a list member,\n"
+"                          your password has been emailed to you."
+msgstr "Bylo Vám zasláno pøipomenutí Va¹eho hesla."
+
+# In this entry insert a space at the end of string, it will be stripped.
+#: Mailman/Cgi/private.py:145
+#, fuzzy
+msgid "Please enter your email address"
+msgstr "Va¹e e-mailová adresa: "
+
+#: Mailman/Cgi/private.py:206
 msgid "Private archive file not found"
 msgstr "Nebyl nalezen soubor privátního archivu."
 
@@ -2987,7 +3042,8 @@
 msgid "Bad approval password given.  Held message is still being held."
 msgstr "Zadáno chybné heslo, zprávy oznaèené Odlo¾ budou uschovány i nadále."
 
-#: Mailman/Commands/cmd_confirm.py:87
+#: Mailman/Commands/cmd_confirm.py:89 Mailman/Commands/cmd_confirm.py:92
+#: Mailman/Commands/cmd_confirm.py:95
 msgid "Confirmation succeeded"
 msgstr "Úspì¹nì potvrzeno"
 
@@ -3653,154 +3709,158 @@
 msgid "Digest members:"
 msgstr "Úèastnící odebírající Digest verzi:"
 
-#: Mailman/Defaults.py:1410
+#: Mailman/Defaults.py:1482
 msgid "Arabic"
 msgstr "Arabsky"
 
-#: Mailman/Defaults.py:1411
+#: Mailman/Defaults.py:1483
 #, fuzzy
 msgid "Asturian"
 msgstr "Estonsky"
 
-#: Mailman/Defaults.py:1412
+#: Mailman/Defaults.py:1484
 msgid "Catalan"
 msgstr "Katalánsky"
 
-#: Mailman/Defaults.py:1413
+#: Mailman/Defaults.py:1485
 msgid "Czech"
 msgstr "Èesky"
 
-#: Mailman/Defaults.py:1414
+#: Mailman/Defaults.py:1486
 msgid "Danish"
 msgstr "Finsky"
 
-#: Mailman/Defaults.py:1415
+#: Mailman/Defaults.py:1487
 msgid "German"
 msgstr "Nìmecky"
 
-#: Mailman/Defaults.py:1416
+#: Mailman/Defaults.py:1488
 msgid "English (USA)"
 msgstr "Anglicky (USA)"
 
-#: Mailman/Defaults.py:1417
+#: Mailman/Defaults.py:1489
 msgid "Spanish (Spain)"
 msgstr "©panìlsky (Spain)"
 
-#: Mailman/Defaults.py:1418
+#: Mailman/Defaults.py:1490
 msgid "Estonian"
 msgstr "Estonsky"
 
-#: Mailman/Defaults.py:1419
+#: Mailman/Defaults.py:1491
 msgid "Euskara"
 msgstr "Euskara"
 
-#: Mailman/Defaults.py:1420
+#: Mailman/Defaults.py:1492
 msgid "Finnish"
 msgstr "Finsky"
 
-#: Mailman/Defaults.py:1421
+#: Mailman/Defaults.py:1493
 msgid "French"
 msgstr "Francouzsky"
 
-#: Mailman/Defaults.py:1422
+#: Mailman/Defaults.py:1494
 #, fuzzy
 msgid "Galician"
 msgstr "Italsky"
 
-#: Mailman/Defaults.py:1423
+#: Mailman/Defaults.py:1495
+msgid "Greek"
+msgstr ""
+
+#: Mailman/Defaults.py:1496
 msgid "Hebrew"
 msgstr ""
 
-#: Mailman/Defaults.py:1424
+#: Mailman/Defaults.py:1497
 msgid "Croatian"
 msgstr "Chorvatsky"
 
-#: Mailman/Defaults.py:1425
+#: Mailman/Defaults.py:1498
 msgid "Hungarian"
 msgstr "Maïarsky"
 
-#: Mailman/Defaults.py:1426
+#: Mailman/Defaults.py:1499
 msgid "Interlingua"
 msgstr "Interlingua"
 
-#: Mailman/Defaults.py:1427
+#: Mailman/Defaults.py:1500
 msgid "Italian"
 msgstr "Italsky"
 
-#: Mailman/Defaults.py:1428
+#: Mailman/Defaults.py:1501
 msgid "Japanese"
 msgstr "Japonsky"
 
-#: Mailman/Defaults.py:1429
+#: Mailman/Defaults.py:1502
 msgid "Korean"
 msgstr "Korejsky"
 
-#: Mailman/Defaults.py:1430
+#: Mailman/Defaults.py:1503
 msgid "Lithuanian"
 msgstr "Litevsky"
 
-#: Mailman/Defaults.py:1431
+#: Mailman/Defaults.py:1504
 msgid "Dutch"
 msgstr "Dánsky"
 
-#: Mailman/Defaults.py:1432
+#: Mailman/Defaults.py:1505
 msgid "Norwegian"
 msgstr "Norsky"
 
-#: Mailman/Defaults.py:1433
+#: Mailman/Defaults.py:1506
 msgid "Polish"
 msgstr "Polsky"
 
-#: Mailman/Defaults.py:1434
+#: Mailman/Defaults.py:1507
 msgid "Portuguese"
 msgstr "Portugalsky"
 
-#: Mailman/Defaults.py:1435
+#: Mailman/Defaults.py:1508
 msgid "Portuguese (Brazil)"
 msgstr "Brazilskou portugal¹tinou"
 
-#: Mailman/Defaults.py:1436
+#: Mailman/Defaults.py:1509
 msgid "Romanian"
 msgstr "Rumunsky"
 
-#: Mailman/Defaults.py:1437
+#: Mailman/Defaults.py:1510
 msgid "Russian"
 msgstr "Rusky"
 
-#: Mailman/Defaults.py:1438
+#: Mailman/Defaults.py:1511
 #, fuzzy
 msgid "Slovak"
 msgstr "Slovinsky"
 
-#: Mailman/Defaults.py:1439
+#: Mailman/Defaults.py:1512
 msgid "Slovenian"
 msgstr "Slovinsky"
 
-#: Mailman/Defaults.py:1440
+#: Mailman/Defaults.py:1513
 msgid "Serbian"
 msgstr "Srbsky"
 
-#: Mailman/Defaults.py:1441
+#: Mailman/Defaults.py:1514
 msgid "Swedish"
 msgstr "©védsky"
 
-#: Mailman/Defaults.py:1442
+#: Mailman/Defaults.py:1515
 msgid "Turkish"
 msgstr "Turecky"
 
-#: Mailman/Defaults.py:1443
+#: Mailman/Defaults.py:1516
 msgid "Ukrainian"
 msgstr "Ukrajinsky"
 
-#: Mailman/Defaults.py:1444
+#: Mailman/Defaults.py:1517
 msgid "Vietnamese"
 msgstr "Vietnamsky"
 
-#: Mailman/Defaults.py:1445
+#: Mailman/Defaults.py:1518
 msgid "Chinese (China)"
 msgstr "Èínsky (Èína)"
 
-#: Mailman/Defaults.py:1446
+#: Mailman/Defaults.py:1519
 msgid "Chinese (Taiwan)"
 msgstr "Èínsky (Taiwan)"
 
@@ -4234,7 +4294,7 @@
 "pozastaveno</em> \n"
 "Musí to být celé èíslo."
 
-#: Mailman/Gui/Bounce.py:117 Mailman/Gui/General.py:265
+#: Mailman/Gui/Bounce.py:117 Mailman/Gui/General.py:266
 msgid "Notifications"
 msgstr "Notifikace"
 
@@ -4771,43 +4831,43 @@
 "                    co jste chtìli nastavit.\n"
 "                    "
 
-#: Mailman/Gui/General.py:36
+#: Mailman/Gui/General.py:37
 msgid "General Options"
 msgstr "V¹eobecné vlastnosti"
 
-#: Mailman/Gui/General.py:50
+#: Mailman/Gui/General.py:51
 msgid "Conceal the member's address"
 msgstr "Skrýt adresu úèastníka"
 
-#: Mailman/Gui/General.py:51
+#: Mailman/Gui/General.py:52
 msgid "Acknowledge the member's posting"
 msgstr "Pøijmi pøíspìvek úèastníka"
 
-#: Mailman/Gui/General.py:52
+#: Mailman/Gui/General.py:53
 msgid "Do not send a copy of a member's own post"
 msgstr "Nezasílej úèastníkovi kopii jeho vlastních pøíspìvkù"
 
-#: Mailman/Gui/General.py:54
+#: Mailman/Gui/General.py:55
 msgid "Filter out duplicate messages to list members (if possible)"
 msgstr "Filtruj duplicitní pøíspìvky, pokud je to mo¾né"
 
-#: Mailman/Gui/General.py:61
+#: Mailman/Gui/General.py:62
 msgid ""
 "Fundamental list characteristics, including descriptive\n"
 "            info and basic behaviors."
 msgstr ""
 "Základní charakteristika konference, vèetnì popisu a základních informací."
 
-#: Mailman/Gui/General.py:64
+#: Mailman/Gui/General.py:65
 msgid "General list personality"
 msgstr "Informaèní stránka konference"
 
-#: Mailman/Gui/General.py:67
+#: Mailman/Gui/General.py:68
 msgid "The public name of this list (make case-changes only)."
 msgstr ""
 "Jméno konference. Je v nìm mo¾né provádìt pouze zmìny velikosti písmen."
 
-#: Mailman/Gui/General.py:68
+#: Mailman/Gui/General.py:69
 msgid ""
 "The capitalization of this name can be changed to make it\n"
 "             presentable in polite company as a proper noun, or to make an\n"
@@ -4824,7 +4884,7 @@
 "odkazy. Pokud bude jméno zmìnìno, pøes nìj zasílaná po¹ta asi nebude "
 "doruèena Mailmanovi."
 
-#: Mailman/Gui/General.py:77
+#: Mailman/Gui/General.py:78
 msgid ""
 "The list administrator email addresses.  Multiple\n"
 "             administrator addresses, each on separate line is okay."
@@ -4832,7 +4892,7 @@
 "E-mailová adresa administrátora konference. Pokud potøebujete zadat více "
 "adres, uvádìjte ka¾dou na nový øádek."
 
-#: Mailman/Gui/General.py:80
+#: Mailman/Gui/General.py:81
 msgid ""
 "There are two ownership roles associated with each mailing\n"
 "             list.  The <em>list administrators</em> are the people who "
@@ -4870,7 +4930,7 @@
 "stejnì\n"
 "jako administrátorù, více. Pozor, zde zmìníte adresu administrátora."
 
-#: Mailman/Gui/General.py:101
+#: Mailman/Gui/General.py:102
 msgid ""
 "The list moderator email addresses.  Multiple\n"
 "             moderator addresses, each on separate line is okay."
@@ -4878,7 +4938,7 @@
 "E-mailová adresa moderátora konference. Pokud potøebujete zadat více adres, "
 "uvádìjte ka¾dou na nový øádek."
 
-#: Mailman/Gui/General.py:104
+#: Mailman/Gui/General.py:105
 msgid ""
 "There are two ownership roles associated with each mailing\n"
 "             list.  The <em>list administrators</em> are the people who "
@@ -4912,11 +4972,11 @@
 "Pokud chcete zalo¾it moderátora, vyplòte do okénka jeho emailovou adresu\n"
 "a zadejte heslo. "
 
-#: Mailman/Gui/General.py:125
+#: Mailman/Gui/General.py:126
 msgid "A terse phrase identifying this list."
 msgstr "Krátké heslo identifikující konferenci"
 
-#: Mailman/Gui/General.py:127
+#: Mailman/Gui/General.py:128
 msgid ""
 "This description is used when the mailing list is listed with\n"
 "                other mailing lists, or in headers, and so forth.  It "
@@ -4928,7 +4988,7 @@
 "Tento popis bude zobrazen v¹ude tam, kde je to vhodné. Mìl by být co "
 "nejkrat¹í a souèasnì nejúdernìj¹í."
 
-#: Mailman/Gui/General.py:133
+#: Mailman/Gui/General.py:134
 msgid ""
 "An introductory description - a few paragraphs - about the\n"
 "             list.  It will be included, as html, at the top of the "
@@ -4940,7 +5000,7 @@
 "zaèátku stránky listinfo.  Znaky nový øádek budou konvertovány do znakù "
 "zahajujících odstavec."
 
-#: Mailman/Gui/General.py:137
+#: Mailman/Gui/General.py:138
 msgid ""
 "The text will be treated as html <em>except</em> that\n"
 "             newlines will be translated to <br> - so you can use "
@@ -4957,11 +5017,11 @@
 "pøedformátovaný text a tak podobnì s výhradou, ¾e znaky nový øádek musí "
 "oddìlovat odstavce."
 
-#: Mailman/Gui/General.py:145
+#: Mailman/Gui/General.py:146
 msgid "Prefix for subject line of list postings."
 msgstr "Prefix, který bude pøidán do subjektu ka¾dého rozesílaného pøíspìvku."
 
-#: Mailman/Gui/General.py:146
+#: Mailman/Gui/General.py:147
 msgid ""
 "This text will be prepended to subject lines of messages\n"
 "             posted to the list, to distinguish mailing list messages in\n"
@@ -4985,7 +5045,7 @@
 "                            (jméno %%05d) -> (jméno 00123)\n"
 "             "
 
-#: Mailman/Gui/General.py:157
+#: Mailman/Gui/General.py:158
 msgid ""
 "Hide the sender of a message, replacing it with the list\n"
 "             address (Removes From, Sender and Reply-To fields)"
@@ -4993,11 +5053,11 @@
 "Skryj pùvodního autora pøíspìvku a nahraï jej adresou konference. (Vztahuje "
 "se na adresy v From, Sender a Reply-To.)"
 
-#: Mailman/Gui/General.py:160
+#: Mailman/Gui/General.py:161
 msgid "<tt>Reply-To:</tt> header munging"
 msgstr "Nastavovat hlavièku <tt>Reply-To:</tt>."
 
-#: Mailman/Gui/General.py:163
+#: Mailman/Gui/General.py:164
 msgid ""
 "Should any existing <tt>Reply-To:</tt> header found in the\n"
 "             original message be stripped?  If so, this will be done\n"
@@ -5008,19 +5068,19 @@
 "konference odstranìna existující,\n"
 "             hlavièka <tt>Reply-To:</tt>?"
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "Explicit address"
 msgstr "Konkrétní adresa"
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "Poster"
 msgstr "Pøispìvateli"
 
-#: Mailman/Gui/General.py:169
+#: Mailman/Gui/General.py:170
 msgid "This list"
 msgstr "Tato konference"
 
-#: Mailman/Gui/General.py:170
+#: Mailman/Gui/General.py:171
 msgid ""
 "Where are replies to list messages directed?\n"
 "             <tt>Poster</tt> is <em>strongly</em> recommended for most "
@@ -5031,7 +5091,7 @@
 "<tt>Pøispìvateli</tt> je <em>dùraznì</em> doporuèena. (Tento ponìkud "
 "kryptický text je o poli Reply-To:, i kdy¾ to anglický originál zaml¾uje)"
 
-#: Mailman/Gui/General.py:175
+#: Mailman/Gui/General.py:176
 msgid ""
 "This option controls what Mailman does to the\n"
 "             <tt>Reply-To:</tt> header in messages flowing through this\n"
@@ -5106,11 +5166,11 @@
 "tt>\n"
 "nastavit volbu <tt>Explicitní adresa</tt>."
 
-#: Mailman/Gui/General.py:207
+#: Mailman/Gui/General.py:208
 msgid "Explicit <tt>Reply-To:</tt> header."
 msgstr "Nastavovat hlavièku <tt>Reply-To:</tt>."
 
-#: Mailman/Gui/General.py:209
+#: Mailman/Gui/General.py:210
 msgid ""
 "This is the address set in the <tt>Reply-To:</tt> header\n"
 "             when the <a\n"
@@ -5182,17 +5242,17 @@
 "<p>Pozor: Pokud pøíspìvek obsahuje hlavièku <tt>Reply-To:</tt>\n"
 "její obsah nebude zmìnìn."
 
-#: Mailman/Gui/General.py:238
+#: Mailman/Gui/General.py:239
 msgid "Umbrella list settings"
 msgstr "Konfigurace de¹tníkové konference"
 
-#: Mailman/Gui/General.py:241
+#: Mailman/Gui/General.py:242
 msgid ""
 "Send password reminders to, eg, \"-owner\" address instead of\n"
 "             directly to user."
 msgstr "Zasílat upomínky hesel na adresu \"-owner\" místo pøímo u¾ivateli?"
 
-#: Mailman/Gui/General.py:244
+#: Mailman/Gui/General.py:245
 msgid ""
 "Set this to yes when this list is intended to cascade only\n"
 "             to other mailing lists.  When set, meta notices like\n"
@@ -5211,7 +5271,7 @@
 "vznikne z adresy \n"
 "úèastníka pøidáním textu uvedeného v poli \"de¹tníkový sufix\"."
 
-#: Mailman/Gui/General.py:252
+#: Mailman/Gui/General.py:253
 msgid ""
 "Suffix for use when this list is an umbrella for other\n"
 "             lists, according to setting of previous \"umbrella_list\"\n"
@@ -5220,7 +5280,7 @@
 "Sufix, který bude pøidán ke jménu úèastníka\n"
 "konference v de¹tníkové konfiguraci. "
 
-#: Mailman/Gui/General.py:256
+#: Mailman/Gui/General.py:257
 msgid ""
 "When \"umbrella_list\" is set to indicate that this list has\n"
 "             other mailing lists as members, then administrative notices "
@@ -5241,11 +5301,11 @@
 "adrese úèastníka. Témìø výhradnì se pou¾ívá øetìzec -owner. Pokud toto není "
 "de¹tníková konference, nemá tato volba ¾ádný efekt."
 
-#: Mailman/Gui/General.py:268
+#: Mailman/Gui/General.py:269
 msgid "Send monthly password reminders?"
 msgstr "Zasílat ka¾dý mìsíc upozornìní na hesla?"
 
-#: Mailman/Gui/General.py:270
+#: Mailman/Gui/General.py:271
 msgid ""
 "Turn this on if you want password reminders to be sent once\n"
 "             per month to your members.  Note that members may disable "
@@ -5258,7 +5318,7 @@
 "si\n"
 "             mohou individuálnì vypnout v konfiguraci èlena."
 
-#: Mailman/Gui/General.py:275
+#: Mailman/Gui/General.py:276
 msgid ""
 "List-specific text prepended to new-subscriber welcome\n"
 "             message"
@@ -5268,7 +5328,7 @@
 "pøidány automaticky. Spí¹e by se mìlo jednat o text popisující o èem "
 "konference je, co se v ní smí a co ne a tak podobnì."
 
-#: Mailman/Gui/General.py:278
+#: Mailman/Gui/General.py:279
 msgid ""
 "This value, if any, will be added to the front of the\n"
 "             new-subscriber welcome message.  The rest of the welcome "
@@ -5294,11 +5354,11 @@
 "Mailmanem. Pokyny pro ovládání Mailmanu budou pøipojeny k této zprávì, tak¾e "
 "není nutné, aby byly zmiòovány v tomto textu."
 
-#: Mailman/Gui/General.py:295
+#: Mailman/Gui/General.py:296
 msgid "Send welcome message to newly subscribed members?"
 msgstr "Poslat novì pøihlá¹eným uvítací zprávu?"
 
-#: Mailman/Gui/General.py:296
+#: Mailman/Gui/General.py:297
 msgid ""
 "Turn this off only if you plan on subscribing people manually\n"
 "             and don't want them to know that you did so.  This option is "
@@ -5312,7 +5372,7 @@
 "Vhodné pou¾ití je tøeba pøi zmìnì listserveru, kdy nepotøebujete, aby "
 "úèastníci byli o zmìnì informováni."
 
-#: Mailman/Gui/General.py:302
+#: Mailman/Gui/General.py:303
 msgid ""
 "Text sent to people leaving the list.  If empty, no special\n"
 "             text will be added to the unsubscribe message."
@@ -5321,11 +5381,11 @@
 "zprávì nebude pøidán ¾ádný dal¹í text. (Uvítací zpráva obsahuje popis práce "
 "s Mailmanem, ale odhla¹ovací nikoliv.)"
 
-#: Mailman/Gui/General.py:306
+#: Mailman/Gui/General.py:307
 msgid "Send goodbye message to members when they are unsubscribed?"
 msgstr "Poslat pøi odhlá¹ení louèící zprávu?"
 
-#: Mailman/Gui/General.py:309
+#: Mailman/Gui/General.py:310
 msgid ""
 "Should the list moderators get immediate notice of new\n"
 "             requests, as well as daily notices about collected ones?"
@@ -5333,7 +5393,7 @@
 "Mají být adminitrátorovi zasílány administrativní po¾adavky ihned a nebo jen "
 "jednou dennì?"
 
-#: Mailman/Gui/General.py:312
+#: Mailman/Gui/General.py:313
 msgid ""
 "List moderators (and list administrators) are sent daily\n"
 "             reminders of requests pending approval, like subscriptions to "
@@ -5347,28 +5407,28 @@
 "pøíspìvky.Pokud vyberete tuto volbu, budou upozornìní zasílána okam¾itì pøi "
 "vzniku po¾adavku.Jinak budou upozornìní zasílána jednou dennì."
 
-#: Mailman/Gui/General.py:319
+#: Mailman/Gui/General.py:320
 msgid ""
 "Should administrator get notices of subscribes and\n"
 "             unsubscribes?"
 msgstr ""
 "Má být administrátor informován o pøihla¹ování a odhla¹ování úèastníkù?"
 
-#: Mailman/Gui/General.py:324
+#: Mailman/Gui/General.py:325
 msgid "Send mail to poster when their posting is held for approval?"
 msgstr ""
 "Informovat pøispìvatele, ¾e jeho pøíspìvek byl pozastaven a pøedán ke "
 "schválení administrátorovi?"
 
-#: Mailman/Gui/General.py:327
+#: Mailman/Gui/General.py:328
 msgid "Additional settings"
 msgstr "Dal¹í konfiguraèní volby"
 
-#: Mailman/Gui/General.py:330
+#: Mailman/Gui/General.py:331
 msgid "Emergency moderation of all list traffic."
 msgstr "Nouzová moderace v¹ech pøíspìvkù do konference:"
 
-#: Mailman/Gui/General.py:331
+#: Mailman/Gui/General.py:332
 msgid ""
 "When this option is enabled, all list traffic is emergency\n"
 "             moderated, i.e. held for moderation.  Turn this option on when\n"
@@ -5381,7 +5441,7 @@
 "vhodná,\n"
 "pokud v konferenci nastane flamewar a chcete ji nechat vychladnout."
 
-#: Mailman/Gui/General.py:343
+#: Mailman/Gui/General.py:344
 msgid ""
 "Default options for new members joining this list.<input\n"
 "             type=\"hidden\" name=\"new_member_options\" value=\"ignore\">"
@@ -5389,7 +5449,7 @@
 "Výchozí hodnoty pro úèastníky, kteøí se pøihlásí do konference.<input\n"
 "             type=\"hidden\" name=\"new_member_options\" value=\"ignore\">"
 
-#: Mailman/Gui/General.py:346
+#: Mailman/Gui/General.py:347
 msgid ""
 "When a new member is subscribed to this list, their initial\n"
 "             set of options is taken from this variable's setting."
@@ -5398,7 +5458,7 @@
 "          výchozí hodnoty jeho úètu budou nastaveny\n"
 "          podle tìchto promìnných."
 
-#: Mailman/Gui/General.py:350
+#: Mailman/Gui/General.py:351
 msgid ""
 "(Administrivia filter) Check postings and intercept ones\n"
 "             that seem to be administrative requests?"
@@ -5406,7 +5466,7 @@
 "(Administrivia filter) Kontrolovat pøíspìvky, jestli se nejedná \n"
 "o pøíkazy pro Mailman, zaslané omylem na adresu konference?"
 
-#: Mailman/Gui/General.py:353
+#: Mailman/Gui/General.py:354
 msgid ""
 "Administrivia tests will check postings to see whether it's\n"
 "             really meant as an administrative request (like subscribe,\n"
@@ -5419,7 +5479,7 @@
 "pro listserver. Pokud je takový text nalezen je distribuce zprávy pozdr¾ena "
 "a¾ do rozhodnutí administrátora."
 
-#: Mailman/Gui/General.py:360
+#: Mailman/Gui/General.py:361
 msgid ""
 "Maximum length in kilobytes (KB) of a message body.  Use 0\n"
 "             for no limit."
@@ -5427,20 +5487,20 @@
 "Maximální velikost pøíspìvku v KB. Pokud nemá být velikost omezena, nastavte "
 "ji na 0."
 
-#: Mailman/Gui/General.py:364
+#: Mailman/Gui/General.py:365
 msgid ""
 "Maximum number of members to show on one page of the\n"
 "             Membership List."
 msgstr ""
 
-#: Mailman/Gui/General.py:368
+#: Mailman/Gui/General.py:369
 msgid "Host name this list prefers for email."
 msgstr ""
 "Jméno serveru, na kterém bì¾í tato konference. Pozor, pokud se bude li¹it od "
 "jména, pøes které se zobrazuje seznam konferencí, konference v nìm nebude "
 "uvedena."
 
-#: Mailman/Gui/General.py:370
+#: Mailman/Gui/General.py:371
 msgid ""
 "The \"host_name\" is the preferred name for email to\n"
 "             mailman-related addresses on this host, and generally should "
@@ -5456,7 +5516,7 @@
 "serveru,resp. na jméno domény, kde Mailman bì¾í. Tato volba mù¾e být "
 "u¾iteèná pokud má server, kde Mailman bì¾í více jmen."
 
-#: Mailman/Gui/General.py:382
+#: Mailman/Gui/General.py:383
 msgid ""
 "Should messages from this mailing list include the\n"
 "                 <a href=\"http://www.faqs.org/rfcs/rfc2369.html\">RFC 2369</"
@@ -5471,7 +5531,7 @@
 "silnì\n"
 "                 doporuèeno."
 
-#: Mailman/Gui/General.py:387
+#: Mailman/Gui/General.py:388
 msgid ""
 "RFC 2369 defines a set of List-* headers that are\n"
 "                 normally added to every message sent to the list "
@@ -5503,11 +5563,11 @@
 "stì¾ovat je potøeba jim nejdøíve vysvìtlit jak se hlavièky skrývají, aby\n"
 "je nevidìli a teprve v pøípadì, ¾e nebude jiná mo¾nost tuto volbu potlaèit."
 
-#: Mailman/Gui/General.py:405
+#: Mailman/Gui/General.py:406
 msgid "Should postings include the <tt>List-Post:</tt> header?"
 msgstr "Mají pøíspìvky obsahovat hlavièku <tt>List-Post:</tt>?"
 
-#: Mailman/Gui/General.py:406
+#: Mailman/Gui/General.py:407
 msgid ""
 "The <tt>List-Post:</tt> header is one of the headers\n"
 "             recommended by\n"
@@ -5533,7 +5593,7 @@
 "mateni.              (Nastavení neovlivní ostatní <tt>List-*:</tt>\n"
 "             hlavièky.)"
 
-#: Mailman/Gui/General.py:422
+#: Mailman/Gui/General.py:423
 #, fuzzy
 msgid ""
 "Should the <tt>Sender</tt> header be rewritten for this\n"
@@ -5543,7 +5603,7 @@
 "Má Mailman zasílat správci konference vrácené pøíspìvky, které\n"
 "nemohly být zpracovány automaticky? Je doporuèeno nastavit <em>Ano</em>."
 
-#: Mailman/Gui/General.py:426
+#: Mailman/Gui/General.py:427
 msgid ""
 "<a href=\"http://www.faqs.org/rfcs/rfc2822.html\">RFC\n"
 "                 2822</a> defines the <tt>Sender</tt> header and defines it\n"
@@ -5565,7 +5625,7 @@
 "                 here."
 msgstr ""
 
-#: Mailman/Gui/General.py:444
+#: Mailman/Gui/General.py:445
 msgid ""
 "Discard held messages older than this number of days.\n"
 "            Use 0 for no automatic discarding."
@@ -5573,7 +5633,7 @@
 "Zahodit pozdr¾ené zprávy, které èekají déle ne¾ tento poèet dní?\n"
 "      Pokud bude 0, nebudou se zprávy automaticky zahazovat nikdy."
 
-#: Mailman/Gui/General.py:454
+#: Mailman/Gui/General.py:455
 msgid ""
 "<b>real_name</b> attribute not\n"
 "            changed!  It must differ from the list's name by case\n"
@@ -5582,7 +5642,7 @@
 "Atribut <b>real_name</b> nebyl zmìnìn. Od jména konference se smí li¹it jen "
 "velikostí písmen."
 
-#: Mailman/Gui/General.py:471
+#: Mailman/Gui/General.py:483
 msgid ""
 "The <b>info</b> attribute you saved\n"
 "contains suspicious HTML that could potentially expose your users to cross-"
@@ -5596,7 +5656,7 @@
 "                        "
 msgstr ""
 
-#: Mailman/Gui/General.py:482
+#: Mailman/Gui/General.py:494
 #, fuzzy
 msgid ""
 "<b>admin_member_chunksize</b> attribute not\n"
@@ -5605,7 +5665,7 @@
 "Atribut <b>real_name</b> nebyl zmìnìn. Od jména konference se smí li¹it jen "
 "velikostí písmen."
 
-#: Mailman/Gui/General.py:492
+#: Mailman/Gui/General.py:504
 msgid ""
 "You cannot add a Reply-To: to an explicit\n"
 "            address if that address is blank.  Resetting these values."
@@ -5977,12 +6037,32 @@
 
 #: Mailman/Gui/NonDigest.py:163
 msgid ""
+"Ignore regular_exlude_lists of which the poster is not a\n"
+"             member."
+msgstr ""
+
+#: Mailman/Gui/NonDigest.py:165
+msgid ""
+"If a post is addressed to this list and to one or more of\n"
+"             the exclude lists, regular members of those lists will not be\n"
+"             sent the post from this list, but if the poster is not a "
+"member\n"
+"             of an excluded list, the post may not be accepted by that list\n"
+"             which leaves the members of that list with no copy of the "
+"post.\n"
+"             Setting this to Yes ignores any of the exclude lists of which "
+"the\n"
+"             poster is not a member."
+msgstr ""
+
+#: Mailman/Gui/NonDigest.py:174
+msgid ""
 "Other mailing lists on this site whose members are\n"
 "             included in the regular (non-digest) delivery if those\n"
 "             list addresses don't appear in a To: or Cc: header."
 msgstr ""
 
-#: Mailman/Gui/NonDigest.py:166
+#: Mailman/Gui/NonDigest.py:177
 msgid ""
 "The list addresses should be written in full mail address\n"
 "             format (e.g. mailman at example.com). Note also that the site\n"
@@ -7414,6 +7494,14 @@
 msgid "%(realname)s post acknowledgement"
 msgstr "Konference %(realname)s - potvrzení o pøijetí pøíspìvku k distribuci"
 
+#: Mailman/Handlers/Approve.py:45
+msgid ""
+"Message rejected.\n"
+"It appears that this message contains an HTML part with the\n"
+"Approved: password line, but due to the way it is coded in the\n"
+"HTML it can't be safely removed.\n"
+msgstr ""
+
 #: Mailman/Handlers/CalcRecips.py:78
 msgid ""
 "Your urgent message to the %(realname)s mailing list was not authorized for\n"
@@ -7531,17 +7619,17 @@
 msgid "Posting to a moderated newsgroup"
 msgstr "Pøíspìvek do moderované konference"
 
-#: Mailman/Handlers/Hold.py:250
+#: Mailman/Handlers/Hold.py:247
 msgid "Your message to %(listname)s awaits moderator approval"
 msgstr "Vá¹ pøíspìvek do konference %(listname)s èeká na schválení moderátorem"
 
-#: Mailman/Handlers/Hold.py:269
+#: Mailman/Handlers/Hold.py:266
 msgid "%(listname)s post from %(sender)s requires approval"
 msgstr ""
 "Pøíspìvek od %(sender)s do konference %(listname)s vy¾aduje souhlas "
 "moderátora."
 
-#: Mailman/Handlers/Hold.py:276
+#: Mailman/Handlers/Hold.py:273
 msgid ""
 "If you reply to this message, keeping the Subject: header intact, Mailman "
 "will\n"
@@ -7578,7 +7666,7 @@
 msgid "After content filtering, the message was empty"
 msgstr "Po pøefiltrování obsahu nezbyl ¾ádný text k odeslání"
 
-#: Mailman/Handlers/MimeDel.py:235
+#: Mailman/Handlers/MimeDel.py:264
 msgid ""
 "The attached message matched the %(listname)s mailing list's content "
 "filtering\n"
@@ -7595,11 +7683,11 @@
 "ulo¾ena a ani nebyla nikam rozeslána.\n"
 "\n"
 
-#: Mailman/Handlers/MimeDel.py:241
+#: Mailman/Handlers/MimeDel.py:270
 msgid "Content filtered message notification"
 msgstr "Zpráva o filtraci obsahu pøíspìvku"
 
-#: Mailman/Handlers/Moderate.py:162
+#: Mailman/Handlers/Moderate.py:163
 msgid ""
 "You are not allowed to post to this mailing list, and your message has been\n"
 "automatically rejected.  If you think that your messages are being rejected "
@@ -7611,11 +7699,11 @@
 "zamítnut a vrácen. Pokud máte pocit, ¾e je to chyba, mù¾ete kontaktovat\n"
 "správce konference na adrese %(listowner)s."
 
-#: Mailman/Handlers/Moderate.py:178
+#: Mailman/Handlers/Moderate.py:179
 msgid "Auto-discard notification"
 msgstr "Upozornìní na automatické zahození pøíspìvku"
 
-#: Mailman/Handlers/Moderate.py:181
+#: Mailman/Handlers/Moderate.py:182
 msgid "The attached message has been automatically discarded."
 msgstr "Pøilo¾ená zpráva byla automaticky zahozena."
 
@@ -7696,11 +7784,11 @@
 "Popis: %(desc)s\n"
 "Url : %(url)s\n"
 
-#: Mailman/Handlers/Scrubber.py:341
+#: Mailman/Handlers/Scrubber.py:344
 msgid "Skipped content of type %(partctype)s\n"
 msgstr "Zde byl umístìn nepøijatelný obsah typu: %(partctype)s\n"
 
-#: Mailman/Handlers/Scrubber.py:382
+#: Mailman/Handlers/Scrubber.py:385
 msgid "-------------- next part --------------\n"
 msgstr "------------- dal¹í èást ---------------\n"
 
@@ -7708,7 +7796,7 @@
 msgid "The message headers matched a filter rule"
 msgstr "Hlavièky zprávy vyhovovala filtrovací podmínce"
 
-#: Mailman/Handlers/SpamDetect.py:135
+#: Mailman/Handlers/SpamDetect.py:119
 msgid "Message rejected by filter rule match"
 msgstr "Zpráva byla zamítnuta filtrovacím prav