On 19.10.2012 16:31, Jiri Denemark wrote: > Having hostuuid in migration cookie is a nice bonus since it provides an > easy way of detecting migration to the same host. However, requiring it > breaks backward compatibility with older libvirt releases. > --- > src/qemu/qemu_migration.c | 31 ++++++++++++++++--------------- > 1 file changed, 16 insertions(+), 15 deletions(-) > > diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c > index a2402ce..487182e 100644 > --- a/src/qemu/qemu_migration.c > +++ b/src/qemu/qemu_migration.c > @@ -576,22 +576,23 @@ qemuMigrationCookieXMLParse(qemuMigrationCookiePtr mig, > } > > if (!(tmp = virXPathString("string(./hostuuid[1])", ctxt))) { > - virReportError(VIR_ERR_INTERNAL_ERROR, > - "%s", _("missing hostuuid element in migration data")); > - goto error; > - } > - if (virUUIDParse(tmp, mig->remoteHostuuid) < 0) { > - virReportError(VIR_ERR_INTERNAL_ERROR, > - "%s", _("malformed hostuuid element in migration data")); > - goto error; > - } > - if (memcmp(mig->remoteHostuuid, mig->localHostuuid, VIR_UUID_BUFLEN) == 0) { > - virReportError(VIR_ERR_INTERNAL_ERROR, > - _("Attempt to migrate guest to the same host %s"), > - tmp); > - goto error; > + VIR_WARN("Missing hostuuid element in migration data; cannot " > + "detect migration to the same host"); > + } else { > + if (virUUIDParse(tmp, mig->remoteHostuuid) < 0) { > + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", > + _("malformed hostuuid element in migration data")); > + goto error; > + } > + if (memcmp(mig->remoteHostuuid, mig->localHostuuid, > + VIR_UUID_BUFLEN) == 0) { > + virReportError(VIR_ERR_INTERNAL_ERROR, > + _("Attempt to migrate guest to the same host %s"), > + tmp); > + goto error; > + } > + VIR_FREE(tmp); > } > - VIR_FREE(tmp); > > /* Check to ensure all mandatory features from XML are also > * present in 'flags' */ > ACK Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list