[Pkg-mailman-hackers] Pkg-mailman commit - rev 205 - in trunk/debian: . patches po

Tollef Fog Heen tfheen@costa.debian.org
Thu, 10 Feb 2005 12:21:26 +0100


Author: tfheen
Date: 2005-02-10 12:21:26 +0100 (Thu, 10 Feb 2005)
New Revision: 205

Added:
   trunk/debian/patches/02_CAN-2004-1177_driver_css.dpatch
   trunk/debian/patches/03_CAN-2004-1143.dpatch
   trunk/debian/patches/04_CAN-2005-0202.dpatch
   trunk/debian/patches/65_handle_templates_directories.dpatch
   trunk/debian/patches/67_update_handle_old_versions.dpatch
   trunk/debian/po/nl.po
Removed:
   trunk/debian/patches/55_options_traceback.dpatch
Modified:
   trunk/debian/changelog
   trunk/debian/control
   trunk/debian/patches/00list
   trunk/debian/patches/66_donot_let_cache_html_pages.dpatch
   trunk/debian/po/cs.po
   trunk/debian/po/de.po
Log:
release 2.1.5-6

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/changelog	2005-02-10 11:21:26 UTC (rev 205)
@@ -1,3 +1,36 @@
+mailman (2.1.5-6) unstable; urgency=high
+
+  * SECURITY UPDATE: fix information disclosure
+  * Added debian/patches/04_CAN-2005-0202.dpatch:
+    Mailman/Cgi/private.py, true_path(): fix the removal of '..' and '.' from
+    private mail archive paths to prohibit path traversal (the former version
+    transformed ".....///" to "../") (closes: #294467) 
+    (References: CAN-2005-0202)
+  * Tighten build-deps on dpatch. (closes: #291289)
+  * Update Czech debconf translation. (closes: #293002)
+  * Add Dutch debconf translation. (closes: #283973)
+
+ -- Tollef Fog Heen <tfheen@debian.org>  Thu, 10 Feb 2005 12:10:42 +0100
+
+mailman (2.1.5-5) unstable; urgency=high
+
+  * Fix CAN-2004-1143 (weak auto-generated passwords) by pulling the
+    appropriate CVS change from upstream.  Thanks to Florian Weimer for
+    finding and producing a patch for this bug.  (closes: #286796)
+  * Fix CAN-2004-1177 (CSS problem in scripts/driver) by pulling the
+    appropriate patch from upstream CVS.  Thanks to Florian Weimer for
+    discovering and producing a patch for this bug.  (closes: #287555)
+  * Handle the case of upgrading from Mailman 2.0 where we have
+    pending subscriptions.  This should hopefully fix #280529.  Thanks to
+    Bastian Kleinedam for the patch.  (closes: #280529)
+  * Skip directories when updating templates, to make the life easier for
+    people who have their configuration in Subversion or Arch.  
+    (closes: #284771)
+  * Remove 55_options_traceback.dpatch as this problem seems to have been
+    fixed upstream and it causes other problems.  (closes: #285839)
+
+ -- Tollef Fog Heen <tfheen@debian.org>  Mon, 10 Jan 2005 17:12:58 +0100
+
 mailman (2.1.5-4) unstable; urgency=high
 
   Changes by Laszlo 'GCS' Boszormenyi; the "Pál utcai fiúk (Boys of Paul
@@ -4,11 +37,11 @@
   street) musical band is divine" release, thanks to their fine concert
   yesterday (2004 Nov. 12).
 
-  * Add /usr/lib/mailman/bin to the Python modul path of
+  * Add /usr/lib/mailman/bin to the Python module path of
     postfix-to-mailman.py (closes: #279361, #280246).
   * Suggests listadmin, as that may be useful for some admins
     (closes: #279192).
-  * Prevent caching of html output with 'Pragma: no-cache'
+  * Prevent caching of html output with 'Cache-control: no-cache'
     (closes: #281284).
 
  -- Tollef Fog Heen <tfheen@debian.org>  Sat, 13 Nov 2004 21:32:07 +0100

Modified: trunk/debian/control
===================================================================
--- trunk/debian/control	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/control	2005-02-10 11:21:26 UTC (rev 205)
@@ -3,7 +3,7 @@
 Priority: optional
 Maintainer: Tollef Fog Heen <tfheen@debian.org>
 Uploaders: Siggy Brentrup <bsb@debian.org>
-Build-Depends: debhelper (>= 4.1.16), autoconf, python-dev, dpatch
+Build-Depends: debhelper (>= 4.1.16), autoconf, python-dev, dpatch (>= 2.0.9)
 Standards-Version: 3.6.1
 
 Package: mailman

Modified: trunk/debian/patches/00list
===================================================================
--- trunk/debian/patches/00list	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/patches/00list	2005-02-10 11:21:26 UTC (rev 205)
@@ -1,5 +1,8 @@
 00_stolen_from_HEAD
 01_defaults.debian
+02_CAN-2004-1177_driver_css
+03_CAN-2004-1143
+04_CAN-2005-0202
 07_snooze
 10_wrapper_uid
 11_handle_propfind
@@ -17,7 +20,6 @@
 51_nocompile.pyc
 52_check_perms_lstat
 53_disable_addons
-55_options_traceback
 56_fix_de_broken_links
 57_fix_missing_da_template
 58_fix_translations

Added: trunk/debian/patches/02_CAN-2004-1177_driver_css.dpatch
===================================================================
--- trunk/debian/patches/02_CAN-2004-1177_driver_css.dpatch	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/patches/02_CAN-2004-1177_driver_css.dpatch	2005-02-10 11:21:26 UTC (rev 205)
@@ -0,0 +1,84 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Fix CAN-2004-1177: CSS problem in scripts/driver
+
+@DPATCH@
+===================================================================
+RCS file: /cvsroot/mailman/mailman/scripts/driver,v
+retrieving revision 2.6.2.1
+retrieving revision 2.6.2.2
+diff -u -r2.6.2.1 -r2.6.2.2
+--- mailman/scripts/driver	2003/04/20 04:52:55	2.6.2.1
++++ mailman/scripts/driver	2004/12/28 00:38:22	2.6.2.2
+@@ -1,6 +1,6 @@
+ # -*- python -*-
+ 
+-# Copyright (C) 1998-2003 by the Free Software Foundation, Inc.
++# Copyright (C) 1998-2004 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
+@@ -28,7 +28,11 @@
+ # comfortable with.  By setting STEALTH_MODE to 1, you disable the printing of
+ # this information to the web pages.  This information is still, and always,
+ # printed in the error logs.
+-STEALTH_MODE = 0
++STEALTH_MODE = 1
++
++# This will be set to the entity escaper.
++def websafe(s):
++    return s
+ 
+ 
+ 
+@@ -53,12 +57,22 @@
+ 
+ 
+ def run_main():
++    global STEALTH_MODE, websafe
++
+     # These will ensure that even if something between now and the
+     # creation of the real logger below fails, we can still get
+     # *something* meaningful.
+     logger = None
+     try:
+         import paths
++        # When running in non-stealth mode, we need to escape entities,
++        # otherwise we're vulnerable to cross-site scripting attacks.
++        try:
++            if not STEALTH_MODE:
++                from Mailman.Utils import websafe
++        except:
++            STEALTH_MODE = 1
++            raise
+         # Map stderr to a logger, if possible.
+         from Mailman.Logging.StampedLogger import StampedLogger
+         logger = StampedLogger('error',
+@@ -140,11 +154,13 @@
+ a description of what happened.  Thanks!
+ 
+ <h4>Traceback:</h4><p><pre>'''
++        exc_info = sys.exc_info()
+         if traceback:
+-            traceback.print_exc(file=sys.stdout)
++            for line in traceback.format_exception(*exc_info):
++                print websafe(line),
+         else:
+             print '[failed to import module traceback]'
+-            print '[exc: %s, var: %s]' % sys.exc_info()[0:2]
++            print '[exc: %s, var: %s]' % [websafe(x) for x in exc_info[0:2]]
+         print '\n\n</pre></body>'
+     else:
+         print '''<p>Please inform the webmaster for this site of this
+@@ -212,7 +228,9 @@
+ '''
+         if os:
+             for k, v in os.environ.items():
+-                print '<tr><td><tt>', k, '</tt></td><td>', v, '</td></tr>'
++                print '<tr><td><tt>', websafe(k), \
++                      '</tt></td><td>', websafe(v), \
++                      '</td></tr>'
+             print '</table>'
+         else:
+             print '<p><hr>[failed to import module os]'

Added: trunk/debian/patches/03_CAN-2004-1143.dpatch
===================================================================
--- trunk/debian/patches/03_CAN-2004-1143.dpatch	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/patches/03_CAN-2004-1143.dpatch	2005-02-10 11:21:26 UTC (rev 205)
@@ -0,0 +1,121 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Fix CAN-2004-1143: weak auto-generated passwords.
+
+@DPATCH@
+===================================================================
+RCS file: /cvsroot/mailman/mailman/Mailman/Utils.py,v
+retrieving revision 2.45.2.9
+retrieving revision 2.45.2.11
+diff -u -r2.45.2.9 -r2.45.2.11
+--- mailman/Mailman/Utils.py	2004/10/09 04:15:41	2.45.2.9
++++ mailman/Mailman/Utils.py	2004/12/31 00:02:57	2.45.2.11
+@@ -1,4 +1,4 @@
+-# Copyright (C) 1998-2003 by the Free Software Foundation, Inc.
++# Copyright (C) 1998-2004 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
+@@ -27,12 +27,13 @@
+ 
+ import os
+ import re
+-import random
+-import urlparse
++import cgi
+ import sha
+-import errno
+ import time
+-import cgi
++import errno
++import base64
++import random
++import urlparse
+ import htmlentitydefs
+ import email.Header
+ import email.Iterators
+@@ -298,12 +299,53 @@
+         _syllables.append(v+c)
+ del c, v
+ 
+-def MakeRandomPassword(length=6):
++def UserFriendly_MakeRandomPassword(length):
+     syls = []
+     while len(syls) * 2 < length:
+         syls.append(random.choice(_syllables))
+     return EMPTYSTRING.join(syls)[:length]
+ 
++
++def Secure_MakeRandomPassword(length):
++    bytesread = 0
++    bytes = []
++    fd = None
++    try:
++        while bytesread < length:
++            try:
++                # Python 2.4 has this on available systems.
++                newbytes = os.urandom(length - bytesread)
++            except (AttributeError, NotImplementedError):
++                if fd is None:
++                    try:
++                        fd = os.open('/dev/urandom', os.O_RDONLY)
++                    except OSError, e:
++                        if e.errno <> errno.ENOENT:
++                            raise
++                        # We have no available source of cryptographically
++                        # secure random characters.  Log an error and fallback
++                        # to the user friendly passwords.
++                        from Mailman.Logging.Syslog import syslog
++                        syslog('error',
++                               'urandom not available, passwords not secure')
++                        return UserFriendly_MakeRandomPassword(length)
++                newbytes = os.read(fd, length - bytesread)
++            bytes.append(newbytes)
++            bytesread += len(newbytes)
++        s = base64.encodestring(EMPTYSTRING.join(bytes))
++        # base64 will expand the string by 4/3rds
++        return s.replace('\n', '')[:length]
++    finally:
++        if fd is not None:
++            os.close(fd)
++
++
++def MakeRandomPassword(length=mm_cfg.MEMBER_PASSWORD_LENGTH):
++    if mm_cfg.USER_FRIENDLY_PASSWORDS:
++        return UserFriendly_MakeRandomPassword(length)
++    return Secure_MakeRandomPassword(length)
++
++
+ def GetRandomSeed():
+     chr1 = int(random.random() * 52)
+     chr2 = int(random.random() * 52)
+===================================================================
+RCS file: /cvsroot/mailman/mailman/Mailman/Defaults.py.in,v
+retrieving revision 2.112.2.23
+retrieving revision 2.112.2.24
+diff -u -r2.112.2.23 -r2.112.2.24
+--- mailman/Mailman/Defaults.py.in	2004/12/10 08:14:13	2.112.2.23
++++ mailman/Mailman/Defaults.py.in	2004/12/30 20:49:29	2.112.2.24
+@@ -787,6 +787,21 @@
+ # list's config variable default_member_moderation.
+ DEFAULT_NEW_MEMBER_OPTIONS = 256
+ 
++# Specify the type of passwords to use, when Mailman generates the passwords
++# itself, as would be the case for membership requests where the user did not
++# fill in a password, or during list creation, when auto-generation of admin
++# passwords was selected.
++#
++# Set this value to Yes for classic Mailman user-friendly(er) passwords.
++# These generate semi-pronounceable passwords which are easier to remember.
++# Set this value to No to use more cryptographically secure, but harder to
++# remember, passwords -- if your operating system and Python version support
++# the necessary feature (specifically that /dev/urandom be available).
++USER_FRIENDLY_PASSWORDS = Yes
++# This value specifies the default lengths of member and list admin passwords
++MEMBER_PASSWORD_LENGTH = 8
++ADMIN_PASSWORD_LENGTH = 10
++
+ 
+ 
+ #####

Added: trunk/debian/patches/04_CAN-2005-0202.dpatch
===================================================================
--- trunk/debian/patches/04_CAN-2005-0202.dpatch	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/patches/04_CAN-2005-0202.dpatch	2005-02-10 11:21:26 UTC (rev 205)
@@ -0,0 +1,39 @@
+#!/bin/sh -e
+## 04_CAN-2005-0202.dpatch by  <martin.pitt@ubuntu.com>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: No description.
+
+[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
+patch_opts="${patch_opts:--f --no-backup-if-mismatch ${2:+-d $2}}"
+
+if [ $# -lt 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch) patch $patch_opts -p1 < $0;;
+    -unpatch) patch $patch_opts -p1 -R < $0;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1;;
+esac
+
+exit 0
+@DPATCH@
+diff -urNad mailman-2.1.5/Mailman/Cgi/private.py /tmp/dpep.URxxJG/mailman-2.1.5/Mailman/Cgi/private.py
+--- mailman-2.1.5/Mailman/Cgi/private.py	2003-02-08 08:13:50.000000000 +0100
++++ /tmp/dpep.URxxJG/mailman-2.1.5/Mailman/Cgi/private.py	2005-02-09 12:49:59.245112000 +0100
+@@ -39,10 +39,8 @@
+ 
+ def true_path(path):
+     "Ensure that the path is safe by removing .."
+-    path = path.replace('../', '')
+-    path = path.replace('./', '')
+-    return path[1:]
+-
++    parts = [x for x in path.split(SLASH) if x not in ('.', '..')]
++    return '/'.join(parts)[1:]
+ 
+ 
+ def guess_type(url, strict):

Deleted: trunk/debian/patches/55_options_traceback.dpatch
===================================================================
--- trunk/debian/patches/55_options_traceback.dpatch	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/patches/55_options_traceback.dpatch	2005-02-10 11:21:26 UTC (rev 205)
@@ -1,42 +0,0 @@
-#! /bin/sh -e
-## 55_options_traceback.dpatch by Tollef Fog Heen <tfheen@debian.org>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Don't spit out a traceback if you are giving a admin password
-## DP: Closes #233161
-
-[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
-patch_opts="${patch_opts:--f --no-backup-if-mismatch ${2:+-d $2}}"
-
-if [ $# -lt 1 ]; then
-    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
-    exit 1
-fi
-case "$1" in
-    -patch) patch $patch_opts -p1 < $0;;
-    -unpatch) patch $patch_opts -p1 -R < $0;;
-    *)
-        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
-        exit 1;;
-esac
-
-exit 0
-@DPATCH@
-
---- mailman-2.1.4/Mailman/Cgi/options.py 2004-02-17 10:56:16.000000000 +0800
-+++ mailman-2.1.4/Mailman/Cgi/options.py 2004-02-17 10:59:04.000000000 +0800
-@@ -119,8 +119,12 @@
-         return
-     # Sanity check the user, but only give the "no such member" error when
-     # using public rosters, otherwise, we'll leak membership information.
--    if not mlist.isMember(user) and mlist.private_roster == 0:
--        doc.addError(_('No such member: %(safeuser)s.'))
-+    if not mlist.isMember(user):
-+        if mlist.private_roster == 0:
-+            doc.addError(_('No such member: %(safeuser)s.'))
-+        else:
-+            # Prevent an exception when the site/list admin password is used
-+            doc.addError(_('Authentication failed.'))
-         loginpage(mlist, doc, None, language)
-         print doc.Format()
-         return

Added: trunk/debian/patches/65_handle_templates_directories.dpatch
===================================================================
--- trunk/debian/patches/65_handle_templates_directories.dpatch	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/patches/65_handle_templates_directories.dpatch	2005-02-10 11:21:26 UTC (rev 205)
@@ -0,0 +1,19 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 65_handle_templates_directories.dpatch by  <tfheen@debian.org>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Skip directories when updating
+
+@DPATCH@
+diff -urNad mailman-2.1.5/bin/update /tmp/dpep.3rh2pG/mailman-2.1.5/bin/update
+--- mailman-2.1.5/bin/update	2005-01-10 16:21:05.917239616 +0100
++++ /tmp/dpep.3rh2pG/mailman-2.1.5/bin/update	2005-01-10 16:21:56.833499168 +0100
+@@ -127,7 +127,7 @@
+         try:
+             fp = open(os.path.join(mm_cfg.TEMPLATE_DIR, gtemplate))
+         except IOError, e:
+-            if e.errno <> errno.ENOENT: raise
++            if not (e.errno in [errno.ENOENT, errno.EISDIR, ]: raise
+             # No global template
+             continue
+ 

Modified: trunk/debian/patches/66_donot_let_cache_html_pages.dpatch
===================================================================
--- trunk/debian/patches/66_donot_let_cache_html_pages.dpatch	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/patches/66_donot_let_cache_html_pages.dpatch	2005-02-10 11:21:26 UTC (rev 205)
@@ -31,7 +31,7 @@
              charset = Utils.GetCharSet(self.language)
 -        output = ['Content-Type: text/html; charset=%s\n' % charset]
 +        output = ['Content-Type: text/html; charset=%s' % charset]
-+        output.append('Pragma: no-cache\n')
++        output.append('Cache-control: no-cache\n')
          if not self.suppress_head:
              kws.setdefault('bgcolor', self.bgcolor)
              tab = ' ' * indent

Added: trunk/debian/patches/67_update_handle_old_versions.dpatch
===================================================================
--- trunk/debian/patches/67_update_handle_old_versions.dpatch	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/patches/67_update_handle_old_versions.dpatch	2005-02-10 11:21:26 UTC (rev 205)
@@ -0,0 +1,47 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+##
+## Patch by Bastian Kleineidam <calvin@debian.org>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Handle the case of upgrading from Mailman 2.0 where we have
+## DP: pending subscriptions.
+
+
+@DPATCH@
+--- update.orig	2004-12-15 17:25:41.000000000 +0100
++++ update	2004-12-15 17:29:09.000000000 +0100
+@@ -532,9 +532,11 @@
+     file20 = os.path.join(mm_cfg.DATA_DIR, 'pending_subscriptions.db')
+     file214 = os.path.join(mm_cfg.DATA_DIR, 'pending.pck')
+     db = None
++    ver = None
+     # Try to load the Mailman 2.0 file
+     try:
+         fp = open(file20)
++        ver = "20"
+     except IOError, e:
+         if e.errno <> errno.ENOENT: raise
+     else:
+@@ -546,6 +548,7 @@
+         # Try to load the Mailman 2.1.x where x < 5, file
+         try:
+             fp = open(file214)
++            ver = "214"
+         except IOError, e:
+             if e.errno <> errno.ENOENT: raise
+         else:
+@@ -579,8 +582,12 @@
+             # data[0] is the address being unsubscribed
+             addrops_by_address.setdefault(data[0], []).append((key, val))
+         elif op == Pending.SUBSCRIPTION:
+-            # data[0] is a UserDesc object
+-            addr = data[0].address
++            if ver == "20":
++                # data is tuple (emailaddr, password, digest)
++                addr = data[0]
++            else:
++                # data[0] is a UserDesc object
++                addr = data[0].address
+             subs_by_address.setdefault(addr, []).append((key, val))
+         elif op == Pending.RE_ENABLE:
+             # data[0] is the mailing list's internal name

Modified: trunk/debian/po/cs.po
===================================================================
--- trunk/debian/po/cs.po	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/po/cs.po	2005-02-10 11:21:26 UTC (rev 205)
@@ -16,7 +16,7 @@
 "Project-Id-Version: mailman\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2004-10-06 22:06+0000\n"
-"PO-Revision-Date: 2004-09-28 12:46+0200\n"
+"PO-Revision-Date: 2004-12-31 12:42+0100\n"
 "Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
 "Language-Team: Czech <provoz@debian.cz>\n"
 "MIME-Version: 1.0\n"
@@ -153,7 +153,7 @@
 #. Choices
 #: ../templates:5
 msgid "pt_BR"
-msgstr "brazilská porugal¹tina"
+msgstr "brazilská portugal¹tina"
 
 #. Type: multiselect
 #. Choices
@@ -287,7 +287,7 @@
 #. Description
 #: ../templates:47
 msgid "Which language should be the default for Mailman?"
-msgstr ""
+msgstr "Který jazyk má být pro Mailman výchozí?"
 
 #. Type: select
 #. Description
@@ -296,12 +296,14 @@
 "The web page will be shown in this language, and in general, Mailman will "
 "use this language to communicate with the user."
 msgstr ""
+"V zadaném jazyce bude zobrazena webová stránka a dále bude Mailman tento "
+"jazyk pou¾ívat pro komunikaci s u¾ivatelem."
 
 #. Type: note
 #. Description
 #: ../templates:53
 msgid "Old queue files present"
-msgstr ""
+msgstr "Ve frontì jsou pøítomny staré soubory"
 
 #. Type: note
 #. Description
@@ -313,3 +315,8 @@
 "finished) or remove those files.  Note that removing the files will lose "
 "some emails sent to lists."
 msgstr ""
+"Adresáø /var/lib/mailman/qfiles obsahuje soubory. Aby se aktualizace "
+"zdaøila, musí být adresáø prázdný. Buï frontu vyprázdnìte (pøíkazy "
+"mailmanctl start, mailmactl stop a po skonèení znovu spus»te aktualizaci), "
+"nebo soubory sma¾te. Smazáním souborù pøijdete o nìkteré emaily zaslané do "
+"konferencí."

Modified: trunk/debian/po/de.po
===================================================================
--- trunk/debian/po/de.po	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/po/de.po	2005-02-10 11:21:26 UTC (rev 205)
@@ -18,7 +18,7 @@
 msgstr ""
 "Project-Id-Version: mailman\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-10-06 01:00+0200\n"
+"POT-Creation-Date: 2004-10-06 22:06+0000\n"
 "PO-Revision-Date: 2004-10-06 09:49+0200\n"
 "Last-Translator: Jens Nachtigall <nachtigall@web.de>\n"
 "Language-Team: German <debian-l10n-german@lists.debian.org>\n"
@@ -275,9 +275,9 @@
 "password reminders and such are sent out from.  This list needs to be "
 "created before mailman will start."
 msgstr ""
-"Mailman benötigt eine sogenannte Site-Liste (»site list«), welches die Mailingliste "
-"ist, von der die Passwort-Erinnerungen und ähnliches abgesendet werden.  "
-"Diese Liste muss erstellt werden, bevor mailman startet."
+"Mailman benötigt eine sogenannte Site-Liste (»site list«), welches die "
+"Mailingliste ist, von der die Passwort-Erinnerungen und ähnliches abgesendet "
+"werden.  Diese Liste muss erstellt werden, bevor mailman startet."
 
 #. Type: note
 #. Description
@@ -304,9 +304,8 @@
 "The web page will be shown in this language, and in general, Mailman will "
 "use this language to communicate with the user."
 msgstr ""
-"Die Web-Seite wird in dieser Sprache angezeigt und "
-"generell wird Mailman diese Sprache benutzen um mit dem "
-"Benutzer zu kommunizieren."
+"Die Web-Seite wird in dieser Sprache angezeigt und generell wird Mailman "
+"diese Sprache benutzen um mit dem Benutzer zu kommunizieren."
 
 #. Type: note
 #. Description
@@ -324,10 +323,9 @@
 "finished) or remove those files.  Note that removing the files will lose "
 "some emails sent to lists."
 msgstr ""
-"Das Verzeichnis /var/lib/mailman/qfiles enthält Dateien.  Es muss "
-"leer sein, damit der Upgrade sauber vonstatten gehen kann.  Entweder "
-"Sie beseitigen die Warteschlange (mittels »mailmanctl start«, danach "
-"mailman stoppen und dann, wenn es fertig ist, den Upgrade wiederholen) "
-"oder Sie löschen diese Dateien.  Beachten Sie, dass durch das Löschen dieser "
-"Dateien einige an die Mailinglisten gesendeten E-Mails verloren gehen."
-
+"Das Verzeichnis /var/lib/mailman/qfiles enthält Dateien.  Es muss leer sein, "
+"damit der Upgrade sauber vonstatten gehen kann.  Entweder Sie beseitigen die "
+"Warteschlange (mittels »mailmanctl start«, danach mailman stoppen und dann, "
+"wenn es fertig ist, den Upgrade wiederholen) oder Sie löschen diese "
+"Dateien.  Beachten Sie, dass durch das Löschen dieser Dateien einige an die "
+"Mailinglisten gesendeten E-Mails verloren gehen."

Added: trunk/debian/po/nl.po
===================================================================
--- trunk/debian/po/nl.po	2004-11-16 17:32:58 UTC (rev 204)
+++ trunk/debian/po/nl.po	2005-02-10 11:21:26 UTC (rev 205)
@@ -0,0 +1,324 @@
+#
+#    Translators, if you are not familiar with the PO format, gettext
+#    documentation is worth reading, especially sections dedicated to
+#    this format, e.g. by running:
+#         info -n '(gettext)PO Files'
+#         info -n '(gettext)Header Entry'
+#
+#    Some information specific to po-debconf are available at
+#            /usr/share/doc/po-debconf/README-trans
+#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
+#
+#    Developers do not need to manually edit POT or PO files.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mailman 2.1.5-4\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2004-10-06 22:06+0000\n"
+"PO-Revision-Date: 2004-12-02 18:12+0100\n"
+"Last-Translator: Luk Claes <luk.claes@ugent.be>\n"
+"Language-Team: Debian l10n Dutch <debian-l10n-dutch@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "big5"
+msgstr "big5"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "ca"
+msgstr "ca"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "cs"
+msgstr "cs"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "da"
+msgstr "da"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "de"
+msgstr "de"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "en"
+msgstr "en"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "es"
+msgstr "es"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "et"
+msgstr "et"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "eu"
+msgstr "eu"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "fi"
+msgstr "fi"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "fr"
+msgstr "fr"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "hr"
+msgstr "hr"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "hu"
+msgstr "hu"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "it"
+msgstr "it"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "ja"
+msgstr "ja"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "ko"
+msgstr "ko"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "lt"
+msgstr "lt"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "nl"
+msgstr "nl"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "no"
+msgstr "no"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "pl"
+msgstr "pl"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "pt"
+msgstr "pt"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "pt_BR"
+msgstr "pt_BR"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "ro"
+msgstr "ro"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "ru"
+msgstr "ru"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "sl"
+msgstr "sl"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "sr"
+msgstr "sr"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "sv"
+msgstr "sv"
+
+#. Type: multiselect
+#. Choices
+#: ../templates:5
+msgid "uk"
+msgstr "uk"
+
+#. Type: multiselect
+#. Description
+#: ../templates:7
+msgid "Which languages to support?  "
+msgstr "Voor welke talen wenst u ondersteuning?"
+
+#. Type: multiselect
+#. Description
+#: ../templates:7
+msgid ""
+"For each supported language Debian Mailman stores default language specific "
+"texts in /etc/mailman/LANG/ giving them conffile like treatment with the "
+"help of ucf.  This means approximately 150kB for each supported language on "
+"the root FS."
+msgstr ""
+"Voor elke ondersteunde taal bewaart Debian Mailman standaard "
+"taalafhankelijke teksten in /etc/mailman/LANG/, wat hen een soort conffile-"
+"behandeling geeft met de hulp van ucf. Dit betekent ongeveer 150kB voor elke "
+"ondersteunde taal op het hoofdbestandssysteem."
+
+#. Type: multiselect
+#. Description
+#: ../templates:7
+msgid ""
+"If you need a different set of languages at a later time, just run dpkg-"
+"reconfigure mailman."
+msgstr ""
+"Als u op een later tijdstip een andere verzameling talen wilt, voer dan dpkg-"
+"reconfigure mailman uit."
+
+#. Type: multiselect
+#. Description
+#: ../templates:7
+msgid ""
+"NOTE: Languages enabled on existing mailing lists are forcibly re- enabled "
+"when deselected and mailman needs at least one language for displaying it's "
+"messages."
+msgstr ""
+"LET OP: talen die in gebruik zijn op reeds bestaande mailinglijsten worden "
+"opnieuw ingesteld indien u ze heeft uitgeschakeld; en mailman heeft ook ten "
+"minste één taal nodig om zijn boodschappen weer te geven."
+
+#. Type: boolean
+#. Description
+#: ../templates:27
+msgid "Gate news to mail?"
+msgstr "Nieuws doorsluizen naar e-mail?"
+
+#. Type: boolean
+#. Description
+#: ../templates:27
+msgid ""
+"Do you want to gate news to mail, that is, send all the messages which "
+"appear in a newsgroup to a mailing list."
+msgstr ""
+"Wilt u nieuws doorsluizen naar e-mail, d.w.z. alle boodschappen die "
+"verschijnen in een nieuwsgroep verzenden naar een mailinglijst."
+
+#. Type: boolean
+#. Description
+#: ../templates:27
+msgid "Most people won't need this."
+msgstr "De meeste mensen hebben dit niet nodig."
+
+#. Type: note
+#. Description
+#: ../templates:35
+msgid "Missing site list"
+msgstr "Ontbrekende site-lijst"
+
+#. Type: note
+#. Description
+#: ../templates:35
+msgid ""
+"Mailman needs a so-called \"site list\", which is the list from which "
+"password reminders and such are sent out from.  This list needs to be "
+"created before mailman will start."
+msgstr ""
+"Mailman heeft een zogenaamde \"site-lijst\" nodig, dit is de lijst waaruit "
+"wachtwoordherinneringen en dergelijke worden verstuurd. Deze lijst moet "
+"aangemaakt worden voordat mailman wordt opgestart."
+
+#. Type: note
+#. Description
+#: ../templates:35
+msgid ""
+"To create the list, run \"newlist mailman\" and follow the instructions on-"
+"screen.  Note that you also need to start mailman after that, using /etc/"
+"init.d/mailman start."
+msgstr ""
+"Om de lijst aan te maken, voert u \"newlist mailman\" uit en volgt u de "
+"instructies op het scherm. Merk op dat u mailman daarna moet opstarten door /"
+"etc/init.d/mailman start te gebruiken."
+
+#. Type: select
+#. Description
+#: ../templates:47
+msgid "Which language should be the default for Mailman?"
+msgstr "Welke taal wenst u als standaard taal in te stellen voor Mailman?"
+
+#. Type: select
+#. Description
+#: ../templates:47
+msgid ""
+"The web page will be shown in this language, and in general, Mailman will "
+"use this language to communicate with the user."
+msgstr ""
+"De webpagina's zullen in deze taal worden getoond en Mailman zal in het "
+"algemeen deze taal gebruiken om te communiceren met de gebruiker."
+
+#. Type: note
+#. Description
+#: ../templates:53
+msgid "Old queue files present"
+msgstr "Oude queue-bestanden zijn beschikbaar"
+
+#. Type: note
+#. Description
+#: ../templates:53
+msgid ""
+"The directory /var/lib/mailman/qfiles contains files.  It needs to be empty "
+"for the upgrade work properly.  Please either flush the queue (by way of "
+"mailmanctl start, then stopping it and redoing the upgrade when it is "
+"finished) or remove those files.  Note that removing the files will lose "
+"some emails sent to lists."
+msgstr ""
+"De map /var/lib/mailman/qfiles bevat bestanden. Deze moet leeg zijn om de "
+"opwaardering correct te laten werken. Ledig de queue (door mailmanctl start, "
+"stop ze dan en herdoe de opwaardering wanneer het is beëindigd) of verwijder "
+"deze bestanden. Merk op dat deze bestanden verwijderen enkele naar de "
+"lijsten verzonden e-mails zal verliezen."