check if path could be opened before iterating through it, fixes #1104

This commit is contained in:
Michael Kaufmann (d00p)
2012-06-28 08:53:23 +02:00
parent d89856fac0
commit f5bc81faca
3 changed files with 51 additions and 31 deletions

View File

@@ -1368,22 +1368,26 @@ class apache
$configdir = $this->settings['phpfpm']['configdir']; $configdir = $this->settings['phpfpm']['configdir'];
$phpfpm_file_dirhandle = opendir($this->settings['phpfpm']['configdir']); $phpfpm_file_dirhandle = opendir($this->settings['phpfpm']['configdir']);
while(false !== ($phpfpm_filename = readdir($phpfpm_file_dirhandle))) if ($phpfpm_file_dirhandle !== false) {
{
if(is_array($known_phpfpm_files) while (false !== ($phpfpm_filename = readdir($phpfpm_file_dirhandle))) {
&& $phpfpm_filename != '.'
&& $phpfpm_filename != '..' if (is_array($known_phpfpm_files)
&& !in_array($phpfpm_filename, $known_phpfpm_files) && $phpfpm_filename != '.'
&& file_exists(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename))) && $phpfpm_filename != '..'
{ && !in_array($phpfpm_filename, $known_phpfpm_files)
fwrite($this->debugHandler, ' apache::wipeOutOldVhostConfigs: unlinking PHP5-FPM ' . $phpfpm_filename . "\n"); && file_exists(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename))
$this->logger->logAction(CRON_ACTION, LOG_NOTICE, 'unlinking ' . $phpfpm_filename); ) {
unlink(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename)); fwrite($this->debugHandler, ' apache::wipeOutOldVhostConfigs: unlinking PHP5-FPM ' . $phpfpm_filename . "\n");
$this->logger->logAction(CRON_ACTION, LOG_NOTICE, 'unlinking ' . $phpfpm_filename);
unlink(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename));
} }
if(!is_array($known_phpfpm_files)) if (!is_array($known_phpfpm_files)) {
{
$this->logger->logAction(CRON_ACTION, LOG_WARNING, "WARNING!! PHP-FPM Configs Not written!!"); $this->logger->logAction(CRON_ACTION, LOG_WARNING, "WARNING!! PHP-FPM Configs Not written!!");
} }
}
} else {
$this->logger->logAction(CRON_ACTION, LOG_WARNING, "WARNING!! PHP-FPM configuration path could not be read (".$this->settings['phpfpm']['configdir'].")");
} }
} }
} }

View File

@@ -1038,21 +1038,28 @@ class lighttpd
$configdir = $this->settings['phpfpm']['configdir']; $configdir = $this->settings['phpfpm']['configdir'];
$phpfpm_file_dirhandle = opendir($this->settings['phpfpm']['configdir']); $phpfpm_file_dirhandle = opendir($this->settings['phpfpm']['configdir']);
while(false !== ($phpfpm_filename = readdir($phpfpm_file_dirhandle))) if ($phpfpm_file_dirhandle !== false) {
{
if($phpfpm_filename != '.' while (false !== ($phpfpm_filename = readdir($phpfpm_file_dirhandle))) {
&& $phpfpm_filename != '..'
&& !in_array($phpfpm_filename, $known_phpfpm_files) if (is_array($known_phpfpm_files)
&& file_exists(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename))) && $phpfpm_filename != '.'
{ && $phpfpm_filename != '..'
&& !in_array($phpfpm_filename, $known_phpfpm_files)
&& file_exists(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename))
) {
fwrite($this->debugHandler, ' lighttpd::wipeOutOldConfigs: unlinking PHP5-FPM ' . $phpfpm_filename . "\n"); fwrite($this->debugHandler, ' lighttpd::wipeOutOldConfigs: unlinking PHP5-FPM ' . $phpfpm_filename . "\n");
$this->logger->logAction(CRON_ACTION, LOG_NOTICE, 'unlinking ' . $phpfpm_filename); $this->logger->logAction(CRON_ACTION, LOG_NOTICE, 'unlinking ' . $phpfpm_filename);
unlink(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename)); unlink(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename));
} }
if (!is_array($known_phpfpm_files)) {
$this->logger->logAction(CRON_ACTION, LOG_WARNING, "WARNING!! PHP-FPM Configs Not written!!");
}
}
} else {
$this->logger->logAction(CRON_ACTION, LOG_WARNING, "WARNING!! PHP-FPM configuration path could not be read (".$this->settings['phpfpm']['configdir'].")");
} }
} }
} }
} }
?>

View File

@@ -1046,18 +1046,27 @@ class nginx
$configdir = $this->settings['phpfpm']['configdir']; $configdir = $this->settings['phpfpm']['configdir'];
$phpfpm_file_dirhandle = opendir($this->settings['phpfpm']['configdir']); $phpfpm_file_dirhandle = opendir($this->settings['phpfpm']['configdir']);
while(false !== ($phpfpm_filename = readdir($phpfpm_file_dirhandle))) if ($phpfpm_file_dirhandle !== false) {
{
if($phpfpm_filename != '.' while (false !== ($phpfpm_filename = readdir($phpfpm_file_dirhandle))) {
&& $phpfpm_filename != '..'
&& !in_array($phpfpm_filename, $known_phpfpm_files) if (is_array($known_phpfpm_files)
&& file_exists(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename))) && $phpfpm_filename != '.'
{ && $phpfpm_filename != '..'
&& !in_array($phpfpm_filename, $known_phpfpm_files)
&& file_exists(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename))
) {
fwrite($this->debugHandler, ' nginx::wipeOutOldVhostConfigs: unlinking PHP5-FPM ' . $phpfpm_filename . "\n"); fwrite($this->debugHandler, ' nginx::wipeOutOldVhostConfigs: unlinking PHP5-FPM ' . $phpfpm_filename . "\n");
$this->logger->logAction(CRON_ACTION, LOG_NOTICE, 'unlinking ' . $phpfpm_filename); $this->logger->logAction(CRON_ACTION, LOG_NOTICE, 'unlinking ' . $phpfpm_filename);
unlink(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename)); unlink(makeCorrectFile($this->settings['phpfpm']['configdir'] . '/' . $phpfpm_filename));
} }
if (!is_array($known_phpfpm_files)) {
$this->logger->logAction(CRON_ACTION, LOG_WARNING, "WARNING!! PHP-FPM Configs Not written!!");
}
}
} else {
$this->logger->logAction(CRON_ACTION, LOG_WARNING, "WARNING!! PHP-FPM configuration path could not be read (".$this->settings['phpfpm']['configdir'].")");
} }
} }
} }