On Wed, May 11, 2016 at 05:08:31PM +0200, Pavel Hrdina wrote:
This new listen type is currently supported only by spice graphics.
It's introduced to make it easier and clearer specify to not listen
anywhere in order to start a guest with OpenGL support.
The old way to do this was set spice graphics autoport='no' and don't
specify any ports. The new way is to use <listen type='none'/>. In
order to be able to migrate to old libvirt the migratable XML will be
generated without the listen element and with autoport='no'.
+ /* If spice graphics is configured without ports and with
autoport='no' then
+ * we start qemu with Spice to not listen anywhere. Let's convert this
+ * configuration to the new listen type='none' which does the same. */
+ if (def->type == VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
+ glisten = &def->listens[0];
+
+ if (glisten->type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS &&
+ glisten->port == 0 && glisten->tlsPort == 0 &&
!glisten->autoport) {
+ VIR_FREE(glisten->address);
+ glisten->type = VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE;
+ }
+ }
+
Ah I assume this means libvirt is not going to error out when it finds
configurations without ports and with autoport='no'? Maybe worth
mentioning this in the commit log as it mentions the legacy behaviour,
but I was not clear on how it would behave when encountering it.
Christophe