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

LDAPprep: mapping of " " values



Steven suggested that changing LDAPprep such that string
comprising only of whitespace would be mapped to "" instead
of " ".  I believe a poor approach for a number reasons.

While it can be argued (as Steven has) that such mapping
may make some assertions more intuitive, I argue that such
mapping will make various assertions less intuitive.

More importantly, the assertion (l=* *), which says "match a
significant space in values of l", would no longer behave
properly.  The " " ANY string would be mapped to "", leading
to (l=* *) matching any value instead of only those values
which contained a significant space.  This would likely
break a number of applications.

It's my view that the assertion (l= *) says  "match a
significant leading space in values of l".  These assertions
intuitively should only match strings which are all whitespace,
as leading whitespace is otherwise insignificant.  Likewise
for (l=* ).  Note that this behavior is actually useful.  One
can assert (!(l= *)) to match all values which are not
all whitespace.  Having (l= * * ) behave like (l=*)
substracts value (and likely will break applications, see
above).

Additionally, I believe it important that all outputs of
LDAPprep would not be valid per the syntax of the input.
If this is not so, then implementations must be very
careful not to apply LDAPprep to the output of LDAPprep.
Also, LDAPprep could not be used as a canonicalization
function if we were to adopt this mapping.

Kurt