From: Anthony Liguori <anthony@codemonkey.ws>
To: Luiz Capitulino <lcapitulino@redhat.com>
Cc: aliguori@us.ibm.com, qemu-devel@nongnu.org, armbru@redhat.com
Subject: Re: [Qemu-devel] [PATCH 1/4] QMP: Add QEMU's version to the greeting message
Date: Wed, 10 Feb 2010 13:29:36 -0600 [thread overview]
Message-ID: <4B730920.2050103@codemonkey.ws> (raw)
In-Reply-To: <1265314207-6323-2-git-send-email-lcapitulino@redhat.com>
On 02/04/2010 02:10 PM, Luiz Capitulino wrote:
> With capability negotiation support clients will only have a chance
> to check QEMU's version (ie. issue 'query-version') after the
> negotiation procedure is done.
>
> It might be useful to clients to check QEMU's version before
> negotiating features, though.
>
> To allow that, this commit adds the QEMU's version object to the
> greeting message.
>
> Not really sure this is needed, but doesn't hurt anyway.
>
> Signed-off-by: Luiz Capitulino<lcapitulino@redhat.com>
>
Applied all. Thanks.
Regards,
Anthony Liguori
> ---
> QMP/README | 6 ++++--
> QMP/qmp-spec.txt | 6 ++++--
> monitor.c | 10 +++++++++-
> 3 files changed, 17 insertions(+), 5 deletions(-)
>
> diff --git a/QMP/README b/QMP/README
> index 09e7053..9334c25 100644
> --- a/QMP/README
> +++ b/QMP/README
> @@ -52,9 +52,11 @@ $ telnet localhost 4444
> Trying 127.0.0.1...
> Connected to localhost.
> Escape character is '^]'.
> -{"QMP": {"capabilities": []}}
> +{"QMP": {"version": {"qemu": "0.12.50", "package": ""}, "capabilities": []}}
> +{ "execute": "qmp_capabilities" }
> +{"return": {}}
> { "execute": "query-version" }
> -{"return": {"qemu": "0.11.50", "package": ""}}
> +{"return": {"qemu": "0.12.50", "package": ""}}
>
> Contact
> -------
> diff --git a/QMP/qmp-spec.txt b/QMP/qmp-spec.txt
> index 56f388c..b2617bb 100644
> --- a/QMP/qmp-spec.txt
> +++ b/QMP/qmp-spec.txt
> @@ -48,10 +48,12 @@ waiting for commands.
>
> The format is:
>
> -{ "QMP": { "capabilities": json-array } }
> +{ "QMP": { "version": json-object, "capabilities": json-array } }
>
> Where,
>
> +- The "version" member contains the Server's version information (the format
> + is the same of the 'query-version' command)
> - The "capabilities" member specify the availability of features beyond the
> baseline specification
>
> @@ -152,7 +154,7 @@ This section provides some examples of real QMP usage, in all of them
> 3.1 Server greeting
> -------------------
>
> -S: {"QMP": {"capabilities": []}}
> +S: {"QMP": {"version": {"qemu": "0.12.50", "package": ""}, "capabilities": []}}
>
> 3.2 Simple 'stop' execution
> ---------------------------
> diff --git a/monitor.c b/monitor.c
> index ff22123..ec1d11e 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -4365,6 +4365,14 @@ void monitor_resume(Monitor *mon)
> readline_show_prompt(mon->rs);
> }
>
> +static QObject *get_qmp_greeting(void)
> +{
> + QObject *ver;
> +
> + do_info_version(NULL,&ver);
> + return qobject_from_jsonf("{'QMP':{'version': %p,'capabilities': []}}",ver);
> +}
> +
> /**
> * monitor_control_event(): Print QMP gretting
> */
> @@ -4376,7 +4384,7 @@ static void monitor_control_event(void *opaque, int event)
>
> json_message_parser_init(&mon->mc->parser, handle_qmp_command);
>
> - data = qobject_from_jsonf("{ 'QMP': { 'capabilities': [] } }");
> + data = get_qmp_greeting();
> assert(data != NULL);
>
> monitor_json_emitter(mon, data);
>
next prev parent reply other threads:[~2010-02-10 19:29 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-04 20:10 [Qemu-devel] [PATCH v2 0/4]: QMP capability negotiation support Luiz Capitulino
2010-02-04 20:10 ` [Qemu-devel] [PATCH 1/4] QMP: Add QEMU's version to the greeting message Luiz Capitulino
2010-02-10 19:29 ` Anthony Liguori [this message]
2010-02-04 20:10 ` [Qemu-devel] [PATCH 2/4] QMP: Introduce the qmp_capabilities command Luiz Capitulino
2010-02-04 20:10 ` [Qemu-devel] [PATCH 3/4] QMP: Enforce capability negotiation rules Luiz Capitulino
2010-02-04 20:10 ` [Qemu-devel] [PATCH 4/4] QMP: spec: Capability negotiation updates Luiz Capitulino
2010-02-05 9:08 ` [Qemu-devel] [PATCH v2 0/4]: QMP capability negotiation support Markus Armbruster
-- strict thread matches above, loose matches on Subject: below --
2010-02-04 14:24 [Qemu-devel] [PATCH v1 " Luiz Capitulino
2010-02-04 14:24 ` [Qemu-devel] [PATCH 1/4] QMP: Add QEMU's version to the greeting message Luiz Capitulino
2010-02-04 16:32 ` Markus Armbruster
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4B730920.2050103@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=aliguori@us.ibm.com \
--cc=armbru@redhat.com \
--cc=lcapitulino@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).