]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/schema_check.c
Fix previous commit
[openldap] / servers / slapd / schema_check.c
index 5d5aaa82b113824f835dcce47b6a773f78082466..072460282d0532f0dca19e5dc7ca4ff2f2ea25c8 100644 (file)
@@ -46,9 +46,9 @@ entry_schema_check(
                = slap_schema.si_ad_objectClass;
        int extensible = 0;
        int subentry = is_entry_subentry( e );
-       int collective = 0;
+       int collectiveSubentry = 0;
 
-       if( subentry) collective = is_entry_collectiveAttributes( e );
+       if( subentry) collectiveSubentry = is_entry_collectiveAttributeSubentry( e );
 
        *text = textbuf;
 
@@ -68,9 +68,9 @@ entry_schema_check(
                        }
                }
 
-               if( !collective && is_at_collective( a->a_desc->ad_type ) ) {
-                       snprintf( textbuf, textlen, "attribute '%s' "
-                               "may only appear in collectiveAttributes subentry",
+               if( !collectiveSubentry && is_at_collective( a->a_desc->ad_type ) ) {
+                       snprintf( textbuf, textlen,
+                               "'%s' can only appear in collectiveAttributeSubentry",
                                type );
                        return LDAP_OBJECT_CLASS_VIOLATION;
                }
@@ -219,13 +219,14 @@ entry_schema_check(
                        return LDAP_OBJECT_CLASS_VIOLATION;
                }
 
-               if ( oc->sco_check ) {
-                       int rc = (oc->sco_check)( be, e, oc,
+               if ( oc->soc_check ) {
+                       int rc = (oc->soc_check)( be, e, oc,
                                text, textbuf, textlen );
                        if( rc != LDAP_SUCCESS ) {
                                return rc;
                        }
                }
+
                if ( oc->soc_kind == LDAP_SCHEMA_ABSTRACT ) {
                        /* object class is abstract */
                        if ( oc != slap_schema.si_oc_top &&
@@ -393,7 +394,7 @@ oc_check_required(
 
 int oc_check_allowed(
        AttributeType *at,
-       BVarray ocl,
+       BerVarray ocl,
        ObjectClass *sc )
 {
        int             i, j;
@@ -474,7 +475,7 @@ int oc_check_allowed(
  * Determine the structural object class from a set of OIDs
  */
 int structural_class(
-       BVarray ocs,
+       BerVarray ocs,
        struct berval *scbv,
        ObjectClass **scp,
        const char **text,