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

Re: 'quote-insensitive' search



It's not a bad solution, although you only have to keep the true value first. With JNDI you'll get by default the first value(unless you call getAll()).
Perhaps the other approach is a bit better because it shows the trick only for searches.


Thanks!


dta good solution, but has

Tony Earnshaw wrote:

man, 01.12.2003 kl. 17.22 skrev Hallvard B Furuseth:



Is there any way to make 'enhanced searches' that allows not only ignore case, but also quoted characters as vocals, so I can find names that include á, é, ü, etc.? For example, find 'López' searching (sn=lopez).


Sorry, no.  What you can do is to store the unaccented version of
the name invisibly in the directory, as follows:

Put this in slapd.conf:

   # Subtypes of "name" (e.g. "cn" and "ou") with the
   # option ";x-hidden" can be searched for/compared,
   # but are not shown.  See slapd.access(5).
   attributeoptions x-hidden lang-
   access to attr=name;x-hidden by * search

Then store this in the directory:

   ...
   sn: López
   sn;x-hidden: Lopez
   ...

Now the filter (sn=lopez) will match 'sn;x-hidden: Lopez', but thanks to
the 'access' directive above, that value won't be returned from the



Could be that I'm misunderstanding all of this, but my method is the other way around.

I have a posixAccount user cn=Gøran (dunno how this will look on the
list, but that's G'oslash'ran). I put him in as cn=Goran, but since cn
is a multi-value attribute I also put him in as cn=Gøran (same record).
Now ldapsearch works either for Goran or Gøran. The ldif looks like:

dn: cn=Goran,ou=people,ou=groups,dc=billy,dc=demon,dc=nl
[...]
cn: Goran
cn:: R8O4cmFu
[...]

His mail *has* to be goran@ to make him rfc-compliant.

This is using GQ as GUI, by the way.

--Tonni