summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/lib/data_blob.c13
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;
+}