aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/kdb/ldap/libkdb_ldap/ldap_pwd_policy.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/kdb/ldap/libkdb_ldap/ldap_pwd_policy.c')
-rw-r--r--src/plugins/kdb/ldap/libkdb_ldap/ldap_pwd_policy.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/plugins/kdb/ldap/libkdb_ldap/ldap_pwd_policy.c b/src/plugins/kdb/ldap/libkdb_ldap/ldap_pwd_policy.c
index 4d7d673..522773e 100644
--- a/src/plugins/kdb/ldap/libkdb_ldap/ldap_pwd_policy.c
+++ b/src/plugins/kdb/ldap/libkdb_ldap/ldap_pwd_policy.c
@@ -452,15 +452,17 @@ krb5_ldap_iterate_password_policy(krb5_context context, char *match_expr,
goto cleanup;
(*func)(func_arg, entry);
- /* XXX this will free policy so don't free it */
krb5_ldap_free_password_policy(context, entry);
entry = NULL;
+
+ free(policy);
+ policy = NULL;
}
- ldap_msgfree(result);
cleanup:
free(entry);
-
+ free(policy);
+ ldap_msgfree(result);
krb5_ldap_put_handle_to_pool(ldap_context, ldap_server_handle);
return st;
}
@@ -472,6 +474,7 @@ krb5_ldap_free_password_policy (context, entry)
{
if (entry) {
free(entry->name);
+ free(entry->allowed_keysalts);
free(entry);
}
return;