[libvirt] [PATCH v9 2/7] conf: Add a keyboard input device type

Li Zhang zhlcindy at gmail.com
Wed Feb 19 06:22:47 UTC 2014


On 2014年02月18日 20:51, Ján Tomko wrote:
> On 02/17/2014 11:17 AM, Li Zhang wrote:
>> From: Li Zhang <zhlcindy at linux.vnet.ibm.com>
>>
>> There is no keyboard support currently in libvirt .
>> For some platforms, it needs to add a USB keyboard when graphics are enabled.
>>
>> This patch is to add keyboard input device type.
>>
>> Signed-off-by: Li Zhang <zhlcindy at linux.vnet.ibm.com>
>> ---
>>   docs/schemas/domaincommon.rng                      |  1 +
>>   src/conf/domain_conf.c                             | 70 ++++++++++++----------
>>   src/conf/domain_conf.h                             |  1 +
> ...
>>   tests/vmx2xmldata/vmx2xml-graphics-vnc.xml         |  1 +
>>   27 files changed, 66 insertions(+), 31 deletions(-)
>>
> This fails 'make check' for me:
> FAIL: sexpr2xmltest
> FAIL: xmconfigtest

Ah, I can't get any errors when doing 'make check' on my side. :(

>
>> @@ -7805,9 +7806,10 @@ virDomainInputDefParseXML(const char *ostype,
>>               goto error;
>>           }
>>   
>> -        if (STREQ(ostype, "hvm")) {
>> -            if (def->bus == VIR_DOMAIN_INPUT_BUS_PS2 && /* Only allow mouse for ps2 */
>> -                def->type != VIR_DOMAIN_INPUT_TYPE_MOUSE) {
>> +        if (STREQ(dom->os.type, "hvm")) {
>> +            if (def->bus == VIR_DOMAIN_INPUT_BUS_PS2 && /* PS2 can be mouse or keyboard */
>> +                !(def->type == VIR_DOMAIN_INPUT_TYPE_MOUSE ||
>> +                def->type == VIR_DOMAIN_INPUT_TYPE_KBD)) {
> This is easier to read as:
> def->type != MOUSE && def->type != KBD
>
>>                   virReportError(VIR_ERR_INTERNAL_ERROR,
>>                                  _("ps2 bus does not support %s input device"),
>>                                  type);
>> @@ -7833,8 +7836,9 @@ virDomainInputDefParseXML(const char *ostype,
>>               }
>>           }
>>       } else {
>> -        if (STREQ(ostype, "hvm")) {
>> -            if (def->type == VIR_DOMAIN_INPUT_TYPE_MOUSE)
>> +        if (STREQ(dom->os.type, "hvm")) {
>> +            if ((def->type == VIR_DOMAIN_INPUT_TYPE_MOUSE ||
>> +                def->type == VIR_DOMAIN_INPUT_TYPE_KBD))
> Trailing space breaks 'make syntax-check'
>
>>                   def->bus = VIR_DOMAIN_INPUT_BUS_PS2;
>>               else
>>                   def->bus = VIR_DOMAIN_INPUT_BUS_USB;
>> @@ -12491,29 +12497,26 @@ virDomainDefParseXML(xmlDocPtr xml,
>>       VIR_FREE(nodes);
>>   
>>       /* If graphics are enabled, there's an implicit PS2 mouse */
>> -    if (def->ngraphics > 0) {
>> -        virDomainInputDefPtr input;
>> +    if (def->ngraphics > 0) {
> Another trailing space.
>
>> +        int input_bus = VIR_DOMAIN_INPUT_BUS_XEN;
>>   
>> -        if (VIR_ALLOC(input) < 0) {
>> -            goto error;
>> -        }
>> -        if (STREQ(def->os.type, "hvm")) {
>> -            input->type = VIR_DOMAIN_INPUT_TYPE_MOUSE;
>> -            input->bus = VIR_DOMAIN_INPUT_BUS_PS2;
>> -        } else {
>> -            input->type = VIR_DOMAIN_INPUT_TYPE_MOUSE;
>> -            input->bus = VIR_DOMAIN_INPUT_BUS_XEN;
>> -        }
>> +        if (STREQ(def->os.type, "hvm"))
>> +            input_bus = VIR_DOMAIN_INPUT_BUS_PS2;
>>   
>> -        if (VIR_REALLOC_N(def->inputs, def->ninputs + 1) < 0) {
>> -            virDomainInputDefFree(input);
>> +        if (virDomainDefMaybeAddInput(def,
>> +                                      VIR_DOMAIN_INPUT_TYPE_MOUSE,
>> +                                      input_bus) < 0)
>>               goto error;
>> +
>> +        /*Ignore keyboard for XEN, only add a PS2 keyboard device for hvm*/
>> +        if (STREQ(def->os.type, "hvm")) {
> Xen has "hvm" domains too, and since we were adding the mouse for non-hvm
> domains, I think we should get rid of this condition and add keyboards too (I
> think this is different from what I said earlier)
>
>> +            if (virDomainDefMaybeAddInput(def,
>> +                                          VIR_DOMAIN_INPUT_TYPE_KBD,
>> +                                          input_bus) < 0)
>> +                goto error;
>>           }
>> -        def->inputs[def->ninputs] = input;
>> -        def->ninputs++;
>>       }
>>   
>> -
>>       /* analysis of the sound devices */
>>       if ((n = virXPathNodeSet("./devices/sound", ctxt, &nodes)) < 0) {
>>           goto error;
>> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
>> index f9fdf37..341322c 100644
>> --- a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
>> +++ b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
>> @@ -71,7 +71,9 @@
>>       </console>
>>       <input type='tablet' bus='usb'/>
>>       <input type='mouse' bus='ps2'/>
>> +    <input type='keyboard' bus='ps2'/>
>>       <graphics type='spice' port='5900' autoport='no' passwd='sercet' passwdValidTo='2011-05-31T16:11:22' connected='disconnect'/>
>> +    <input type='keyboard' bus='ps2'/>
>>       <sound model='ac97'>
>>         <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
>>       </sound>
> Double keyboard entry.
>
> ACK with this squashed in:
>
> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> index 5031441..75b87d1 100644
> --- a/src/conf/domain_conf.c
> +++ b/src/conf/domain_conf.c
> @@ -7808,9 +7808,9 @@ virDomainInputDefParseXML(const virDomainDef *dom,
>           }
>
>           if (STREQ(dom->os.type, "hvm")) {
> -            if (def->bus == VIR_DOMAIN_INPUT_BUS_PS2 && /* PS2 can be mouse
> or keyboard */
> -                !(def->type == VIR_DOMAIN_INPUT_TYPE_MOUSE ||
> -                def->type == VIR_DOMAIN_INPUT_TYPE_KBD)) {
> +            if (def->bus == VIR_DOMAIN_INPUT_BUS_PS2 &&
> +                def->type != VIR_DOMAIN_INPUT_TYPE_MOUSE &&
> +                def->type != VIR_DOMAIN_INPUT_TYPE_KBD) {
>                   virReportError(VIR_ERR_INTERNAL_ERROR,
>                                  _("ps2 bus does not support %s input device"),
>                                  type);
> @@ -7839,7 +7839,7 @@ virDomainInputDefParseXML(const virDomainDef *dom,
>       } else {
>           if (STREQ(dom->os.type, "hvm")) {
>               if ((def->type == VIR_DOMAIN_INPUT_TYPE_MOUSE ||
> -                def->type == VIR_DOMAIN_INPUT_TYPE_KBD))
> +                def->type == VIR_DOMAIN_INPUT_TYPE_KBD))
>                   def->bus = VIR_DOMAIN_INPUT_BUS_PS2;
>               else
>                   def->bus = VIR_DOMAIN_INPUT_BUS_USB;
> @@ -12498,7 +12498,7 @@ virDomainDefParseXML(xmlDocPtr xml,
>       VIR_FREE(nodes);
>
>       /* If graphics are enabled, there's an implicit PS2 mouse */
> -    if (def->ngraphics > 0) {
> +    if (def->ngraphics > 0) {
>           int input_bus = VIR_DOMAIN_INPUT_BUS_XEN;
>
>           if (STREQ(def->os.type, "hvm"))
> @@ -12509,13 +12509,10 @@ virDomainDefParseXML(xmlDocPtr xml,
>                                         input_bus) < 0)
>               goto error;
>
> -        /*Ignore keyboard for XEN, only add a PS2 keyboard device for hvm*/
> -        if (STREQ(def->os.type, "hvm")) {
> -            if (virDomainDefMaybeAddInput(def,
> -                                          VIR_DOMAIN_INPUT_TYPE_KBD,
> -                                          input_bus) < 0)
> -                goto error;
> -        }
> +        if (virDomainDefMaybeAddInput(def,
> +                                      VIR_DOMAIN_INPUT_TYPE_KBD,
> +                                      input_bus) < 0)
> +            goto error;
>       }
>
>       /* analysis of the sound devices */
> @@ -17540,6 +17537,7 @@ virDomainDefFormatInternal(virDomainDefPtr def,
>               VIR_DOMAIN_INPUT_BUS_PS2 : VIR_DOMAIN_INPUT_BUS_XEN,
>               { .alias = NULL },
>           };
> +
>           if (virDomainInputDefFormat(buf, &autoInput, flags) < 0)
>               goto error;
>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
> b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
> index 341322c..e6ecbed 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
> @@ -73,7 +73,6 @@
>       <input type='mouse' bus='ps2'/>
>       <input type='keyboard' bus='ps2'/>
>       <graphics type='spice' port='5900' autoport='no' passwd='sercet'
> passwdValidTo='2011-05-31T16:11:22' connected='disconnect'/>
> -    <input type='keyboard' bus='ps2'/>
>       <sound model='ac97'>
>         <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
>       </sound>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-curmem.xml
> b/tests/sexpr2xmldata/sexpr2xml-curmem.xml
> index 1edc52b..2e68fc4 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-curmem.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-curmem.xml
> @@ -31,6 +31,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='-1' autoport='yes'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml
> index 9883a4b..0f29f03 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml
> @@ -43,6 +43,7 @@
>       </console>
>       <input type='tablet' bus='usb'/>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5925' autoport='yes' keymap='en-us'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-empty-kernel.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-empty-kernel.xml
> index d5b0f23..b5bd19b 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-empty-kernel.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-empty-kernel.xml
> @@ -36,6 +36,7 @@
>         <target dev='vif3.0'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-force-hpet.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-force-hpet.xml
> index ae45357..ae056c8 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-force-hpet.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-force-hpet.xml
> @@ -39,6 +39,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-force-nohpet.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-force-nohpet.xml
> index c502ff3..27090be 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-force-nohpet.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-force-nohpet.xml
> @@ -39,6 +39,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-localtime.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-localtime.xml
> index 837b97f..b896e51 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-localtime.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-localtime.xml
> @@ -36,6 +36,7 @@
>         <target dev='vif3.0'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-net-ioemu.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-net-ioemu.xml
> index ad2e212..8dda7ff 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-net-ioemu.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-net-ioemu.xml
> @@ -37,6 +37,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-net-netfront.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-net-netfront.xml
> index a70b005..788d319 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-net-netfront.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-net-netfront.xml
> @@ -37,6 +37,7 @@
>         <model type='netfront'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-parallel-tcp.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-parallel-tcp.xml
> index 1c667cc..a9450ec 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-parallel-tcp.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-parallel-tcp.xml
> @@ -41,6 +41,7 @@
>         <target port='0'/>
>       </parallel>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-dev-2-ports.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-dev-2-ports.xml
> index 8938ee3..f05db8d 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-dev-2-ports.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-dev-2-ports.xml
> @@ -48,6 +48,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-dev-2nd-port.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-dev-2nd-port.xml
> index 96062cf..10a331e 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-dev-2nd-port.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-dev-2nd-port.xml
> @@ -44,6 +44,7 @@
>         <target type='serial' port='1'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-file.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-file.xml
> index 3dcd7e7..c1c717e 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-file.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-file.xml
> @@ -44,6 +44,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-null.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-null.xml
> index 301c3ee..ea19144 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-null.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-null.xml
> @@ -42,6 +42,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-pipe.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-pipe.xml
> index e6e6e5d..447d4a3 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-pipe.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-pipe.xml
> @@ -44,6 +44,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-pty.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-pty.xml
> index f2e7952..328bc45 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-pty.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-pty.xml
> @@ -42,6 +42,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-stdio.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-stdio.xml
> index 9a4e1cb..5a92433 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-stdio.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-stdio.xml
> @@ -42,6 +42,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp-telnet.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp-telnet.xml
> index 4ba84cd..1f800bc 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp-telnet.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp-telnet.xml
> @@ -46,6 +46,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp.xml
> index 11f7daa..23dabbd 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp.xml
> @@ -46,6 +46,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-udp.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-udp.xml
> index 90c89f3..29ba6e5 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-udp.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-udp.xml
> @@ -46,6 +46,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-serial-unix.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-serial-unix.xml
> index b67df0f..0379e0d 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-serial-unix.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-serial-unix.xml
> @@ -44,6 +44,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5901' autoport='no'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-sound-all.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-sound-all.xml
> index ba0f7e1..0785041 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-sound-all.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-sound-all.xml
> @@ -36,6 +36,7 @@
>         <target dev='vif3.0'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>       <sound model='sb16'/>
>       <sound model='es1370'/>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-sound.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-sound.xml
> index ba0f7e1..0785041 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-sound.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-sound.xml
> @@ -36,6 +36,7 @@
>         <target dev='vif3.0'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>       <sound model='sb16'/>
>       <sound model='es1370'/>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-usbmouse.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-usbmouse.xml
> index 6a7bec4..b9c2aaf 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-usbmouse.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-usbmouse.xml
> @@ -37,6 +37,7 @@
>       </interface>
>       <input type='mouse' bus='usb'/>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-usbtablet.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-usbtablet.xml
> index 31fbeea..44a0867 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-usbtablet.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-usbtablet.xml
> @@ -37,6 +37,7 @@
>       </interface>
>       <input type='tablet' bus='usb'/>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-utc.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-utc.xml
> index 3da882b..584fbfb 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-utc.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-utc.xml
> @@ -36,6 +36,7 @@
>         <target dev='vif3.0'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-v2.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv-v2.xml
> index 7bbe780..f910412 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv-v2.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv-v2.xml
> @@ -36,6 +36,7 @@
>         <target dev='vif3.0'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' keymap='ja'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-fv.xml
> b/tests/sexpr2xmldata/sexpr2xml-fv.xml
> index 3da882b..584fbfb 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-fv.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-fv.xml
> @@ -36,6 +36,7 @@
>         <target dev='vif3.0'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='5903' autoport='no' keymap='ja'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-no-source-cdrom.xml
> b/tests/sexpr2xmldata/sexpr2xml-no-source-cdrom.xml
> index 1cd5d68..055b0d3 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-no-source-cdrom.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-no-source-cdrom.xml
> @@ -41,6 +41,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes'/>
>     </devices>
>   </domain>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-new-vncdisplay.xml
> b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-new-vncdisplay.xml
> index 74d4316..e8c3cda 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-new-vncdisplay.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-new-vncdisplay.xml
> @@ -24,6 +24,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='5925' autoport='no' listen='0.0.0.0' keymap='ja'>
>         <listen type='address' address='0.0.0.0'/>
>       </graphics>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.xml
> b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.xml
> index d6b81bf..365d3c9 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.xml
> @@ -24,6 +24,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' keymap='ja'>
>         <listen type='address' address='0.0.0.0'/>
>       </graphics>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-orig.xml
> b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-orig.xml
> index d6b81bf..365d3c9 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-orig.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-orig.xml
> @@ -24,6 +24,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' keymap='ja'>
>         <listen type='address' address='0.0.0.0'/>
>       </graphics>
> diff --git a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml
> b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml
> index 6f22dd4..5333292 100644
> --- a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml
> +++ b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml
> @@ -29,6 +29,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='-1' autoport='yes'/>
>     </devices>
>   </domain>
> diff --git a/tests/xmconfigdata/test-escape-paths.xml
> b/tests/xmconfigdata/test-escape-paths.xml
> index 40c9b3e..de3a7e2 100644
> --- a/tests/xmconfigdata/test-escape-paths.xml
> +++ b/tests/xmconfigdata/test-escape-paths.xml
> @@ -43,6 +43,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-force-hpet.xml
> b/tests/xmconfigdata/test-fullvirt-force-hpet.xml
> index bb74bae..75f8724 100644
> --- a/tests/xmconfigdata/test-fullvirt-force-hpet.xml
> +++ b/tests/xmconfigdata/test-fullvirt-force-hpet.xml
> @@ -40,6 +40,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-force-nohpet.xml
> b/tests/xmconfigdata/test-fullvirt-force-nohpet.xml
> index 1f45c73..e5741b6 100644
> --- a/tests/xmconfigdata/test-fullvirt-force-nohpet.xml
> +++ b/tests/xmconfigdata/test-fullvirt-force-nohpet.xml
> @@ -40,6 +40,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-localtime.xml
> b/tests/xmconfigdata/test-fullvirt-localtime.xml
> index 2fba66e..8b97e5b 100644
> --- a/tests/xmconfigdata/test-fullvirt-localtime.xml
> +++ b/tests/xmconfigdata/test-fullvirt-localtime.xml
> @@ -38,6 +38,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-net-ioemu.xml
> b/tests/xmconfigdata/test-fullvirt-net-ioemu.xml
> index d34368e..f22c085 100644
> --- a/tests/xmconfigdata/test-fullvirt-net-ioemu.xml
> +++ b/tests/xmconfigdata/test-fullvirt-net-ioemu.xml
> @@ -38,6 +38,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-net-netfront.xml
> b/tests/xmconfigdata/test-fullvirt-net-netfront.xml
> index bba4ae5..177bb6a 100644
> --- a/tests/xmconfigdata/test-fullvirt-net-netfront.xml
> +++ b/tests/xmconfigdata/test-fullvirt-net-netfront.xml
> @@ -38,6 +38,7 @@
>         <model type='netfront'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-new-cdrom.xml
> b/tests/xmconfigdata/test-fullvirt-new-cdrom.xml
> index d34368e..f22c085 100644
> --- a/tests/xmconfigdata/test-fullvirt-new-cdrom.xml
> +++ b/tests/xmconfigdata/test-fullvirt-new-cdrom.xml
> @@ -38,6 +38,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-old-cdrom.xml
> b/tests/xmconfigdata/test-fullvirt-old-cdrom.xml
> index 78c8a88..a592630 100644
> --- a/tests/xmconfigdata/test-fullvirt-old-cdrom.xml
> +++ b/tests/xmconfigdata/test-fullvirt-old-cdrom.xml
> @@ -38,6 +38,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-parallel-tcp.xml
> b/tests/xmconfigdata/test-fullvirt-parallel-tcp.xml
> index 2b52e03..738e5ab 100644
> --- a/tests/xmconfigdata/test-fullvirt-parallel-tcp.xml
> +++ b/tests/xmconfigdata/test-fullvirt-parallel-tcp.xml
> @@ -43,6 +43,7 @@
>         <target port='0'/>
>       </parallel>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-dev-2-ports.xml
> b/tests/xmconfigdata/test-fullvirt-serial-dev-2-ports.xml
> index af38ee5..753831a 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-dev-2-ports.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-dev-2-ports.xml
> @@ -50,6 +50,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-dev-2nd-port.xml
> b/tests/xmconfigdata/test-fullvirt-serial-dev-2nd-port.xml
> index 93cf83d..1a55080 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-dev-2nd-port.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-dev-2nd-port.xml
> @@ -46,6 +46,7 @@
>         <target type='serial' port='1'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-file.xml
> b/tests/xmconfigdata/test-fullvirt-serial-file.xml
> index 6d51f71..0d2ac79 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-file.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-file.xml
> @@ -46,6 +46,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-null.xml
> b/tests/xmconfigdata/test-fullvirt-serial-null.xml
> index 59bac70..d4b4ae9 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-null.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-null.xml
> @@ -44,6 +44,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-pipe.xml
> b/tests/xmconfigdata/test-fullvirt-serial-pipe.xml
> index dd8ffbc..6596dfc 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-pipe.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-pipe.xml
> @@ -46,6 +46,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-pty.xml
> b/tests/xmconfigdata/test-fullvirt-serial-pty.xml
> index 9561ca2..6c55abb 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-pty.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-pty.xml
> @@ -44,6 +44,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-stdio.xml
> b/tests/xmconfigdata/test-fullvirt-serial-stdio.xml
> index 4fb6908..461f143 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-stdio.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-stdio.xml
> @@ -44,6 +44,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-tcp-telnet.xml
> b/tests/xmconfigdata/test-fullvirt-serial-tcp-telnet.xml
> index ba2ae7e..d2fa7bf 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-tcp-telnet.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-tcp-telnet.xml
> @@ -48,6 +48,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-tcp.xml
> b/tests/xmconfigdata/test-fullvirt-serial-tcp.xml
> index a47b4e8..60ab8bd 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-tcp.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-tcp.xml
> @@ -48,6 +48,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-udp.xml
> b/tests/xmconfigdata/test-fullvirt-serial-udp.xml
> index e939229..6c21cd2 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-udp.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-udp.xml
> @@ -48,6 +48,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-serial-unix.xml
> b/tests/xmconfigdata/test-fullvirt-serial-unix.xml
> index 3166e70..f21534e 100644
> --- a/tests/xmconfigdata/test-fullvirt-serial-unix.xml
> +++ b/tests/xmconfigdata/test-fullvirt-serial-unix.xml
> @@ -46,6 +46,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-sound.xml
> b/tests/xmconfigdata/test-fullvirt-sound.xml
> index 3011a47..f09c16d 100644
> --- a/tests/xmconfigdata/test-fullvirt-sound.xml
> +++ b/tests/xmconfigdata/test-fullvirt-sound.xml
> @@ -38,6 +38,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-usbmouse.xml
> b/tests/xmconfigdata/test-fullvirt-usbmouse.xml
> index 26fbae5..18a7ff0 100644
> --- a/tests/xmconfigdata/test-fullvirt-usbmouse.xml
> +++ b/tests/xmconfigdata/test-fullvirt-usbmouse.xml
> @@ -39,6 +39,7 @@
>       </interface>
>       <input type='mouse' bus='usb'/>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-usbtablet.xml
> b/tests/xmconfigdata/test-fullvirt-usbtablet.xml
> index 7e2e6c7..5cbb007 100644
> --- a/tests/xmconfigdata/test-fullvirt-usbtablet.xml
> +++ b/tests/xmconfigdata/test-fullvirt-usbtablet.xml
> @@ -39,6 +39,7 @@
>       </interface>
>       <input type='tablet' bus='usb'/>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-fullvirt-utc.xml
> b/tests/xmconfigdata/test-fullvirt-utc.xml
> index d34368e..f22c085 100644
> --- a/tests/xmconfigdata/test-fullvirt-utc.xml
> +++ b/tests/xmconfigdata/test-fullvirt-utc.xml
> @@ -38,6 +38,7 @@
>         <model type='e1000'/>
>       </interface>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-no-source-cdrom.xml
> b/tests/xmconfigdata/test-no-source-cdrom.xml
> index 697ba2f..2a457b2 100644
> --- a/tests/xmconfigdata/test-no-source-cdrom.xml
> +++ b/tests/xmconfigdata/test-no-source-cdrom.xml
> @@ -43,6 +43,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes'/>
>     </devices>
>   </domain>
> diff --git a/tests/xmconfigdata/test-paravirt-net-e1000.xml
> b/tests/xmconfigdata/test-paravirt-net-e1000.xml
> index 4fa2a2d..3466344 100644
> --- a/tests/xmconfigdata/test-paravirt-net-e1000.xml
> +++ b/tests/xmconfigdata/test-paravirt-net-e1000.xml
> @@ -28,6 +28,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-paravirt-net-vifname.xml
> b/tests/xmconfigdata/test-paravirt-net-vifname.xml
> index 2a93918..20d96aa 100644
> --- a/tests/xmconfigdata/test-paravirt-net-vifname.xml
> +++ b/tests/xmconfigdata/test-paravirt-net-vifname.xml
> @@ -29,6 +29,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-paravirt-new-pvfb-vncdisplay.xml
> b/tests/xmconfigdata/test-paravirt-new-pvfb-vncdisplay.xml
> index 4ee8329..c02963d 100644
> --- a/tests/xmconfigdata/test-paravirt-new-pvfb-vncdisplay.xml
> +++ b/tests/xmconfigdata/test-paravirt-new-pvfb-vncdisplay.xml
> @@ -27,6 +27,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='5925' autoport='no' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-paravirt-new-pvfb.xml
> b/tests/xmconfigdata/test-paravirt-new-pvfb.xml
> index 1b3a05a..ee25550 100644
> --- a/tests/xmconfigdata/test-paravirt-new-pvfb.xml
> +++ b/tests/xmconfigdata/test-paravirt-new-pvfb.xml
> @@ -27,6 +27,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-paravirt-old-pvfb-vncdisplay.xml
> b/tests/xmconfigdata/test-paravirt-old-pvfb-vncdisplay.xml
> index 4ee8329..c02963d 100644
> --- a/tests/xmconfigdata/test-paravirt-old-pvfb-vncdisplay.xml
> +++ b/tests/xmconfigdata/test-paravirt-old-pvfb-vncdisplay.xml
> @@ -27,6 +27,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='5925' autoport='no' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-paravirt-old-pvfb.xml
> b/tests/xmconfigdata/test-paravirt-old-pvfb.xml
> index 1b3a05a..ee25550 100644
> --- a/tests/xmconfigdata/test-paravirt-old-pvfb.xml
> +++ b/tests/xmconfigdata/test-paravirt-old-pvfb.xml
> @@ -27,6 +27,7 @@
>         <target type='xen' port='0'/>
>       </console>
>       <input type='mouse' bus='xen'/>
> +    <input type='keyboard' bus='xen'/>
>       <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'
> passwd='123poi'>
>         <listen type='address' address='127.0.0.1'/>
>       </graphics>
> diff --git a/tests/xmconfigdata/test-pci-devs.xml
> b/tests/xmconfigdata/test-pci-devs.xml
> index 89a7490..f828056 100644
> --- a/tests/xmconfigdata/test-pci-devs.xml
> +++ b/tests/xmconfigdata/test-pci-devs.xml
> @@ -43,6 +43,7 @@
>         <target type='serial' port='0'/>
>       </console>
>       <input type='mouse' bus='ps2'/>
> +    <input type='keyboard' bus='ps2'/>
>       <graphics type='vnc' port='-1' autoport='yes'/>
>       <hostdev mode='subsystem' type='pci' managed='no'>
>         <source>
>
>




More information about the libvir-list mailing list