/* * 9p backend * * Copyright IBM, Corp. 2010 * * Authors: * Anthony Liguori <aliguori@us.ibm.com> * * This work is licensed under the terms of the GNU GPL, version 2. See * the COPYING file in the top-level directory. * */ #include "qemu/osdep.h" #include <glib/gprintf.h> #include <dirent.h> #include <utime.h> #include "9p-marshal.h" P9ARRAY_DEFINE_TYPE(V9fsString, v9fs_string_free); void v9fs_string_free(V9fsString *str) { g_free(str->data); str->data = NULL; str->size = 0; } void G_GNUC_PRINTF(2, 3) v9fs_string_sprintf(V9fsString *str, const char *fmt, ...) { va_list ap; v9fs_string_free(str); va_start(ap, fmt); str->size = g_vasprintf(&str->data, fmt, ap); va_end(ap); } void v9fs_string_copy(V9fsString *lhs, V9fsString *rhs) { v9fs_string_free(lhs); v9fs_string_sprintf(lhs, "%s", rhs->data); }