There appears to be a bug in Net::LDAP::Bind, with regards to how it passes
server SASL credentials on to the relevant routines. Both the hash, and
the entry in the hash appear to be wrong.
Currently, $result->{saslCred} is used. I believe this should be replaced with
either
$bind->{serverSaslCreds} or
$result->{protocolOp}{bindResponse}{serverSaslCreds}
The attached patch fixes this, I've tested it with a GSSAPI based
Authen::SASL module to successfully authenticate against OpenLDAP 2.0.7.
Cheers,
Simon
|