From d12a905c395ffc8471570b491e43638167157df4 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Wed, 07 Sep 2011 09:08:00 -0400
Subject: [PATCH] Fixed: FS#1701 - Backup symlink folder permissions wrong - pre 3.0.3.3
---
interface/web/admin/lib/lang/en_server_config.lng | 1 +
install/tpl/server.ini.master | 1 +
interface/web/admin/form/server_config.tform.php | 6 ++++++
interface/web/admin/templates/server_config_server_edit.htm | 6 ++++++
server/cron_daily.php | 10 +++++++++-
5 files changed, 23 insertions(+), 1 deletions(-)
diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master
index 02d08ff..4d2652e 100644
--- a/install/tpl/server.ini.master
+++ b/install/tpl/server.ini.master
@@ -13,6 +13,7 @@
nameservers=192.168.0.1,192.168.0.2
loglevel=2
backup_dir=/var/backup
+backup_dir_ftpread=y
[mail]
module=postfix_mysql
diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php
index 38d282b..47ba89c 100644
--- a/interface/web/admin/form/server_config.tform.php
+++ b/interface/web/admin/form/server_config.tform.php
@@ -138,6 +138,12 @@
'width' => '40',
'maxlength' => '255'
),
+ 'backup_dir_ftpread' => array(
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'CHECKBOX',
+ 'default' => 'y',
+ 'value' => array(0 => 'n', 1 => 'y')
+ ),
##################################
# ENDE Datatable fields
##################################
diff --git a/interface/web/admin/lib/lang/en_server_config.lng b/interface/web/admin/lib/lang/en_server_config.lng
index 6c1e1a7..6b9bbfe 100644
--- a/interface/web/admin/lib/lang/en_server_config.lng
+++ b/interface/web/admin/lib/lang/en_server_config.lng
@@ -86,4 +86,5 @@
$wb["CA_path_txt"] = 'CA Path';
$wb["CA_pass_txt"] = 'CA passphrase';
$wb["fastcgi_config_syntax_txt"] = 'FastCGI config syntax';
+$wb["backup_dir_ftpread_txt"] = 'Backup dir. readable for website FTP users.';
?>
\ No newline at end of file
diff --git a/interface/web/admin/templates/server_config_server_edit.htm b/interface/web/admin/templates/server_config_server_edit.htm
index a0e08cb..8f42d8c 100644
--- a/interface/web/admin/templates/server_config_server_edit.htm
+++ b/interface/web/admin/templates/server_config_server_edit.htm
@@ -42,6 +42,12 @@
<label for="backup_dir">{tmpl_var name='backup_dir_txt'}</label>
<input name="backup_dir" id="backup_dir" value="{tmpl_var name='backup_dir'}" size="40" maxlength="255" type="text" class="textInput" />
</div>
+ <div class="ctrlHolder">
+ <p class="label">{tmpl_var name='backup_dir_ftpread_txt'}</p>
+ <div class="multiField">
+ {tmpl_var name='backup_dir_ftpread'}
+ </div>
+ </div>
</fieldset>
<input type="hidden" name="id" value="{tmpl_var name='id'}">
diff --git a/server/cron_daily.php b/server/cron_daily.php
index 6f3774b..e21520c 100644
--- a/server/cron_daily.php
+++ b/server/cron_daily.php
@@ -435,8 +435,16 @@
if($backup_dir != '') {
+ if(isset($server_config['backup_dir_ftpread']) && $server_config['backup_dir_ftpread'] == 'y') {
+ $backup_dir_permissions = 0755;
+ } else {
+ $backup_dir_permissions = 0750;
+ }
+
if(!is_dir($backup_dir)) {
- mkdir(escapeshellcmd($backup_dir), 0750, true);
+ mkdir(escapeshellcmd($backup_dir), $backup_dir_permissions, true);
+ } else {
+ chmod(escapeshellcmd($backup_dir), $backup_dir_permissions);
}
$sql = "SELECT * FROM web_domain WHERE type = 'vhost'";
--
Gitblit v1.9.1