From e7162b89027835368da51606609068daf10c3ebe Mon Sep 17 00:00:00 2001 From: "Michael Kaufmann (d00p)" Date: Wed, 20 Jan 2010 09:55:30 +0000 Subject: [PATCH] added TODO-file; fixed syscp-bug #1246; fixed syscp-bug #1279; fixed syscp-bug #1283; --- TODO | 50 +++++++++++++++++++++ lib/classes/aps/class.ApsInstaller.php | 2 +- scripts/cron_tasks.inc.dns.10.bind.php | 12 ++--- scripts/cron_tasks.inc.http.20.lighttpd.php | 19 ++++++-- templates/admin/customers/customers_add.tpl | 2 +- templates/footer.tpl | 6 +-- templates/header.tpl | 8 ++-- 7 files changed, 80 insertions(+), 19 deletions(-) create mode 100644 TODO diff --git a/TODO b/TODO new file mode 100644 index 00000000..fe0fa7a4 --- /dev/null +++ b/TODO @@ -0,0 +1,50 @@ + 0001282 Homedirs von Dovecot identisch + 0001274 Option to mark a Domain as Subdomain possible or not +FIXED 0001283 SysCP creating broken lighttpd config files + 0001213 APS class_apsinstaller.php on line 510 - error installing different apps + 0001272 Default Config for libnss incomplete (debian/lenny) +FIXED 0001281 Wrong open_basedir directive + 0001280 deb packet 1.4.2.1-2 fu*ked +FIXED 0001279 incorrect usage of escapeshellcmd + 0001269 AWStats RewriteRule is wrong + 0001278 Customer and domain directories are not created + 0001277 Apache Redirect => permanent 301 + 0001276 Bind Zones Not Updated on Nameserver Change + 0001275 Setting up Traffic limit is limited to 999 GB + 0001273 APS-Installer + 0001271 cant install the package magento + 0001270 xinet reltime update mistake + 0001268 SysCP Funktion: aktualisierung in Real-Time + 0001041 Customer should have access to his webserver logs. + 0001267 Domain-Aliases also create a HOST-entry + 0001266 Lighttpd has a internal limit of regex-hits which limits max amount of domain-aliases + 0001263 Cosmettic Change +WONTFIX 0001056 Need extra payment methods +WONTFIX 0001262 Currency type modification. +WONTFIX 0001257 Fee is recalculated with current contract data although interval is over + 0001255 Wrong path to usage statistics under domain settings + 0001261 No e-mail on 90% traffic + 0001260 2x F5 causes bigger fonts +WONTFIX 0001259 contract-changes optional with cron to the end of the interval +WONTFIX 0001258 Make invoices immediately + 0001120 Missing function to calculate the mail traffic + 0001236 the cron doesnt delete user directories + 0001244 customer view too wide for 1024x768 resolutions + 0001229 subdomains and Own vHost-Settings + 0001254 Installation no next button +FIXED 0001253 admin_customers.php line 803 / 804 contain the same + 0001252 Backup Cronjob for Customers + 0001250 Apache redirect to Umlautdomains does not work + 0001251 possibility to manage WebDAV config in SysCP + 0001249 SysCP SVN(!) settings loader doesn't load some settings +WONTFIX 0001248 blog.syscp.org + 0001042 Webalizer dir should not be deletable + 0001247 tab order problems at email forward mask +FIXED 0001246 wrong variable assigned in /templates/admin/customers/customers_add.tpl + 0001245 Password Protect /awstats/ when using awstats and fcgid + 0001156 Repairing use of awstats and awstats-icons with fcgi + 0001243 Wrong uid and gid for php-fcgi-starter + 0001242 When email qouta is enabled, you cannot add more resources to a client. + 0001241 Patch for facilate customizing syscp + 0001240 Wrong php.ini for subdomains with fastCGI + 0001239 awstats configs get cluttered up after domain deletion \ No newline at end of file diff --git a/lib/classes/aps/class.ApsInstaller.php b/lib/classes/aps/class.ApsInstaller.php index 54090107..7ddcf694 100644 --- a/lib/classes/aps/class.ApsInstaller.php +++ b/lib/classes/aps/class.ApsInstaller.php @@ -135,7 +135,7 @@ class ApsInstaller extends ApsParser chdir($this->RealPath . $this->DomainPath . '/install_scripts/'); $Return = array(); $ReturnStatus = 0; - $Return = safe_exec('php ' . escapeshellcmd($this->RealPath . $this->DomainPath . '/install_scripts/configure install'), $ReturnStatus); + $Return = safe_exec('php ' . escapeshellarg($this->RealPath . $this->DomainPath . '/install_scripts/configure install'), $ReturnStatus); if($ReturnStatus != 0) { diff --git a/scripts/cron_tasks.inc.dns.10.bind.php b/scripts/cron_tasks.inc.dns.10.bind.php index a8288390..33833f92 100644 --- a/scripts/cron_tasks.inc.dns.10.bind.php +++ b/scripts/cron_tasks.inc.dns.10.bind.php @@ -290,13 +290,13 @@ class bind $max_dkim_id = $this->db->query_first("SELECT MAX(`dkim_id`) as `max_dkim_id` FROM `" . TABLE_PANEL_DOMAINS . "`"); $domain['dkim_id'] = (int)$max_dkim_id['max_dkim_id'] + 1; $privkey_filename = makeCorrectFile($this->settings['dkim']['dkim_prefix'] . '/dkim_' . $domain['dkim_id'] . '.private'); - safe_exec('openssl genrsa -out ' . escapeshellcmd($privkey_filename) . ' 1024'); + safe_exec('openssl genrsa -out ' . escapeshellarg($privkey_filename) . ' 1024'); $domain['dkim_privkey'] = file_get_contents($privkey_filename); - safe_exec("chmod 0640 " . escapeshellcmd($privkey_filename)); + safe_exec("chmod 0640 " . escapeshellarg($privkey_filename)); $pubkey_filename = makeCorrectFile($this->settings['dkim']['dkim_prefix'] . '/dkim_' . $domain['dkim_id'] . '.public'); - safe_exec('openssl rsa -in ' . escapeshellcmd($privkey_filename) . ' -pubout -outform pem -out ' . escapeshellcmd($pubkey_filename)); + safe_exec('openssl rsa -in ' . escapeshellarg($privkey_filename) . ' -pubout -outform pem -out ' . escapeshellarg($pubkey_filename)); $domain['dkim_pubkey'] = file_get_contents($pubkey_filename); - safe_exec("chmod 0664 " . escapeshellcmd($pubkey_filename)); + safe_exec("chmod 0664 " . escapeshellarg($pubkey_filename)); $this->db->query("UPDATE `" . TABLE_PANEL_DOMAINS . "` SET `dkim_id` = '" . $domain['dkim_id'] . "', `dkim_privkey` = '" . $domain['dkim_privkey'] . "', `dkim_pubkey` = '" . $domain['dkim_pubkey'] . "' WHERE `id` = '" . $domain['id'] . "'"); } @@ -306,7 +306,7 @@ class bind $privkey_file_handler = fopen($privkey_filename, "w"); fwrite($privkey_file_handler, $domain['dkim_privkey']); fclose($privkey_file_handler); - safe_exec("chmod 0640 " . escapeshellcmd($privkey_filename)); + safe_exec("chmod 0640 " . escapeshellarg($privkey_filename)); } if(!file_exists($pubkey_filename) @@ -315,7 +315,7 @@ class bind $pubkey_file_handler = fopen($pubkey_filename, "w"); fwrite($pubkey_file_handler, $domain['dkim_pubkey']); fclose($pubkey_file_handler); - safe_exec("chmod 0664 " . escapeshellcmd($pubkey_filename)); + safe_exec("chmod 0664 " . escapeshellarg($pubkey_filename)); } $dkimdomains.= $domain['domain'] . "\n"; diff --git a/scripts/cron_tasks.inc.http.20.lighttpd.php b/scripts/cron_tasks.inc.http.20.lighttpd.php index 2bff8ccb..b33b76a4 100644 --- a/scripts/cron_tasks.inc.http.20.lighttpd.php +++ b/scripts/cron_tasks.inc.http.20.lighttpd.php @@ -287,6 +287,9 @@ class lighttpd $query = "SELECT * FROM " . TABLE_PANEL_HTACCESS . " WHERE `path` LIKE '" . $domain['documentroot'] . "%'"; $result = $this->db->query($query); + $path_options = ''; + $error_string = ''; + while($row = $this->db->fetch_array($result)) { if(!empty($row['error404path'])) @@ -301,13 +304,21 @@ class lighttpd // We need to remove the last slash, otherwise the regex wouldn't work $path = substr($path, 0, -1); - $error_string.= '$HTTP["url"] =~ "^' . $path . '($|/)" {' . "\n"; - $error_string.= "\t" . 'dir-listing.activate = "enable"' . "\n"; - $error_string.= '}' . "\n"; + $path_options.= '$HTTP["url"] =~ "^' . $path . '($|/)" {' . "\n"; + $path_options.= "\t" . 'dir-listing.activate = "enable"' . "\n"; + if(!empty($error_string)) + { + $path_options.= $error_string; + } + $path_options.= '}' . "\n"; + } + else + { + $path_options = $error_string; } } - return $error_string; + return $path_options; } protected function getDirOptions($domain) diff --git a/templates/admin/customers/customers_add.tpl b/templates/admin/customers/customers_add.tpl index ff0cd898..1e0f3536 100644 --- a/templates/admin/customers/customers_add.tpl +++ b/templates/admin/customers/customers_add.tpl @@ -119,7 +119,7 @@ $header {$lng['customer']['email_quota']}: * -  {$diskspace_ul} +  {$email_quota_ul} diff --git a/templates/footer.tpl b/templates/footer.tpl index 9762ede7..8bc815e4 100644 --- a/templates/footer.tpl +++ b/templates/footer.tpl @@ -4,11 +4,11 @@