]> git.sur5r.net Git - openldap/commitdiff
Port reference scope fix from back-ldbm
authorKurt Zeilenga <kurt@openldap.org>
Fri, 7 Dec 2001 22:41:43 +0000 (22:41 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Fri, 7 Dec 2001 22:41:43 +0000 (22:41 +0000)
servers/slapd/back-bdb/search.c
tests/data/referrals.ldif

index 1251cefaab7177ce782d90661cf2e629eddac544..f642ca9b5f6dee76a3717d943d1740d33437c430 100644 (file)
@@ -357,8 +357,12 @@ bdb_search(
                if ( !manageDSAit && scope != LDAP_SCOPE_BASE &&
                        is_entry_referral( e ) )
                {
-                       struct berval **refs = get_entry_referrals(
+                       struct berval **erefs = get_entry_referrals(
                                be, conn, op, e, NULL, scope );
+                       struct berval **ref = referral_rewrite( eref, e->e_dn, NULL,
+                               scope == LDAP_SCOPE_SUBTREE 
+                                       ? LDAP_SCOPE_SUBTREE
+                                       : LDAP_SCOPE_BASE );
 
                        send_search_reference( be, conn, op,
                                e, refs, NULL, &v2refs );
index abb0b849ea1b022e73e48ceeabcbbd7916fdecf4..54911cb0a6132a80fdeaeb6c3610ee33c6d94264 100644 (file)
@@ -2,30 +2,30 @@ dn: c=US
 c: US
 objectclass: country
 
-dn: o=ABC, c=US
+dn: o=ABC,c=US
 o: ABC
 ref: ldap//hostA/o=abc,c=us    HostA
 ref: ldap//hostB/o=abc,c=us    HostB
 objectclass: referral
 objectclass: extensibleObject
 
-dn: o=XYZ, c=US
+dn: o=XYZ,c=US
 o: XYZ
 ref: ldap//hostC/o=xyz,c=us    HostC
 objectclass: referral
 objectclass: extensibleObject
 
-dn: o=Alias, c=US
+dn: o=Alias,c=US
 o: Alias
-aliasedObjectName: o=University of Michigan, c=US
+aliasedObjectName: o=University of Michigan,c=US
 objectclass: alias
 objectclass: extensibleObject
 
-dn: o=University of Michigan, c=US
+dn: o=University of Michigan,c=US
 o: University of Michigan
 objectclass: organization
 
-dn: cn=Manager, o=University of Michigan, c=US
+dn: cn=Manager,o=University of Michigan,c=US
 cn: Manager
 cn: Directory Manager
 cn: Dir Man
@@ -34,17 +34,17 @@ description: Manager of the directory
 userpassword:: c2VjcmV0
 objectclass: person
 
-dn: cn=Alias, o=University of Michigan, c=US
+dn: cn=Alias,o=University of Michigan,c=US
 cn: Alias
-aliasedobjectname: cn=Manager, o=University of Michigan, c=US
+aliasedobjectname: cn=Manager,o=University of Michigan,c=US
 objectclass: extensibleObject
 
-dn: cn=Circular, o=University of Michigan, c=US
+dn: cn=Circular,o=University of Michigan,c=US
 cn: Circular
-aliasedobjectname: cn=Circular, o=University of Michigan, c=US
+aliasedobjectname: cn=Circular,o=University of Michigan,c=US
 objectclass: extensibleObject
 
-dn: cn=Subordinate, o=University of Michigan, c=US
+dn: cn=Subordinate,o=University of Michigan,c=US
 cn: Subordinate
-aliasedobjectname: cn=Subordinate, cn=Alias, o=University of Michigan, c=US
+aliasedobjectname: cn=Subordinate,cn=Alias,o=University of Michigan,c=US
 objectclass: extensibleObject