ldap_errno = ldap_get_option(NULL, LDAP_OPT_API_INFO, &info);
if (ldap_errno == LDAP_OPT_SUCCESS) {
+ int i;
+
/*
* Don't generate warnings if the compile type vendor name
* is found within the link time vendor name.
INFO("rlm_ldap: libldap vendor: %s, version: %i", info.ldapai_vendor_name,
info.ldapai_vendor_version);
- ldap_memfree(info.ldapai_vendor_name);
+ for ( i = 0; info.ldapai_extensions[i] != NULL; i++) {
+ ldap_memfree(info.ldapai_extensions[i]);
+ }
ldap_memfree(info.ldapai_extensions);
+ ldap_memfree(info.ldapai_vendor_name);
} else {
DEBUG("rlm_ldap: Falling back to build time libldap version info. Query for LDAP_OPT_API_INFO "
"returned: %i", ldap_errno);
/*
* Now iterate over all the 'server' config items
*/
+ if (!inst->server) inst->server = talloc_strdup(inst, "");
for (cp = cf_pair_find(conf, "server");
cp;
cp = cf_pair_find_next(conf, cp, "server")) {