[libvirt] [PATCH] virsh: fix show the wrong IP address for network type listen address graphic

Laine Stump laine at laine.org
Tue Feb 10 20:40:58 UTC 2015


On 02/10/2015 04:35 AM, Luyao Huang wrote:
> https://bugzilla.redhat.com/show_bug.cgi?id=1191016
>
> We try to get the IP address in /domain/devices/graphics/@listen, howerver
> for the network type listen address donnot have this parameter, it will
> show the address in the /domain/devices/graphics/listen/@address, running
> XML like this:
>
>  <graphics type='spice' port='5901' autoport='yes' keymap='en-us'>
>   <listen type='network' address='192.168.122.1' network='default'/>
>  </graphics>
>
> This patch will try to get the IP address in this path
> /domain/devices/graphics/listen/@address

That will work when the libvirtd being connected to is 0.9.4 or later,
but earlier versions of libvirt don't have the <listen> subelement;
instead they just have a 'listen' attribute directly inside <graphics>
that contains the address. All newer versions of libvirt are supposed to
populate that from <listen>[0] for backward compatibility.

The real bug here is that the listen attribute in <graphics> isn't being
filled in in the case of type='network' when the domain is active. On
the other hand, fixing the problem there would leave it unfixed for
cases where the client is a new libvirt but the server is running
libvirt between 0.9.4 and 1.2.12. So I think what is needed is for your
patch to check @listen, and if nothing is found there, *then* check
listen/@address. I attached a patch to this mail that I propose
squashing into your patch before pushing. Let me know if it behaves
properly and looks correct.

Beyond that, the server side should still be fixed. I just sent a patch
that does that:

https://www.redhat.com/archives/libvir-list/2015-February/msg00332.html

Between the two patches, we will have fixed the problem for all versions
of server, as long as the client is new enough.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-virsh-check-listen-attribute-and-listen-subelement-i.patch
Type: text/x-patch
Size: 2490 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20150210/077012d6/attachment-0001.bin>


More information about the libvir-list mailing list