From nobody Thu May 15 09:58:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1528121145956972.8622369710871; Mon, 4 Jun 2018 07:05:45 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 7D19530B94C2; Mon, 4 Jun 2018 14:05:44 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2F5B65D9CA; Mon, 4 Jun 2018 14:05:44 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id C96FE1804480; Mon, 4 Jun 2018 14:05:43 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w54Dx4ev002818 for ; Mon, 4 Jun 2018 09:59:04 -0400 Received: by smtp.corp.redhat.com (Postfix) id 1652E63F53; Mon, 4 Jun 2018 13:59:04 +0000 (UTC) Received: from angien.brq.redhat.com (unknown [10.43.2.136]) by smtp.corp.redhat.com (Postfix) with ESMTP id AF6CB63F48 for ; Mon, 4 Jun 2018 13:59:03 +0000 (UTC) From: Peter Krempa To: libvir-list@redhat.com Date: Mon, 4 Jun 2018 15:58:40 +0200 Message-Id: <072b227dd822c7b3dad471c413eaab34f7607010.1528120448.git.pkrempa@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.79 on 10.11.54.5 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 07/10] tests: qemucapsprobemock: Prepare 'qemucapsprobe' for the new format X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.48]); Mon, 04 Jun 2018 14:05:45 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Change the output of qemucapsprobe to record the commands used for querying. This allows to easily identify which reply belongs to which command and also will allow to test whether we use stable queries. This change includes changing dropping of the QMP greeting from the file and reformatting of the query and output to stdout. Signed-off-by: Peter Krempa Reviewed-by: John Ferlan --- tests/qemucapsprobemock.c | 31 ++++++++++++++++++++++--------- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/tests/qemucapsprobemock.c b/tests/qemucapsprobemock.c index a0d2acb69a..5936975505 100644 --- a/tests/qemucapsprobemock.c +++ b/tests/qemucapsprobemock.c @@ -37,6 +37,7 @@ } \ } while (0) +static bool first =3D true; static void printLineSkipEmpty(const char *line, @@ -60,9 +61,22 @@ int qemuMonitorSend(qemuMonitorPtr mon, qemuMonitorMessagePtr msg) { + char *reformatted; + REAL_SYM(realQemuMonitorSend); - fprintf(stderr, "%s", msg->txBuffer); + if (!(reformatted =3D virJSONStringReformat(msg->txBuffer, true))) { + fprintf(stderr, "Failed to reformat command string '%s'\n", msg->t= xBuffer); + abort(); + } + + if (first) + first =3D false; + else + printLineSkipEmpty("\n", stdout); + + printLineSkipEmpty(reformatted, stdout); + VIR_FREE(reformatted); return realQemuMonitorSend(mon, msg); } @@ -77,7 +91,6 @@ qemuMonitorJSONIOProcessLine(qemuMonitorPtr mon, const char *line, qemuMonitorMessagePtr msg) { - static bool first =3D true; virJSONValuePtr value =3D NULL; char *json =3D NULL; int ret; @@ -93,14 +106,14 @@ qemuMonitorJSONIOProcessLine(qemuMonitorPtr mon, abort(); } - if (first) { + /* Ignore QMP greeting */ + if (virJSONValueObjectHasKey(value, "QMP")) + goto cleanup; + + if (first) first =3D false; - } else { - /* Ignore QMP greeting if it's not the first one */ - if (virJSONValueObjectHasKey(value, "QMP")) - goto cleanup; - putchar('\n'); - } + else + printLineSkipEmpty("\n", stdout); printLineSkipEmpty(json, stdout); } --=20 2.16.2 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list