[libvirt] [PATCH 2/2] Fix QEMU text monitor command error checking
Daniel Veillard
veillard at redhat.com
Thu Apr 22 16:00:33 UTC 2010
On Thu, Apr 22, 2010 at 04:49:01PM +0100, Daniel P. Berrange wrote:
> The text monitor code was checking for a '\n' prefix on several
> places. Previously this would work, but since the monitor code
> re-write the '\n' is already stripped off, so mustn't be checked
> for.
>
> * src/qemu/qemu_monitor_text.c: Fix monitor error checking
> ---
> src/qemu/qemu_monitor_text.c | 14 +++++++-------
> 1 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/src/qemu/qemu_monitor_text.c b/src/qemu/qemu_monitor_text.c
> index db3806d..4c8c108 100644
> --- a/src/qemu/qemu_monitor_text.c
> +++ b/src/qemu/qemu_monitor_text.c
> @@ -787,7 +787,7 @@ int qemuMonitorTextSetBalloon(qemuMonitorPtr mon,
>
> /* If the command failed qemu prints: 'unknown command'
> * No message is printed on success it seems */
> - if (strstr(reply, "\nunknown command:")) {
> + if (strstr(reply, "unknown command:")) {
> /* Don't set error - it is expected memory balloon fails on many qemu */
> ret = 0;
> } else {
> @@ -816,7 +816,7 @@ int qemuMonitorTextSetCPU(qemuMonitorPtr mon, int cpu, int online)
>
> if (qemuMonitorCommand(mon, cmd, &reply) < 0) {
> qemuReportError(VIR_ERR_OPERATION_FAILED,
> - "%s", _("could nt change CPU online status"));
> + "%s", _("could not change CPU online status"));
> VIR_FREE(cmd);
> return -1;
> }
> @@ -824,7 +824,7 @@ int qemuMonitorTextSetCPU(qemuMonitorPtr mon, int cpu, int online)
>
> /* If the command failed qemu prints: 'unknown command'
> * No message is printed on success it seems */
> - if (strstr(reply, "\nunknown command:")) {
> + if (strstr(reply, "unknown command:")) {
> /* Don't set error - it is expected CPU onlining fails on many qemu - caller will handle */
> ret = 0;
> } else {
> @@ -857,7 +857,7 @@ int qemuMonitorTextEjectMedia(qemuMonitorPtr mon,
> /* If the command failed qemu prints:
> * device not found, device is locked ...
> * No message is printed on success it seems */
> - if (strstr(reply, "\ndevice ")) {
> + if (strstr(reply, "device ")) {
> qemuReportError(VIR_ERR_OPERATION_FAILED,
> _("could not eject media on %s: %s"), devname, reply);
> goto cleanup;
> @@ -901,14 +901,14 @@ int qemuMonitorTextChangeMedia(qemuMonitorPtr mon,
> /* If the command failed qemu prints:
> * device not found, device is locked ...
> * No message is printed on success it seems */
> - if (strstr(reply, "\ndevice ")) {
> + if (strstr(reply, "device ")) {
> qemuReportError(VIR_ERR_OPERATION_FAILED,
> _("could not eject media on %s: %s"), devname, reply);
> goto cleanup;
> }
>
> /* Could not open message indicates bad filename */
> - if (strstr(reply, "\nCould not open ")) {
> + if (strstr(reply, "Could not open ")) {
> qemuReportError(VIR_ERR_OPERATION_FAILED,
> _("could not change media on %s: %s"), devname, reply);
> goto cleanup;
> @@ -2291,7 +2291,7 @@ int qemuMonitorTextSetDrivePassphrase(qemuMonitorPtr mon,
> goto cleanup;
> }
>
> - if (strstr(reply, "\nunknown command:")) {
> + if (strstr(reply, "unknown command:")) {
> qemuReportError(VIR_ERR_OPERATION_FAILED, "%s",
> _("setting disk password is not supported"));
> goto cleanup;
Including a typo cleanup too,
ACK
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
daniel at veillard.com | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library http://libvirt.org/
More information about the libvir-list
mailing list