From: "Daniel P. Berrange" <berrange@xxxxxxxxxx> On success, the 'sendkey' command does not return any data, so any data in the reply should be considered to be an error message * src/qemu/qemu_monitor_text.c: Treat non-"" reply data as an error message for 'sendkey' command --- src/qemu/qemu_monitor_text.c | 15 ++++++++++++--- 1 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/qemu/qemu_monitor_text.c b/src/qemu/qemu_monitor_text.c index 54541ce..4bd761d 100644 --- a/src/qemu/qemu_monitor_text.c +++ b/src/qemu/qemu_monitor_text.c @@ -2848,6 +2848,7 @@ int qemuMonitorTextSendKey(qemuMonitorPtr mon, int i; virBuffer buf = VIR_BUFFER_INITIALIZER; char *cmd, *reply = NULL; + int ret = -1; if (nkeycodes > VIR_DOMAIN_SEND_KEY_MAX_KEYS || nkeycodes == 0) return -1; @@ -2880,13 +2881,21 @@ int qemuMonitorTextSendKey(qemuMonitorPtr mon, qemuReportError(VIR_ERR_OPERATION_FAILED, _("failed to send key using command '%s'"), cmd); - VIR_FREE(cmd); - return -1; + goto cleanup; + } + + if (STRNEQ(reply, "")) { + qemuReportError(VIR_ERR_OPERATION_FAILED, + _("failed to send key '%s'"), reply); + goto cleanup; } + ret = 0; + +cleanup: VIR_FREE(cmd); VIR_FREE(reply); - return 0; + return ret; } /* Returns -1 on error, -2 if not supported */ -- 1.7.6 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list