Cool we just need to look into all this business of what to do when we don't
have a valid SUBSTR matchingRule when we have time. You're absolutely
right about DN not being a string. It's just shocking that LDAP ran into this
catch 22 since static groups are driven by DNs: one just expects it to work.
I just fixed the potential NPE which occurs in certain cases (for
instance, when you have a 0 count for a node : the matching rule was
null, but was not assumed to be null, when the MR was transformed to
Equality if there is more than one element. Now, when you get a null,
the Equality is used in any case).
Tests are passing just OK, without modification.
On 10/8/07, Alex Karasulu <firstname.lastname@example.org> wrote:
> Sounds good to me. However let's let this one sit in the head for a while
> since it has
> potentially wide reaching effects. It effects the semantics of search and
> there are several
> things that I cannot easily foresee. So I want to think about this one a
> little bit.
> On 10/8/07, Emmanuel Lecharny <email@example.com> wrote:
> > After investigation, the problem is a little bit more complex than
> > what I just described.
> > We have done some tests with Studio, and here is what we found :
> > - if you define an attributeType _without_ any matching rule, then you
> > should have a problem. As we cannot use an identity MR (because none
> > has been defined), you will get a NPE at some point, unless we define
> > the filter as undefined.
> > - I have fixed many places in the server where we didn't replaced a
> > missing Substring MR by the identity MR. I will commit those fixes
> > after integration tests.
> > - Now, some users want to do searches using filters like
> > (uniqueMember=uid=g.kelly*). Of course, we can say that it should
> > return nothing, as the filter is undefined, but I find this a little
> > bit too tight. What if we simply use th equality MR in this case ?
> > I would say that if we don't have Substring MR, we should use Equality
> > MR, and if we don't have Equality MR, then we should simply consider
> > the filter as undefined. This could be done during the filter parsing,
> > instead of doing it during the filter evaluation.
> > wdyt ?
> > --
> > Regards,
> > Cordialement,
> > Emmanuel Lécharny
> > www.iktek.com