On Fri, Feb 05, 2021 at 07:47:46PM +0100, Benoit Branciard wrote:
> Le 05/02/2021 à 16:53, Wietse Venema a écrit :
> >
> > All Postfix table-driven mechanisms will case-fold the search key
> > except when they use pcre, regexp, or tcp_table.
>
> This sounds like a acceptable choice for *matching* purpose (although
> incidentally this prohibits use of case-sensitive LHS in e-mail
> addresses), but *retention* is another point.
>
> Why not having the case folded for table lookup, but retaining the
> unfolded version for result_format ?
Because that's just how the table machinery was constructed, and the
"%S" syntax is a special feature of just the more complex database
backends. Because LDAP has built-in matching rules, it is indeed
perhaps reasonable to not case-fold (some) LDAP lookup keys.
As a safety measure, this would have to be a map by map optional
setting. I am not 100% sure that all LDAP lookups would necessarily
be using lookup keys with case-insensitive matching rules. For example,
maps that query accounts by "uid", might need case folding, because the
"uid" namespace might be case-sensitive, but for email we generally
allow case-insensitive addressing.
The feature to conditionally suppress case folding for some LDAP maps
has not been implemented. Care to contribute a patch?
src/global/dict_ldap.c
--
Viktor.