Code

Updated password change.
[gosa.git] / gosa-core / include / class_config.inc
index e9f3bac77741508bbef1b06ca074cbd6644788dd..d5f68214266fc1497d9b34c2041c5534e833c108 100644 (file)
@@ -214,13 +214,23 @@ class config  {
     $this->level--;
   }
 
+
+  function get_credentials($creds)
+  {
+    if (isset($_SERVER['HTTP_GOSA_KEY'])){
+      return (cred_decrypt($creds, $_SERVER['HTTP_GOSA_KEY']));
+    }
+    return ($creds);
+  }
+
+
   function get_ldap_link($sizelimit= FALSE)
   {
     if($this->ldap === NULL || !is_resource($this->ldap->cid)){
 
       /* Build new connection */
       $this->ldap= ldap_init ($this->current['SERVER'], $this->current['BASE'],
-          $this->current['ADMIN'], $this->current['PASSWORD']);
+          $this->current['ADMIN'], $this->get_credentials($this->current['PASSWORD']));
 
       /* Check for connection */
       if (is_null($this->ldap) || (is_int($this->ldap) && $this->ldap == 0)){
@@ -379,8 +389,7 @@ class config  {
       $attrs= $ldap->fetch();
       $this->data['SERVERS']['KERBEROS']= array( 'SERVER' => $attrs['cn'][0],
           'REALM' => $attrs['goKrbRealm'][0],
-          'ADMIN' => $attrs['goKrbAdmin'][0],
-          'PASSWORD' => $attrs['goKrbPassword'][0]);
+          'ADMIN' => $attrs['goKrbAdmin'][0]);
     }
 
     /* Get cups server. FIXME: only one is supported currently */
@@ -725,7 +734,7 @@ class config  {
    */
   function getShareList($listboxEntry = false)
   {
-    $tmp = get_sub_list("(&(objectClass=goShareServer)(goExportEntry=*))","",get_ou("serverou"),
+    $tmp = get_sub_list("(&(objectClass=goShareServer)(goExportEntry=*))","server",get_ou("serverou"),
         $this->current['BASE'],array("goExportEntry","cn"), GL_NONE);
     $return =array();
     foreach($tmp as $entry){