v1->v2:
changed attribute name from 'policy' to 'sharePolicy'
renamed caps flag name: QEMU_CAPS_VNC_SHARE_POLICY
fixed issues pointed out in v1 review
have to keep hard-coded version probe after checking qemu -help and qmp command.
These patches try to add a new attribute 'sharePolicy' to element graphics of
vnc type. This attribute has three values:
libvirt XML: <graphics type='vnc' port='5900'
sharePolicy='allow-exclusive'>
QEMU commandline -vnc :5900,share=allow-exclusive
Allows clients to ask for exclusive access which is
implemented by dropping other connections Connecting
multiple clients in parallel requires all clients asking
for a shared session (vncviewer: -shared switch)
libvirt XML: <graphics type='vnc' port='5900'
sharePolicy='force-shared'>
QEMU commandline -vnc :5900,share=force-shared
Disables exclusive client access. Useful for shared
desktop sessions, where you don't want someone forgetting
specify -shared disconnect everybody else.
libvirt XML: <graphics type='vnc' port='5900'
sharePolicy='ignore'>
QEMU commandline -vnc :5900,share=ignore
Dompletely ignores the shared flag and allows everybody
connect unconditionally
Guannan Ren(3)
[PATCH v2 1/3] qemu: new vnc display sharing policy caps flag
[PATCH v2 2/3] conf: add 'sharePolicy' attribute to graphics element for vnc
[PATCH v2 3/3] qemu: support share attribute and its values to -vnc
docs/formatdomain.html.in | 13 +++++++++++--
docs/schemas/domaincommon.rng | 9 +++++++++
src/conf/domain_conf.c | 28
++++++++++++++++++++++++++++
src/conf/domain_conf.h | 11 +++++++++++
src/libvirt_private.syms | 2 ++
src/qemu/qemu_capabilities.c | 12 ++++++++----
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 13 +++++++++++++
tests/qemuhelptest.c | 9 ++++++---
tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-policy.args | 4 ++++
tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-policy.xml | 35
+++++++++++++++++++++++++++++++++++
tests/qemuxml2argvtest.c | 1 +
12 files changed, 129 insertions(+), 9 deletions(-)