From: Marc-André Lureau Date: Fri, 2 Sep 2011 15:19:11 +0000 (+0800) Subject: Learn to use spicevmc as a redirection type for usb-redir X-Git-Tag: v0.9.5-rc1~76 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4813b3f094261686394234c1c18ec3440ac40e84;p=thirdparty%2Flibvirt.git Learn to use spicevmc as a redirection type for usb-redir --- diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index aadf62aa3a..a55ed61785 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -290,7 +290,8 @@ VIR_ENUM_IMPL(virDomainChrTcpProtocol, VIR_DOMAIN_CHR_TCP_PROTOCOL_LAST, VIR_ENUM_IMPL(virDomainChrSpicevmc, VIR_DOMAIN_CHR_SPICEVMC_LAST, "vdagent", - "smartcard") + "smartcard", + "usbredir") VIR_ENUM_IMPL(virDomainSmartcard, VIR_DOMAIN_SMARTCARD_TYPE_LAST, "host", @@ -5513,6 +5514,10 @@ virDomainRedirdevDefParseXML(const xmlNodePtr node, cur = cur->next; } + if (def->source.chr.type == VIR_DOMAIN_CHR_TYPE_SPICEVMC) { + def->source.chr.data.spicevmc = VIR_DOMAIN_CHR_SPICEVMC_USBREDIR; + } + cleanup: VIR_FREE(bus); VIR_FREE(type); diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index ab2a38c226..ccd95479ef 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -538,6 +538,7 @@ enum virDomainChrTcpProtocol { enum virDomainChrSpicevmcName { VIR_DOMAIN_CHR_SPICEVMC_VDAGENT, VIR_DOMAIN_CHR_SPICEVMC_SMARTCARD, + VIR_DOMAIN_CHR_SPICEVMC_USBREDIR, VIR_DOMAIN_CHR_SPICEVMC_LAST, }; diff --git a/tests/qemuxml2argvdata/qemuxml2argv-usb-redir.args b/tests/qemuxml2argvdata/qemuxml2argv-usb-redir.args index 445aa5fc44..4d4f30a1f6 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-usb-redir.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-usb-redir.args @@ -5,4 +5,6 @@ LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,multifunction=on,addr=0x4.0x2 \ -chardev socket,id=charredir0,host=localhost,port=4000 \ -device usb-redir,chardev=charredir0,id=redir0 \ +-chardev spicevmc,id=charredir1,name=usbredir \ +-device usb-redir,chardev=charredir1,id=redir1 \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,multifunction=on,addr=0x3.0x0 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-usb-redir.xml b/tests/qemuxml2argvdata/qemuxml2argv-usb-redir.xml index d644216d02..c73e569f2b 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-usb-redir.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-usb-redir.xml @@ -33,6 +33,8 @@ + + diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index aa7534100c..4c2754d502 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -510,7 +510,8 @@ mymain(void) DO_TEST("usb-redir", false, QEMU_CAPS_CHARDEV, QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_USB_HUB, - QEMU_CAPS_ICH9_USB_EHCI1, QEMU_CAPS_USB_REDIR); + QEMU_CAPS_ICH9_USB_EHCI1, QEMU_CAPS_USB_REDIR, + QEMU_CAPS_SPICE, QEMU_CAPS_CHARDEV_SPICEVMC); DO_TEST("smbios", false, QEMU_CAPS_SMBIOS_TYPE);