[Mailman-checkins] [Branch ~mailman-coders/mailman/2.1] Rev 1814: Added site list -bounces and -request @ virtual domain to virtual-mailman.

2019-06-05 Thread noreply

revno: 1814
fixes bug: https://launchpad.net/bugs/1831777
committer: Mark Sapiro 
branch nick: 2.1
timestamp: Wed 2019-06-05 16:43:30 -0700
message:
  Added site list -bounces and -request @ virtual domain to virtual-mailman.
modified:
  Mailman/MTA/Postfix.py
  NEWS


--
lp:mailman/2.1
https://code.launchpad.net/~mailman-coders/mailman/2.1

Your team Mailman Checkins is subscribed to branch lp:mailman/2.1.
To unsubscribe from this branch go to 
https://code.launchpad.net/~mailman-coders/mailman/2.1/+edit-subscription
=== modified file 'Mailman/MTA/Postfix.py'
--- Mailman/MTA/Postfix.py	2018-06-17 23:47:34 +
+++ Mailman/MTA/Postfix.py	2019-06-05 23:43:30 +
@@ -159,13 +159,19 @@
 # And the site list posting address.
 siteaddr = Utils.get_site_email(mlist.host_name)
 sitedest = Utils.ParseEmail(siteaddr)[0]
-# And the site list -owner address.
+# And the site list -owner, -bounces and -request addresses.
 siteowneraddr = Utils.get_site_email(mlist.host_name, extra='owner')
 siteownerdest = Utils.ParseEmail(siteowneraddr)[0]
+sitebouncesaddr = Utils.get_site_email(mlist.host_name, extra='bounces')
+sitebouncesdest = Utils.ParseEmail(sitebouncesaddr)[0]
+siterequestaddr = Utils.get_site_email(mlist.host_name, extra='request')
+siterequestdest = Utils.ParseEmail(siterequestaddr)[0]
 if mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN:
 loopdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 sitedest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 siteownerdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
+sitebouncesdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
+siterequestdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 # If the site list's host_name is a virtual domain, adding the list and
 # owner addresses to the SITE ADDRESSES will duplicate the entries in the
 # stanza for the list.  Postfix doesn't like dups so we try to comment them
@@ -174,6 +180,8 @@
 hostname.lower()):
 siteaddr = '#' + siteaddr
 siteowneraddr = '#' + siteowneraddr
+sitebouncesaddr = '#' + sitebouncesaddr
+siterequestaddr = '#' + siterequestaddr
 # Seek to the end of the text file, but if it's empty write the standard
 # disclaimer, and the loop catch address and site address.
 fp.seek(0, 2)
@@ -192,14 +200,18 @@
 # LOOP ADDRESSES END
 
 # We also add the site list address in each virtual domain as that address
-# is exposed on admin and listinfo overviews, and we add the site list-owner
-# address as it is exposed in the list created email notice.
+# is exposed on admin and listinfo overviews, and we add the site list-owner,
+# -bounces and -request addresses as they are exposed in the list created
+# and/or password reminder email notices.
 
 # SITE ADDRESSES START
 %s\t%s
 %s\t%s
+%s\t%s
+%s\t%s
 # SITE ADDRESSES END
-""" % (loopaddr, loopdest, siteaddr, sitedest, siteowneraddr, siteownerdest)
+""" % (loopaddr, loopdest, siteaddr, sitedest, siteowneraddr, siteownerdest,
+   sitebouncesaddr, sitebouncesdest, siterequestaddr, siterequestdest)
 # The text file entries get a little extra info
 print >> fp, '# STANZA START:', listname
 print >> fp, '# CREATED:', time.ctime(time.time())
@@ -226,10 +238,16 @@
 sitedest = Utils.ParseEmail(siteaddr)[0]
 siteowneraddr = Utils.get_site_email(mlist.host_name, extra='owner')
 siteownerdest = Utils.ParseEmail(siteowneraddr)[0]
+sitebouncesaddr = Utils.get_site_email(mlist.host_name, extra='bounces')
+sitebouncesdest = Utils.ParseEmail(sitebouncesaddr)[0]
+siterequestaddr = Utils.get_site_email(mlist.host_name, extra='request')
+siterequestdest = Utils.ParseEmail(siterequestaddr)[0]
 if mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN:
 loopdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 sitedest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 siteownerdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
+sitebouncesdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
+siterequestdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 # If the site list's host_name is a virtual domain, adding the list and
 # owner addresses to the SITE ADDRESSES will duplicate the entries in the
 # stanza for the list.  Postfix doesn't like dups so we try to comment them
