On Wed, Apr 10, 2013 at 06:01:15PM +0200, Michal Privoznik wrote: > On 10.04.2013 17:57, Daniel P. Berrange wrote: > > On Wed, Apr 10, 2013 at 05:52:26PM +0200, Michal Privoznik wrote: > >> https://bugzilla.redhat.com/show_bug.cgi?id=920441 > >> > >> Currently, we are discarding listen attribute from qemu cookie even though > >> we strive to gather it. This result in not so cool bug: if user have > >> different networks, one for management/migration, and one for VNC/SPICE we > >> pass incorrect host to the qemu in client_migrate_info. What we actually > >> pass is remote hostname, while we should be passing remote listen address. > >> It doesn't matter as long as these two are the same, but they don't need > >> necessary to be like that. > >> --- > >> src/conf/domain_conf.c | 4 +++- > >> src/qemu/qemu_migration.c | 2 +- > >> 2 files changed, 4 insertions(+), 2 deletions(-) > >> > >> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c > >> index e00a532..2afa982 100644 > >> --- a/src/conf/domain_conf.c > >> +++ b/src/conf/domain_conf.c > >> @@ -16557,8 +16557,10 @@ virDomainGraphicsListenGetAddress(virDomainGraphicsDefPtr def, size_t ii) > >> virDomainGraphicsListenDefPtr listenInfo > >> = virDomainGraphicsGetListen(def, ii, false); > >> > >> + /* even a network can have a listen address */ > >> if (!listenInfo || > >> - (listenInfo->type != VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS)) > >> + !(listenInfo->type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS || > >> + listenInfo->type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK)) > >> return NULL; > >> return listenInfo->address; > >> } > >> diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c > >> index 41ad768..089b75a 100644 > >> --- a/src/qemu/qemu_migration.c > >> +++ b/src/qemu/qemu_migration.c > >> @@ -1738,7 +1738,7 @@ qemuDomainMigrateGraphicsRelocate(virQEMUDriverPtr driver, > >> if (ret == 0) { > >> ret = qemuMonitorGraphicsRelocate(priv->mon, > >> cookie->graphics->type, > >> - cookie->remoteHostname, > >> + cookie->graphics->listen, > > > > So how do this work if the user has configured > > > > <graphics listen="0.0.0.0"> > > > > this is not an address you tell the spice client to reconnect to. > > This is why it originally used the 'remoteHostname' becuase that > > is a valid address to connect to. > > > > Daniel > > > > Aaah, didn't catch that. I suppose in that specific case we should be > passing remoteHostname. In such conditions, is 127.0.0.1 specific > address as well? I believe so. But I don't see any other specific address. 127.0.0.1 is a valid address - it means that any client would have been using SSH tunnelling to connect to it. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list