[libvirt] [PATCH v4] graphics: add support for action_if_connected in qemu

Michal Privoznik mprivozn at redhat.com
Thu Jul 7 08:59:27 UTC 2011


On 06.07.2011 00:34, Eric Blake wrote:
> On 07/04/2011 02:48 AM, Michal Privoznik wrote:
>> This option accepts 3 values:
>> -keep, to keep current client connected (Spice+VNC)
>> -disconnect, to disconnect client (Spice)
>> -fail, to fail setting password if there is a client connected (Spice)
>> ---
>> diff to v3:
>> -rebase to current HEAD & resend
>>
>> diff to v2:
>> -fixed typo
>> -added test. However, functionality provided by this patch will show up
>>  only when talking to qemu monitor (set_password command).
>>
>>  diff to v1:
>>  -Eric's review suggestions included
>>  -update 'Since'
>>
>>  docs/formatdomain.html.in                          |   13 +++++-
>>  docs/schemas/domain.rng                            |   16 +++++++
>>  src/conf/domain_conf.c                             |   44 ++++++++++++++++++-
>>  src/conf/domain_conf.h                             |   11 +++++
>>  src/libvirt_private.syms                           |    2 +
>>  src/qemu/qemu_hotplug.c                            |   15 +++++-
>>  .../qemuxml2argv-graphics-spice-timeout.xml        |    2 +-
>>  7 files changed, 94 insertions(+), 9 deletions(-)
> 
> This patch changes the .xml, but not the corresponding .args file, which
> to me says it is probably incomplete.  We covered the case of changing
> the attribute affecting qemu_hotplug:
> 
>> +++ b/src/qemu/qemu_hotplug.c
>> @@ -1065,10 +1065,12 @@ qemuDomainChangeGraphics(struct qemud_driver *driver,
>>              return -1;
>>          }
>>  
>> -        /* If a password lifetime was, or is set, then we must always run,
>> -         * even if new password matches old password */
>> +        /* If a password lifetime was, or is set, or action if connected has
>> +         * changed, then we must always run, even if new password matches
>> +         * old password */
>>          if (olddev->data.vnc.auth.expires ||
>>              dev->data.vnc.auth.expires ||
>> +            olddev->data.vnc.auth.connected != dev->data.vnc.auth.connected ||
> 
> But shouldn't we also handle the case of setting the property up front
> in the initial qemu -spice command line argument, meaning a change is
> also needed to qemu_command.c?
> 
No. This is purely QMP thing. qemu -spice does not have any option for
setting this (the current git version at least). That .xml vs .args
change: I've changed .xml so we can test RNG scheme. There is nothing to
add to .args.

Michal




More information about the libvir-list mailing list