ldb: use ldb_msg_new(), not talloc/talloc_zero
authorDouglas Bagnall <douglas.bagnall@catalyst.net.nz>
Sat, 6 Apr 2019 00:55:06 +0000 (13:55 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Fri, 10 May 2019 01:15:17 +0000 (01:15 +0000)
ldb_msg_new() is currently the same as talloc_zero(), but it might
not always be.

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
lib/ldb/common/ldb_ldif.c
lib/ldb/tools/ldbdump.c

index 2bd02663f098a07995d14041304ed99d7dec9e05..c2f1cb7c9702b836789acd910da44c2350bf43d5 100644 (file)
@@ -772,7 +772,7 @@ struct ldb_ldif *ldb_ldif_read(struct ldb_context *ldb,
        ldif = talloc(ldb, struct ldb_ldif);
        if (!ldif) return NULL;
 
-       ldif->msg = talloc(ldif, struct ldb_message);
+       ldif->msg = ldb_msg_new(ldif);
        if (ldif->msg == NULL) {
                talloc_free(ldif);
                return NULL;
@@ -781,10 +781,6 @@ struct ldb_ldif *ldb_ldif_read(struct ldb_context *ldb,
        ldif->changetype = LDB_CHANGETYPE_NONE;
        msg = ldif->msg;
 
-       msg->dn = NULL;
-       msg->elements = NULL;
-       msg->num_elements = 0;
-
        chunk = next_chunk(ldb, ldif, fgetc_fn, private_data);
        if (!chunk) {
                goto failed;
index a466e4916dbf7cd0ade513bb14c8c4a500944126..eb237e89b4405f3fd43acffd1a38be36f86f8507 100644 (file)
@@ -40,7 +40,7 @@ static int traverse_fn(TDB_CONTEXT *tdb, TDB_DATA key, TDB_DATA _dbuf, void *sta
 {
        int ret, i, j;
        struct ldb_dn *dn = state;
-       struct ldb_message *msg = talloc_zero(NULL, struct ldb_message);
+       struct ldb_message *msg = ldb_msg_new(NULL);
        struct ldb_val dbuf = {
                .data = _dbuf.dptr,
                .length = _dbuf.dsize,