Hello,
are special characters, especially German umlauts, acceptable in the distinguished name?
I've accidentally discovered that CPAN's Net::LDAP::Entry module doesn't support them (in the distinguished name). Other attributes are escaped correctly.
Thank you in advance.
Chris
Hello,
are special characters, especially German umlauts, acceptable in the distinguished name?
I've accidentally discovered that CPAN's Net::LDAP::Entry module doesn't support them (in the distinguished name). Other attributes are escaped correctly.
Hi Chris,
It depends on how you've formed your DN. What does it look like? Check the objectClass definitions for those attributes and look up the syntax type. That will tell you.
Thanks.
chris_news@arcor.de wrote:
are special characters, especially German umlauts, acceptable in the distinguished name?
If the attribute type used to form the DN component is of DirectoryString syntax there's no problem. Note that DirectoryString means UTF-8 encoded Unicode chars.
I've accidentally discovered that CPAN's Net::LDAP::Entry module doesn't support them (in the distinguished name). Other attributes are escaped correctly.
What exactly leads you to this conclusion?
Ciao, Michael.
Hello Michael,
Von: Michael Ströder michael@stroeder.com
chris_news@arcor.de wrote:
are special characters, especially German umlauts, acceptable in the distinguished name?
If the attribute type used to form the DN component is of DirectoryString syntax there's no problem. Note that DirectoryString means UTF-8 encoded Unicode chars.
yes. The DN is composed of the common name and domain components. The umlauts are part of the common name.
I've accidentally discovered that CPAN's Net::LDAP::Entry module doesn't support them (in the distinguished name). Other attributes are escaped correctly.
What exactly leads you to this conclusion?
I setup the DN with $entry->dn($dn); and generated with write_entry an LDIF-file. The DN wasn't base 64 encoded. I could encode it myself, but then the second colon is still missing. So I probably won't use this library.
- Chris
On Tue, 31 Jul 2012, chris_news@arcor.de wrote:
I've accidentally discovered that CPAN's Net::LDAP::Entry module doesn't support them (in the distinguished name). Other attributes are escaped correctly.
What exactly leads you to this conclusion?
I setup the DN with $entry->dn($dn); and generated with write_entry an LDIF-file. The DN wasn't base 64 encoded. I could encode it myself, but then the second colon is still missing. So I probably won't use this library.
Or, you could submit the one line fix to have Net::LDAP::LDIF->new($file, $mode, { encode => 'canonical' })
pass "{ mbcescape => 1 }" to canonical_dn().
(Some might also consider it a bug that Net::LDAP::LDIF doesn't default to RFC conforming output but rather requires you to explicitly request it.)
Philip Guenther
On Sun, Jul 29, 2012 at 11:16 AM, chris_news@arcor.de wrote:
are special characters, especially German umlauts, acceptable in the distinguished name? I've accidentally discovered that CPAN's Net::LDAP::Entry module doesn't support them (in the distinguished name). Other attributes are escaped correctly.
Michael is right here. Most LDAP servers store information in UTF-8 format. So, as long as your client sends the query in UTF-8 format, you will get the answer from the server. Not a problem at all.
openldap-technical@openldap.org