summaryrefslogtreecommitdiff
path: root/source4/dsdb/samdb
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2005-01-06 03:06:58 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:08:25 -0500
commitddc10d4d37984246a6547e34a32d629c689c40d1 (patch)
treebba9f8756de8fe38a6926edd0802aeff25abe0cf /source4/dsdb/samdb
parent0b54d9236fad72527ed1bcf4236767a09090d304 (diff)
downloadsamba-ddc10d4d37984246a6547e34a32d629c689c40d1.tar.gz
samba-ddc10d4d37984246a6547e34a32d629c689c40d1.tar.bz2
samba-ddc10d4d37984246a6547e34a32d629c689c40d1.zip
r4549: got rid of a lot more uses of plain talloc(), instead using
talloc_size() or talloc_array_p() where appropriate. also fixed a memory leak in pvfs_copy_file() (failed to free a memory context) (This used to be commit 89b74b53546e1570b11b3702f40bee58aed8c503)
Diffstat (limited to 'source4/dsdb/samdb')
-rw-r--r--source4/dsdb/samdb/samdb.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/source4/dsdb/samdb/samdb.c b/source4/dsdb/samdb/samdb.c
index 9a677249eb..d84d07fca6 100644
--- a/source4/dsdb/samdb/samdb.c
+++ b/source4/dsdb/samdb/samdb.c
@@ -841,12 +841,11 @@ int samdb_msg_add_hash(void *ctx, TALLOC_CTX *mem_ctx, struct ldb_message *msg,
{
struct ldb_wrap *sam_ctx = ctx;
struct ldb_val val;
- val.data = talloc(mem_ctx, 16);
- val.length = 16;
+ val.data = talloc_memdup(mem_ctx, hash.hash, 16);
if (!val.data) {
return -1;
}
- memcpy(val.data, hash.hash, 16);
+ val.length = 16;
return ldb_msg_add_value(sam_ctx->ldb, msg, attr_name, &val);
}
@@ -859,7 +858,7 @@ int samdb_msg_add_hashes(void *ctx, TALLOC_CTX *mem_ctx, struct ldb_message *msg
struct ldb_wrap *sam_ctx = ctx;
struct ldb_val val;
int i;
- val.data = talloc(mem_ctx, count*16);
+ val.data = talloc_array(mem_ctx, 16, count, __location__);
val.length = count*16;
if (!val.data) {
return -1;