From cf5e8ef11616fbc68677158631376f6813b62c26 Mon Sep 17 00:00:00 2001 From: x2003bruneau Date: Thu, 9 Nov 2006 15:02:03 +0000 Subject: [PATCH] Fix case-sensitivity issues in mailing lists git-svn-id: svn+ssh://murphy/home/svn/platal/trunk@1066 839d8a87-29fc-0310-9880-83ba4fa771e5 --- ChangeLog | 1 + bin/lists.rpc.py | 6 +++--- modules/xnetgrp.php | 2 +- modules/xnetlists.php | 4 ++-- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 46feb82..424ae23 100644 --- a/ChangeLog +++ b/ChangeLog @@ -38,6 +38,7 @@ Bug/Wish: * Lists: - #485: Can moderate pure-HTML mails -FRU + - #532: Fix case sensitivity issues in emails processing -FRU * Profile: - #451: vCard are RFC compliant -FRU diff --git a/bin/lists.rpc.py b/bin/lists.rpc.py index a804005..36245de 100755 --- a/bin/lists.rpc.py +++ b/bin/lists.rpc.py @@ -191,7 +191,7 @@ def to_forlife(email): return res else: return (None, None) - return (email, mbox) + return (email.lower(), mbox) ## # see /usr/lib/mailman/bin/rmlist @@ -295,7 +295,7 @@ def get_lists(userdesc, perms, vhost, email=None): if email is None: udesc = userdesc else: - udesc = UserDesc(email, email, None, 0) + udesc = UserDesc(email.lower(), email.lower(), None, 0) prefix = vhost.lower()+VHOST_SEP names = Utils.list_names() names.sort() @@ -401,7 +401,7 @@ def replace_email(userdesc, perms, vhost, listname, from_email, to_email): return 0 mlist.Lock() - mlist.ApprovedChangeMemberAddress(from_email, to_email, 0) + mlist.ApprovedChangeMemberAddress(from_email.lower(), to_email.lower(), 0) mlist.Save() mlist.Unlock() return 1 diff --git a/modules/xnetgrp.php b/modules/xnetgrp.php index 5091835..ab4b9b2 100644 --- a/modules/xnetgrp.php +++ b/modules/xnetgrp.php @@ -756,7 +756,7 @@ class XnetGrpModule extends PLModule $globals->asso('mail_domain')); if (Post::has('change')) { - $email_changed = ($user['origine'] != 'X' && $user['email'] != Post::v('email')); + $email_changed = ($user['origine'] != 'X' && strtolower($user['email']) != strtolower(Post::v('email'))); $from_email = $user['email']; if ($user['origine'] != 'X') { XDB::query('UPDATE groupex.membres diff --git a/modules/xnetlists.php b/modules/xnetlists.php index cbadb49..47e325b 100644 --- a/modules/xnetlists.php +++ b/modules/xnetlists.php @@ -198,7 +198,7 @@ class XnetListsModule extends ListsModule list(,$members) = $this->client->get_members($liste); $mails = array_map(create_function('$arr', 'return $arr[1];'), $members); - $subscribers = array_unique(array_merge($subscribers, $mails)); + $subscribers = array_unique($mails); $not_in_group_x = array(); $not_in_group_ext = array(); @@ -219,7 +219,7 @@ class XnetListsModule extends ListsModule $not_in_list = array(); while ($tmp = $ann->next()) { - if (!in_array($tmp['email'], $subscribers)) { + if (!in_array(strtolower($tmp['email']), $subscribers)) { $not_in_list[] = $tmp; } } -- 2.1.4