X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=gosa-core%2Finclude%2Fclass_ldap.inc;h=6af377218add9ef4562a5ccf76858426a92b4d81;hb=0a8eb52048cd81d884b8e3f63613dc70e444fc27;hp=2bbb1d875ee9a5365f04a675af57c5ed22f27b1e;hpb=e2b4b86dd84c941e591f0560dc20a947854312c5;p=gosa.git diff --git a/gosa-core/include/class_ldap.inc b/gosa-core/include/class_ldap.inc index 2bbb1d875..6af377218 100644 --- a/gosa-core/include/class_ldap.inc +++ b/gosa-core/include/class_ldap.inc @@ -451,15 +451,20 @@ class LDAP{ */ function rename_dn($source,$dest) { + $source = LDAP::fix($source); + $dest = LDAP::fix($dest); + /* Check if source and destination are the same entry */ if(strtolower($source) == strtolower($dest)){ trigger_error("Source and destination can't be the same entry."); + $this->error = "Source and destination can't be the same entry."; return(FALSE); } /* Check if destination entry exists */ if($this->dn_exists($dest)){ trigger_error("Destination '$dest' already exists."); + $this->error = "Destination '$dest' already exists."; return(FALSE); } @@ -473,13 +478,13 @@ class LDAP{ if($this->hascon){ if ($this->reconnect) $this->connect(); - $r= @ldap_rename($this->cid,$source,$dest_rdn,$parent,TRUE); - $this->error = @ldap_error($this->cid); + $r= ldap_rename($this->cid,$source,$dest_rdn,$parent,TRUE); + $this->error = ldap_error($this->cid); /* Check if destination dn exists, if not the server may not support this operation */ - $r &= $this->dn_exists($dest); - return(!$r ? $r : TRUE); + $r &= is_resource($this->dn_exists($dest)); + return($r); }else{ $this->error = "Could not connect to LDAP server"; return(FALSE); @@ -1202,11 +1207,7 @@ class LDAP{ } # Get base to look for schema - $sr = @ldap_read ($this->cid, NULL, "objectClass=*", array("subschemaSubentry")); - if(!$sr){ - $sr = @ldap_read ($this->cid, "", "objectClass=*", array("subschemaSubentry")); - } - + $sr = @ldap_read ($this->cid, "", "objectClass=*", array("subschemaSubentry")); $attr = @ldap_get_entries($this->cid,$sr); if (!isset($attr[0]['subschemasubentry'][0])){ return array(); @@ -1266,6 +1267,7 @@ class LDAP{ if(class_available("session")){ session::set("LDAP_CACHE::get_objectclasses",$objectclasses); } + return $objectclasses; }