diff options
Diffstat (limited to 'source/tdb')
-rw-r--r-- | source/tdb/tdbutil.c | 12 | ||||
-rw-r--r-- | source/tdb/tdbutil.h | 2 |
2 files changed, 6 insertions, 8 deletions
diff --git a/source/tdb/tdbutil.c b/source/tdb/tdbutil.c index b946f856aad..21d593a26a9 100644 --- a/source/tdb/tdbutil.c +++ b/source/tdb/tdbutil.c @@ -505,9 +505,10 @@ size_t tdb_pack(char *buf, int bufsize, const char *fmt, ...) return result; } -BOOL tdb_pack_append(TALLOC_CTX *mem_ctx, uint8 **buf, size_t *len, +BOOL tdb_pack_append(void *_mem_ctx, char **buf, size_t *len, const char *fmt, ...) { + TALLOC_CTX *mem_ctx = (void *)_mem_ctx; va_list ap; size_t len1, len2; @@ -515,13 +516,8 @@ BOOL tdb_pack_append(TALLOC_CTX *mem_ctx, uint8 **buf, size_t *len, len1 = tdb_pack_va(NULL, 0, fmt, ap); va_end(ap); - if (mem_ctx != NULL) { - *buf = TALLOC_REALLOC_ARRAY(mem_ctx, *buf, uint8, - (*len) + len1); - } else { - *buf = SMB_REALLOC_ARRAY(*buf, uint8, (*len) + len1); - } - + *buf = TALLOC_REALLOC_ARRAY(mem_ctx, *buf, char, + (*len) + len1); if (*buf == NULL) { return False; } diff --git a/source/tdb/tdbutil.h b/source/tdb/tdbutil.h index 44351619f45..60107adacbb 100644 --- a/source/tdb/tdbutil.h +++ b/source/tdb/tdbutil.h @@ -54,6 +54,8 @@ struct tdb_context *tdb_open_log(const char *name, int hash_size, int tdb_flags, int open_flags, mode_t mode); int tdb_unpack(char *buf, int bufsize, const char *fmt, ...); size_t tdb_pack(char *buf, int bufsize, const char *fmt, ...); +BOOL tdb_pack_append(void *_mem_ctx, char **buf, size_t *len, + const char *fmt, ...); TDB_DATA make_tdb_data(const char *dptr, size_t dsize); TDB_DATA string_tdb_data(const char *string); int tdb_trans_store(struct tdb_context *tdb, TDB_DATA key, TDB_DATA dbuf, |