qemu/include/qapi/qmp
Markus Armbruster 69240fe62d qmp: Don't let malformed in-band commands jump the queue
handle_qmp_command() reports certain errors right away.  This is wrong
when OOB is enabled, because the errors can "jump the queue" then, as
the previous commit demonstrates.

To fix, we need to delay errors until dispatch.  Do that for semantic
errors, mostly by reverting ill-advised parts of commit cf869d5317
"qmp: support out-of-band (oob) execution".  Bonus: doesn't run
qmp_dispatch_check_obj() twice, once in handle_qmp_command(), and
again in do_qmp_dispatch().  That's also due to commit cf869d5317.

The next commit will fix queue jumping for syntax errors.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20180703085358.13941-18-armbru@redhat.com>
2018-07-03 23:18:56 +02:00
..
dispatch.h qmp: Don't let malformed in-band commands jump the queue 2018-07-03 23:18:56 +02:00
json-lexer.h include: Clean up includes 2016-02-23 12:43:05 +00:00
json-parser.h Include qapi/qmp/qlist.h exactly where needed 2018-02-09 13:52:15 +01:00
json-streamer.h include: Clean up includes 2016-02-23 12:43:05 +00:00
qbool.h qobject: use a QObjectBase_ struct 2018-05-04 08:27:53 +02:00
qdict.h block: Add block-specific QDict header 2018-06-15 14:49:44 +02:00
qerror.h qmp: Eliminate silly QERR_QMP_* macros 2017-03-05 09:14:19 +01:00
qjson.h Include qapi/qmp/qstring.h exactly where needed 2018-02-09 13:52:15 +01:00
qlist.h qobject: use a QObjectBase_ struct 2018-05-04 08:27:53 +02:00
qlit.h qlit: add qobject_from_qlit() 2018-03-19 10:00:14 -05:00
qnull.h qobject: Modify qobject_ref() to return obj 2018-05-04 08:27:53 +02:00
qnum.h qobject: use a QObjectBase_ struct 2018-05-04 08:27:53 +02:00
qobject.h qobject: Modify qobject_ref() to return obj 2018-05-04 08:27:53 +02:00
qstring.h qobject: use a QObjectBase_ struct 2018-05-04 08:27:53 +02:00