summaryrefslogtreecommitdiffstats
path: root/daemons
diff options
context:
space:
mode:
authorSimo Sorce <ssorce@redhat.com>2011-11-03 13:45:06 -0400
committerSimo Sorce <ssorce@redhat.com>2012-01-11 12:04:15 -0500
commit4abcbda0a4a8b28c9e8510fb13178ed2e9349137 (patch)
tree66b5b3f28e2bf907e53c523924fd61bae717300b /daemons
parentf7bb1b8f15899daf6a7be69ba601cb5113d88b07 (diff)
downloadfreeipa.git-4abcbda0a4a8b28c9e8510fb13178ed2e9349137.tar.gz
freeipa.git-4abcbda0a4a8b28c9e8510fb13178ed2e9349137.tar.xz
freeipa.git-4abcbda0a4a8b28c9e8510fb13178ed2e9349137.zip
Fix CID 11022: Resource leak
https://fedorahosted.org/freeipa/ticket/2037
Diffstat (limited to 'daemons')
-rw-r--r--daemons/ipa-kdb/ipa_kdb_principals.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/daemons/ipa-kdb/ipa_kdb_principals.c b/daemons/ipa-kdb/ipa_kdb_principals.c
index fdd834f3..117eea86 100644
--- a/daemons/ipa-kdb/ipa_kdb_principals.c
+++ b/daemons/ipa-kdb/ipa_kdb_principals.c
@@ -1571,6 +1571,7 @@ static krb5_error_code ipadb_entry_to_mods(krb5_context kcontext,
char **new_history;
int nh_len;
int ret;
+ int i;
ied = (struct ipadb_e_data *)entry->e_data;
if (ied->magic != IPA_E_DATA_MAGIC) {
@@ -1619,6 +1620,12 @@ static krb5_error_code ipadb_entry_to_mods(krb5_context kcontext,
kerr = ipadb_get_ldap_mod_str_list(imods, "passwordHistory",
new_history, nh_len, mod_op);
+
+ for (i = 0; i < nh_len; i++) {
+ free(new_history[i]);
+ }
+ free(new_history);
+
if (kerr) {
goto done;
}