]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/slap.h
Fix previous commit
[openldap] / servers / slapd / slap.h
index f493fcd665e22dd0af8d34517dc88f3ee31cf1d7..4c1e7c0819cccc9480a12e5ece310db0d0e3dd89 100644 (file)
@@ -471,8 +471,8 @@ typedef struct slap_object_class {
        struct slap_object_class        **soc_sups;
        AttributeType                           **soc_required;
        AttributeType                           **soc_allowed;
-       ObjectClassSchemaCheckFN        *sco_check;
-       slap_mask_t                                     sco_flags;
+       ObjectClassSchemaCheckFN        *soc_check;
+       slap_mask_t                                     soc_flags;
 #define soc_oid                                soc_oclass.oc_oid
 #define soc_names                      soc_oclass.oc_names
 #define soc_desc                       soc_oclass.oc_desc
@@ -486,6 +486,14 @@ typedef struct slap_object_class {
        struct slap_object_class        *soc_next;
 } ObjectClass;
 
+#define        SLAP_OC_ALIAS           0x01
+#define        SLAP_OC_REFERRAL        0x02
+#define        SLAP_OC_SUBENTRY        0x04
+#define        SLAP_OC_DYNAMICOBJECT   0x08
+#define        SLAP_OC_COLLECTIVEATTRIBUTESUBENTRY     0x10
+#define        SLAP_OC__MASK           0x1F
+#define        SLAP_OC__END            0x20
+
 #ifdef LDAP_EXTENDED_SCHEMA
 /*
  * DIT content rule
@@ -543,7 +551,7 @@ struct slap_internal_schema {
        ObjectClass *si_oc_subentry;
        ObjectClass *si_oc_subschema;
        ObjectClass *si_oc_monitor;
-       ObjectClass *si_oc_collectiveAttributes;
+       ObjectClass *si_oc_collectiveAttributeSubentry;
        ObjectClass *si_oc_dynamicObject;
 
        /* objectClass attribute descriptions */
@@ -557,7 +565,7 @@ struct slap_internal_schema {
        AttributeDescription *si_ad_modifyTimestamp;
        AttributeDescription *si_ad_hasSubordinates;
        AttributeDescription *si_ad_subschemaSubentry;
-       AttributeDescription *si_ad_collectiveSubentry;
+       AttributeDescription *si_ad_collectiveSubentries;
        AttributeDescription *si_ad_collectiveExclusions;
        AttributeDescription *si_ad_entryUUID;
        AttributeDescription *si_ad_entryCSN;
@@ -746,6 +754,10 @@ typedef struct slap_entry {
 
        Attribute       *e_attrs;       /* list of attributes + values */
 
+       slap_mask_t     e_ocflags;
+
+       struct berval   e_bv;           /* For entry_encode/entry_decode */
+
        /* for use by the backend for any purpose */
        void*   e_private;
 } Entry;