From 1584b7fac294eb6eb3bc000f3a3e5f79fe013a3f Mon Sep 17 00:00:00 2001 From: Mark Sapiro Date: Tue, 4 Jan 2011 15:46:00 -0800 Subject: - Updated contrib/mm-handler-2.1.10 to better handle lists with names that look like admin addresses. Bug #697161. --- NEWS | 5 ++++- contrib/README.mm-handler-2.1.10 | 2 ++ contrib/mm-handler-2.1.10 | 9 +++++++-- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/NEWS b/NEWS index 13a3ee8d..b7527917 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,5 @@ 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. @@ -13,6 +13,9 @@ Here is a history of user visible changes to Mailman. Bug Fixes and other patches + - 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 diff --git a/contrib/README.mm-handler-2.1.10 b/contrib/README.mm-handler-2.1.10 index 579f3e44..1a65541c 100644 --- a/contrib/README.mm-handler-2.1.10 +++ b/contrib/README.mm-handler-2.1.10 @@ -27,3 +27,5 @@ installation", "anti-backscatter mm-handler ..." and "mm-handler 2.1.10 ..." at 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 which see. diff --git a/contrib/mm-handler-2.1.10 b/contrib/mm-handler-2.1.10 index a920b10d..1ff5703d 100644 --- a/contrib/mm-handler-2.1.10 +++ b/contrib/mm-handler-2.1.10 @@ -176,7 +176,12 @@ sub split_addr { # 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 split_addr { 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; } -- cgit v1.2.3