From 0a1f027bd9b71d618376e1365c35d95d97b15782 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Sun, 07 Dec 2008 10:32:29 -0500
Subject: [PATCH] - Detect installed services - Update server.ini during install - Changed default vmail directory form /home/vmail to /var/vmail
---
install/install.php | 16 +++++
install/lib/installer_base.lib.php | 43 ++++++++++++--
install/lib/install.lib.php | 9 +++
install/dist/conf/fedora9.conf.php | 19 ++++++
install/dist/conf/opensuse110.conf.php | 19 ++++++
install/dist/conf/debian40.conf.php | 19 ++++++
install/update.php | 3 +
server/plugins-available/mail_plugin.inc.php | 2
install/tpl/server.ini.master | 4
install/dist/conf/centos52.conf.php | 21 ++++++
10 files changed, 144 insertions(+), 11 deletions(-)
diff --git a/install/dist/conf/centos52.conf.php b/install/dist/conf/centos52.conf.php
index 21752c2..5b1a87d 100644
--- a/install/dist/conf/centos52.conf.php
+++ b/install/dist/conf/centos52.conf.php
@@ -44,7 +44,16 @@
$conf['cron_tab'] = '/var/spool/cron/root';
$conf['pam'] = '/etc/pam.d';
+//* Services provided by this server, this selection will be overridden by the expert mode
+$conf['services']['mail'] = true;
+$conf['services']['web'] = true;
+$conf['services']['dns'] = true;
+$conf['services']['file'] = true;
+$conf['services']['db'] = true;
+$conf['services']['vserver'] = true;
+
//* MySQL
+$conf['mysql']['installed'] = false; // will be detected automatically during installation
$conf['mysql']['init_script'] = 'mysqld';
$conf['mysql']['host'] = 'localhost';
$conf['mysql']['ip'] = '127.0.0.1';
@@ -64,6 +73,7 @@
$conf['mysql']['master_ispconfig_password'] = md5 (uniqid (rand()));
//* Apache
+$conf['apache']['installed'] = false; // will be detected automatically during installation
$conf['apache']['user'] = 'apache';
$conf['apache']['group'] = 'apache';
$conf['apache']['init_script'] = 'httpd';
@@ -73,6 +83,7 @@
$conf['apache']['vhost_port'] = '8080';
//* Postfix
+$conf['postfix']['installed'] = false; // will be detected automatically during installation
$conf['postfix']['config_dir'] = '/etc/postfix';
$conf['postfix']['init_script'] = 'postfix';
$conf['postfix']['user'] = 'postfix';
@@ -81,13 +92,15 @@
$conf['postfix']['vmail_username'] = 'vmail';
$conf['postfix']['vmail_groupid'] = '5000';
$conf['postfix']['vmail_groupname'] = 'vmail';
-$conf['postfix']['vmail_mailbox_base'] = '/home/vmail';
+$conf['postfix']['vmail_mailbox_base'] = '/var/vmail';
//* Getmail
+$conf['getmail']['installed'] = false; // will be detected automatically during installation
$conf['getmail']['config_dir'] = '/etc/getmail';
$conf['getmail']['program'] = '/usr/bin/getmail';
//* Courier
+$conf['courier']['installed'] = false; // will be detected automatically during installation
$conf['courier']['config_dir'] = '/etc/authlib';
$conf['courier']['courier-authdaemon'] = 'courier-authlib';
$conf['courier']['courier-imap'] = 'courier-imap';
@@ -96,25 +109,31 @@
$conf['courier']['courier-pop-ssl'] = '';
//* SASL
+$conf['saslauthd']['installed'] = false; // will be detected automatically during installation
$conf['saslauthd']['config'] = '/etc/sysconfig/saslauthd';
$conf['saslauthd']['init_script'] = 'saslauthd';
//* Amavisd
+$conf['amavis']['installed'] = false; // will be detected automatically during installation
$conf['amavis']['config_dir'] = '/etc/amavisd';
$conf['amavis']['init_script'] = 'amavisd';
//* ClamAV
+$conf['clamav']['installed'] = false; // will be detected automatically during installation
$conf['clamav']['init_script'] = 'clamd';
//* Pureftpd
+$conf['pureftpd']['installed'] = false; // will be detected automatically during installation
$conf['pureftpd']['config_dir'] = '/etc/pure-ftpd';
$conf['pureftpd']['init_script'] = 'pure-ftpd';
//* MyDNS
+$conf['mydns']['installed'] = false; // will be detected automatically during installation
$conf['mydns']['config_dir'] = '/etc';
$conf['mydns']['init_script'] = 'mydns';
//* Jailkit
+$conf['jailkit']['installed'] = false; // will be detected automatically during installation
$conf['jailkit']['config_dir'] = '/etc/jailkit';
$conf['jailkit']['jk_init'] = 'jk_init.ini';
$conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini';
diff --git a/install/dist/conf/debian40.conf.php b/install/dist/conf/debian40.conf.php
index 9d69220..76d850a 100644
--- a/install/dist/conf/debian40.conf.php
+++ b/install/dist/conf/debian40.conf.php
@@ -44,7 +44,16 @@
$conf['cron_tab'] = '/var/spool/cron/crontabs/root';
$conf['pam'] = '/etc/pam.d';
+//* Services provided by this server, this selection will be overridden by the expert mode
+$conf['services']['mail'] = true;
+$conf['services']['web'] = true;
+$conf['services']['dns'] = true;
+$conf['services']['file'] = true;
+$conf['services']['db'] = true;
+$conf['services']['vserver'] = true;
+
//* MySQL
+$conf['mysql']['installed'] = false; // will be detected automatically during installation
$conf['mysql']['init_script'] = 'mysql';
$conf['mysql']['host'] = 'localhost';
$conf['mysql']['ip'] = '127.0.0.1';
@@ -64,6 +73,7 @@
$conf['mysql']['master_ispconfig_password'] = md5 (uniqid (rand()));
//* Apache
+$conf['apache']['installed'] = false; // will be detected automatically during installation
$conf['apache']['user'] = 'www-data';
$conf['apache']['group'] = 'www-data';
$conf['apache']['init_script'] = 'apache2';
@@ -73,6 +83,7 @@
$conf['apache']['vhost_port'] = '8080';
//* Postfix
+$conf['postfix']['installed'] = false; // will be detected automatically during installation
$conf['postfix']['config_dir'] = '/etc/postfix';
$conf['postfix']['init_script'] = 'postfix';
$conf['postfix']['user'] = 'postfix';
@@ -84,10 +95,12 @@
$conf['postfix']['vmail_mailbox_base'] = '/home/vmail';
//* Getmail
+$conf['getmail']['installed'] = false; // will be detected automatically during installation
$conf['getmail']['config_dir'] = '/etc/getmail';
$conf['getmail']['program'] = '/usr/bin/getmail';
//* Courier
+$conf['courier']['installed'] = false; // will be detected automatically during installation
$conf['courier']['config_dir'] = '/etc/courier';
$conf['courier']['courier-authdaemon'] = 'courier-authdaemon';
$conf['courier']['courier-imap'] = 'courier-imap';
@@ -96,25 +109,31 @@
$conf['courier']['courier-pop-ssl'] = 'courier-pop-ssl';
//* SASL
+$conf['saslauthd']['installed'] = false; // will be detected automatically during installation
$conf['saslauthd']['config'] = '/etc/default/saslauthd';
$conf['saslauthd']['init_script'] = 'saslauthd';
//* Amavisd
+$conf['amavis']['installed'] = false; // will be detected automatically during installation
$conf['amavis']['config_dir'] = '/etc/amavis';
$conf['amavis']['init_script'] = 'amavis';
//* ClamAV
+$conf['clamav']['installed'] = false; // will be detected automatically during installation
$conf['clamav']['init_script'] = 'clamav-daemon';
//* Pureftpd
+$conf['pureftpd']['installed'] = false; // will be detected automatically during installation
$conf['pureftpd']['config_dir'] = '/etc/pure-ftpd';
$conf['pureftpd']['init_script'] = 'pure-ftpd-mysql';
//* MyDNS
+$conf['mydns']['installed'] = false; // will be detected automatically during installation
$conf['mydns']['config_dir'] = '/etc';
$conf['mydns']['init_script'] = 'mydns';
//* Jailkit
+$conf['jailkit']['installed'] = false; // will be detected automatically during installation
$conf['jailkit']['config_dir'] = '/etc/jailkit';
$conf['jailkit']['jk_init'] = 'jk_init.ini';
$conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini';
diff --git a/install/dist/conf/fedora9.conf.php b/install/dist/conf/fedora9.conf.php
index 275584b..2800668 100644
--- a/install/dist/conf/fedora9.conf.php
+++ b/install/dist/conf/fedora9.conf.php
@@ -44,7 +44,16 @@
$conf['cron_tab'] = '/var/spool/cron/root';
$conf['pam'] = '/etc/pam.d';
+//* Services provided by this server, this selection will be overridden by the expert mode
+$conf['services']['mail'] = true;
+$conf['services']['web'] = true;
+$conf['services']['dns'] = true;
+$conf['services']['file'] = true;
+$conf['services']['db'] = true;
+$conf['services']['vserver'] = true;
+
//* MySQL
+$conf['mysql']['installed'] = false; // will be detected automatically during installation
$conf['mysql']['init_script'] = 'mysqld';
$conf['mysql']['host'] = 'localhost';
$conf['mysql']['ip'] = '127.0.0.1';
@@ -64,6 +73,7 @@
$conf['mysql']['master_ispconfig_password'] = md5 (uniqid (rand()));
//* Apache
+$conf['apache']['installed'] = false; // will be detected automatically during installation
$conf['apache']['user'] = 'apache';
$conf['apache']['group'] = 'apache';
$conf['apache']['init_script'] = 'httpd';
@@ -73,6 +83,7 @@
$conf['apache']['vhost_port'] = '8080';
//* Postfix
+$conf['postfix']['installed'] = false; // will be detected automatically during installation
$conf['postfix']['config_dir'] = '/etc/postfix';
$conf['postfix']['init_script'] = 'postfix';
$conf['postfix']['user'] = 'postfix';
@@ -84,10 +95,12 @@
$conf['postfix']['vmail_mailbox_base'] = '/home/vmail';
//* Getmail
+$conf['getmail']['installed'] = false; // will be detected automatically during installation
$conf['getmail']['config_dir'] = '/etc/getmail';
$conf['getmail']['program'] = '/usr/bin/getmail';
//* Courier
+$conf['courier']['installed'] = false; // will be detected automatically during installation
$conf['courier']['config_dir'] = '/etc/authlib';
$conf['courier']['courier-authdaemon'] = 'courier-authlib';
$conf['courier']['courier-imap'] = 'courier-imap';
@@ -96,25 +109,31 @@
$conf['courier']['courier-pop-ssl'] = 'courier-imap';
//* SASL
+$conf['saslauthd']['installed'] = false; // will be detected automatically during installation
$conf['saslauthd']['config'] = '/etc/sysconfig/saslauthd';
$conf['saslauthd']['init_script'] = 'saslauthd';
//* Amavisd
+$conf['amavis']['installed'] = false; // will be detected automatically during installation
$conf['amavis']['config_dir'] = '/etc/amavisd';
$conf['amavis']['init_script'] = 'amavisd';
//* ClamAV
+$conf['clamav']['installed'] = false; // will be detected automatically during installation
$conf['clamav']['init_script'] = 'clamd.amavisd';
//* Pureftpd
+$conf['pureftpd']['installed'] = false; // will be detected automatically during installation
$conf['pureftpd']['config_dir'] = '/etc/pure-ftpd';
$conf['pureftpd']['init_script'] = 'pure-ftpd';
//* MyDNS
+$conf['mydns']['installed'] = false; // will be detected automatically during installation
$conf['mydns']['config_dir'] = '/etc';
$conf['mydns']['init_script'] = 'mydns';
//* Jailkit
+$conf['jailkit']['installed'] = false; // will be detected automatically during installation
$conf['jailkit']['config_dir'] = '/etc/jailkit';
$conf['jailkit']['jk_init'] = 'jk_init.ini';
$conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini';
diff --git a/install/dist/conf/opensuse110.conf.php b/install/dist/conf/opensuse110.conf.php
index ddd02b2..66ba7c2 100644
--- a/install/dist/conf/opensuse110.conf.php
+++ b/install/dist/conf/opensuse110.conf.php
@@ -44,7 +44,16 @@
$conf['cron_tab'] = '/var/spool/cron/tabs/root';
$conf['pam'] = '/etc/pam.d';
+//* Services provided by this server, this selection will be overridden by the expert mode
+$conf['services']['mail'] = true;
+$conf['services']['web'] = true;
+$conf['services']['dns'] = true;
+$conf['services']['file'] = true;
+$conf['services']['db'] = true;
+$conf['services']['vserver'] = true;
+
//* MySQL
+$conf['mysql']['installed'] = false; // will be detected automatically during installation
$conf['mysql']['init_script'] = 'mysql';
$conf['mysql']['host'] = 'localhost';
$conf['mysql']['ip'] = '127.0.0.1';
@@ -64,6 +73,7 @@
$conf['mysql']['master_ispconfig_password'] = md5 (uniqid (rand()));
//* Apache
+$conf['apache']['installed'] = false; // will be detected automatically during installation
$conf['apache']['user'] = 'wwwrun';
$conf['apache']['group'] = 'www';
$conf['apache']['init_script'] = 'apache2';
@@ -73,6 +83,7 @@
$conf['apache']['vhost_port'] = '8080';
//* Postfix
+$conf['postfix']['installed'] = false; // will be detected automatically during installation
$conf['postfix']['config_dir'] = '/etc/postfix';
$conf['postfix']['init_script'] = 'postfix';
$conf['postfix']['user'] = 'postfix';
@@ -84,10 +95,12 @@
$conf['postfix']['vmail_mailbox_base'] = '/home/vmail';
//* Getmail
+$conf['getmail']['installed'] = false; // will be detected automatically during installation
$conf['getmail']['config_dir'] = '/etc/getmail';
$conf['getmail']['program'] = '/usr/bin/getmail';
//* Courier
+$conf['courier']['installed'] = false; // will be detected automatically during installation
$conf['courier']['config_dir'] = '/etc/authlib';
$conf['courier']['courier-authdaemon'] = 'courier-authdaemon';
$conf['courier']['courier-imap'] = 'courier-imap';
@@ -96,25 +109,31 @@
$conf['courier']['courier-pop-ssl'] = 'courier-pop-ssl';
//* SASL
+$conf['saslauthd']['installed'] = false; // will be detected automatically during installation
$conf['saslauthd']['config'] = '/etc/default/saslauthd';
$conf['saslauthd']['init_script'] = 'saslauthd';
//* Amavisd
+$conf['amavis']['installed'] = false; // will be detected automatically during installation
$conf['amavis']['config_dir'] = '/etc/amavis';
$conf['amavis']['init_script'] = 'amavis';
//* ClamAV
+$conf['clamav']['installed'] = false; // will be detected automatically during installation
$conf['clamav']['init_script'] = 'clamd';
//* Pureftpd
+$conf['pureftpd']['installed'] = false; // will be detected automatically during installation
$conf['pureftpd']['config_dir'] = '/etc/pure-ftpd';
$conf['pureftpd']['init_script'] = 'pure-ftpd';
//* MyDNS
+$conf['mydns']['installed'] = false; // will be detected automatically during installation
$conf['mydns']['config_dir'] = '/etc';
$conf['mydns']['init_script'] = 'mydns';
//* Jailkit
+$conf['jailkit']['installed'] = false; // will be detected automatically during installation
$conf['jailkit']['config_dir'] = '/etc/jailkit';
$conf['jailkit']['jk_init'] = 'jk_init.ini';
$conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini';
diff --git a/install/install.php b/install/install.php
index 1764188..c934555 100644
--- a/install/install.php
+++ b/install/install.php
@@ -89,6 +89,9 @@
die('This software can not be installed on a server wich runs ISPConfig 2.x.');
}
+//** Detect the installed applications
+$inst->find_installed_apps();
+
//** Select the language
$conf['language'] = $inst->simple_query('Select language', array('en','de'), 'en');
@@ -222,7 +225,14 @@
if($conf['mydns']['init_script'] != '' && is_file($conf['mydns']['init_script'])) system($conf['init_scripts'].'/'.$conf['mydns']['init_script'].' restart &> /dev/null');
}else{
-
+
+ //* In expert mode, we select the services in the following steps, only db is always available
+ $conf['services']['mail'] = false;
+ $conf['services']['web'] = false;
+ $conf['services']['dns'] = false;
+ $conf['services']['db'] = true;
+
+
//** Get Server ID
// $conf['server_id'] = $inst->free_query('Unique Numeric ID of the server','1');
// Server ID is an autoInc value of the mysql database now
@@ -275,6 +285,8 @@
if(strtolower($inst->simple_query('Configure Mail', array('y','n') ,'y') ) == 'y') {
+ $conf['services']['mail'] = true;
+
//* Configure Postfix
swriteln('Configuring Postfix');
$inst->configure_postfix();
@@ -325,6 +337,7 @@
//** Configure MyDNS
if(strtolower($inst->simple_query('Configure DNS Server',array('y','n'),'y')) == 'y') {
+ $conf['services']['dns'] = true;
swriteln('Configuring MyDNS');
$inst->configure_mydns();
if($conf['mydns']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['mydns']['init_script'].' restart &> /dev/null');
@@ -333,6 +346,7 @@
//** Configure Apache
swriteln("\nHint: If this server shall run the ispconfig interface, select 'y' in the next option.\n");
if(strtolower($inst->simple_query('Configure Apache Server',array('y','n'),'y')) == 'y') {
+ $conf['services']['web'] = true;
swriteln('Configuring Apache');
$inst->configure_apache();
}
diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php
index a0bc33f..473dc9f 100644
--- a/install/lib/install.lib.php
+++ b/install/lib/install.lib.php
@@ -554,6 +554,15 @@
}
}
+function is_installed($appname) {
+ exec('which '.escapeshellcmd($appname),$out);
+ if(stristr($out[0],$appname)) {
+ return true;
+ } else {
+ return false;
+ }
+}
+
?>
\ No newline at end of file
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index c50c119..705d729 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -112,9 +112,27 @@
}
*/
+ //** Detect installed applications
+ public function find_installed_apps() {
+ global $conf;
+
+ if(is_installed('mysql') || is_installed('mysqld')) $conf['mysql']['installed'] = true;
+ if(is_installed('postfix')) $conf['postfix']['installed'] = true;
+ if(is_installed('apache') || is_installed('apache2') || is_installed('httpd')) $conf['apache']['installed'] = true;
+ if(is_installed('getmail')) $conf['getmail']['installed'] = true;
+ if(is_installed('couriertcpd')) $conf['courier']['installed'] = true;
+ if(is_installed('saslsauthd')) $conf['saslauthd']['installed'] = true;
+ if(is_installed('amavisd-new')) $conf['amavis']['installed'] = true;
+ if(is_installed('clamdscan')) $conf['clamav']['installed'] = true;
+ if(is_installed('pure-ftpd') || is_installed('pure-ftpd-wrapper')) $conf['pureftpd']['installed'] = true;
+ if(is_installed('mydns') || is_installed('mydns-ng')) $conf['mydns']['installed'] = true;
+ if(is_installed('jk_chrootsh')) $conf['jailkit']['installed'] = true;
+
+
+ }
+
/** Create the database for ISPConfig */
- public function configure_database()
- {
+ public function configure_database() {
global $conf;
//** Create the database
@@ -174,19 +192,32 @@
//* Set the database name in the DB library
$this->db->dbName = $conf['mysql']['database'];
- $server_ini_content = rf("tpl/server.ini.master");
+ $tpl_ini_array = ini_to_array(rf('tpl/server.ini.master'));
+
+ // 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'];
+
+ $server_ini_content = array_to_ini($tpl_ini_array);
$server_ini_content = mysql_real_escape_string($server_ini_content);
+
+ $mail_server_enabled = ($conf['services']['mail'])?1:0;
+ $web_server_enabled = ($conf['services']['web'])?1:0;
+ $dns_server_enabled = ($conf['services']['dns'])?1:0;
+ $file_server_enabled = ($conf['services']['file'])?1:0;
+ $db_server_enabled = ($conf['services']['db'])?1:0;
+ $vserver_server_enabled = ($conf['services']['vserver'])?1:0;
if($conf['mysql']['master_slave_setup'] == 'y') {
//* Insert the server record in master DB
- $sql = "INSERT INTO `server` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`) VALUES (1, 1, 'riud', 'riud', 'r', '".$conf['hostname']."', 1, 1, 1, 1, 1, 1, '$server_ini_content', 0, 1);";
+ $sql = "INSERT INTO `server` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`) VALUES (1, 1, 'riud', 'riud', 'r', '".$conf['hostname']."', '$mail_server_enabled', '$web_server_enabled', '$dns_server_enabled', '$file_server_enabled', '$db_server_enabled', '$vserver_server_enabled', '$server_ini_content', 0, 1);";
$this->dbmaster->query($sql);
$conf['server_id'] = $this->dbmaster->insertID();
$conf['server_id'] = $conf['server_id'];
//* Insert the same record in the local DB
- $sql = "INSERT INTO `server` (`server_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`) VALUES ('".$conf['server_id']."',1, 1, 'riud', 'riud', 'r', '".$conf['hostname']."', 1, 1, 1, 1, 1, 1, '$server_ini_content', 0, 1);";
+ $sql = "INSERT INTO `server` (`server_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`) VALUES ('".$conf['server_id']."',1, 1, 'riud', 'riud', 'r', '".$conf['hostname']."', '$mail_server_enabled', '$web_server_enabled', '$dns_server_enabled', '$file_server_enabled', '$db_server_enabled', '$vserver_server_enabled', '$server_ini_content', 0, 1);";
$this->db->query($sql);
//* insert the ispconfig user in the remote server
@@ -210,7 +241,7 @@
} else {
//* Insert the server, if its not a mster / slave setup
- $sql = "INSERT INTO `server` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`) VALUES (1, 1, 'riud', 'riud', 'r', '".$conf['hostname']."', 1, 1, 1, 1, 1, 1, '$server_ini_content', 0, 1);";
+ $sql = "INSERT INTO `server` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`) VALUES (1, 1, 'riud', 'riud', 'r', '".$conf['hostname']."', '$mail_server_enabled', '$web_server_enabled', '$dns_server_enabled', '$file_server_enabled', '$db_server_enabled', '$vserver_server_enabled', '$server_ini_content', 0, 1);";
$this->db->query($sql);
$conf['server_id'] = $this->db->insertID();
$conf['server_id'] = $conf['server_id'];
diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master
index 4431669..41ff082 100644
--- a/install/tpl/server.ini.master
+++ b/install/tpl/server.ini.master
@@ -13,8 +13,8 @@
[mail]
module=postfix_mysql
-maildir_path=/home/vmail/[domain]/[localpart]/
-homedir_path=/home/vmail/
+maildir_path=/var/vmail/[domain]/[localpart]/
+homedir_path=/var/vmail/
mailuser_uid=5000
mailuser_gid=5000
mailuser_name=vmail
diff --git a/install/update.php b/install/update.php
index 5ac9cb4..ac32b1d 100644
--- a/install/update.php
+++ b/install/update.php
@@ -102,6 +102,9 @@
$inst = new installer();
+//** Detect the installed applications
+$inst->find_installed_apps();
+
echo "This application will update ISPConfig 3 on your server.\n";
//** Initialize the MySQL server connection
diff --git a/server/plugins-available/mail_plugin.inc.php b/server/plugins-available/mail_plugin.inc.php
index 7cec05e..524c059 100644
--- a/server/plugins-available/mail_plugin.inc.php
+++ b/server/plugins-available/mail_plugin.inc.php
@@ -66,7 +66,7 @@
$mail_config = $app->getconf->get_server_config($conf["server_id"], 'mail');
// Create the maildir, if it does not exist
- if(!is_dir($data['new']['maildir'])) {
+ if(!empty($data['new']['maildir']) && !is_dir($data['new']['maildir'])) {
$tmp_path = $data['new']['maildir'];
$tmp_path_parts = explode('/',$tmp_path);
unset($tmp_path_parts[count($tmp_path_parts)-2]);
--
Gitblit v1.9.1