From: Chris R. <chr...@me...> - 2001-06-07 09:55:13
|
Graham Barr <gb...@po...> wrote: > ----- Forwarded message from "\"M?ller, Axel\"" <Axe...@gf...> > ----- > = > Date: Thu, 7 Jun 2001 10:44:37 +0200 = > To: "'gb...@po...'" <gb...@po...> > From: "M?ller, Axel" <Axe...@gf...> > Subject: ldap > X-Mailer: Internet Mail Service (5.5.2653.19) > = > Hello, > = > excuse me please. > We use your LDAP module to connect to a Microsoft Exchange Server Version > 5.5. > = > But we get bad Values return. > = > Each german letter "=E4=C4=F6=D6=FC=DC=DF" will be replaced with = "aAoOuU?". > = > Do you know, where we must change your Source-Code to solve this problem = ? > = > with kindly regards = > = > Axel M=FCller > Technik und Netze It may not be a problem with Net::LDAP. Net::LDAP doesn't know anything about the character set you used in your string value, and it doesn't know anything about the character set used by the directory server. It simply sends the bytes in your value to the directory server. You need to work out what character set your server is expecting. If it is an LDAPv3 server (and you are binding with version=3D>3 in Net::LDAP) then your string should contain the characters encoded using UTF-8. If it is an LDAPv2 server, then you need to work out how non-standard it is. The standard LDAPv2 character set is called T.61, but the server may not understand this. In T.61 you add accents to characters by putting an extra byte (a non-spacing diacritical) in front of the character. Some common accents = are: umlaut over letter =3D> \xc8 grave accent over letter =3D> \xc1 acute accent over letter =3D> \xc2 (eg =E4 becomes \xc8a) If that doesn't work with Exchange, Exchange is not handling T.61 correctly (ie it is a bug in Exchange.) I'm not sure how to obtain the "=DF". You should try binding using LDAPv3 and using UTF-8 in your string values, it is a lot easier. Cheers, Chris |