Compare commits

...

19 Commits
0.9.7 ... 0.9.8

Author SHA1 Message Date
Michael Kaufmann (d00p)
0cf721bd49 tagging 0.9.8 2010-05-31 09:02:09 +00:00
Michael Kaufmann (d00p)
f3719d339e - set version to 0.9.8 2010-05-31 09:01:29 +00:00
Michael Kaufmann (d00p)
efc353256d - only check for colon if document-root is not a domain-name (redirect), fixes #253 2010-05-31 08:28:12 +00:00
Michael Kaufmann (d00p)
f4026c1df5 - catch exception if update.log can't be opened in /tmp/ (which should never happen) 2010-05-31 06:04:51 +00:00
Michael Kaufmann (d00p)
eed7776e86 - use better english 2010-05-30 09:31:11 +00:00
Robert Foerster (Dessa)
aface6b425 fix some typos in preconfig, thanks to tomreyn 2010-05-29 22:03:26 +00:00
Florian Aders (EleRas)
b0fb3a31f7 correczing functionname makeCorrectPath to makeCorrectDir, fixes #252 2010-05-29 18:53:16 +00:00
Florian Aders (EleRas)
b01d37d085 Updated italian languagefile, thx to Emilien :) 2010-05-27 21:10:40 +00:00
Michael Kaufmann (d00p)
72e6e2af24 - change minimum value for dns-TTL to 1 hour instead of 1 day, refs #166 2010-05-27 20:34:49 +00:00
Michael Kaufmann (d00p)
0db11bf0f8 - same with 05_froxlor_default_errorhandler.conf 2010-05-27 10:20:37 +00:00
Michael Kaufmann (d00p)
07e388c554 - secure path to 05_froxlor_dirfix_nofcgid.conf apache config file 2010-05-27 10:18:57 +00:00
Robert Foerster (Dessa)
84c9ac7e82 tweak dovecot configuration for lucid to work, fixes 248 2010-05-25 22:19:29 +00:00
Michael Kaufmann (d00p)
e572c072a9 - corrected 'last password change' calculation in libnss-configurations, fixes #244 2010-05-21 05:24:18 +00:00
Florian Aders (EleRas)
f6f7b2e4be Fixing it on the right place, d00p was correct, i apologize -.- 2010-05-19 12:29:32 +00:00
Michael Kaufmann (d00p)
5a0973dfa3 - respect lighttpd user and don't put "DocumentRoot" into the ip-specialsettings 2010-05-19 10:59:01 +00:00
Michael Kaufmann (d00p)
268f3b0a24 bugfix template 2010-05-19 10:46:42 +00:00
Michael Kaufmann (d00p)
348de6da35 - simplify awstats configuration, fixes #241 2010-05-19 06:07:02 +00:00
Michael Kaufmann (d00p)
82958cd8c2 - check for disabled accounts in libnss-configurations, fixes #237 2010-05-19 05:54:13 +00:00
Michael Kaufmann (d00p)
264bc50451 - respect admins open_basedir path settings (if more than one path), fixes #238 2010-05-18 11:48:58 +00:00
43 changed files with 1129 additions and 160 deletions

View File

@@ -65,7 +65,7 @@ return array(
'varname' => 'defaultttl', 'varname' => 'defaultttl',
'type' => 'int', 'type' => 'int',
'default' => 604800, /* 1 week */ 'default' => 604800, /* 1 week */
'int_min' => 86400, /* 1 day */ 'int_min' => 3600, /* 1 hour */
'int_max' => 2147483647, /* integer max */ 'int_max' => 2147483647, /* integer max */
'save_method' => 'storeSettingField', 'save_method' => 'storeSettingField',
), ),

View File

