]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: fix NBD migration to hosts with IPv6 enabled
authorJán Tomko <jtomko@redhat.com>
Thu, 23 May 2013 13:51:05 +0000 (15:51 +0200)
committerCole Robinson <crobinso@redhat.com>
Sat, 25 May 2013 20:55:19 +0000 (16:55 -0400)
Since f03dcc5 we use [::] as the listening address both on qemu
command line in -incoming and in nbd-server-start QMP command.
However the latter requires just :: without the braces.
(cherry picked from commit 2326006410a921bba38c0ce67a367cd1ea88cc33)

src/qemu/qemu_migration.c

index 6ad1c307f3af20662b2e17f7884bbe9924aea6b3..adc967a92089474e046a80ca6a17bf5505ae1953 100644 (file)
@@ -1114,6 +1114,12 @@ qemuMigrationStartNBDServer(virQEMUDriverPtr driver,
     unsigned short port = 0;
     char *diskAlias = NULL;
     size_t i;
+    const char *host;
+
+    if (STREQ(listenAddr, "[::]"))
+        host = "::";
+    else
+        host = listenAddr;
 
     for (i = 0; i < vm->def->ndisks; i++) {
         virDomainDiskDefPtr disk = vm->def->disks[i];
@@ -1135,7 +1141,7 @@ qemuMigrationStartNBDServer(virQEMUDriverPtr driver,
 
         if (!port &&
             ((virPortAllocatorAcquire(driver->remotePorts, &port) < 0) ||
-             (qemuMonitorNBDServerStart(priv->mon, listenAddr, port) < 0))) {
+             (qemuMonitorNBDServerStart(priv->mon, host, port) < 0))) {
             qemuDomainObjExitMonitor(driver, vm);
             goto cleanup;
         }