Code

Updated get_objectclasses
[gosa.git] / include / class_ldap.inc
index 126aabbad27a562be5207cd82998a291f78e8399..f3b1adb9e05c6de5cf85fbc9304dc9b29424d831 100644 (file)
@@ -772,6 +772,7 @@ class LDAP{
         }
         $this->cd($cdn);
         $this->add($na);
+    
         show_ldap_error($this->get_error(), sprintf(_("Creating subtree '%s' failed."),$cdn));
         if (!preg_match('/success/i', $this->error)){
           return FALSE;
@@ -1253,7 +1254,15 @@ class LDAP{
   function get_objectclasses()
   {
     $objectclasses = array();
-       
+    global $config;
+
+    /* Only read schema if it is allowed */
+    if(isset($config) && preg_match("/config/i",get_class($config))){
+      if(!isset($config->data['MAIN']['SCHEMA_CHECK']) || !preg_match("/true/i",$config->data['MAIN']['SCHEMA_CHECK'])){
+        return($objectclasses);
+      } 
+    }
+       
          # Get base to look for schema 
          $sr = @ldap_read ($this->cid, NULL, "objectClass=*", array("subschemaSubentry"));
     if(!$sr){