]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/slap.h
Defined some ObjectClass->soc_flags values, changed is_entry_*objectclass
[openldap] / servers / slapd / slap.h
index f493fcd665e22dd0af8d34517dc88f3ee31cf1d7..de2b8fedab675d74763d3e5e4fd318034999f3c0 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_COLLECTIVEATTRIBUTES    0x10
+#define        SLAP_OC__MASK           0x1F
+#define        SLAP_OC__END            0x20
+
 #ifdef LDAP_EXTENDED_SCHEMA
 /*
  * DIT content rule
@@ -746,6 +754,8 @@ typedef struct slap_entry {
 
        Attribute       *e_attrs;       /* list of attributes + values */
 
+       slap_mask_t     e_ocflags;
+
        /* for use by the backend for any purpose */
        void*   e_private;
 } Entry;