@@ -369,7 +369,14 @@ if($page == 'domains'
if(!preg_match('/^https?\:\/\//', $documentroot)) if(!preg_match('/^https?\:\/\//', $documentroot))
{ {
$documentroot = makeCorrectDir($documentroot); if(strstr($documentroot, ":") !== FALSE)
{
standard_error('pathmaynotcontaincolon');
}
else
{
$documentroot = makeCorrectDir($documentroot);
}
} }
$domain_check = $db->query_first("SELECT `id`, `domain` FROM `" . TABLE_PANEL_DOMAINS . "` WHERE `domain` = '" . $db->escape(strtolower($domain)) . "'"); $domain_check = $db->query_first("SELECT `id`, `domain` FROM `" . TABLE_PANEL_DOMAINS . "` WHERE `domain` = '" . $db->escape(strtolower($domain)) . "'");
@@ -451,10 +458,6 @@ if($page == 'domains'
{ {
standard_error(array('stringisempty', 'mydocumentroot')); standard_error(array('stringisempty', 'mydocumentroot'));
} }
elseif(strstr($documentroot, ":") !== FALSE)
{
standard_error('pathmaynotcontaincolon');
}
elseif($customerid == 0) elseif($customerid == 0)
{ {
standard_error('adduserfirst'); standard_error('adduserfirst');
@@ -749,8 +752,9 @@ if($page == 'domains'
$documentroot = $customer['documentroot']; $documentroot = $customer['documentroot'];
} }
if(strstr($documentroot, ":") !== FALSE) if(!preg_match('/^https?\:\/\//', $documentroot)
{ && strstr($documentroot, ":") !== FALSE
) {
standard_error('pathmaynotcontaincolon'); standard_error('pathmaynotcontaincolon');
} }
} }

View File

@@ -451,7 +451,7 @@ INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) V
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (18, 'system', 'vmail_homedir', '/var/customers/mail/'); INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (18, 'system', 'vmail_homedir', '/var/customers/mail/');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (19, 'system', 'bindconf_directory', '/etc/bind/'); INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (19, 'system', 'bindconf_directory', '/etc/bind/');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (20, 'system', 'bindreload_command', '/etc/init.d/bind9 reload'); INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (20, 'system', 'bindreload_command', '/etc/init.d/bind9 reload');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.7'); INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.8');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (23, 'system', 'hostname', 'SERVERNAME'); INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (23, 'system', 'hostname', 'SERVERNAME');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (24, 'login', 'maxloginattempts', '3'); INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (24, 'login', 'maxloginattempts', '3');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (25, 'login', 'deactivatetime', '900'); INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (25, 'login', 'deactivatetime', '900');

View File

@@ -637,6 +637,7 @@ if(isset($_POST['installstep'])
$db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '/etc/lighttpd/froxlor-htpasswd/' WHERE `settinggroup` = 'system' AND `varname` = 'apacheconf_htpasswddir'"); $db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '/etc/lighttpd/froxlor-htpasswd/' WHERE `settinggroup` = 'system' AND `varname` = 'apacheconf_htpasswddir'");
$db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '/etc/init.d/lighttpd reload' WHERE `settinggroup` = 'system' AND `varname` = 'apachereload_command'"); $db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '/etc/init.d/lighttpd reload' WHERE `settinggroup` = 'system' AND `varname` = 'apachereload_command'");
$db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '/etc/lighttpd/lighttpd.pem' WHERE `settinggroup` = 'system' AND `varname` = 'ssl_cert_file'"); $db->query("UPDATE `" . TABLE_PANEL_SETTINGS . "` SET `value` = '/etc/lighttpd/lighttpd.pem' WHERE `settinggroup` = 'system' AND `varname` = 'ssl_cert_file'");
$ssettings = '';
} }
// insert the lastcronrun to be the installation date // insert the lastcronrun to be the installation date
@@ -659,8 +660,7 @@ if(isset($_POST['installstep'])
`port` = '80', `port` = '80',
`namevirtualhost_statement` = '1', `namevirtualhost_statement` = '1',
`vhostcontainer` = '1', `vhostcontainer` = '1',
`vhostcontainer_servername_statement` = '1', `vhostcontainer_servername_statement` = '1'";
`specialsettings` = 'DocumentRoot \"".$db->escape(dirname(dirname(__FILE__))) . "\"'";
$db->query($query); $db->query($query);
$defaultip = $db->insert_id(); $defaultip = $db->insert_id();

View File

@@ -768,4 +768,11 @@ if(isFroxlorVersion('0.9.7-svn3'))
updateToVersion('0.9.7'); updateToVersion('0.9.7');
} }
if(isFroxlorVersion('0.9.7'))
{
showUpdateStep("Updating from 0.9.7 to 0.9.8 final");
lastStepStatus(0);
updateToVersion('0.9.8');
}
?> ?>

