s4:objectclass LDB module - fix error result if an entry doesn't contain a structural...
authorMatthias Dieter Wallnöfer <mdw@samba.org>
Fri, 4 Jun 2010 18:48:52 +0000 (20:48 +0200)
committerMatthias Dieter Wallnöfer <mdw@samba.org>
Mon, 7 Jun 2010 12:47:19 +0000 (14:47 +0200)
We need to return LDB_ERR_UNWILLING_TO_PERFORM (not LDB_ERR_NAMING_VIOLATION).

source4/dsdb/samdb/ldb_modules/objectclass.c

index 8e3b7aaab4b67f28b7a9893a51e2f822d8e938d5..396ebac7b34deb83320aaa439af971fb1ff7b7b6 100644 (file)
@@ -556,9 +556,9 @@ static int objectclass_do_add(struct oc_context *ac)
                objectclass = get_last_structural_class(schema,objectclass_element);
                if(objectclass == NULL) {
                        ldb_asprintf_errstring(ldb,
-                                               "Failed to find a structural class for %s",
-                                                 ldb_dn_get_linearized(msg->dn));
-                       return LDB_ERR_NAMING_VIOLATION;
+                                              "Failed to find a structural class for %s",
+                                              ldb_dn_get_linearized(msg->dn));
+                       return LDB_ERR_UNWILLING_TO_PERFORM;
                }
 
                rdn_name = ldb_dn_get_rdn_name(msg->dn);