From edebc4de7a33b4f8336ca93ebcc9f3a5b80af748 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Mon, 25 May 2009 09:40:23 -0400
Subject: [PATCH] Installer fixes for centos 5.3.

---
 install/dist/lib/centos53.lib.php |   86 +++++++++++++++++++++++++++++++++++++++++++
 install/dist/lib/fedora.lib.php   |    2 +
 install/lib/install.lib.php       |    2 
 3 files changed, 89 insertions(+), 1 deletions(-)

diff --git a/install/dist/lib/centos53.lib.php b/install/dist/lib/centos53.lib.php
new file mode 100644
index 0000000..17293fc
--- /dev/null
+++ b/install/dist/lib/centos53.lib.php
@@ -0,0 +1,86 @@
+<?php
+
+/*
+Copyright (c) 2007, Till Brehm, projektfarm Gmbh
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimer in the documentation
+      and/or other materials provided with the distribution.
+    * Neither the name of ISPConfig nor the names of its contributors
+      may be used to endorse or promote products derived from this software without
+      specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+class installer extends installer_dist {
+
+	public function configure_amavis() {
+		global $conf;
+		
+		// amavisd user config file
+		$configfile = 'fedora_amavisd_conf';
+		if(is_file($conf["amavis"]["config_dir"].'/amavisd.conf')) copy($conf["amavis"]["config_dir"].'/amavisd.conf',$conf["courier"]["config_dir"].'/amavisd.conf~');
+		if(is_file($conf["amavis"]["config_dir"].'/amavisd.conf~')) exec('chmod 400 '.$conf["amavis"]["config_dir"].'/amavisd.conf~');
+		$content = rf("tpl/".$configfile.".master");
+		$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
+		$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
+		$content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content);
+		$content = str_replace('{mysql_server_port}',$conf["mysql"]["port"],$content);
+		$content = str_replace('{mysql_server_ip}',$conf['mysql']['ip'],$content);
+		$content = str_replace('{hostname}',$conf['hostname'],$content);
+		$content = str_replace('/var/spool/amavisd/clamd.sock','/var/run/clamav/clamd.sock',$content);
+		wf($conf["amavis"]["config_dir"].'/amavisd.conf',$content);
+		
+		
+		// Adding the amavisd commands to the postfix configuration
+		$postconf_commands = array (
+			'content_filter = amavis:[127.0.0.1]:10024',
+			'receive_override_options = no_address_mappings'
+		);
+		
+		// Make a backup copy of the main.cf file
+		copy($conf["postfix"]["config_dir"].'/main.cf',$conf["postfix"]["config_dir"].'/main.cf~2');
+		
+		// Executing the postconf commands
+		foreach($postconf_commands as $cmd) {
+			$command = "postconf -e '$cmd'";
+			caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
+		}
+		
+		// Append the configuration for amavisd to the master.cf file
+		if(is_file($conf["postfix"]["config_dir"].'/master.cf')) copy($conf["postfix"]["config_dir"].'/master.cf',$conf["postfix"]["config_dir"].'/master.cf~');
+		$content = rf($conf["postfix"]["config_dir"].'/master.cf');
+		// Only add the content if we had not addded it before
+		if(!stristr($content,"127.0.0.1:10025")) {
+			unset($content);
+			$content = rf("tpl/master_cf_amavis.master");
+			af($conf["postfix"]["config_dir"].'/master.cf',$content);
+		}
+		unset($content);
+		
+		removeLine('/etc/sysconfig/freshclam','FRESHCLAM_DELAY=disabled-warn   # REMOVE ME',1);
+		replaceLine('/etc/freshclam.conf','Example','# Example',1);
+		
+		
+	}
+
+
+}
+
+?>
\ No newline at end of file
diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php
index a67c775..ab88f95 100644
--- a/install/dist/lib/fedora.lib.php
+++ b/install/dist/lib/fedora.lib.php
@@ -208,6 +208,8 @@
 		$configfile = 'tpl/fedora_saslauthd_smtpd_conf.master';
 		$content = rf($configfile);
 		wf('/usr/lib/sasl2/smtpd.conf',$content);
+		if(is_dir('/usr/lib64')) wf('/usr/lib64/sasl/smtpd.conf',$content);
+		if(is_dir('/usr/lib64')) wf('/usr/lib64/sasl2/smtpd.conf',$content);
 		
 	}
 	
diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php
index e51d643..93e1cc6 100644
--- a/install/lib/install.lib.php
+++ b/install/lib/install.lib.php
@@ -149,7 +149,7 @@
 		} elseif(stristr($content,'CentOS release 5.3 (Final)')) {
 			$distname = 'CentOS';
 			$distver = '5.3';
-			$distid = 'centos52';
+			$distid = 'centos53';
 			$distbaseid = 'fedora';
 			swriteln("Operating System: CentOS 5.3 or compatible\n");
 		} else {

--
Gitblit v1.9.1