diff options
author | Simo Sorce <ssorce@redhat.com> | 2011-11-03 13:45:06 -0400 |
---|---|---|
committer | Simo Sorce <ssorce@redhat.com> | 2012-01-11 12:04:15 -0500 |
commit | 4abcbda0a4a8b28c9e8510fb13178ed2e9349137 (patch) | |
tree | 66b5b3f28e2bf907e53c523924fd61bae717300b /daemons | |
parent | f7bb1b8f15899daf6a7be69ba601cb5113d88b07 (diff) | |
download | freeipa.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.c | 7 |
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; } |