diff options
Diffstat (limited to 'source4/lib')
-rw-r--r-- | source4/lib/data_blob.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/source4/lib/data_blob.c b/source4/lib/data_blob.c index 2ec21717b1..049210e8ee 100644 --- a/source4/lib/data_blob.c +++ b/source4/lib/data_blob.c @@ -180,3 +180,16 @@ DATA_BLOB data_blob_const(const void *p, size_t length) blob.length = length; return blob; } + + +/* + append some data to a data blob +*/ +NTSTATUS data_blob_append(TALLOC_CTX *mem_ctx, DATA_BLOB *blob, void *p, size_t length) +{ + blob->data = talloc_realloc_size(mem_ctx, blob->data, blob->length + length); + NT_STATUS_HAVE_NO_MEMORY(blob->data); + memcpy(blob->data + blob->length, p, length); + blob->length += length; + return NT_STATUS_OK; +} |