On Thu, Dec 14, 2017 at 01:16:32PM +0000, Stefan Hajnoczi wrote:
> On Tue, Dec 05, 2017 at 01:51:54PM +0800, Peter Xu wrote:
> > if (qdict) {
> > id = qdict_get(qdict, "id");
> > + /* When OOB is enabled, the "id" field is mandatory. */
> > + if (qmp_oob_enabled(mon) && !id) {
> > + error_setg(&err, "Out-Of-Band capability requires that "
> > + "every command contains an 'id' field.");
>
> Is this documented in docs/interop/qmp-spec.txt?
Yes it is:
@@ -102,10 +125,19 @@ The format for command execution is:
required. Each command documents what contents will be considered
valid when handling the json-argument
- The "id" member is a transaction identification associated with the
- command execution, it is optional and will be part of the response if
+ command execution. It is required if OOB is enabled, and optional
+ if not. The same "id" field will be part of the response if
provided. The "id" member can be any json-value, although most
clients merely use a json-number incremented for each successive
command
Thanks,
--
Peter Xu