@@ -238,6 +256,8 @@
 mlist.host_name.lower()):
 siteaddr = '#' + siteaddr
 siteowneraddr = '#' + siteowneraddr
+sitebouncesaddr = '#' + sitebouncesaddr
+siterequestaddr = '#' + siterequestaddr
 infp = open(filename)
 omask = os.umask(007)
 try:
@@ -288,6 +308,8 @@
 # It hasn't
 print >> outfp, '%s\t%s' % (siteaddr, sitedest)
 print >> outfp, '%s\t%s' % (siteowneraddr, siteownerdest)
+print >> outfp, '%s\t%s' % (sitebouncesaddr, 

[Mailman-checkins] [Branch ~mailman-coders/mailman/2.1] Rev 1813: Fixed missing <> in List-ID with invalid char in description.

2019-06-05 Thread noreply

revno: 1813
fixes bug: https://launchpad.net/bugs/1831321
committer: Mark Sapiro 
branch nick: 2.1
timestamp: Wed 2019-06-05 16:39:30 -0700
message:
  Fixed missing <> in List-ID with invalid char in description.
modified:
  Mailman/Handlers/CookHeaders.py
  NEWS


--
lp:mailman/2.1
https://code.launchpad.net/~mailman-coders/mailman/2.1

Your team Mailman Checkins is subscribed to branch lp:mailman/2.1.
To unsubscribe from this branch go to 
https://code.launchpad.net/~mailman-coders/mailman/2.1/+edit-subscription
=== modified file 'Mailman/Handlers/CookHeaders.py'
--- Mailman/Handlers/CookHeaders.py	2018-06-17 23:47:34 +
+++ Mailman/Handlers/CookHeaders.py	2019-06-05 23:39:30 +
@@ -328,6 +328,12 @@
 # 2047 encoded.
 i18ndesc = uheader(mlist, mlist.description, 'List-Id', maxlinelen=998)
 listid_h = formataddr((str(i18ndesc), listid))
+# With some charsets (utf-8?) and some invalid chars, str(18ndesc) can
+# be empty.
+if str(i18ndesc):
+listid_h = formataddr((str(i18ndesc), listid))
+else:
+listid_h = '<%s>' % listid
 else:
 # without desc we need to ensure the MUST brackets
 listid_h = '<%s>' % listid

=== modified file 'NEWS'
--- NEWS	2019-05-22 14:49:35 +
+++ NEWS	2019-06-05 23:39:30 +
@@ -43,6 +43,10 @@
 
 - Fixed the spelling of the --no-restart option for mailmanctl.
 
+- Fixed an issue where certain combinations of charset and invalid
+  characters in a list's description could produce a List-ID header
+  without angle brackets.  (LP: #1831321)
+
 2.1.29 (24-Jul-2018)
 
   Bug Fixes

___
Mailman-checkins mailing list
Mailman-checkins@python.org
Unsubscribe: 
https://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org



[Mailman-checkins] [Branch ~mailman-coders/mailman/2.1] 2 revisions removed

2019-06-05 Thread noreply
2 revisions were removed from the branch.

--
lp:mailman/2.1
https://code.launchpad.net/~mailman-coders/mailman/2.1

Your team Mailman Checkins is subscribed to branch lp:mailman/2.1.
To unsubscribe from this branch go to 
https://code.launchpad.net/~mailman-coders/mailman/2.1/+edit-subscription
___
Mailman-checkins mailing list
Mailman-checkins@python.org
Unsubscribe: 
https://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org



[Mailman-checkins] [Branch ~mailman-coders/mailman/2.1] Rev 1814: Added site list -bounces and -request @ virtual domain to virtual-mailman.

2019-06-05 Thread noreply

revno: 1814
committer: Mark Sapiro 
branch nick: 2.1
timestamp: Wed 2019-06-05 12:00:44 -0700
message:
  Added site list -bounces and -request @ virtual domain to virtual-mailman.
modified:
  Mailman/MTA/Postfix.py
  NEWS


--
lp:mailman/2.1
https://code.launchpad.net/~mailman-coders/mailman/2.1

Your team Mailman Checkins is subscribed to branch lp:mailman/2.1.
To unsubscribe from this branch go to 
https://code.launchpad.net/~mailman-coders/mailman/2.1/+edit-subscription
=== modified file 'Mailman/MTA/Postfix.py'
--- Mailman/MTA/Postfix.py	2018-06-17 23:47:34 +
+++ Mailman/MTA/Postfix.py	2019-06-05 19:00:44 +
@@ -159,13 +159,19 @@
 # And the site list posting address.
 siteaddr = Utils.get_site_email(mlist.host_name)
 sitedest = Utils.ParseEmail(siteaddr)[0]
-# And the site list -owner address.
+# And the site list -owner, -bounces and -request addresses.
 siteowneraddr = Utils.get_site_email(mlist.host_name, extra='owner')
 siteownerdest = Utils.ParseEmail(siteowneraddr)[0]
+sitebouncesaddr = Utils.get_site_email(mlist.host_name, extra='bounces')
+sitebouncesdest = Utils.ParseEmail(sitebouncesaddr)[0]
+siterequestaddr = Utils.get_site_email(mlist.host_name, extra='request')
+siterequestdest = Utils.ParseEmail(siterequestaddr)[0]
 if mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN:
 loopdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 sitedest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 siteownerdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
+sitebouncesdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
+siterequestdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 # If the site list's host_name is a virtual domain, adding the list and
 # owner addresses to the SITE ADDRESSES will duplicate the entries in the
 # stanza for the list.  Postfix doesn't like dups so we try to comment them
@@ -174,6 +180,8 @@
 hostname.lower()):
 siteaddr = '#' + siteaddr
 siteowneraddr = '#' + siteowneraddr
+sitebouncesaddr = '#' + sitebouncesaddr
+siterequestaddr = '#' + siterequestaddr
 # Seek to the end of the text file, but if it's empty write the standard
 # disclaimer, and the loop catch address and site address.
 fp.seek(0, 2)
@@ -192,14 +200,18 @@
 # LOOP ADDRESSES END
 
 # We also add the site list address in each virtual domain as that address
-# is exposed on admin and listinfo overviews, and we add the site list-owner
-# address as it is exposed in the list created email notice.
+# is exposed on admin and listinfo overviews, and we add the site list-owner,
+# -bounces and -request addresses as they are exposed in the list created
+# and/or password reminder email notices.
 
 # SITE ADDRESSES START
 %s\t%s
 %s\t%s
+%s\t%s
+%s\t%s
 # SITE ADDRESSES END
-""" % (loopaddr, loopdest, siteaddr, sitedest, siteowneraddr, siteownerdest)
+""" % (loopaddr, loopdest, siteaddr, sitedest, siteowneraddr, siteownerdest,
+   sitebouncesaddr, sitebouncesdest, siterequestaddr, siterequestdest)
 # The text file entries get a little extra info
 print >> fp, '# STANZA START:', listname
 print >> fp, '# CREATED:', time.ctime(time.time())
@@ -226,10 +238,16 @@
 sitedest = Utils.ParseEmail(siteaddr)[0]
 siteowneraddr = Utils.get_site_email(mlist.host_name, extra='owner')
 siteownerdest = Utils.ParseEmail(siteowneraddr)[0]
+sitebouncesaddr = Utils.get_site_email(mlist.host_name, extra='bounces')
+sitebouncesdest = Utils.ParseEmail(sitebouncesaddr)[0]
+siterequestaddr = Utils.get_site_email(mlist.host_name, extra='request')
+siterequestdest = Utils.ParseEmail(siterequestaddr)[0]
 if mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN:
 loopdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 sitedest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 siteownerdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
+sitebouncesdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
+siterequestdest += '@' + mm_cfg.VIRTUAL_MAILMAN_LOCAL_DOMAIN
 # If the site list's host_name is a virtual domain, adding the list and
 # owner addresses to the SITE ADDRESSES will duplicate the entries in the
 # stanza for the list.  Postfix doesn't like dups so we try to comment them
@@ -238,6 +256,8 @@
 mlist.host_name.lower()):
 siteaddr = '#' + siteaddr
 siteowneraddr = '#' + siteowneraddr
+sitebouncesaddr = '#' + sitebouncesaddr
+siterequestaddr = '#' + siterequestaddr
 infp = open(filename)
 omask = os.umask(007)
 try:
@@ -288,6 +308,8 @@
 # It hasn't
 print >> outfp, '%s\t%s' % (siteaddr, sitedest)
 print >> outfp, '%s\t%s' % (siteowneraddr, siteownerdest)
+print >> outfp, '%s\t%s' % (sitebouncesaddr, sitebouncesdest)
+print >> outfp, '%s\t%s'