On 2014/12/2 0:40, Eric Blake wrote: > On 11/29/2014 03:39 AM, arei.gong...@huawei.com wrote: >> From: Gonglei <arei.gong...@huawei.com> >> >> Example QMP command of Change VNC keyboard layout: >> >> -> { "execute": "change", >> "arguments": { "device": "vnc", "target": "keymap", >> "arg": "de" } } >> <- { "return": {} } > > As I said in the cover letter, we should NOT be adding stuff to the > broken 'change' command, but should instead add a new command. >
OK. >> >> Signed-off-by: Gonglei <arei.gong...@huawei.com> >> --- >> qapi-schema.json | 8 +++++--- >> qmp.c | 17 +++++++++++++++++ >> 2 files changed, 22 insertions(+), 3 deletions(-) >> >> diff --git a/qapi-schema.json b/qapi-schema.json >> index 9ffdcf8..8c02a9f 100644 >> --- a/qapi-schema.json >> +++ b/qapi-schema.json >> @@ -1552,13 +1552,15 @@ >> # >> # @target: If @device is a block device, then this is the new filename. >> # If @device is 'vnc', then if the value 'password' selects the vnc >> -# change password command. Otherwise, this specifies a new >> server URI >> +# change password command, if the value 'keymap'selects the vnc >> change > > s/'keymap'selects/'keymap' selects/ > >> +# keyboard layout command. Otherwise, this specifies a new server >> URI >> # address to listen to for VNC connections. >> # >> # @arg: If @device is a block device, then this is an optional format to >> open >> # the device with. >> -# If @device is 'vnc' and @target is 'password', this is the new >> VNC >> -# password to set. If this argument is an empty string, then no >> future >> +# If @device is 'vnc' and if @target is 'password', this is the >> new VNC >> +# password to set; if @target is 'keymap', this is the new VNC >> keyboard >> +# layout to set. If this argument is an empty string, then no >> future >> # logins will be allowed. > > Not discoverable. As proposed, libvirt has no way of knowing if qemu is > new enough to support this horrible hack. A new command has multiple > benefits: it would be discoverable ('query-commands') and type-safe > (none of this horrid overloading of special text values). > Great! Thank you so much for your comments, Eric. I will add a new QMP command for this. Regards, -Gonglei