summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/common/ldb_dn.c
diff options
context:
space:
mode:
authorVolker Lendecke <vlendec@samba.org>2006-10-04 20:15:23 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 14:20:33 -0500
commitc56585e5fecb409524607a00dbe5b6e6a956b895 (patch)
tree596282ce4e76ab35f2c188a372f741708a951dfc /source4/lib/ldb/common/ldb_dn.c
parent9bbc8736e75c7c632b7d274b1f189caf44e78893 (diff)
downloadsamba-c56585e5fecb409524607a00dbe5b6e6a956b895.tar.gz
samba-c56585e5fecb409524607a00dbe5b6e6a956b895.tar.bz2
samba-c56585e5fecb409524607a00dbe5b6e6a956b895.zip
r19075: Fix a potential NULL dereference
(This used to be commit 84ae80b39bfa49fe7f9fa801d45a79bf04df8aff)
Diffstat (limited to 'source4/lib/ldb/common/ldb_dn.c')
-rw-r--r--source4/lib/ldb/common/ldb_dn.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/source4/lib/ldb/common/ldb_dn.c b/source4/lib/ldb/common/ldb_dn.c
index 204dd3b462..a52569119f 100644
--- a/source4/lib/ldb/common/ldb_dn.c
+++ b/source4/lib/ldb/common/ldb_dn.c
@@ -674,6 +674,7 @@ static struct ldb_dn_component ldb_dn_copy_component(void *mem_ctx, struct ldb_d
dst.name = talloc_strdup(mem_ctx, src->name);
if (dst.name == NULL) {
talloc_free(dst.value.data);
+ dst.value.data = NULL;
}
return dst;
@@ -826,6 +827,9 @@ struct ldb_dn *ldb_dn_compose(void *mem_ctx, const struct ldb_dn *dn1, const str
for (i = 0; i < dn1->comp_num; i++) {
newdn->components[i] = ldb_dn_copy_component(newdn->components,
&(dn1->components[i]));
+ if (newdn->components[i].value.data == NULL) {
+ goto failed;
+ }
}
return newdn;