diff options
author | Peter Xu | 2018-03-09 09:59:53 +0100 |
---|---|---|
committer | Eric Blake | 2018-03-19 20:58:37 +0100 |
commit | 02130314d8c71743e6d1fefc2b08a608516bccc7 (patch) | |
tree | 8affa039a7e8eb8b2d04c16a41e1d732b6319a3a /scripts/qapi/common.py | |
parent | monitor: allow using IO thread for parsing (diff) | |
download | qemu-02130314d8c71743e6d1fefc2b08a608516bccc7.tar.gz qemu-02130314d8c71743e6d1fefc2b08a608516bccc7.tar.xz qemu-02130314d8c71743e6d1fefc2b08a608516bccc7.zip |
qmp: introduce QMPCapability
There were no QMP capabilities defined. Define the first capability,
"oob", to allow out-of-band messages.
After this patch, we will allow QMP clients to enable QMP capabilities
when sending the first "qmp_capabilities" command. Originally we are
starting QMP session with no arguments like:
{ "execute": "qmp_capabilities" }
Now we can enable some QMP capabilities using (take OOB as example,
which is the only capability that we support):
{ "execute": "qmp_capabilities",
"arguments": { "enable": [ "oob" ] } }
When the "arguments" key is not provided, no capability is enabled.
For capability "oob", the monitor needs to be run on a dedicated IO
thread, otherwise the command will fail. For example, trying to enable
OOB on a MUXed typed QMP monitor will fail.
One thing to mention is that QMP capabilities are per-monitor, and also
when the connection is closed due to some reason, the capabilities will
be reset.
Also, touch up qmp-test.c to test the new bits.
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <20180309090006.10018-11-peterx@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
[eblake: touch up commit message]
Signed-off-by: Eric Blake <eblake@redhat.com>
Diffstat (limited to 'scripts/qapi/common.py')
0 files changed, 0 insertions, 0 deletions