View File

@@ -33,7 +33,7 @@ function getPreConfig($current_version)
include_once makeCorrectFile(dirname(__FILE__).'/preconfig/0.9/preconfig_0.9.inc.php'); include_once makeCorrectFile(dirname(__FILE__).'/preconfig/0.9/preconfig_0.9.inc.php');
parseAndOutputPreconfig($has_preconfig, $return, $current_version); parseAndOutputPreconfig($has_preconfig, $return, $current_version);
$return .= '<br /><br />'.makecheckbox('update_changesagreed', '<strong>I have read the update notifications and I am aware of the changes made to my system.</strong>', '1', true, '0', true); $return .= '<br /><br />'.makecheckbox('update_changesagreed', '<strong>I have read the update notifications above and I am aware of the changes made to my system.</strong>', '1', true, '0', true);
$return .= '</div>'; $return .= '</div>';
$return .= '<input type="hidden" name="update_preconfig" value="1" />'; $return .= '<input type="hidden" name="update_preconfig" value="1" />';

View File

@@ -83,8 +83,8 @@ function parseAndOutputPreconfig(&$has_preconfig, &$return, $current_version)
if(versionInUpdate($current_version, '0.9.6-svn5')) if(versionInUpdate($current_version, '0.9.6-svn5'))
{ {
$has_preconfig = true; $has_preconfig = true;
$description = 'If you have more than one PHP-configurations defined in Froxlor you can know set a default one which will be used for every domain.'; $description = 'If you have more than one PHP configurations defined in Froxlor you can now set a default one which will be used for every domain.';
$question = '<strong>Select default PHP-configuration:</strong>&nbsp;'; $question = '<strong>Select default PHP configuration:</strong>&nbsp;';
$question .= '<select name="update_defsys_phpconfig">'; $question .= '<select name="update_defsys_phpconfig">';
$configs_array = getPhpConfigs(); $configs_array = getPhpConfigs();
$configs = ''; $configs = '';

View File

@@ -22,7 +22,14 @@ $updatelog = FroxlorLogger::getInstanceOf(array('loginname' => 'updater'), $db,
$updatelogfile = validateUpdateLogFile(makeCorrectFile(dirname(__FILE__).'/update.log')); $updatelogfile = validateUpdateLogFile(makeCorrectFile(dirname(__FILE__).'/update.log'));
$filelog = FileLogger::getInstanceOf(array('loginname' => 'updater'), $settings); $filelog = FileLogger::getInstanceOf(array('loginname' => 'updater'), $settings);
$filelog->setLogFile($updatelogfile); $filelog->setLogFile($updatelogfile);
$filelog->logAction(ADM_ACTION, LOG_WARNING, '-------------- START LOG --------------');
// if first writing does not work we'll stop, tell the user to fix it
// and then let him try again.
try {
$filelog->logAction(ADM_ACTION, LOG_WARNING, '-------------- START LOG --------------');
} catch(Exception $e) {
standard_error('exception', $e->getMessage());
}
/* /*
* since froxlor, we have to check if there's still someone * since froxlor, we have to check if there's still someone

View File

@@ -273,10 +273,8 @@ return Array(
'commands' => Array( 'commands' => Array(
'apt-get install awstats', 'apt-get install awstats',
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/', 'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf') 'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
), 'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
), ),
), ),
'libnss' => Array( 'libnss' => Array(

View File

@@ -198,10 +198,13 @@ return Array(
'commands' => Array( 'commands' => Array(
'cd /usr/ports/www/awstats/', 'cd /usr/ports/www/awstats/',
'make install clean', 'make install clean',
'cp /usr/local/www/awstats/cgi-bin/awstats.model.conf '.makeCorrectDir($settings['system']['awstats_conf']) 'cp /usr/local/www/awstats/cgi-bin/awstats.model.conf '.makeCorrectDir($settings['system']['awstats_conf']),
), 'sed -i.bak \'s/^LogFile/# LogFile/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'files' => Array( 'sed -i.bak \'s/^LogType/# LogType/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf') 'sed -i.bak \'s/^LogFormat/# LogFormat/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'sed -i.bak \'s/^LogSeparator/# LogSeparator/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'sed -i.bak \'s/^SiteDomain/# SiteDomain/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf'),
'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf')
) )
), ),
'libnss' => Array( 'libnss' => Array(

View File

@@ -320,10 +320,8 @@ milter_default_action = accept" >> /etc/postfix/main.cf'
'label' => 'Awstats', 'label' => 'Awstats',
'commands' => Array( 'commands' => Array(
'emerge awstats', 'emerge awstats',
'awstats_configure.pl' 'awstats_configure.pl',
), 'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
), ),
), ),
'libnss' => Array( 'libnss' => Array(

View File

@@ -298,10 +298,8 @@ return Array(
'commands' => Array( 'commands' => Array(
'apt-get install awstats', 'apt-get install awstats',
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/', 'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf') 'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
), 'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
), ),
), ),
'libnss' => Array( 'libnss' => Array(

View File

@@ -306,10 +306,8 @@ return Array(
'commands' => Array( 'commands' => Array(
'apt-get install awstats', 'apt-get install awstats',
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/', 'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf') 'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
), 'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
), ),
), ),
'libnss' => Array( 'libnss' => Array(

View File

@@ -230,7 +230,7 @@ return Array(
'files' => Array( 'files' => Array(
'etc_dovecot_auth.d_01-dovecot-postfix.auth' => '/etc/dovecot/auth.d/01-dovecot-postfix.auth', 'etc_dovecot_auth.d_01-dovecot-postfix.auth' => '/etc/dovecot/auth.d/01-dovecot-postfix.auth',
'etc_dovecot_conf.d_01-dovecot-postfix.conf' => '/etc/dovecot/conf.d/01-dovecot-postfix.conf', 'etc_dovecot_conf.d_01-dovecot-postfix.conf' => '/etc/dovecot/conf.d/01-dovecot-postfix.conf',
'etc_dovecot_conf.d_02-dovecot-sql.conf' => '/etc/dovecot/conf.d/02-dovecot-sql.conf' 'etc_dovecot_dovecot-sql.conf' => '/etc/dovecot/dovecot-sql.conf'
), ),
'restart' => Array( 'restart' => Array(
'/etc/init.d/dovecot restart' '/etc/init.d/dovecot restart'
@@ -307,10 +307,8 @@ return Array(
'commands' => Array( 'commands' => Array(
'apt-get install awstats', 'apt-get install awstats',
'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/', 'cp /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/lib/cgi-bin/',
'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf') 'mv '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
), 'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
), ),
), ),
'libnss' => Array( 'libnss' => Array(

View File

@@ -154,10 +154,8 @@ return Array(
'label' => 'Awstats', 'label' => 'Awstats',
'commands' => Array( 'commands' => Array(
'awstats_configure.pl', 'awstats_configure.pl',
makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf') makeCorrectFile($settings['system']['awstats_conf'].'/awstats.conf').' '.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf'),
), 'sed -i.bak \'s/^DirData/# DirData/\''.makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
'files' => Array(
'etc_awstats.model.conf' => makeCorrectFile($settings['system']['awstats_conf'].'/awstats.model.conf')
) )
) )
) )

View File

@@ -72,7 +72,7 @@ define('PACKAGE_ENABLED', 2);
// VERSION INFO // VERSION INFO
$version = '0.9.7'; $version = '0.9.8';
$dbversion = '2'; $dbversion = '2';
$branding = ''; $branding = '';

View File

@@ -1420,4 +1420,7 @@ $lng['redirect_desc']['rc_found'] = 'found';
$lng['redirect_desc']['rc_seeother'] = 'see other'; $lng['redirect_desc']['rc_seeother'] = 'see other';
$lng['redirect_desc']['rc_tempred'] = 'temporary redirect'; $lng['redirect_desc']['rc_tempred'] = 'temporary redirect';
// ADDED UN FROXLOR 0.9.8
$lng['error']['exception'] = '%s';
?> ?>

File diff suppressed because it is too large Load Diff

View File

@@ -67,7 +67,14 @@ class apache
*/ */
private function _createStandardDirectoryEntry() private function _createStandardDirectoryEntry()
{ {
$vhosts_filename = makeCorrectFile($this->settings['system']['apacheconf_vhost'] . '/05_froxlor_dirfix_nofcgid.conf'); $vhosts_folder = '';
if(is_dir($this->settings['system']['apacheconf_vhost']))
{
$vhosts_folder = makeCorrectDir($this->settings['system']['apacheconf_vhost']);
} else {
$vhosts_folder = makeCorrectDir(dirname($this->settings['system']['apacheconf_vhost']));
}
$vhosts_filename = makeCorrectFile($vhosts_folder . '/05_froxlor_dirfix_nofcgid.conf');
if($this->settings['system']['mod_fcgid'] == '1') if($this->settings['system']['mod_fcgid'] == '1')
{ {
@@ -104,7 +111,15 @@ class apache
|| $this->settings['defaultwebsrverrhandler']['err404'] != '' || $this->settings['defaultwebsrverrhandler']['err404'] != ''
|| $this->settings['defaultwebsrverrhandler']['err500'] != '') || $this->settings['defaultwebsrverrhandler']['err500'] != '')
) { ) {
$vhosts_filename = makeCorrectFile($this->settings['system']['apacheconf_vhost'] . '/05_froxlor_default_errorhandler.conf'); $vhosts_folder = '';
if(is_dir($this->settings['system']['apacheconf_vhost']))
{
$vhosts_folder = makeCorrectDir($this->settings['system']['apacheconf_vhost']);
} else {
$vhosts_folder = makeCorrectDir(dirname($this->settings['system']['apacheconf_vhost']));
}
$vhosts_filename = makeCorrectFile($vhosts_folder . '/05_froxlor_default_errorhandler.conf');
if(!isset($this->virtualhosts_data[$vhosts_filename])) if(!isset($this->virtualhosts_data[$vhosts_filename]))
{ {
@@ -177,7 +192,7 @@ class apache
/** /**
* add 'real'-vhost content here, like doc-root :) * add 'real'-vhost content here, like doc-root :)
*/ */
$mypath = makeCorrectDir(dirname(dirname(dirname(__FILE__)))); $mypath = makeCorrectDir(dirname(dirname(dirname(dirname(__FILE__)))));
$this->virtualhosts_data[$vhosts_filename].= 'DocumentRoot "'.$mypath.'"'."\n"; $this->virtualhosts_data[$vhosts_filename].= 'DocumentRoot "'.$mypath.'"'."\n";
if($row_ipsandports['vhostcontainer_servername_statement'] == '1') if($row_ipsandports['vhostcontainer_servername_statement'] == '1')
@@ -278,8 +293,13 @@ class apache
{ {
$_phpappendopenbasedir = appendOpenBasedirPath($domain['documentroot'], true); $_phpappendopenbasedir = appendOpenBasedirPath($domain['documentroot'], true);
} }
$_phpappendopenbasedir .= appendOpenBasedirPath($this->settings['system']['phpappendopenbasedir']);
$_custom_openbasedir = explode(':', $this->settings['system']['phpappendopenbasedir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
$php_options_text.= ' php_admin_value open_basedir "' . $_phpappendopenbasedir . '"'."\n"; $php_options_text.= ' php_admin_value open_basedir "' . $_phpappendopenbasedir . '"'."\n";
} }

View File

@@ -166,9 +166,20 @@ class apache_fcgid extends apache
if($domain['openbasedir'] == '1') if($domain['openbasedir'] == '1')
{ {
$openbasedirc = ''; $openbasedirc = '';
$_phpappendopenbasedir = appendOpenBasedirPath($this->settings['system']['mod_fcgid_peardir']); $_phpappendopenbasedir = '';
$_phpappendopenbasedir .= appendOpenBasedirPath($this->settings['system']['phpappendopenbasedir']);
$_custom_openbasedir = explode(':', $this->settings['system']['mod_fcgid_peardir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
$_custom_openbasedir = explode(':', $this->settings['system']['phpappendopenbasedir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
if($domain['openbasedir_path'] == '0' && strstr($domain['documentroot'], ":") === false) if($domain['openbasedir_path'] == '0' && strstr($domain['documentroot'], ":") === false)
{ {
$openbasedir = appendOpenBasedirPath($domain['documentroot'], true); $openbasedir = appendOpenBasedirPath($domain['documentroot'], true);

View File

@@ -107,7 +107,7 @@ class lighttpd
$this->lighttpd_data[$vhost_filename].= '# Froxlor default vhost' . "\n"; $this->lighttpd_data[$vhost_filename].= '# Froxlor default vhost' . "\n";
$this->lighttpd_data[$vhost_filename].= '$HTTP["host"] =~ "^(?:www\.|)' . $myhost . '$" {' . "\n"; $this->lighttpd_data[$vhost_filename].= '$HTTP["host"] =~ "^(?:www\.|)' . $myhost . '$" {' . "\n";
$mypath = makeCorrectDir(dirname(dirname(dirname(__FILE__)))); $mypath = makeCorrectDir(dirname(dirname(dirname(dirname(__FILE__)))));
$this->lighttpd_data[$vhost_filename].= ' server.document-root = "'.$mypath.'"'."\n"; $this->lighttpd_data[$vhost_filename].= ' server.document-root = "'.$mypath.'"'."\n";
/** /**

View File

@@ -190,8 +190,19 @@ class lighttpd_fcgid extends lighttpd
if($domain['openbasedir'] == '1') if($domain['openbasedir'] == '1')
{ {
$openbasedirc = ''; $openbasedirc = '';
$_phpappendopenbasedir = appendOpenBasedirPath($this->settings['system']['mod_fcgid_peardir']); $_phpappendopenbasedir = '';
$_phpappendopenbasedir .= appendOpenBasedirPath($this->settings['system']['phpappendopenbasedir']);
$_custom_openbasedir = explode(':', $this->settings['system']['mod_fcgid_peardir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
$_custom_openbasedir = explode(':', $this->settings['system']['phpappendopenbasedir']);
foreach($_custom_openbasedir as $cobd)
{
$_phpappendopenbasedir .= appendOpenBasedirPath($cobd);
}
if($domain['openbasedir_path'] == '0' && strstr($domain['documentroot'], ":") === false) if($domain['openbasedir_path'] == '0' && strstr($domain['documentroot'], ":") === false)
{ {

View File

@@ -19,7 +19,7 @@ $header
<tr> <tr>
<td class="main_field_confirm" colspan="2"><input type="hidden" name="send" value="send" /><input type="submit" class="bottom" value="{$lng['emails']['emails_add']}" /></td> <td class="main_field_confirm" colspan="2"><input type="hidden" name="send" value="send" /><input type="submit" class="bottom" value="{$lng['emails']['emails_add']}" /></td>
</tr> </tr>
<else <else>
<tr> <tr>
<td class="main_field_name" colspan="2">{$lng['emails']['noemaildomainaddedyet']}</td> <td class="main_field_name" colspan="2">{$lng['emails']['noemaildomainaddedyet']}</td>
</tr> </tr>

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -8,9 +8,9 @@ shadow.where_clause = ;
shadow.userid_column = u.id; shadow.userid_column = u.id;
shadow.user_column = u.username; shadow.user_column = u.username;
shadow.password_column = u.password; shadow.password_column = u.password;
shadow.lastchange_column = UNIX_TIMESTAMP()-10; shadow.lastchange_column = FLOOR(UNIX_TIMESTAMP()/86400-1);
shadow.min_column = 1; shadow.min_column = 0;
shadow.max_column = 2; shadow.max_column = 99999;
shadow.warn_column = 7; shadow.warn_column = 7;
shadow.inact_column = -1; shadow.inact_column = -1;
shadow.expire_column = -1; shadow.expire_column = -1;

View File

@@ -4,7 +4,7 @@ users.database = <SQL_DB>;
users.db_user = <SQL_UNPRIVILEGED_USER>; users.db_user = <SQL_UNPRIVILEGED_USER>;
users.db_password = <SQL_UNPRIVILEGED_PASSWORD>; users.db_password = <SQL_UNPRIVILEGED_PASSWORD>;
users.table = ftp_users u; users.table = ftp_users u;
users.where_clause =; users.where_clause = u.login_enabled = 'Y';
users.user_column = u.username; users.user_column = u.username;
users.password_column = u.password; users.password_column = u.password;
users.userid_column = u.id; users.userid_column = u.id;

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -8,9 +8,9 @@ shadow.where_clause = ;
shadow.userid_column = u.id; shadow.userid_column = u.id;
shadow.user_column = u.username; shadow.user_column = u.username;
shadow.password_column = u.password; shadow.password_column = u.password;
shadow.lastchange_column = UNIX_TIMESTAMP()-10; shadow.lastchange_column = FLOOR(UNIX_TIMESTAMP()/86400-1);
shadow.min_column = 1; shadow.min_column = 0;
shadow.max_column = 2; shadow.max_column = 99999;
shadow.warn_column = 7; shadow.warn_column = 7;
shadow.inact_column = -1; shadow.inact_column = -1;
shadow.expire_column = -1; shadow.expire_column = -1;

View File

@@ -4,7 +4,7 @@ users.database = <SQL_DB>;
users.db_user = <SQL_UNPRIVILEGED_USER>; users.db_user = <SQL_UNPRIVILEGED_USER>;
users.db_password = <SQL_UNPRIVILEGED_PASSWORD>; users.db_password = <SQL_UNPRIVILEGED_PASSWORD>;
users.table = ftp_users u; users.table = ftp_users u;
users.where_clause =; users.where_clause = u.login_enabled = 'Y';
users.user_column = u.username; users.user_column = u.username;
users.password_column = u.password; users.password_column = u.password;
users.userid_column = u.id; users.userid_column = u.id;

View File

@@ -1,19 +0,0 @@
# for Froxlor and AWStats to work together
# you have to comment out the following
# variables
# look for
LogFile=""
LogType=""
LogFormat=""
LogSeparator=""
SiteDomain=""
DirData="/some/folder/"
# and comment this out with a hash (#)
#LogFile=""
#LogType=""
#LogFormat=""
#LogSeparator=""
#SiteDomain=""
#DirData="/some/folder/"

View File

@@ -1,6 +1,6 @@
getpwnam SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users WHERE username='%1$s' LIMIT 1 getpwnam SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users WHERE username='%1$s' AND login_enabled = 'Y' LIMIT 1
getpwuid SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users WHERE uid='%1$u' LIMIT 1 getpwuid SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users WHERE uid='%1$u' AND login_enabled = 'Y' LIMIT 1
getpwent SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users getpwent SELECT username, 'x', uid, gid, '0', '', 'MySQL User', homedir, shell, '0' FROM ftp_users
getspnam SELECT username, password, '12345', '0', '99999', '7', '', '', '' FROM ftp_users WHERE username='%1$s' LIMIT 1 getspnam SELECT username, password, '12345', '0', '99999', '7', '', '', '' FROM ftp_users WHERE username='%1$s' LIMIT 1
getspent SELECT username, password, '12345', '0', '99999', '7', '', '', '' FROM ftp_users getspent SELECT username, password, '12345', '0', '99999', '7', '', '', '' FROM ftp_users
getgrnam SELECT groupname, '', gid FROM ftp_groups WHERE groupname='%1$s' LIMIT 1 getgrnam SELECT groupname, '', gid FROM ftp_groups WHERE groupname='%1$s' LIMIT 1

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -1,18 +1,21 @@
getpwnam SELECT username,'x',uid,gid,'MySQL User',homedir,shell \ getpwnam SELECT username,'x',uid,gid,'MySQL User',homedir,shell \
FROM ftp_users \ FROM ftp_users \
WHERE username='%1$s' \ WHERE username='%1$s' \
AND login_enabled = 'Y' \
LIMIT 1 LIMIT 1
getpwuid SELECT username,'x',uid,gid,'MySQL User',homedir,shell \ getpwuid SELECT username,'x',uid,gid,'MySQL User',homedir,shell \
FROM ftp_users \ FROM ftp_users \
WHERE uid='%1$u' \ WHERE uid='%1$u' \
AND login_enabled = 'Y' \
LIMIT 1 LIMIT 1
getspnam SELECT username,password,UNIX_TIMESTAMP()-10,'1','2','7','-1','-1','0' \ getspnam SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \
FROM ftp_users \ FROM ftp_users \
WHERE username='%1$s' \ WHERE username='%1$s' \
AND login_enabled = 'Y' \
LIMIT 1 LIMIT 1
getpwent SELECT username,'x',uid,gid,'MySQL User',homedir,shell \ getpwent SELECT username,'x',uid,gid,'MySQL User',homedir,shell \
FROM ftp_users FROM ftp_users
getspent SELECT username,password,UNIX_TIMESTAMP()-10,'1','2','7','-1','-1','0' \ getspent SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \
FROM ftp_users FROM ftp_users
getgrnam SELECT groupname,'x',gid \ getgrnam SELECT groupname,'x',gid \
FROM ftp_groups \ FROM ftp_groups \

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -8,9 +8,9 @@ shadow.where_clause = ;
shadow.userid_column = u.id; shadow.userid_column = u.id;
shadow.user_column = u.username; shadow.user_column = u.username;
shadow.password_column = u.password; shadow.password_column = u.password;
shadow.lastchange_column = UNIX_TIMESTAMP()-10; shadow.lastchange_column = FLOOR(UNIX_TIMESTAMP()/86400-1);
shadow.min_column = 1; shadow.min_column = 0;
shadow.max_column = 2; shadow.max_column = 99999;
shadow.warn_column = 7; shadow.warn_column = 7;
shadow.inact_column = -1; shadow.inact_column = -1;
shadow.expire_column = -1; shadow.expire_column = -1;

View File

@@ -4,7 +4,7 @@ users.database = <SQL_DB>;
users.db_user = <SQL_UNPRIVILEGED_USER>; users.db_user = <SQL_UNPRIVILEGED_USER>;
users.db_password = <SQL_UNPRIVILEGED_PASSWORD>; users.db_password = <SQL_UNPRIVILEGED_PASSWORD>;
users.table = ftp_users u; users.table = ftp_users u;
users.where_clause =; users.where_clause = u.login_enabled = 'Y';
users.user_column = u.username; users.user_column = u.username;
users.password_column = u.password; users.password_column = u.password;
users.userid_column = u.id; users.userid_column = u.id;

View File

@@ -1,8 +0,0 @@
# for Froxlor and AWStats to work together
# you have to change the following line
# look for
DirData="/some/folder/"
# and comment this out with a hash (#)
#DirData="/some/folder/"

View File

@@ -13,3 +13,16 @@ socket listen {
group = vmail group = vmail
} }
} }
passdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
userdb prefetch {
}
userdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
user = vmail

View File

@@ -35,21 +35,6 @@ protocol lda {
rejection_reason = Your message to <%t> was automatically rejected:%n%r rejection_reason = Your message to <%t> was automatically rejected:%n%r
} }
auth default {
passdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
userdb prefetch {
}
userdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
user = vmail
}
# Plugins configuration # Plugins configuration
plugin { plugin {
quota = maildir quota = maildir

View File

@@ -8,9 +8,9 @@ shadow.where_clause = ;
shadow.userid_column = u.id; shadow.userid_column = u.id;
shadow.user_column = u.username; shadow.user_column = u.username;
shadow.password_column = u.password; shadow.password_column = u.password;
shadow.lastchange_column = UNIX_TIMESTAMP()-10; shadow.lastchange_column = FLOOR(UNIX_TIMESTAMP()/86400-1);
shadow.min_column = 1; shadow.min_column = 0;
shadow.max_column = 2; shadow.max_column = 99999;
shadow.warn_column = 7; shadow.warn_column = 7;
shadow.inact_column = -1; shadow.inact_column = -1;
shadow.expire_column = -1; shadow.expire_column = -1;

View File

@@ -4,7 +4,7 @@ users.database = <SQL_DB>;
users.db_user = <SQL_UNPRIVILEGED_USER>; users.db_user = <SQL_UNPRIVILEGED_USER>;
users.db_password = <SQL_UNPRIVILEGED_PASSWORD>; users.db_password = <SQL_UNPRIVILEGED_PASSWORD>;
users.table = ftp_users u; users.table = ftp_users u;
users.where_clause =; users.where_clause = u.login_enabled = 'Y';
users.user_column = u.username; users.user_column = u.username;
users.password_column = u.password; users.password_column = u.password;
users.userid_column = u.id; users.userid_column = u.id;