Hey, On Wed, May 11, 2016 at 05:08:25PM +0200, Pavel Hrdina wrote: > Introduce a new listen type that will be used to tell a graphics device > to listen on unix socket and use it for VNC graphics instead of socket > attribute. The socket attribute will remain in the XML for backward > compatibility. > > Since old libvirt supports 'socket' attribute inside 'graphics' element > for socket path provided by user libvirt will generate migratable XML > without that listen type='socket' but only with 'socket' attribute in > order to be able to migrate back to old libvirt. > > Signed-off-by: Pavel Hrdina <phrdina@xxxxxxxxxx> > --- > docs/formatdomain.html.in | 16 +++ > docs/schemas/domaincommon.rng | 10 ++ > src/conf/domain_conf.c | 119 ++++++++++++++++----- > src/conf/domain_conf.h | 8 +- > src/libvirt_private.syms | 1 + > src/qemu/qemu_command.c | 45 ++++---- > src/qemu/qemu_domain.c | 19 ++-- > src/qemu/qemu_hotplug.c | 9 ++ > src/qemu/qemu_parse_command.c | 2 +- > src/qemu/qemu_process.c | 47 ++++++-- > src/security/virt-aa-helper.c | 15 ++- > .../generic-graphics-vnc-socket-listen.xml | 4 +- > .../generic-graphics-vnc-socket.xml | 4 +- > .../qemuargv2xml-graphics-vnc-socket.xml | 4 +- > .../qemuxml2argv-graphics-vnc-auto-socket.args | 20 ++++ > .../qemuxml2argv-graphics-vnc-auto-socket.xml | 30 ++++++ > .../qemuxml2argv-graphics-vnc-socket.args | 4 +- > .../qemuxml2argv-graphics-vnc-socket.xml | 10 +- > tests/qemuxml2argvtest.c | 2 + > .../qemuxml2xmlout-graphics-vnc-auto-socket.xml | 35 ++++++ > .../qemuxml2xmlout-graphics-vnc-autosocket.xml | 4 +- > .../qemuxml2xmlout-graphics-vnc-socket.xml | 35 ++++++ > tests/qemuxml2xmltest.c | 2 + > 23 files changed, 361 insertions(+), 84 deletions(-) > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket.args > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-auto-socket.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-socket.xml > > diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in > index b0847b7..f67076d 100644 > --- a/docs/formatdomain.html.in > +++ b/docs/formatdomain.html.in > @@ -5359,6 +5359,22 @@ qemu-kvm -net nic,model=? /dev/null > <code>address</code>. > </p> > </dd> > + <dt><code>socket</code> <span class="since">since 1.3.5</span></dt> > + <dd> > + <p> > + This listen type tells a graphics server to listen on unix socket. > + Attribute <code>socket</code> contains a path to unix socket. If this > + attribute is omitted libvirt will generate this path for you. > + Supported by graphics type <code>vnc</code>. > + </p> > + <p> > + For <code>vnc</code> graphics be backward compatible > + the <code>socket</code> attribute of first <code>listen</code> element > + is duplicated as <code>socket</code> attribute in <code>graphics</code> > + element. If <code>graphics</code> element contains a <code>socket</code> > + attribute all <code>listen</code> elements are ignored. > + </p> If both a socket attribute and a listen type="socket" node are present, shouldn't this check if they are using the same path? This is what is done for 'listen' attribute and listen type="address", but I could not find the same thing in this patch. > + </dd> > </dl> > > <h4><a name="elementsVideo">Video devices</a></h4> > diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng > index e7eda77..e3dbcc6 100644 > --- a/docs/schemas/domaincommon.rng > +++ b/docs/schemas/domaincommon.rng > @@ -3014,6 +3014,16 @@ > </attribute> > </optional> > </group> > + <group> > + <attribute name="type"> > + <value>socket</value> > + </attribute> > + <optional> > + <attribute name="socket"> > + <ref name="absFilePath"/> > + </attribute> > + </optional> > + </group> Imo this would be better as <listen type="unix" socket="/some/path"/> This would be more consistent with /disk/source/host vhost-user also uses type="unix" but with a path attribute rather than socket There is also <channel type="unix"> (again with 'path' rather than 'socket'). Christophe
Attachment:
signature.asc
Description: PGP signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list