[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: URL dn part [revised]
"Kurt D. Zeilenga" wrote:
>
> [rewritten for clarity, please ignore previous version]
>
> As previously discussed,
> ldap://host
> ldap://host/
>
> should be viewed as equivalent. While the section 4 statement
> If no dn is given, the default is the zero-length DN, ""
>
> is clear that the DN is optional, the ANBF:
>
> ldapurl = scheme "://" [hostport] ["/"
> [dn ["?" [attributes] ["?" [scope]
> ["?" [filter] ["?" extensions]]]]]]
>
> is somewhat ambiguous. The URL:
> ldap://host/
>
> can be parsed as dn absent OR dn present but empty. The fact
> that the grammar also allows
> ldap://host
>
> implies that this distinction is somehow important.
>
> This ambiguity could be removed with:
> ldapurl = scheme "://" [hostport] ["/" dn
> ["?" [attributes] ["?" [scope]
> ["?" [filter] ["?" extensions]]]]]]
>
> That is, ldap::/// can only be parsed as having a present
> but empty dn part. I prefer this ABNF production as
> it appears to handle optional features more consistently.
I agree. Any objections? I will make this change to the document
unless someone objects.
> To provide additional clarity, I also suggest adding an
> additional example:
>
> The following URLs are equivalent:
> ldap://ldap.example.net
> ldap://ldap.example.net/
> ldap://ldap.example.net/?
>
> Each refers to the Root DSE on the ldap.example.net server.
I am sure you know that these URLs are not equivalent when interpreted
as LDAP referrals because the first one does not include a DN (per
section 4.1.11 of 2251). But I will add these examples and a note that
they are all equivalent if the defaulting rules described in section 4
of the URL document are used.
Thanks for the suggestions. I plan to submit a revised I-D today.
-Mark Smith
Netscape