return ret;
}
-#define FAKEROOTDIRTEMPLATE abs_builddir "/fakerootdir-XXXXXX"
-
static int
mymain(void)
int ret = 0;
struct qemuHotplugTestData data = {0};
struct testQemuHotplugCpuParams cpudata;
- g_autofree char *fakerootdir = NULL;
g_autoptr(virQEMUDriverConfig) cfg = NULL;
- fakerootdir = g_strdup(FAKEROOTDIRTEMPLATE);
-
- if (!g_mkdtemp(fakerootdir)) {
- fprintf(stderr, "Cannot create fakerootdir");
- abort();
- }
-
- g_setenv("LIBVIRT_FAKE_ROOT_DIR", fakerootdir, TRUE);
-
if (qemuTestDriverInit(&driver) < 0)
return EXIT_FAILURE;
DO_TEST_CPU_INDIVIDUAL("ppc64-modern-individual", "16-22", true, true, true);
DO_TEST_CPU_INDIVIDUAL("ppc64-modern-individual", "17", true, true, true);
- if (getenv("LIBVIRT_SKIP_CLEANUP") == NULL)
- virFileDeleteTree(fakerootdir);
-
qemuTestDriverFree(&driver);
virObjectUnref(data.vm);
return (ret == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
return ret;
}
-# define FAKEROOTDIRTEMPLATE abs_builddir "/fakerootdir-XXXXXX"
-
static int
mymain(void)
{
int ret = 0;
- char *fakerootdir;
virQEMUCapsPtr qemuCaps = NULL;
- fakerootdir = g_strdup(FAKEROOTDIRTEMPLATE);
-
- if (!g_mkdtemp(fakerootdir)) {
- fprintf(stderr, "Cannot create fakerootdir");
- abort();
- }
-
- 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;
cleanup:
virObjectUnref(qemuCaps);
- if (getenv("LIBVIRT_SKIP_CLEANUP") == NULL)
- virFileDeleteTree(fakerootdir);
-
qemuTestDriverFree(&driver);
- VIR_FREE(fakerootdir);
return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
}
abs_srcdir, info->name, suffix ? suffix : "");
}
-# define FAKEROOTDIRTEMPLATE abs_builddir "/fakerootdir-XXXXXX"
-
static int
mymain(void)
{
int ret = 0;
- char *fakerootdir;
virHashTablePtr capslatest = NULL;
- fakerootdir = g_strdup(FAKEROOTDIRTEMPLATE);
-
- if (!g_mkdtemp(fakerootdir)) {
- fprintf(stderr, "Cannot create fakerootdir");
- abort();
- }
-
- g_setenv("LIBVIRT_FAKE_ROOT_DIR", fakerootdir, TRUE);
-
/* Set the timezone because we are mocking the time() function.
* If we don't do that, then localtime() may return unpredictable
* results. In order to detect things that just work by a blind
DO_TEST_CAPS_LATEST("virtio-9p-multidevs");
- if (getenv("LIBVIRT_SKIP_CLEANUP") == NULL)
- virFileDeleteTree(fakerootdir);
-
VIR_FREE(driver.config->nbdTLSx509certdir);
qemuTestDriverFree(&driver);
- VIR_FREE(fakerootdir);
virHashFree(capslatest);
virFileWrapperClearPrefixes();
}
-# define FAKEROOTDIRTEMPLATE abs_builddir "/fakerootdir-XXXXXX"
-
static int
mymain(void)
{
int ret = 0;
- char *fakerootdir;
virQEMUDriverConfigPtr cfg = NULL;
virHashTablePtr capslatest = NULL;
if (!capslatest)
return EXIT_FAILURE;
- fakerootdir = g_strdup(FAKEROOTDIRTEMPLATE);
-
- if (!g_mkdtemp(fakerootdir)) {
- fprintf(stderr, "Cannot create fakerootdir");
- abort();
- }
-
- g_setenv("LIBVIRT_FAKE_ROOT_DIR", fakerootdir, TRUE);
-
/* Required for tpm-emulator tests
*/
virFileWrapperAddPrefix(SYSCONFDIR "/qemu/firmware",
DO_TEST_CAPS_LATEST("virtio-9p-multidevs");
- if (getenv("LIBVIRT_SKIP_CLEANUP") == NULL)
- virFileDeleteTree(fakerootdir);
-
virHashFree(capslatest);
qemuTestDriverFree(&driver);
- VIR_FREE(fakerootdir);
virFileWrapperClearPrefixes();
return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
void qemuTestDriverFree(virQEMUDriver *driver)
{
+ if (g_getenv("LIBVIRT_SKIP_CLEANUP") == NULL)
+ virFileDeleteTree(driver->embeddedRoot);
+
virMutexDestroy(&driver->lock);
- if (driver->config) {
- virFileDeleteTree(driver->config->stateDir);
- virFileDeleteTree(driver->config->configDir);
- }
virObjectUnref(driver->qemuCapsCache);
virObjectUnref(driver->xmlopt);
virObjectUnref(driver->caps);
}
-# define STATEDIRTEMPLATE abs_builddir "/qemustatedir-XXXXXX"
-# define CONFIGDIRTEMPLATE abs_builddir "/qemuconfigdir-XXXXXX"
+# define FAKEROOTDIRTEMPLATE abs_builddir "/fakerootdir-XXXXXX"
int qemuTestDriverInit(virQEMUDriver *driver)
{
virSecurityManagerPtr mgr = NULL;
- char statedir[] = STATEDIRTEMPLATE;
- char configdir[] = CONFIGDIRTEMPLATE;
+ g_autofree char *fakerootdir = NULL;
+
+ fakerootdir = g_strdup(FAKEROOTDIRTEMPLATE);
+
+ if (!g_mkdtemp(fakerootdir)) {
+ fprintf(stderr, "Cannot create fakerootdir");
+ abort();
+ }
+
+ g_setenv("LIBVIRT_FAKE_ROOT_DIR", fakerootdir, TRUE);
memset(driver, 0, sizeof(*driver));
return -1;
driver->hostarch = virArchFromHost();
- driver->config = virQEMUDriverConfigNew(false, NULL);
+ driver->config = virQEMUDriverConfigNew(false, fakerootdir);
if (!driver->config)
goto error;
- /* Do this early so that qemuTestDriverFree() doesn't see (unlink) the real
- * dirs. */
- VIR_FREE(driver->config->stateDir);
- VIR_FREE(driver->config->configDir);
-
/* Overwrite some default paths so it's consistent for tests. */
VIR_FREE(driver->config->libDir);
VIR_FREE(driver->config->channelTargetDir);
driver->config->libDir = g_strdup("/tmp/lib");
driver->config->channelTargetDir = g_strdup("/tmp/channel");
- if (!g_mkdtemp(statedir)) {
- fprintf(stderr, "Cannot create fake stateDir");
- goto error;
- }
-
- driver->config->stateDir = g_strdup(statedir);
-
- if (!g_mkdtemp(configdir)) {
- fprintf(stderr, "Cannot create fake configDir");
- goto error;
- }
-
- driver->config->configDir = g_strdup(configdir);
-
driver->caps = testQemuCapsInit();
if (!driver->caps)
goto error;