From ae10cf9d440960cd6be6404d307df7bb1cca6abc Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Thu, 05 Mar 2009 16:10:48 -0500
Subject: [PATCH] - Changed suse install code and fixed a bug in server.php

---
 install/lib/installer_base.lib.php |   50 ++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 36 insertions(+), 14 deletions(-)

diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index d05bf60..4ce617c 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -202,6 +202,10 @@
 		// TODO: Update further distribution specific parameters for server config here
 		$tpl_ini_array['web']['vhost_conf_dir'] = $conf['apache']['vhost_conf_dir'];
 		$tpl_ini_array['web']['vhost_conf_enabled_dir'] = $conf['apache']['vhost_conf_enabled_dir'];
+		$tpl_ini_array['jailkit']['jailkit_chroot_app_programs'] = $conf['jailkit']['jailkit_chroot_app_programs'];
+		$tpl_ini_array['fastcgi']['fastcgi_phpini_path'] = $conf['fastcgi']['fastcgi_phpini_path'];
+		$tpl_ini_array['server']['hostname'] = $conf['hostname'];
+		$tpl_ini_array['server']['ip_address'] = @gethostbyname($conf['hostname']);
 		
 		$server_ini_content = array_to_ini($tpl_ini_array);
 		$server_ini_content = mysql_real_escape_string($server_ini_content);
@@ -230,7 +234,7 @@
 			$from_ip = gethostbyname($conf['hostname']);
 			
 			//* username for the ispconfig user
-			$conf['mysql']['master_ispconfig_user'] = 'ispconfigserver'.$conf['server_id'];
+			$conf['mysql']['master_ispconfig_user'] = 'ispcsrv'.$conf['server_id'];
 		
 			//* Delete ISPConfig user in the master database, in case that it exists
 			$this->dbmaster->query("DELETE FROM mysql.user WHERE User = '".$conf['mysql']['master_ispconfig_user']."' AND Host = '".$from_host."';");
@@ -374,7 +378,7 @@
 			'transport_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
 			'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf',
 			'virtual_create_maildirsize = yes',
-			'virtual_mailbox_extended = yes',
+			'virtual_maildir_extended = yes',
 			'virtual_mailbox_limit_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_mailbox_limit_maps.cf',
 			'virtual_mailbox_limit_override = yes',
 			'virtual_maildir_limit_message = "The user you are trying to reach is over quota."',
@@ -702,8 +706,13 @@
 		}
 		
 		if(is_file('/etc/apache2/sites-enabled/000-default')) {
-			replaceLine('/etc/apache2/sites-available/000-default','NameVirtualHost *','NameVirtualHost *:80',1);
-			replaceLine('/etc/apache2/sites-available/000-default','<VirtualHost *>','<VirtualHost *:80>',1);
+			replaceLine('/etc/apache2/sites-available/000-default','NameVirtualHost *','NameVirtualHost *:80',1,0);
+			replaceLine('/etc/apache2/sites-available/000-default','<VirtualHost *>','<VirtualHost *:80>',1,0);
+		}
+		
+		if(is_file('/etc/apache2/ports.conf')) {
+			// add a line "Listen 443" to ports conf if line does not exist
+			replaceLine('/etc/apache2/ports.conf','Listen 443','Listen 443',1);
 		}
 		
 		
@@ -742,7 +751,7 @@
     		$tcp_public_services = trim(str_replace(',',' ',$row["tcp_port"]));
     		$udp_public_services = trim(str_replace(',',' ',$row["udp_port"]));
   		} else {
-    		$tcp_public_services = '21 22 25 53 80 110 443 3306 8080 10000';
+    		$tcp_public_services = '21 22 25 53 80 110 143 443 3306 8080 10000';
     		$udp_public_services = '53';
   		}
 		
@@ -903,6 +912,12 @@
 		$file_server_enabled = ($conf['services']['file'])?1:0;
 		$db_server_enabled = ($conf['services']['db'])?1:0;
 		$vserver_server_enabled = ($conf['services']['vserver'])?1:0;
