On 30 Nov 2007, at 17:37, Michael Chiles wrote:

Perl LDAP Folk,

      Tracking down an issue with a business process,  I've run into a
problem with an audit using Net::LDAP. There are some string attributes in
one of our LDAP servers that were written to the directory as base 64
encoded strings. The strings in question have a trailing space ( which
caused the input system to encode them as base64 ). Fixed the input
problem,  but trying to use Net::LDAP to locate these attributes has
failed,  as the base64 decoding of the string appears to result in the
trailing space being removed. When I call get_value method on an entry
object, none of them have the trailing string.

I verified the results using openldap seaches to confirm the data I'm
seeing does have a trailing space in the directory.

Does anyone have suggestions on how to address this using Net::LDAP?
Is this a bug?


I've not seen Net::LDAP do this before.

Are the values being sent over the network actually base-64-encoded strings, or are they just getting encoded as base-64 when your client app is displaying them?

To see what Net::LDAP's actually sending/receiving over the network, call $ldap->debug(12) and all subsequent packets will be dumped to stderr. The perldoc for Net::LDAP explains why "12" is used.

Cheers,

Chris

Reply via email to