From: Michal Privoznik Date: Wed, 8 Jun 2016 13:51:27 +0000 (+0200) Subject: qemuMonitorJSONAttachCharDev: Teach spicevmc X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=3668526fa6f64f8de44f0faa639001b224ec6a15;p=libvirt.git qemuMonitorJSONAttachCharDev: Teach spicevmc https://bugzilla.redhat.com/show_bug.cgi?id=1298070 We have the code for attaching redirdevs for ages now. Unfortunately, our monitor code that handles talking to the qemu process was missing a little piece of code that actually enabled the feature. BTW: it really is called "type" on the monitor, even though it's called "name" on the cmd line. Don't ask. Signed-off-by: Michal Privoznik --- diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c index 12d2e2240e..380ddabf5e 100644 --- a/src/qemu/qemu_monitor_json.c +++ b/src/qemu/qemu_monitor_json.c @@ -6209,6 +6209,13 @@ qemuMonitorJSONAttachCharDevCommand(const char *chrID, break; case VIR_DOMAIN_CHR_TYPE_SPICEVMC: + backend_type = "spicevmc"; + + if (virJSONValueObjectAppendString(data, "type", + virDomainChrSpicevmcTypeToString(chr->data.spicevmc)) < 0) + goto error; + break; + case VIR_DOMAIN_CHR_TYPE_SPICEPORT: case VIR_DOMAIN_CHR_TYPE_PIPE: case VIR_DOMAIN_CHR_TYPE_STDIO: diff --git a/tests/qemumonitorjsontest.c b/tests/qemumonitorjsontest.c index 2cd824f8e9..0bcf62a425 100644 --- a/tests/qemumonitorjsontest.c +++ b/tests/qemumonitorjsontest.c @@ -769,7 +769,7 @@ testQemuMonitorJSONAttachChardev(const void *data) CHECK("chr_unix", "{\"return\": {}}"); chr = (virDomainChrSourceDef) { .type = VIR_DOMAIN_CHR_TYPE_SPICEVMC }; - CHECK_FAIL("chr_spicevmc", "{\"return\": {}}"); + CHECK("chr_spicevmc", "{\"return\": {}}"); chr = (virDomainChrSourceDef) { .type = VIR_DOMAIN_CHR_TYPE_PIPE }; CHECK_FAIL("chr_pipe", "{\"return\": {}}");