From 7536d88d702f56b3c392d3bb04c82e43b1539f07 Mon Sep 17 00:00:00 2001 From: Mark Wooding Date: Sun, 9 Aug 2015 17:00:49 +0100 Subject: [PATCH] lib/Odin.pm, exim-filter.in: Force mail local parts to lower case. This needs to be done both at generation time, and at lookup time. Just in case something tries to use upper-case letters. --- exim-filter.in | 2 +- lib/Odin.pm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/exim-filter.in b/exim-filter.in index baf51cc..ff77f7f 100644 --- a/exim-filter.in +++ b/exim-filter.in @@ -3,7 +3,7 @@ if "${lookup pgsql { \ servers=db.distorted.org.uk/odin/exim/@PASSWORD@; \ SELECT recip FROM odin_maildeliver \ - WHERE lpart = '${quote_pgsql:$local_part}' AND \ + WHERE lpart = '${quote_pgsql:${lc:$local_part}}' AND \ dom = '$domain' } {!$value}{}}" matches "^(.+)\\$" then deliver ${s_1:$1} diff --git a/lib/Odin.pm b/lib/Odin.pm index a742839..06b5212 100644 --- a/lib/Odin.pm +++ b/lib/Odin.pm @@ -550,7 +550,7 @@ sub gen_redir_name ($$) { my ($db, $gen) = @_; for (my $try = 0; $try < $MAIL_MAXGENTRY; $try++) { - my $l = $gen->gen; + my $l = lc $gen->gen; return $l unless $db->selectrow_arrayref ("SELECT 1 FROM odin_mailredir WHERE lpart = ? AND dom = ?", -- 2.11.0