[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: Last call on 'Named Subordinate References in LDAPDirectories'
"Kurt D. Zeilenga" wrote:
>
> At 06:53 PM 5/7/01, Mark C Smith wrote:
> >4) Section 7.2 (Target object considerations), Case 4: I would like to
> >see a detailed algorithm specified that a server SHOULD use to construct
> >the URI value to be returned. Why?
>
> I guess some additional text regarding DN rewriting considerations
> would be appropriate. I would suggest an additional "Other
> Considerations" subsection be added.
That sounds like a good idea to me.
> >I can produce some text based on what
> >was in the expired Christopher Lukas Named Referral" I-D if that would
> >help. This same comment applies to Case 4 of section 7.3 (Base Object
> >Considerations).
>
> Suggested text always welcomed.
Actually, I went and looked and no text for this is included in the
older named referral draft that I had in my archive. I remember
talkingamong the authors about adding it but I guess we never did. Here
is a rough algorithm for DN rewriting within ref values when dealing
with base objects:
Case A: If the base DN in the ref value is an ancestor of the
operation's base DN:
Step 1) Replace the base DN in the ref value with the one from the
operation.
E.g., if we have this entry on serverA:
dn: dc=example,dc=com
dc: example
ref: ldap://serverB/dc=example,dc=com
objectClass: referral
objectClass: extensibleObject
and a search operation arrives at serverA with a base of:
uid=mcs,ou=people,dc=example,dc=com
then the referral URI that is returned would be:
ldap://serverB/uid=mcs,ou=people,dc=example,dc=com
Case B: The base DN in the ref value is NOT an ancestor of the
operation's base DN:
Step 1) Start with the operation base DN. Remove the portion on the
right that matches the DN of the entry containing the ref value.
Step 2) Prepend the result of step 1 to the DN that is in the ref value.
E.g., if we have this entry on serverA:
dn: dc=aol,dc=com
dc: aol
ref: ldap://serverB/dc=aoltimewarner,dc=com
objectClass: referral
objectClass: extensibleObject
and a search operation arrives at serverA with a base of:
uid=mcs,ou=people,dc=aol,dc=com
then Step 1 produces:
uid=mcs,ou=people,
and Step 2 produces:
ldap://serverB/uid=mcs,ou=people,dc=aoltimewarner,dc=com
-Mark Smith
Netscape