Code

Now that we're in the session, just enable sanity checks
[gosa.git] / gosa-core / include / class_config.inc
index e47586ff8667ceca6b3495beee7b7efa56a875a0..abebcb0ada92a95193256e0c1b185c5fc66260d1 100644 (file)
@@ -84,8 +84,6 @@ class config  {
     $tmp = stat("../include/class_location.inc");
     session::global_set("class_location.inc:timestamp",$tmp['mtime']);
 
-
-
     if($this->filename != "" && filemtime($this->filename) != $this->last_modified){
 
       $this->config_found= FALSE;
@@ -99,6 +97,7 @@ class config  {
       xml_set_object($this->parser, $this);
       xml_set_element_handler($this->parser, "tag_open", "tag_close");
       $this->parse($this->filename);
+      $this->set_current($this->current['NAME']);
     }
   }  
 
@@ -109,7 +108,6 @@ class config  {
     $this->data = array(
         "TABS"      => array(), 
         "LOCATIONS" => array(), 
-        "SERVERS"   => array(), 
         "MAIN"      => array(), 
         "MENU"      => array(), 
         "SERVICE"   => array());
@@ -240,7 +238,15 @@ class config  {
   function get_credentials($creds)
   {
     if (isset($_SERVER['HTTP_GOSA_KEY'])){
-      return (cred_decrypt($creds, $_SERVER['HTTP_GOSA_KEY']));
+      if (!session::global_is_set('HTTP_GOSA_KEY_CACHE')){
+        session::global_set('HTTP_GOSA_KEY_CACHE',array());
+      }
+      $cache = session::global_get('HTTP_GOSA_KEY_CACHE');
+      if(!isset($cache[$creds])){
+        $cache[$creds] = cred_decrypt($creds, $_SERVER['HTTP_GOSA_KEY']);
+        session::global_set('HTTP_GOSA_KEY_CACHE',$cache);
+      }
+      return ($cache[$creds]);
     }
     return ($creds);
   }
@@ -524,12 +530,12 @@ class config  {
     $ldap->search ("(objectClass=goLogDBServer)");
     if ($ldap->count()){
       $attrs= $ldap->fetch();
-      if(!isset($attrs['goLogDB'][0])){
-        $attrs['goLogDB'][0] = "gomon";
+      if(!isset($attrs['gosaLogDB'][0])){
+        $attrs['gosaLogDB'][0] = "gomon";
       }
       $this->data['SERVERS']['LOG']= array( 'SERVER' => $attrs['cn'][0],
           'LOGIN' => $attrs['goLogAdmin'][0],
-          'DB' => $attrs['goLogDB'][0],
+          'DB' => $attrs['gosaLogDB'][0],
           'PASSWORD' => $attrs['goLogPassword'][0]);
     }