[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: ldap_str2dn etc.
"Kurt D. Zeilenga" wrote:
> >I strip quotes from quoted
> >values; as a consequence I need to escape chars that need it
> >(according to RFC 1779). I've a small doubt: in a quoted
> >attribute only double quotes need be escaped (among printable
> >chars); so if I find an escape not followed by a quote do I
> >need to consider it a normal char (and thus escape it while
> >eliminating quotes)? According to rfc 1779, a quoted string
> >can contain what is called a PAIR. Example:
> >
> >'","' => '\,' OK
> >'"\,"' => '\,' OK
>
> I guess I don't understand the question (I haven't finished
> my morning cold carbonated caffeine yet:-). But let me see
> if I can clarify.
>
> In parsing a string representation of a value, that string
> may be quoted or may be escaped. In either case, the value
> is the unquoted/unescaped value and that's what stored in
> la_value.
>
> In generating a string representation, the value (la_value)
> may contain characters which require quoting and/or escaping.
> I suggest that here that only escaping be used. Hence,
>
> dn2str(str2dn(cn="foo,bar")) returns cn=foo\,bar
All the points seem to be clarified enough; here I mean:
from rfc 1779 it seems that "\," should be interpreted
as a single comma despite of the quotes:
dn2str(str2dn(cn="foo\,bar")) returns cn=foo\,bar
while an interpretation that seems reasonable to me is that
quotes should deactivate backslashes (except when escaping
commas), so that "\," results in a backslash and a comma:
dn2str(str2dn(cn="foo\,bar")) returns cn=foo\\\,bar
Pierangelo.
--
Dr. Pierangelo Masarati | voice: +39 02 2399 8309
Dip. Ing. Aerospaziale | fax: +39 02 2399 8334
Politecnico di Milano | mailto:masarati@aero.polimi.it
via La Masa 34, 20156 Milano, Italy |
http://www.aero.polimi.it/~masarati