+		
+		
+		
+		
+		
+		
 		$sql = "UPDATE `server` SET mail_server = '$mail_server_enabled', web_server = '$web_server_enabled', dns_server = '$dns_server_enabled', file_server = '$file_server_enabled', db_server = '$db_server_enabled', vserver_server = '$vserver_server_enabled' WHERE server_id = ".intval($conf['server_id']);
 		
 		if($conf['mysql']['master_slave_setup'] == 'y') {
@@ -987,24 +1002,27 @@
 				exec("ln -s $vhost_conf_dir/ispconfig.vhost $vhost_conf_enabled_dir/000-ispconfig.vhost");
 			}
 		}
-		
-		// Make the Clamav log files readable by ISPConfig
-		exec('chmod +r /var/log/clamav/clamav.log');
-		exec('chmod +r /var/log/clamav/freshclam.log');
+		if(!is_file('/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter')) {
+			exec('mkdir -p /var/www/php-fcgi-scripts/ispconfig');
+			exec('cp tpl/apache_ispconfig_fcgi_starter.master /var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter');
+			exec('chmod +x /var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter');
+			exec('ln -s /usr/local/ispconfig/interface/web /var/www/ispconfig');
+			exec('chown -R ispconfig:ispconfig /var/www/php-fcgi-scripts/ispconfig');
+			
+		}
 		
 		//* Install the SVN update script
 		exec('cp ../helper_scripts/update_from_svn.sh /usr/local/bin/ispconfig_update_from_svn.sh');
 		exec('chown root /usr/local/bin/ispconfig_update_from_svn.sh');
 		exec('chmod 700 /usr/local/bin/ispconfig_update_from_svn.sh');
 		
-		//set the fast cgi starter script to executable
-		exec('chmod 755 '.$install_dir.'/interface/bin/php-fcgi');
-		
 		//* Make the logs readable for the ispconfig user
 		if(@is_file('/var/log/mail.log')) exec('chmod +r /var/log/mail.log');
 		if(@is_file('/var/log/mail.warn')) exec('chmod +r /var/log/mail.warn');
 		if(@is_file('/var/log/mail.err')) exec('chmod +r /var/log/mail.err');
 		if(@is_file('/var/log/messages')) exec('chmod +r /var/log/messages');
+		if(@is_file('/var/log/clamav/clamav.log')) exec('chmod +r /var/log/clamav/clamav.log');
+		if(@is_file('/var/log/clamav/freshclam.log')) exec('chmod +r /var/log/clamav/freshclam.log');
 		
 		//* Create the ispconfig log directory
 		if(!is_dir('/var/log/ispconfig')) mkdir('/var/log/ispconfig');
@@ -1070,12 +1088,12 @@
 			$existing_cron_jobs = file('crontab.txt');
 		
 			$cron_jobs = array(
-                '*/5 * * * * '.$cf['program'].' -g '.$cf['config_dir'].' -r '.$cf['config_dir'].'/*.conf > /dev/null 2>> /var/log/ispconfig/cron.log'
+                '*/5 * * * * '.$cf['program'].' -n -g '.$cf['config_dir'].' -r '.$cf['config_dir'].'/*.conf > /dev/null 2>> /var/log/ispconfig/cron.log'
             );
 		
 			// remove existing ispconfig cronjobs, in case the syntax has changed
 			foreach($cron_jobs as $key => $val) {
-				if(stristr($val,$cf['program'])) unset($cron_jobs[$key]);
+				if(stristr($val,$cf['program'])) unset($existing_cron_jobs[$key]);
 			}
 		
 			foreach($cron_jobs as $cron_job) {
@@ -1087,6 +1105,10 @@
 			exec('crontab -u getmail crontab.txt &> /dev/null');
 			unlink('crontab.txt');
 		}
+		
+		exec('touch /var/log/ispconfig/cron.log');
+		exec('chmod 666 /var/log/ispconfig/cron.log');
+		
 	}
 	
 }

--
Gitblit v1.9.1