From: Cole Robinson Date: Tue, 28 May 2013 19:37:53 +0000 (-0400) Subject: virsh: migrate: Don't disallow --p2p and --migrateuri X-Git-Tag: v1.0.6-rc2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5e1de4fcdd86aceba610e9b77f6e62fc6525883b;p=thirdparty%2Flibvirt.git virsh: migrate: Don't disallow --p2p and --migrateuri Because it's a valid combination. p2p still uses a separate channel for qemu migration, so there's value in letting the user specify a manual migrate URI for overriding auto-port, or libvirt's FQDN lookup. What _isn't_ allowed is --migrateuri and TUNNELLED, since there is no separate migration channel. Disallow that instead --- diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c index 4fdf4ba2e9..eb8688de81 100644 --- a/tools/virsh-domain.c +++ b/tools/virsh-domain.c @@ -8306,15 +8306,15 @@ doMigrate(void *opaque) if ((flags & VIR_MIGRATE_PEER2PEER) || vshCommandOptBool(cmd, "direct")) { - /* For peer2peer migration or direct migration we only expect one URI - * a libvirt URI, or a hypervisor specific URI. */ - if (migrateuri != NULL) { + /* migrateuri doesn't make sense for tunnelled migration */ + if (flags & VIR_MIGRATE_TUNNELLED && migrateuri != NULL) { vshError(ctl, "%s", _("migrate: Unexpected migrateuri for peer2peer/direct migration")); goto out; } - if (virDomainMigrateToURI2(dom, desturi, NULL, xml, flags, dname, 0) == 0) + if (virDomainMigrateToURI2(dom, desturi, migrateuri, + xml, flags, dname, 0) == 0) ret = '0'; } else { /* For traditional live migration, connect to the destination host directly. */