From b2b3b1634d64136156e739a865eb05888e39188b Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Wed, 02 Sep 2009 15:36:19 -0400 Subject: [PATCH] Fixed a problem with broken tolower function in maildrop when compiled with some specific gcc settings by forcing lowercase addresses in master.cf and adding a workaround in case that tolower returns a empty result. --- install/tpl/mailfilter.master | 11 +++++++++++ install/lib/installer_base.lib.php | 2 +- install/dist/lib/fedora.lib.php | 6 +++--- install/dist/lib/opensuse.lib.php | 4 ++-- 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php index 1e59f87..454d482 100644 --- a/install/dist/lib/fedora.lib.php +++ b/install/dist/lib/fedora.lib.php @@ -161,16 +161,16 @@ $content = rf($configfile); // if postfix package is from fedora or centios main repo $content = str_replace('# flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}', - ' flags=R user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', + ' flags=DRhu user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', $content); // If postfix package is from centos plus repo $content = str_replace('# flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}', - ' flags=R user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', + ' flags=DRhu user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', $content); $content = str_replace(' flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}', - ' flags=R user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', + ' flags=DRhu user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', $content); diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php index be5c8e0..bc4f3cf 100644 --- a/install/dist/lib/opensuse.lib.php +++ b/install/dist/lib/opensuse.lib.php @@ -161,11 +161,11 @@ $content = rf($configfile); $content = str_replace(' flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}', - ' flags=R user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', + ' flags=DRhu user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', $content); $content = str_replace(' flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}', - ' flags=R user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', + ' flags=DRhu user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d ${recipient} ${extension} ${recipient} ${user} ${nexthop} ${sender}', $content); wf($configfile, $content); diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 535eb6f..55b82fb 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -517,7 +517,7 @@ $configfile = $config_dir.'/master.cf'; $content = rf($configfile); $content = str_replace('flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}', - 'flags=R user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d '.$cf['vmail_username'].' ${extension} ${recipient} ${user} ${nexthop} ${sender}', + 'flags=DRhu user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d '.$cf['vmail_username'].' ${extension} ${recipient} ${user} ${nexthop} ${sender}', $content); wf($configfile, $content); diff --git a/install/tpl/mailfilter.master b/install/tpl/mailfilter.master index 8588b14..5ff932f 100644 --- a/install/tpl/mailfilter.master +++ b/install/tpl/mailfilter.master @@ -10,6 +10,17 @@ SENDER="$5" DEFAULT="{dist_postfix_vmail_mailbox_base}/$HOST/$USER/." +# Workaround for broken tolower function in some current fedora releases + +if(!$USER) +{ + USER=$3 +} +if(!$HOST) +{ + HOST=$4 +} + if ( "$EXTENSION" ne "" ) { DELIMITER="+" -- Gitblit v1.9.1