mirror of
https://git.proxmox.com/git/qemu
synced 2025-08-07 20:08:20 +00:00
qmp: document strict parsing
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
This commit is contained in:
parent
6d36d7dc2b
commit
1829851cfe
@ -209,13 +209,27 @@ incompatible way are disabled by default and will be advertised by the
|
|||||||
capabilities array (section '2.2 Server Greeting'). Thus, Clients can check
|
capabilities array (section '2.2 Server Greeting'). Thus, Clients can check
|
||||||
that array and enable the capabilities they support.
|
that array and enable the capabilities they support.
|
||||||
|
|
||||||
Additionally, Clients must not assume any particular:
|
The QMP Server performs a type check on the arguments to a command. It
|
||||||
|
generates an error if a value does not have the expected type for its
|
||||||
|
key, or if it does not understand a key that the Client included. The
|
||||||
|
strictness of the Server catches wrong assumptions of Clients about
|
||||||
|
the Server's schema. Clients can assume that, when such validation
|
||||||
|
errors occur, they will be reported before the command generated any
|
||||||
|
side effect.
|
||||||
|
|
||||||
- Size of json-objects or length of json-arrays
|
However, Clients must not assume any particular:
|
||||||
|
|
||||||
|
- Length of json-arrays
|
||||||
|
- Size of json-objects; in particular, future versions of QEMU may add
|
||||||
|
new keys and Clients should be able to ignore them.
|
||||||
- Order of json-object members or json-array elements
|
- Order of json-object members or json-array elements
|
||||||
- Amount of errors generated by a command, that is, new errors can be added
|
- Amount of errors generated by a command, that is, new errors can be added
|
||||||
to any existing command in newer versions of the Server
|
to any existing command in newer versions of the Server
|
||||||
|
|
||||||
|
Of course, the Server does guarantee to send valid JSON. But apart from
|
||||||
|
this, a Client should be "conservative in what they send, and liberal in
|
||||||
|
what they accept".
|
||||||
|
|
||||||
6. Downstream extension of QMP
|
6. Downstream extension of QMP
|
||||||
------------------------------
|
------------------------------
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user