On 10/14/2011 01:34 PM, Jiri Denemark wrote:
Explicitly disallow conflicts between domain name from dxml and dname. --- src/libvirt.c | 3 +++ src/qemu/qemu_driver.c | 4 ++-- src/qemu/qemu_migration.c | 17 ++++++++++++++--- src/qemu/qemu_migration.h | 1 + 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/libvirt.c b/src/libvirt.c index f1e6a6b..69cffc5 100644 --- a/src/libvirt.c +++ b/src/libvirt.c @@ -4854,6 +4854,9 @@ error: * in accessing the underlying storage. The migration will fail * if @dxml would cause any guest-visible changes. Pass NULL * if no changes are needed to the XML between source and destination. + * @dxml cannot be used to rename the domain during migration (use + * @dname for that purpose). Domain name in @dxml must either match the + * original domain name or @dname if it was specified.
ACK.
@@ -1028,6 +1031,14 @@ char *qemuMigrationBegin(struct qemud_driver *driver, VIR_DOMAIN_XML_INACTIVE))) goto cleanup; + if (STRNEQ(def->name, vm->def->name)&& + (!dname || STRNEQ(def->name, dname))) {
If wanted, you can simplify this to: STRNEQ(def->name, vm->def->name) && STRNEQ_NULLABLE(def->name, dname) -- Eric Blake eblake@xxxxxxxxxx +1-801-349-2682 Libvirt virtualization library http://libvirt.org -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list