I seem unable to find any combination of Authen::SASL::Cyrus and Net::LDAP that work together. After googling around the net for several days it seems this is a fairly common problem.
Can we work through this, I can't imagine that it's that big of a problem. I just don't have enough knowledge of sasl and perl XS to fix it myself.
That is a correct observation. The quick (but not satisfactory) fix is to disable channel bindings by commenting out the following lines in Net/LDAP.pm
# Tell SASL the local and server IP addresses
$sasl_conn->property(
sockname => $ldap->{net_ldap_socket}->sockname,
peername => $ldap->{net_ldap_socket}->peername,
);The problem lies with Authen::SASL::Cyrus which does not correctly set the sockname and peername - they are treated as strings and not as in_addrs
MVH leifj
