I'm using the openldap c client library (2.4.45).

I would like to somehow have two client instances (not necessarily simultaneously) within the same application, but I'm having issues with the second instance I create.

I have not found a way to clear the global options so the new ones (different ca cerficiate, different client certificate) can be used with the second instance. With the second ldap_initialize, global options are already initialized. Same with the TLS context, it's initialized too.

I have seen that the function that destroys the global options is called only when the program exits, or the dyn library is unloaded. Is this correct? Is this somehow a limitation of the library?

Thank you,