Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/bareos/bareos-webui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank Bergkemper <frank.bergkemper@dass-it.de>2015-03-05 19:06:32 +0300
committerFrank Bergkemper <frank.bergkemper@dass-it.de>2015-03-05 19:06:32 +0300
commit1e768e36e65ff2bc60087e200b4c48b7457a116a (patch)
tree72ca3f02ea99b5197e24cd8b834fa63a6bf089b7
parent25bfb0aeff1d4b8892d1069b6299b41ffb7d73b1 (diff)
Fixes a bug in config reader
Wrong array keys in config reader lead to confusion and not being able to use a catalog db running on a host other than the director host. Fixes #429: New Webui fails to connect to database
-rw-r--r--config/autoload/global.php81
-rw-r--r--module/Auth/src/Auth/Form/LoginForm.php5
2 files changed, 43 insertions, 43 deletions
diff --git a/config/autoload/global.php b/config/autoload/global.php
index 2484e8f..56b99bc 100644
--- a/config/autoload/global.php
+++ b/config/autoload/global.php
@@ -5,7 +5,7 @@
* bareos-webui - Bareos Web-Frontend
*
* @link https://github.com/bareos/bareos-webui for the canonical source repository
- * @copyright Copyright (c) 2013-2014 Bareos GmbH & Co. KG (http://www.bareos.org/)
+ * @copyright Copyright (c) 2013-2015 Bareos GmbH & Co. KG (http://www.bareos.org/)
* @license GNU Affero General Public License (http://www.gnu.org/licenses/)
* @author Frank Bergkemper
*
@@ -62,11 +62,11 @@ function read_db_config($config, $file)
else {
if(array_key_exists('dbaddress', $instance) && isset($instance['dbaddress'])) {
- $arr['adapters'][$instance['dbaddress']] = array();
+ $arr['adapters'][key($config)] = array();
}
else {
if(array_key_exists('diraddress', $instance) && isset($instance['diraddress'])) {
- $arr['adapters'][$instance['diraddress']] = array();
+ $arr['adapters'][key($config)] = array();
$instance['dbaddress'] = $instance['diraddress'];
}
else {
@@ -77,10 +77,10 @@ function read_db_config($config, $file)
if(array_key_exists('dbdriver', $instance) && isset($instance['dbdriver'])) {
if(strtolower($instance['dbdriver']) == "postgresql") {
- $arr['adapters'][$instance['dbaddress']]['driver'] = "Pdo_Pgsql";
+ $arr['adapters'][key($config)]['driver'] = "Pdo_Pgsql";
}
elseif(strtolower($instance['dbdriver']) == "mysql") {
- $arr['adapters'][$instance['dbaddress']]['driver'] = "Pdo_Mysql";
+ $arr['adapters'][key($config)]['driver'] = "Pdo_Mysql";
}
else {
echo "Error: Mispelled value for parameter 'dbdriver' in ".$file.", section ".key($config).".";
@@ -88,51 +88,51 @@ function read_db_config($config, $file)
}
}
else {
- $arr['adapters'][$instance['dbaddress']]['driver'] = "Pdo_Pgsql";
+ $arr['adapters'][key($config)]['driver'] = "Pdo_Pgsql";
}
if(array_key_exists('dbname', $instance) && isset($instance['dbname'])) {
- $arr['adapters'][$instance['dbaddress']]['dbname'] = $instance['dbname'];
+ $arr['adapters'][key($config)]['dbname'] = $instance['dbname'];
}
else {
- $arr['adapters'][$instance['dbaddress']]['dbname'] = "bareos";
+ $arr['adapters'][key($config)]['dbname'] = "bareos";
}
if(array_key_exists('dbaddress', $instance) && isset($instance['dbaddress'])) {
- $arr['adapters'][$instance['dbaddress']]['host'] = $instance['dbaddress'];
+ $arr['adapters'][key($config)]['host'] = $instance['dbaddress'];
}
else {
- $arr['adapters'][$instance['dbaddress']]['host'] = "127.0.0.1";
+ $arr['adapters'][key($config)]['host'] = "127.0.0.1";
}
if(array_key_exists('dbport', $instance) && isset($instance['dbport'])) {
- $arr['adapters'][$instance['dbaddress']]['port'] = $instance['dbport'];
+ $arr['adapters'][key($config)]['port'] = $instance['dbport'];
}
else {
if($arr['adapters'][$instance['dbaddress']]['driver'] == "Pdo_Pgsql") {
- $arr['adapters'][$instance['dbaddress']]['port'] = 5432;
+ $arr['adapters'][key($config)]['port'] = 5432;
}
else {
- $arr['adapters'][$instance['dbaddress']]['port'] = 3306;
+ $arr['adapters'][key($config)]['port'] = 3306;
}
}
if(array_key_exists('dbuser', $instance) && isset($instance['dbuser'])) {
- $arr['adapters'][$instance['dbaddress']]['username'] = $instance['dbuser'];
+ $arr['adapters'][key($config)]['username'] = $instance['dbuser'];
}
else {
- $arr['adapters'][$instance['dbaddress']]['username'] = "bareos";
+ $arr['adapters'][key($config)]['username'] = "bareos";
}
if(array_key_exists('dbpassword', $instance) && isset($instance['dbpassword'])) {
- $arr['adapters'][$instance['dbaddress']]['password'] = $instance['dbpassword'];
+ $arr['adapters'][key($config)]['password'] = $instance['dbpassword'];
}
else {
- $arr['adapters'][$instance['dbaddress']]['password'] = "";
+ $arr['adapters'][key($config)]['password'] = "";
}
}
-
+ next($config);
}
return $arr;
@@ -154,8 +154,8 @@ function read_dir_config($config, $file)
else {
if(array_key_exists('diraddress', $instance) && isset($instance['diraddress'])) {
- $arr[$instance['diraddress']] = array();
- $arr[$instance['diraddress']]['host'] = $instance['diraddress'];
+ $arr[key($config)] = array();
+ $arr[key($config)]['host'] = $instance['diraddress'];
}
else {
echo "Error: Missing parameter 'diraddress' in ".$file.", section ".key($config).".";
@@ -163,77 +163,76 @@ function read_dir_config($config, $file)
}
if(array_key_exists('dirport', $instance) && isset($instance['dirport'])) {
- $arr[$instance['diraddress']]['port'] = $instance['dirport'];
+ $arr[key($config)]['port'] = $instance['dirport'];
}
else {
- $arr[$instance['diraddress']]['port'] = 9101;
+ $arr[key($config)]['port'] = 9101;
}
if(array_key_exists('tls_verify_peer', $instance) && isset($instance['tls_verify_peer'])) {
- $arr[$instance['diraddress']]['tls_verify_peer'] = $instance['tls_verify_peer'];
+ $arr[key($config)]['tls_verify_peer'] = $instance['tls_verify_peer'];
}
else {
- $arr[$instance['diraddress']]['tls_verify_peer'] = false;
+ $arr[key($config)]['tls_verify_peer'] = false;
}
if(array_key_exists('server_can_do_tls', $instance) && isset($instance['server_can_do_tls'])) {
- $arr[$instance['diraddress']]['server_can_do_tls'] = $instance['server_can_do_tls'];
+ $arr[key($config)]['server_can_do_tls'] = $instance['server_can_do_tls'];
}
else {
- $arr[$instance['diraddress']]['server_can_do_tls'] = false;
}
if(array_key_exists('server_requires_tls', $instance) && isset($instance['server_requires_tls'])) {
- $arr[$instance['diraddress']]['server_requires_tls'] = $instance['server_requires_tls'];
+ $arr[key($config)]['server_requires_tls'] = $instance['server_requires_tls'];
}
else {
- $arr[$instance['diraddress']]['server_requires_tls'] = false;
+ $arr[key($config)]['server_requires_tls'] = false;
}
if(array_key_exists('client_can_do_tls', $instance) && isset($instance['client_can_do_tls'])) {
- $arr[$instance['diraddress']]['client_can_do_tls'] = $instance['client_can_do_tls'];
+ $arr[key($config)]['client_can_do_tls'] = $instance['client_can_do_tls'];
}
else {
- $arr[$instance['diraddress']]['client_can_do_tls'] = false;
+ $arr[key($config)]['client_can_do_tls'] = false;
}
if(array_key_exists('client_requires_tls', $instance) && isset($instance['client_requires_tls'])) {
- $arr[$instance['diraddress']]['client_requires_tls'] = $instance['client_requires_tls'];
+ $arr[key($config)]['client_requires_tls'] = $instance['client_requires_tls'];
}
else {
- $arr[$instance['diraddress']]['client_requires_tls'] = false;
+ $arr[key($config)]['client_requires_tls'] = false;
}
if(array_key_exists('ca_file', $instance) && isset($instance['ca_file'])) {
- $arr[$instance['diraddress']]['ca_file'] = $instance['ca_file'];
+ $arr[key($config)]['ca_file'] = $instance['ca_file'];
}
else {
- $arr[$instance['diraddress']]['ca_file'] = "";
+ $arr[key($config)]['ca_file'] = "";
}
if(array_key_exists('cert_file', $instance) && isset($instance['cert_file'])) {
- $arr[$instance['diraddress']]['cert_file'] = $instance['cert_file'];
+ $arr[key($config)]['cert_file'] = $instance['cert_file'];
}
else {
- $arr[$instance['diraddress']]['cert_file'] = "";
+ $arr[key($config)]['cert_file'] = "";
}
if(array_key_exists('cert_file_passphrase', $instance) && isset($instance['cert_file_passphrase'])) {
- $arr[$instance['diraddress']]['cert_file_passphrase'] = $instance['cert_file_passphrase'];
+ $arr[key($config)]['cert_file_passphrase'] = $instance['cert_file_passphrase'];
}
else {
- $arr[$instance['diraddress']]['cert_file_passphrase'] = "";
+ $arr[key($config)]['cert_file_passphrase'] = "";
}
if(array_key_exists('allowed_cns', $instance) && isset($instance['allowed_cns'])) {
- $arr[$instance['diraddress']]['allowed_cns'] = $instance['allowed_cns'];
+ $arr[key($config)]['allowed_cns'] = $instance['allowed_cns'];
}
else {
- $arr[$instance['diraddress']]['allowed_cns'] = "";
+ $arr[key($config)]['allowed_cns'] = "";
}
}
-
+ next($config);
}
return $arr;
diff --git a/module/Auth/src/Auth/Form/LoginForm.php b/module/Auth/src/Auth/Form/LoginForm.php
index c87e44c..e8ef85a 100644
--- a/module/Auth/src/Auth/Form/LoginForm.php
+++ b/module/Auth/src/Auth/Form/LoginForm.php
@@ -5,7 +5,7 @@
* bareos-webui - Bareos Web-Frontend
*
* @link https://github.com/bareos/bareos-webui for the canonical source repository
- * @copyright Copyright (c) 2013-2014 Bareos GmbH & Co. KG (http://www.bareos.org/)
+ * @copyright Copyright (c) 2013-2015 Bareos GmbH & Co. KG (http://www.bareos.org/)
* @license GNU Affero General Public License (http://www.gnu.org/licenses/)
*
* This program is free software: you can redistribute it and/or modify
@@ -92,7 +92,8 @@ class LoginForm extends Form
$selectData = array();
foreach($this->config as $dird) {
- $selectData[$dird['host']] = $dird['host'];
+ $selectData[key($this->config)] = key($this->config);
+ next($this->config);
}
return $selectData;