[Pkg-openldap-devel] Bug#837341: Bug#837341: libldap fails to connect to ldaps servers without the ca-certificates package installed
Ryan Tandy
ryan at nardis.ca
Tue Sep 13 02:15:57 UTC 2016
Control: tag -1 confirmed
On Sat, Sep 10, 2016 at 09:37:17PM +0300, Tero Marttila wrote:
>The package libldap-2.4-2 ships a default configuration file for
>/etc/ldap/ldap.conf with the following:
>
>>TLS_CACERT /etc/ssl/certs/ca-certificates.crt
>
>It appears that libldap fails to connect to any ldaps servers if the
>ca-certificates.crt file is missing, even if using 'TLS_REQCERT
>allow'. Installing the ca-certificates package allows the connection
>to succeed.
Thanks for the detailed report. Reproduced here, exactly as you said.
Looks like what's happening is gnutls_certificate_set_x509_trust_file()
returns an error, and we bail out straight away. TLS_REQCERT allow does
indeed work as advertised with cert errors during the handshake, but we
never make it to that point.
I don't think redefining TLS_REQCERT to permit this invalid
configuration would be the right thing to do, but there's certainly room
for improved logging here.
>I suspect that the libldap package should have a Depends: on the
>ca-certificates package if this file is required for the correct
>operation of libldap?
I don't think that would be correct, as the library operates just fine
if you comment out that default or point it at your own CA store.
In unstable, it looks like gnutls is now built with a default system
trust store configured, so we may be able to drop that TLS_CACERT
default altogether. I'll look into that.
More information about the Pkg-openldap-devel
mailing list