if (!(flags & VIR_MIGRATE_OFFLINE))
cookieFlags |= QEMU_MIGRATION_COOKIE_CAPS;
- if (!(mig = qemuMigrationEatCookie(driver, vm, NULL, 0, 0)))
+ if (!(mig = qemuMigrationEatCookie(driver, vm->def,
+ priv->origname, priv, NULL, 0, 0)))
goto cleanup;
if (qemuMigrationBakeCookie(mig, driver, vm,
priv->hookRun = true;
}
- if (!(mig = qemuMigrationEatCookie(driver, vm, cookiein, cookieinlen,
+ if (!(mig = qemuMigrationEatCookie(driver, vm->def, origname, priv,
+ cookiein, cookieinlen,
QEMU_MIGRATION_COOKIE_LOCKSTATE |
QEMU_MIGRATION_COOKIE_NBD |
QEMU_MIGRATION_COOKIE_MEMORY_HOTPLUG |
? QEMU_MIGRATION_PHASE_CONFIRM3
: QEMU_MIGRATION_PHASE_CONFIRM3_CANCELLED);
- if (!(mig = qemuMigrationEatCookie(driver, vm, cookiein, cookieinlen,
+ if (!(mig = qemuMigrationEatCookie(driver, vm->def, priv->origname, priv,
+ cookiein, cookieinlen,
QEMU_MIGRATION_COOKIE_STATS)))
goto cleanup;
}
}
- mig = qemuMigrationEatCookie(driver, vm, cookiein, cookieinlen,
+ mig = qemuMigrationEatCookie(driver, vm->def, priv->origname, priv,
+ cookiein, cookieinlen,
cookieFlags |
QEMU_MIGRATION_COOKIE_GRAPHICS |
QEMU_MIGRATION_COOKIE_CAPS);
* even though VIR_MIGRATE_PERSIST_DEST was not used. */
cookie_flags |= QEMU_MIGRATION_COOKIE_PERSISTENT;
- if (!(mig = qemuMigrationEatCookie(driver, vm, cookiein,
- cookieinlen, cookie_flags)))
+ if (!(mig = qemuMigrationEatCookie(driver, vm->def, priv->origname, priv,
+ cookiein, cookieinlen, cookie_flags)))
goto endjob;
if (flags & VIR_MIGRATE_OFFLINE) {
static qemuMigrationCookiePtr
-qemuMigrationCookieNew(virDomainObjPtr dom)
+qemuMigrationCookieNew(const virDomainDef *def,
+ const char *origname)
{
- qemuDomainObjPrivatePtr priv = dom->privateData;
qemuMigrationCookiePtr mig = NULL;
const char *name;
if (VIR_ALLOC(mig) < 0)
goto error;
- if (priv->origname)
- name = priv->origname;
+ if (origname)
+ name = origname;
else
- name = dom->def->name;
+ name = def->name;
if (VIR_STRDUP(mig->name, name) < 0)
goto error;
- memcpy(mig->uuid, dom->def->uuid, VIR_UUID_BUFLEN);
+ memcpy(mig->uuid, def->uuid, VIR_UUID_BUFLEN);
if (!(mig->localHostname = virGetHostname()))
goto error;
qemuMigrationCookiePtr
qemuMigrationEatCookie(virQEMUDriverPtr driver,
- virDomainObjPtr dom,
+ const virDomainDef *def,
+ const char *origname,
+ qemuDomainObjPrivatePtr priv,
const char *cookiein,
int cookieinlen,
unsigned int flags)
{
- qemuDomainObjPrivatePtr priv = dom->privateData;
qemuMigrationCookiePtr mig = NULL;
/* Parse & validate incoming cookie (if any) */
VIR_DEBUG("cookielen=%d cookie='%s'", cookieinlen, NULLSTR(cookiein));
- if (!(mig = qemuMigrationCookieNew(dom)))
+ if (!(mig = qemuMigrationCookieNew(def, origname)))
return NULL;
if (cookiein && cookieinlen &&
if (flags & QEMU_MIGRATION_COOKIE_PERSISTENT &&
mig->persistent &&
- STRNEQ(dom->def->name, mig->persistent->name)) {
+ STRNEQ(def->name, mig->persistent->name)) {
VIR_FREE(mig->persistent->name);
- if (VIR_STRDUP(mig->persistent->name, dom->def->name) < 0)
+ if (VIR_STRDUP(mig->persistent->name, def->name) < 0)
goto error;
}