virDomainDefPtr *def)
{
int ret = -1;
- char *domain_filename = NULL;
+ g_autofree char *domain_filename = NULL;
qemuMonitorTestPtr ret_test = NULL;
virDomainDefPtr ret_def = NULL;
ret = 0;
cleanup:
- VIR_FREE(domain_filename);
if (ret_test)
qemuMonitorTestFree(ret_test);
virDomainDefFree(ret_def);
virDomainXMLOptionPtr xmlopt = (virDomainXMLOptionPtr)data;
qemuMonitorTestPtr test = qemuMonitorTestNewAgent(xmlopt);
int ret = -1;
- char *reply = NULL;
+ g_autofree char *reply = NULL;
if (!test)
return -1;
ret = 0;
cleanup:
- VIR_FREE(reply);
qemuMonitorTestFree(test);
return ret;
}
{
virDomainXMLOptionPtr xmlopt = (virDomainXMLOptionPtr)data;
qemuMonitorTestPtr test = qemuMonitorTestNewAgent(xmlopt);
- char *reply = NULL;
+ g_autofree char *reply = NULL;
int ret = -1;
if (!test)
ret = 0;
cleanup:
- VIR_FREE(reply);
qemuMonitorTestFree(test);
return ret;
}
{
int ret = -1;
testQemuData *data = (void *) opaque;
- char *repliesFile = NULL;
- char *capsFile = NULL;
+ g_autofree char *repliesFile = NULL;
+ g_autofree char *capsFile = NULL;
qemuMonitorTestPtr mon = NULL;
virQEMUCapsPtr capsActual = NULL;
- char *binary = NULL;
- char *actual = NULL;
+ g_autofree char *binary = NULL;
+ g_autofree char *actual = NULL;
unsigned int fakeMicrocodeVersion = 0;
const char *p;
ret = 0;
cleanup:
- VIR_FREE(repliesFile);
- VIR_FREE(capsFile);
- VIR_FREE(actual);
- VIR_FREE(binary);
qemuMonitorTestFree(mon);
virObjectUnref(capsActual);
return ret;
{
int ret = -1;
const testQemuData *data = opaque;
- char *capsFile = NULL;
+ g_autofree char *capsFile = NULL;
virQEMUCapsPtr orig = NULL;
virQEMUCapsPtr copy = NULL;
- char *actual = NULL;
+ g_autofree char *actual = NULL;
capsFile = g_strdup_printf("%s/%s_%s.%s.xml",
data->outputDir, data->prefix, data->version,
ret = 0;
cleanup:
- VIR_FREE(capsFile);
virObjectUnref(orig);
virObjectUnref(copy);
- VIR_FREE(actual);
return ret;
}
xmlDocPtr xml;
xmlXPathContextPtr ctxt = NULL;
ssize_t i, n;
- xmlNodePtr *nodes = NULL;
+ g_autofree xmlNodePtr *nodes = NULL;
if (!(xml = virXMLParseStringCtxt(caps, "(test caps)", &ctxt)))
goto error;
goto error;
for (i = 0; i < n; i++) {
- char *str = virXMLPropString(nodes[i], "name");
+ g_autofree char *str = virXMLPropString(nodes[i], "name");
if (str) {
int flag = virQEMUCapsTypeFromString(str);
if (flag < 0) {
fprintf(stderr, "Unknown qemu capabilities flag %s", str);
- VIR_FREE(str);
goto error;
}
- VIR_FREE(str);
virQEMUCapsSet(qemuCaps, flag);
}
}
- VIR_FREE(nodes);
xmlFreeDoc(xml);
xmlXPathFreeContext(ctxt);
return qemuCaps;
error:
- VIR_FREE(nodes);
virObjectUnref(qemuCaps);
xmlFreeDoc(xml);
xmlXPathFreeContext(ctxt);
{
int ret = -1;
const testQemuData *data = opaque;
- char *capsFile = NULL
- char *xmlFile = NULL;
- char *capsData = NULL;
- char *capsXml = NULL;
+ g_autofree char *capsFile = NULL;
+ g_autofree char *xmlFile = NULL;
+ g_autofree char *capsData = NULL;
+ g_autofree char *capsXml = NULL;
virCapsPtr capsProvided = NULL;
xmlFile = g_strdup_printf("%s/caps.%s.xml", data->outputDir, data->archName);
ret = 0;
cleanup:
- VIR_FREE(xmlFile);
- VIR_FREE(capsFile);
- VIR_FREE(capsXml);
- VIR_FREE(capsData);
virObjectUnref(capsProvided);
return ret;
}
const char *uuid,
unsigned int flags)
{
- char *inXmlData = NULL;
- char *outXmlData = NULL;
- char *actual = NULL;
+ g_autofree char *inXmlData = NULL;
+ g_autofree char *outXmlData = NULL;
+ g_autofree char *actual = NULL;
int ret = -1;
unsigned int parseflags = VIR_DOMAIN_SNAPSHOT_PARSE_DISKS;
unsigned int formatflags = VIR_DOMAIN_SNAPSHOT_FORMAT_SECURE;
ret = 0;
cleanup:
- VIR_FREE(inXmlData);
- VIR_FREE(outXmlData);
- VIR_FREE(actual);
return ret;
}
const char *expectedFile,
bool fail)
{
- char *actual;
+ g_autofree char *actual = NULL;
int ret;
actual = virDomainDefFormat(vm->def, driver.xmlopt,
ret = -1;
}
- VIR_FREE(actual);
return ret;
}
{
int ret = -1;
struct qemuHotplugTestData *test = (struct qemuHotplugTestData *) data;
- char *domain_filename = NULL;
- char *device_filename = NULL;
- char *result_filename = NULL;
- char *domain_xml = NULL;
- char *device_xml = NULL;
- char *result_xml = NULL;
+ g_autofree char *domain_filename = NULL;
+ g_autofree char *device_filename = NULL;
+ g_autofree char *result_filename = NULL;
+ g_autofree char *domain_xml = NULL;
+ g_autofree char *device_xml = NULL;
+ g_autofree char *result_xml = NULL;
const char *const *tmp;
bool fail = test->fail;
bool keep = test->keep;
virObjectLock(priv->mon);
cleanup:
- VIR_FREE(domain_filename);
- VIR_FREE(device_filename);
- VIR_FREE(result_filename);
- VIR_FREE(domain_xml);
- VIR_FREE(device_xml);
- VIR_FREE(result_xml);
/* don't dispose test monitor with VM */
if (priv)
priv->mon = NULL;
{
qemuDomainObjPrivatePtr priv = NULL;
virCapsPtr caps = NULL;
- char *prefix = NULL;
+ g_autofree char *prefix = NULL;
struct testQemuHotplugCpuData *data = NULL;
prefix = g_strdup_printf("%s/qemuhotplugtestcpus/%s", abs_srcdir, test);
if (qemuDomainRefreshVcpuInfo(&driver, data->vm, 0, false) < 0)
goto error;
- VIR_FREE(prefix);
-
return data;
error:
virObjectUnref(caps);
testQemuHotplugCpuDataFree(data);
- VIR_FREE(prefix);
return NULL;
}
testQemuHotplugCpuFinalize(struct testQemuHotplugCpuData *data)
{
int ret = -1;
- char *activeXML = NULL;
- char *configXML = NULL;
+ g_autofree char *activeXML = NULL;
+ g_autofree char *configXML = NULL;
if (data->file_xml_res_live) {
if (!(activeXML = virDomainDefFormat(data->vm->def, driver.xmlopt,
ret = 0;
cleanup:
- VIR_FREE(activeXML);
- VIR_FREE(configXML);
return ret;
}
{
const struct testInfo *info = data;
virDomainDefPtr def = NULL;
- char *xml = NULL;
+ g_autofree char *xml = NULL;
int ret = -1;
xml = g_strdup_printf("%s/qemumemlockdata/qemumemlock-%s.xml", abs_srcdir,
cleanup:
virDomainDefFree(def);
- VIR_FREE(xml);
return ret;
}
mymain(void)
{
int ret = 0;
- char *fakerootdir;
+ g_autofree char *fakerootdir = NULL;
virQEMUCapsPtr qemuCaps = NULL;
fakerootdir = g_strdup(FAKEROOTDIRTEMPLATE);
g_setenv("LIBVIRT_FAKE_ROOT_DIR", fakerootdir, TRUE);
- if (qemuTestDriverInit(&driver) < 0) {
- VIR_FREE(fakerootdir);
+ if (qemuTestDriverInit(&driver) < 0)
return EXIT_FAILURE;
- }
driver.privileged = true;
virFileDeleteTree(fakerootdir);
qemuTestDriverFree(&driver);
- VIR_FREE(fakerootdir);
return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
}
{
const qemuMigParamsData *data = opaque;
g_auto(virBuffer) buf = VIR_BUFFER_INITIALIZER;
- char *xmlFile = NULL;
+ g_autofree char *xmlFile = NULL;
xmlDocPtr doc = NULL;
xmlXPathContextPtr ctxt = NULL;
qemuMigrationParamsPtr migParams = NULL;
- char *actualXML = NULL;
+ g_autofree char *actualXML = NULL;
int ret = -1;
xmlFile = g_strdup_printf("%s/qemumigparamsdata/%s.xml", abs_srcdir,
ret = 0;
cleanup:
- VIR_FREE(xmlFile);
- VIR_FREE(actualXML);
qemuMigrationParamsFree(migParams);
xmlXPathFreeContext(ctxt);
xmlFreeDoc(doc);
{
const qemuMigParamsData *data = opaque;
g_auto(virBuffer) buf = VIR_BUFFER_INITIALIZER;
- char *replyFile = NULL;
- char *xmlFile = NULL;
+ g_autofree char *replyFile = NULL;
+ g_autofree char *xmlFile = NULL;
qemuMonitorTestPtr mon = NULL;
virJSONValuePtr params = NULL;
qemuMigrationParamsPtr migParams = NULL;
- char *actualXML = NULL;
+ g_autofree char *actualXML = NULL;
int ret = -1;
replyFile = g_strdup_printf("%s/qemumigparamsdata/%s.reply",
ret = 0;
cleanup:
- VIR_FREE(replyFile);
- VIR_FREE(xmlFile);
- VIR_FREE(actualXML);
virJSONValueFree(params);
qemuMigrationParamsFree(migParams);
qemuMonitorTestFree(mon);
qemuMigParamsTestJSON(const void *opaque)
{
const qemuMigParamsData *data = opaque;
- char *replyFile = NULL;
- char *jsonFile = NULL;
+ g_autofree char *replyFile = NULL;
+ g_autofree char *jsonFile = NULL;
qemuMonitorTestPtr mon = NULL;
virJSONValuePtr paramsIn = NULL;
virJSONValuePtr paramsOut = NULL;
qemuMigrationParamsPtr migParams = NULL;
- char *actualJSON = NULL;
+ g_autofree char *actualJSON = NULL;
int ret = -1;
replyFile = g_strdup_printf("%s/qemumigparamsdata/%s.reply",
ret = 0;
cleanup:
- VIR_FREE(replyFile);
- VIR_FREE(jsonFile);
- VIR_FREE(actualJSON);
virJSONValueFree(paramsIn);
virJSONValueFree(paramsOut);
qemuMigrationParamsFree(migParams);
virJSONValuePtr args;
unsigned long long id;
const char *cmdname;
- char *retmsg = NULL;
+ g_autofree char *retmsg = NULL;
int ret = -1;
if (!(val = virJSONValueFromString(cmdstr)))
cleanup:
virJSONValueFree(val);
- VIR_FREE(retmsg);
return ret;
}
struct qemuMonitorTestHandlerData *data = item->opaque;
virJSONValuePtr val = NULL;
virJSONValuePtr args;
- char *argstr = NULL;
+ g_autofree char *argstr = NULL;
const char *cmdname;
int ret = -1;
ret = qemuMonitorTestAddResponse(test, data->response);
cleanup:
- VIR_FREE(argstr);
virJSONValueFree(val);
return ret;
}
bool simple)
{
qemuMonitorTestPtr test = NULL;
- char *json = NULL;
+ g_autofree char *json = NULL;
char *tmp;
char *singleReply;
goto error;
cleanup:
- VIR_FREE(json);
return test;
error:
const char *response,
size_t line)
{
- char *cmderr;
+ g_autofree char *cmderr = NULL;
int ret;
cmderr = g_strdup_printf("wrong expected command in %s:%zu: ", filename, line);
ret = qemuMonitorTestAddItemVerbatim(test, command, cmderr, response);
- VIR_FREE(cmderr);
return ret;
}
virHashTablePtr qmpschema)
{
qemuMonitorTestPtr ret = NULL;
- char *jsonstr = NULL;
+ g_autofree char *jsonstr = NULL;
char *tmp;
size_t line = 0;
}
cleanup:
- VIR_FREE(jsonstr);
return ret;
error:
char **value)
{
int ret = -1;
- char *key;
+ g_autofree char *key = NULL;
char *val;
key = get_key(path, name);
ret = 0;
cleanup:
virMutexUnlock(&m);
- VIR_FREE(key);
return ret;
}
const char *value)
{
int ret = -1;
- char *key;
- char *val;
+ g_autofree char *key = NULL;
+ g_autofree char *val = NULL;
key = get_key(path, name);
val = g_strdup(value);
ret = 0;
cleanup:
virMutexUnlock(&m);
- VIR_FREE(val);
- VIR_FREE(key);
return ret;
}
const char *name)
{
int ret = -1;
- char *key;
+ g_autofree char *key = NULL;
key = get_key(path, name);
errno = ENODATA;
virMutexUnlock(&m);
- VIR_FREE(key);
return ret;
}
fakeStoragePoolLookupByName(virConnectPtr conn,
const char *name)
{
- char *xmlpath = NULL;
+ g_autofree char *xmlpath = NULL;
virStoragePoolPtr ret = NULL;
if (STRNEQ(name, "inactive")) {
ret = virGetStoragePool(conn, name, fakeUUID, NULL, NULL);
cleanup:
- VIR_FREE(xmlpath);
return ret;
}
fakeStoragePoolGetXMLDesc(virStoragePoolPtr pool,
unsigned int flags_unused G_GNUC_UNUSED)
{
- char *xmlpath = NULL;
+ g_autofree char *xmlpath = NULL;
char *xmlbuf = NULL;
if (STREQ(pool->name, "inactive")) {
}
cleanup:
- VIR_FREE(xmlpath);
return xmlbuf;
}
testCompareXMLToArgv(const void *data)
{
struct testQemuInfo *info = (void *) data;
- char *migrateURI = NULL;
- char *actualargv = NULL;
+ g_autofree char *migrateURI = NULL;
+ g_autofree char *actualargv = NULL;
unsigned int flags = info->flags;
unsigned int parseFlags = info->parseFlags;
int ret = -1;
cleanup:
VIR_FREE(log);
- VIR_FREE(actualargv);
virDomainChrSourceDefClear(&monitor_chr);
virCommandFree(cmd);
virObjectUnref(vm);
virSetConnectSecret(NULL);
virSetConnectStorage(NULL);
virObjectUnref(conn);
- VIR_FREE(migrateURI);
if (info->arch != VIR_ARCH_NONE && info->arch != VIR_ARCH_X86_64)
qemuTestSetHostArch(&driver, VIR_ARCH_NONE);
mymain(void)
{
int ret = 0;
- char *fakerootdir;
+ g_autofree char *fakerootdir = NULL;
virHashTablePtr capslatest = NULL;
fakerootdir = g_strdup(FAKEROOTDIRTEMPLATE);
VIR_FREE(driver.config->nbdTLSx509certdir);
qemuTestDriverFree(&driver);
- VIR_FREE(fakerootdir);
virHashFree(capslatest);
virFileWrapperClearPrefixes();
{
const struct testQemuInfo *data = opaque;
virDomainObjPtr obj = NULL;
- char *actual = NULL;
+ g_autofree char *actual = NULL;
int ret = -1;
if (!(obj = virDomainObjParseFile(data->infile, driver.xmlopt,
cleanup:
virDomainObjEndAPI(&obj);
- VIR_FREE(actual);
return ret;
}
mymain(void)
{
int ret = 0;
- char *fakerootdir;
+ g_autofree char *fakerootdir = NULL;
virQEMUDriverConfigPtr cfg = NULL;
virHashTablePtr capslatest = NULL;
g_autoptr(virConnect) conn = NULL;
virHashFree(capslatest);
qemuTestDriverFree(&driver);
- VIR_FREE(fakerootdir);
virFileWrapperClearPrefixes();
return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
}
if (virTestGetDebug()) {
- char *caps_str;
+ g_autofree char *caps_str = NULL;
caps_str = virCapabilitiesFormatXML(caps);
if (!caps_str)
goto cleanup;
VIR_TEST_DEBUG("QEMU driver capabilities:\n%s", caps_str);
-
- VIR_FREE(caps_str);
}
return caps;
struct dirent *ent;
DIR *dir = NULL;
int rc;
- char *fullsuffix = NULL;
+ g_autofree char *fullsuffix = NULL;
unsigned long maxver = 0;
unsigned long ver;
g_autofree char *maxname = NULL;
ret = g_strdup_printf("%s/%s", TEST_QEMU_CAPS_PATH, maxname);
cleanup:
- VIR_FREE(fullsuffix);
virDirClose(&dir);
return ret;
}