]> git.sur5r.net Git - openldap/commitdiff
not returning glue entries unless manageDSAit is set
authorJong Hyuk Choi <jongchoi@openldap.org>
Wed, 25 Jun 2003 16:22:08 +0000 (16:22 +0000)
committerJong Hyuk Choi <jongchoi@openldap.org>
Wed, 25 Jun 2003 16:22:08 +0000 (16:22 +0000)
servers/slapd/back-bdb/search.c
servers/slapd/proto-slap.h
servers/slapd/slap.h

index b2f75748ded65632553ab04a32a6489d2624d7c1..57cc3614b8f4976eaf1bc5b4238bd44c3c94ef63 100644 (file)
@@ -1082,6 +1082,13 @@ id2entry_retry:
                        goto loop_continue;
                }
 
+#ifdef LDAP_SYNCREPL
+               if ( !manageDSAit && is_entry_glue( e ) )
+               {
+                       goto loop_continue;
+               }
+#endif
+
                /* if it matches the filter and scope, send it */
 #if defined(LDAP_CLIENT_UPDATE) || defined(LDAP_SYNC)
                if (IS_PSEARCH) {
index dff51b9dcb09c01e59f31da379240673363103c0..e94158bf4448eef876e7b2d06c58684943c867ff 100644 (file)
@@ -715,6 +715,12 @@ LDAP_SLAPD_F (int) is_entry_objectclass LDAP_P((
        (((e)->e_ocflags & SLAP_OC__END) \
         ? (((e)->e_ocflags & SLAP_OC_DYNAMICOBJECT) != 0) \
         : is_entry_objectclass((e), slap_schema.si_oc_dynamicObject, 1))
+#ifdef LDAP_SYNCREPL
+#define is_entry_glue(e)       \
+       (((e)->e_ocflags & SLAP_OC__END) \
+        ? (((e)->e_ocflags & SLAP_OC_GLUE) != 0) \
+        : is_entry_objectclass((e), slap_schema.si_oc_glue, 1))
+#endif
 
 LDAP_SLAPD_F (int) oc_schema_info( Entry *e );
 
index 2708e9cb6f4837e0779acea21a18234495b7eb43..3306910b2eeac9187f34ab92a57a1cdcca69cfe0 100644 (file)
@@ -647,8 +647,9 @@ typedef struct slap_object_class {
 #define        SLAP_OC_SUBENTRY        0x0004
 #define        SLAP_OC_DYNAMICOBJECT   0x0008
 #define        SLAP_OC_COLLECTIVEATTRIBUTESUBENTRY     0x0010
-#define        SLAP_OC__MASK           0x001F
-#define        SLAP_OC__END            0x0020
+#define SLAP_OC_GLUE           0x0020
+#define        SLAP_OC__MASK           0x003F
+#define        SLAP_OC__END            0x0040
 #define SLAP_OC_OPERATIONAL    0x4000
 #ifdef LDAP_DEVEL
 #define SLAP_OC_HIDE           0x0000