git.samba.org
/
sfrench
/
samba-autobuild
/
.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
84033c2
)
r12035: Fix memory leaks in the KDC.
author
Andrew Bartlett
<abartlet@samba.org>
Fri, 2 Dec 2005 22:37:07 +0000
(22:37 +0000)
committer
Gerald (Jerry) Carter
<jerry@samba.org>
Wed, 10 Oct 2007 18:47:01 +0000
(13:47 -0500)
Andrew Bartlett
(This used to be commit
b60531b109cf9539a9d58d46436f397346352cee
)
source4/kdc/hdb-ldb.c
patch
|
blob
|
history
diff --git
a/source4/kdc/hdb-ldb.c
b/source4/kdc/hdb-ldb.c
index 5820ba1330a696cdf5edb61a275a17a48565bb13..8d9517e827880c3fcef6955afbdc28dd66b98a06 100644
(file)
--- a/
source4/kdc/hdb-ldb.c
+++ b/
source4/kdc/hdb-ldb.c
@@
-704,6
+704,7
@@
static krb5_error_code LDB_fetch_ex(krb5_context context, HDB *db, unsigned flag
nt_status = sam_get_results_principal((struct ldb_context *)db->hdb_db,
mem_ctx, principal_string,
&msg, &realm_ref_msg);
nt_status = sam_get_results_principal((struct ldb_context *)db->hdb_db,
mem_ctx, principal_string,
&msg, &realm_ref_msg);
+ free(principal_string);
if (NT_STATUS_EQUAL(nt_status, NT_STATUS_NO_SUCH_USER)) {
return HDB_ERR_NOENTRY;
} else if (NT_STATUS_EQUAL(nt_status, NT_STATUS_NO_MEMORY)) {
if (NT_STATUS_EQUAL(nt_status, NT_STATUS_NO_SUCH_USER)) {
return HDB_ERR_NOENTRY;
} else if (NT_STATUS_EQUAL(nt_status, NT_STATUS_NO_MEMORY)) {
@@
-785,6
+786,7
@@
static krb5_error_code LDB_fetch_ex(krb5_context context, HDB *db, unsigned flag
mem_ctx, user_dn, &msg, krb5_attrs);
if (ldb_ret != 1) {
mem_ctx, user_dn, &msg, krb5_attrs);
if (ldb_ret != 1) {
+ talloc_free(mem_ctx);
return HDB_ERR_NOENTRY;
}
return HDB_ERR_NOENTRY;
}
@@
-793,6
+795,7
@@
static krb5_error_code LDB_fetch_ex(krb5_context context, HDB *db, unsigned flag
"ncName=%s", ldb_dn_linearize(mem_ctx, domain_dn));
if (ldb_ret != 1) {
"ncName=%s", ldb_dn_linearize(mem_ctx, domain_dn));
if (ldb_ret != 1) {
+ talloc_free(mem_ctx);
return HDB_ERR_NOENTRY;
}
return HDB_ERR_NOENTRY;
}