@@ -141,6 +141,7 @@ void *qemu_realloc(void *ptr, size_t size);
void *qemu_mallocz(size_t size);
void qemu_free(void *ptr);
char *qemu_strdup(const char *str);
+void *qemu_memdup(const void *str, size_t size);
char *qemu_strndup(const char *str, size_t size);
void *get_mmap_addr(unsigned long size);
@@ -70,6 +70,14 @@ void *qemu_mallocz(size_t size)
return ptr;
}
+void *qemu_memdup(const void *str, size_t n)
+{
+ char *ptr;
+ ptr = qemu_malloc(n);
+ memcpy(ptr, str, n);
+ return ptr;
+}
+
char *qemu_strdup(const char *str)
{
char *ptr;
A nice-to-have utility function, it helps avoiding useless strlen+strdup pairs. Cc: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- qemu-common.h | 1 + qemu-malloc.c | 8 ++++++++ 2 files changed, 9 insertions(+), 0 deletions(-)