]> git.sur5r.net Git - openldap/commitdiff
temporary fix to ITS#4986; does not break current tests, but needs review
authorPierangelo Masarati <ando@openldap.org>
Sat, 9 Jun 2007 16:28:35 +0000 (16:28 +0000)
committerPierangelo Masarati <ando@openldap.org>
Sat, 9 Jun 2007 16:28:35 +0000 (16:28 +0000)
servers/slapd/backend.c

index b5d005b18083668258b35d1ea15066bc60df4089..5ee85ecc4ac93dbf2f1dc4af25c2461ecd58072f 100644 (file)
@@ -663,13 +663,24 @@ select_backend(
                        if ( strcmp( be->be_nsuffix[j].bv_val,
                                &dn->bv_val[dnlen-len] ) == 0 )
                        {
-                               if( b2 == NULL ) {
+                               if ( b2 == NULL ) {
                                        b2 = be;
 
-                                       if( manageDSAit && len == dnlen &&
-                                               !SLAP_GLUE_SUBORDINATE( be ) ) {
+#if 0
+                                       /* causes ITS#4986: a catchall relay
+                                        * database with empty suffix points
+                                        * to another database; operations
+                                        * directed to a specific database
+                                        * fail if manageDSAit is set.
+                                        * Not clear what's the purpose
+                                        * of this test */
+                                       if ( manageDSAit && len == dnlen &&
+                                               !SLAP_GLUE_SUBORDINATE( be ) )
+                                       {
                                                continue;
                                        }
+#endif
+
                                } else {
                                        /* If any parts of the tree are glued, use the first
                                         * match regardless of manageDSAit. Otherwise use the