From 9772bebab7f12e5b68a44fe007b28acaf9ddb321 Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Thu, 22 Apr 2010 16:47:33 +0100 Subject: [PATCH] Fix QEMU text monitor command error checking 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 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/qemu/qemu_monitor_text.c b/src/qemu/qemu_monitor_text.c index db3806db68..4c8c1083a4 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; -- GitLab