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

Filter/result rewriting in back-ldap/meta

Last weekend I zapped the filter mapping/rewrite
code and replaced it with more robust and (hopefully)
efficient code.  I suggest advanced users
of back-ldap/meta to test HEAD code.

I also cleaned up the result mapping/rewrite code.
There was a logical bug that caused wrong results
or even crashes if certain sequences of objectclasses
were renamed to illegal, empty or nonexistent values;
moreover, I added the possibility to strip unwanted
DN-valued results based on the DN by adding "unwilling"
regexps, e.g.

rewriteContext searchResult
rewriteRule "(.*)dc=my,dc=org" "%1dc=example,dc=com" "@"
rewriteRule "(.*)dc=your,dc=org" "" "#"

where the first rewriteRule maps "dc=my,dc=org" based
DN-valued results into "dc=example,dc=com", and the "@"
flag means stop processing rules in case of match; the
second intercepts "dc=your,dc=org" based Dn-valued results
and the flag "#" causes the VALUE to be discarded.

This can be useful to clean up, e.g. member namespace from
those members that are meaningless when they get renamed.

Please use the ITS to notify any inconvenience related
to this code change.


Pierangelo Masarati