[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Enhancement to implement V3 Referral / SearchReferenceHandling (ITS#546)


Several questions about this patch and referral support in general.

1) What functionality does exactly this patch add? Brief examination of patch makes me think that it has something to do with following referrals on server side (not returning them to clients, but querying referred servers transparently). Is is so, or maybe something more? If not - what is it?

2) Is there some document (rfc or draft or whatever) it is based on?

3) Has it something to do with "draft-ietf-ldapext-namedref-xx.txt" I found in OpenLDAP's docs subdirectory?
I'm not clear what ways of defining (storing) references are recognized by LDAP servers and OpenLDAP particularly. The document I menioned above defines
"ref" attribute, which is suggested to be used in several following ways (described briefly):

- when doing "base search" (retrieval of particular object): if entry is present, and contains "ref" attribute, return referral (unless manageDsaIT set), if entry is absent,
 try to find "ref" attribute in superior entries (remove rdn and  search untill entry with "ref" present or root is reached), then return referral, or global (config-file) referral, or error
- when doing onelevel or subtree search: return referrals for each object containing "ref" attribute and matching filter, along with entries

Which of these are supported in OpenLDAP? How are they supported (primarily - is there some frontend support, or it is all left to backends)?
Is this a most recent document on this matter? If not - where is updated document?

I am going to implement all of these ways in my back-sql (since I need this functionality anyway), and willing to make it in conformance to standards, if they exist at all... Also, consider developing of some frontend support for this, to make implementation in other backends simplier.

4)Also, there is some statement about "referral" objectclass in that document, which constraints that those "ref" attributes only can be found in "referral" objects.
I'm not very clear about subclassing and things (BTW, where could I learn more about it?), so it seems to me that such constraint would render "ref" almost completely USELESS (since I cannot add it to any entry I want), especially for base search! If I am wrong - please explain, why...

Anyway, in case of back-sql, there can be no subclassing at all, so I'm going to support "ref" automatically in any objectclass...

Again, brief examination of OpenLDAP sources makes me think that referrals are returned only if objectclass is "referral", and "base search" logic is absent.
And support for referrals consist of is_entry_referral() macro and get_entry_referrals() function...
Am I right? If not - what is true situation?

Any information on these questions is appreciated, because it will save me lots of time looking into sources and RFCs and things... :)

WBW, Dmitry

"Kurt D. Zeilenga" wrote:

> Developers, please review and provide technical comments to this
> list. Thanks!
> Kurt
> At 03:55 PM 5/24/00 -0600, Steve Sonntag wrote:
> >>>>
> Full_Name: Steven Sonntag
> Here is the patch for the implementation of V3 referrals.