Hey,
Something which I forgot to mention/test when going through the first
iteration is virsh domdisplay, it's currently failing with
<graphics type='spice'><listen type='socket'
socket='/tmp/foo'/></graphics>
I think something like 'spice+unix:///tmp/foo' is expected. This can be
addressed as a follow-up to this series though.
Christophe
On Thu, May 12, 2016 at 05:15:44PM +0200, Pavel Hrdina wrote:
This patch series improves the way how different listen types can be
specified
and also introduce a new listen types for graphics devices.
First improvement is to move ports out of graphics element into listen element
with type address or network. This is a first step to make the code
listen-driven.
Second step is to create a new listen type socket to improve the current vnc
configuration and to print only socket path witout any other listen types. With
the new socket type now we can add support also to spice graphics.
The last improvement is to introduce new listen type none for spice and vnc
graphics to specify that the spice graphics shouldn't listen anywhere by default.
In case of spice graphics the new listen types socket or none are required to
start a guest with OpenGL support.
Changes in v3:
- add listen type none support for vnc
- fix issues pointed out in v2
Changes in v2:
- don't remove vnc_auto_unix_socket from qemu.conf
- add spice_auto_unix_socket
Pavel Hrdina (14):
graphics: don't parse listens if socket attribute is present
domain_conf: parse listen attribute while parsing listen elements
graphics: make address attribute for listen type='address' optional
domain_conf: cleanup virDomainGraphicsListenDefParseXML
graphics: move port definition to listen element
graphics: introduce listen type=socket and use it for VNC
qemu_capabilites: add QEMU_CAPS_SPICE_UNIX
qemu_command: refactor spice channel code
spice: add support for listen type socket
qemu_process: separate graphics socket and address generation
tests: cleanup vnc auto socket test
spice: introduce spice_auto_unix_socket config option
spice: introduce listen type none
vnc: add support for listen type none
docs/formatdomain.html.in | 141 +++--
docs/schemas/domaincommon.rng | 63 +-
src/conf/domain_conf.c | 637 ++++++++++++++-------
src/conf/domain_conf.h | 31 +-
src/libvirt_private.syms | 1 +
src/libxl/libxl_conf.c | 53 +-
src/libxl/libxl_domain.c | 17 +-
src/qemu/libvirtd_qemu.aug | 1 +
src/qemu/qemu.conf | 17 +-
src/qemu/qemu_capabilities.c | 2 +
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 273 +++++----
src/qemu/qemu_conf.c | 1 +
src/qemu/qemu_conf.h | 1 +
src/qemu/qemu_domain.c | 19 +-
src/qemu/qemu_hotplug.c | 40 +-
src/qemu/qemu_migration.c | 50 +-
src/qemu/qemu_parse_command.c | 41 +-
src/qemu/qemu_process.c | 351 ++++++++----
src/qemu/test_libvirtd_qemu.aug.in | 1 +
src/security/virt-aa-helper.c | 15 +-
src/vbox/vbox_common.c | 30 +-
src/vbox/vbox_tmpl.c | 34 +-
src/vbox/vbox_uniformed_api.h | 4 +-
src/vmx/vmx.c | 54 +-
src/vz/vz_sdk.c | 30 +-
src/xenconfig/xen_common.c | 75 ++-
src/xenconfig/xen_sxpr.c | 71 +--
src/xenconfig/xen_xl.c | 45 +-
.../generic-graphics-listen-back-compat-ports.xml | 30 +
...generic-graphics-vnc-listen-element-minimal.xml | 2 +-
...aphics-vnc-listen-element-with-address-port.xml | 30 +
...ric-graphics-vnc-socket-attr-listen-address.xml | 30 +
...hics-vnc-socket-attr-listen-socket-mismatch.xml | 30 +
...eric-graphics-vnc-socket-attr-listen-socket.xml | 30 +
.../generic-graphics-listen-back-compat-ports.xml | 30 +
.../generic-graphics-listen-back-compat.xml | 2 +-
.../generic-graphics-vnc-listen-attr-only.xml | 2 +-
...generic-graphics-vnc-listen-element-minimal.xml | 4 +-
...aphics-vnc-listen-element-with-address-port.xml | 30 +
...ic-graphics-vnc-listen-element-with-address.xml | 2 +-
.../generic-graphics-vnc-manual-port.xml | 4 +-
.../generic-graphics-vnc-minimal.xml | 4 +-
...ric-graphics-vnc-socket-attr-listen-address.xml | 30 +
...eric-graphics-vnc-socket-attr-listen-socket.xml | 30 +
.../generic-graphics-vnc-socket-listen.xml | 2 +-
.../generic-graphics-vnc-socket.xml | 4 +-
tests/genericxml2xmltest.c | 7 +
.../qemuargv2xml-graphics-vnc-policy.xml | 2 +-
.../qemuargv2xml-graphics-vnc-sasl.xml | 2 +-
.../qemuargv2xml-graphics-vnc-socket.xml | 4 +-
.../qemuargv2xml-graphics-vnc-tls.xml | 2 +-
.../qemuargv2xml-graphics-vnc-websocket.xml | 2 +-
.../qemuargv2xmldata/qemuargv2xml-graphics-vnc.xml | 2 +-
...qemuhotplug-console-compat-2+console-virtio.xml | 2 +-
.../qemuxml2argv-console-compat-2.xml | 2 +-
...emuxml2argv-graphics-spice-auto-socket-cfg.args | 20 +
...qemuxml2argv-graphics-spice-auto-socket-cfg.xml | 30 +
.../qemuxml2argv-graphics-spice-auto-socket.args | 20 +
.../qemuxml2argv-graphics-spice-auto-socket.xml | 30 +
.../qemuxml2argv-graphics-spice-socket.args | 20 +
.../qemuxml2argv-graphics-spice-socket.xml | 30 +
.../qemuxml2argv-graphics-vnc-auto-socket-cfg.args | 22 +
.../qemuxml2argv-graphics-vnc-auto-socket-cfg.xml | 34 ++
.../qemuxml2argv-graphics-vnc-auto-socket.args | 20 +
.../qemuxml2argv-graphics-vnc-auto-socket.xml | 30 +
.../qemuxml2argv-graphics-vnc-autosocket.args | 22 -
.../qemuxml2argv-graphics-vnc-autosocket.xml | 34 --
.../qemuxml2argv-graphics-vnc-socket.args | 4 +-
.../qemuxml2argv-graphics-vnc-socket.xml | 10 +-
.../qemuxml2argv-video-virtio-gpu-spice-gl.args | 2 +-
tests/qemuxml2argvtest.c | 16 +
.../qemuxml2xmlout-graphics-listen-network.xml | 2 +-
.../qemuxml2xmlout-graphics-listen-network2.xml | 4 +-
...muxml2xmlout-graphics-spice-auto-socket-cfg.xml | 35 ++
.../qemuxml2xmlout-graphics-spice-auto-socket.xml | 35 ++
.../qemuxml2xmlout-graphics-spice-compression.xml | 2 +-
.../qemuxml2xmlout-graphics-spice-qxl-vga.xml | 2 +-
.../qemuxml2xmlout-graphics-spice-socket.xml | 35 ++
.../qemuxml2xmlout-graphics-spice-timeout.xml | 4 +-
.../qemuxml2xmlout-graphics-spice.xml | 2 +-
...qemuxml2xmlout-graphics-vnc-auto-socket-cfg.xml | 41 ++
.../qemuxml2xmlout-graphics-vnc-auto-socket.xml | 35 ++
.../qemuxml2xmlout-graphics-vnc-autosocket.xml | 39 --
.../qemuxml2xmlout-graphics-vnc-no-listen-attr.xml | 2 +-
.../qemuxml2xmlout-graphics-vnc-sasl.xml | 2 +-
.../qemuxml2xmlout-graphics-vnc-socket.xml | 35 ++
.../qemuxml2xmlout-graphics-vnc-tls.xml | 2 +-
.../qemuxml2xmlout-graphics-vnc-websocket.xml | 2 +-
.../qemuxml2xmlout-graphics-vnc.xml | 2 +-
.../qemuxml2xmlout-interface-server.xml | 4 +-
.../qemuxml2xmlout-net-bandwidth.xml | 4 +-
.../qemuxml2xmlout-net-bandwidth2.xml | 4 +-
.../qemuxml2xmlout-pci-bridge.xml | 2 +-
...emuxml2xmlout-seclabel-dynamic-none-relabel.xml | 2 +-
.../qemuxml2xmlout-serial-spiceport.xml | 2 +-
.../qemuxml2xmlout-video-virtio-gpu-spice-gl.xml | 3 +-
tests/qemuxml2xmltest.c | 19 +-
tests/sexpr2xmldata/sexpr2xml-curmem.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-empty-kernel.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-force-hpet.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-force-nohpet.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-localtime.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-net-netfront.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-parallel-tcp.xml | 4 +-
.../sexpr2xml-fv-serial-dev-2-ports.xml | 4 +-
.../sexpr2xml-fv-serial-dev-2nd-port.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-serial-file.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-serial-null.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-serial-pipe.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-serial-pty.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-serial-stdio.xml | 4 +-
.../sexpr2xml-fv-serial-tcp-telnet.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-serial-udp.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-serial-unix.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-sound-all.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-sound.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-usbmouse.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-usbtablet.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-utc.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv-v2.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-fv.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-no-source-cdrom.xml | 4 +-
.../sexpr2xml-pv-vfb-new-vncdisplay.xml | 2 +-
tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.xml | 2 +-
.../sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml | 4 +-
tests/sexpr2xmldata/sexpr2xml-vif-rate.xml | 4 +-
tests/vmx2xmldata/vmx2xml-graphics-vnc.xml | 4 +-
.../test-disk-positional-parms-full.xml | 2 +-
.../test-disk-positional-parms-partial.xml | 2 +-
...est-fullvirt-direct-kernel-boot-bogus-extra.xml | 2 +-
.../test-fullvirt-direct-kernel-boot-extra.xml | 2 +-
.../test-fullvirt-direct-kernel-boot.xml | 2 +-
tests/xlconfigdata/test-fullvirt-multiusb.xml | 2 +-
tests/xlconfigdata/test-fullvirt-nohap.xml | 2 +-
tests/xlconfigdata/test-new-disk.xml | 2 +-
tests/xlconfigdata/test-rbd-multihost-noauth.xml | 2 +-
tests/xlconfigdata/test-spice-features.xml | 2 +-
tests/xlconfigdata/test-spice.xml | 2 +-
tests/xlconfigdata/test-vif-rate.xml | 2 +-
tests/xmconfigdata/test-escape-paths.xml | 2 +-
.../xmconfigdata/test-fullvirt-default-feature.xml | 2 +-
tests/xmconfigdata/test-fullvirt-force-hpet.xml | 2 +-
tests/xmconfigdata/test-fullvirt-force-nohpet.xml | 2 +-
tests/xmconfigdata/test-fullvirt-localtime.xml | 2 +-
tests/xmconfigdata/test-fullvirt-net-netfront.xml | 2 +-
tests/xmconfigdata/test-fullvirt-new-cdrom.xml | 2 +-
tests/xmconfigdata/test-fullvirt-nohap.xml | 2 +-
tests/xmconfigdata/test-fullvirt-parallel-tcp.xml | 2 +-
.../test-fullvirt-serial-dev-2-ports.xml | 2 +-
.../test-fullvirt-serial-dev-2nd-port.xml | 2 +-
tests/xmconfigdata/test-fullvirt-serial-file.xml | 2 +-
tests/xmconfigdata/test-fullvirt-serial-null.xml | 2 +-
tests/xmconfigdata/test-fullvirt-serial-pipe.xml | 2 +-
tests/xmconfigdata/test-fullvirt-serial-pty.xml | 2 +-
tests/xmconfigdata/test-fullvirt-serial-stdio.xml | 2 +-
.../test-fullvirt-serial-tcp-telnet.xml | 2 +-
tests/xmconfigdata/test-fullvirt-serial-tcp.xml | 2 +-
tests/xmconfigdata/test-fullvirt-serial-udp.xml | 2 +-
tests/xmconfigdata/test-fullvirt-serial-unix.xml | 2 +-
tests/xmconfigdata/test-fullvirt-sound.xml | 2 +-
tests/xmconfigdata/test-fullvirt-usbmouse.xml | 2 +-
tests/xmconfigdata/test-fullvirt-usbtablet.xml | 2 +-
tests/xmconfigdata/test-fullvirt-utc.xml | 2 +-
tests/xmconfigdata/test-no-source-cdrom.xml | 4 +-
tests/xmconfigdata/test-paravirt-net-e1000.xml | 2 +-
tests/xmconfigdata/test-paravirt-net-vifname.xml | 2 +-
.../test-paravirt-new-pvfb-vncdisplay.xml | 2 +-
tests/xmconfigdata/test-paravirt-new-pvfb.xml | 2 +-
tests/xmconfigdata/test-pci-devs.xml | 4 +-
172 files changed, 2310 insertions(+), 987 deletions(-)
create mode 100644
tests/genericxml2xmlindata/generic-graphics-listen-back-compat-ports.xml
create mode 100644
tests/genericxml2xmlindata/generic-graphics-vnc-listen-element-with-address-port.xml
create mode 100644
tests/genericxml2xmlindata/generic-graphics-vnc-socket-attr-listen-address.xml
create mode 100644
tests/genericxml2xmlindata/generic-graphics-vnc-socket-attr-listen-socket-mismatch.xml
create mode 100644
tests/genericxml2xmlindata/generic-graphics-vnc-socket-attr-listen-socket.xml
create mode 100644
tests/genericxml2xmloutdata/generic-graphics-listen-back-compat-ports.xml
create mode 100644
tests/genericxml2xmloutdata/generic-graphics-vnc-listen-element-with-address-port.xml
create mode 100644
tests/genericxml2xmloutdata/generic-graphics-vnc-socket-attr-listen-address.xml
create mode 100644
tests/genericxml2xmloutdata/generic-graphics-vnc-socket-attr-listen-socket.xml
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-auto-socket-cfg.args
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-auto-socket-cfg.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-auto-socket.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-auto-socket.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-socket.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-socket.xml
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket-cfg.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket-cfg.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket.xml
delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-autosocket.args
delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-autosocket.xml
create mode 100644
tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-auto-socket-cfg.xml
create mode 100644
tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-auto-socket.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-socket.xml
create mode 100644
tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-auto-socket-cfg.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-auto-socket.xml
delete mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-autosocket.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-socket.xml
--
2.8.2
--
libvir-list mailing list
libvir-list(a)redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list