Greetings.

Should I be able to discover the (default) locations of SSL certificates, via 
the libldap library?

This can be useful when debugging why cert checks are failing -- where is the 
library checking? (am I using the library I think I am...?!)  Of course dtruss 
and co can help here.

ldap_get_option with LDAP_OPT_X_TLS_CACERTDIR (and friends) looks like it 
should say this, but when I explore that, it appears to show only settings 
added with ldap_set_option, thus only settings overriding a default.  And this 
appears to be confirmed in libraries/libldap/tls_o.c:tlso_ctx_init.  That 
function hands over to SSL functions, and while in principle I could retrieve a 
TLS session context with LDAP_OPT_X_TLS_{,SSL_}CTX, there are clear warnings 
that I shouldn't be tinkering with this.  The fact that I'm this deep in the 
code suggests that either (a) this is not supported, or (b) I'm looking in the 
wrong place.

I could in principle use functions from the OpenSSL library, like 
X509_get_default_cert_dir_env(), but that requires me to know which SSL library 
the libldap library was linked against (and that it was indeed OpenSSL), which 
has its own complications.  Also, if I'm confident I know that, I have other 
ways to confirm the cert directory.

Best wishes,

Norman


-- 
Norman Gray  :  https://nxg.me.uk

Reply via email to