All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 00/10] QAPI minor fixes and strict mode
@ 2012-03-22 11:51 Paolo Bonzini
  2012-03-22 11:51 ` [Qemu-devel] [PATCH 01/10] qapi: add a test case for type errors Paolo Bonzini
                   ` (10 more replies)
  0 siblings, 11 replies; 31+ messages in thread
From: Paolo Bonzini @ 2012-03-22 11:51 UTC (permalink / raw)
  To: qemu-devel; +Cc: mdroth, eblake, anthony, lcapitulino

This patch includes a few minor changes to QAPI found during a
more careful code review (patches 1-5) and the implementation of
a strict mode for the QObject input visitor (patches 6-10).

While QMP in general is designed so that it is possible to ignore
unknown arguments, in the case of the QMP server it is better to
reject them to detect bad clients.  In fact, we're already doing
this at the top level in the argument checker.  Strict modes
checks for unvisited keys and raises an error if it finds one,
so that this checking extends to complex structures.

Please review.

Paolo Bonzini (10):
  qapi: add a test case for type errors
  qapi: fail hard on stack imbalance
  qapi: fix memory leak on error
  qapi: shortcut visits on errors
  qapi: allow freeing partially-allocated objects
  qapi: simplify qmp_input_next_list
  qapi: place outermost object on qiv stack
  qapi: add strict mode to input visitor
  qmp: add and use q type specifier
  qmp: parse commands in strict mode

 monitor.c                |    3 +
 qapi/qmp-input-visitor.c |  113 ++++++++++++++--------
 qapi/qmp-input-visitor.h |    2 +
 qmp-commands.hx          |    4 +-
 scripts/qapi-commands.py |    2 +-
 scripts/qapi-visit.py    |   16 +++
 test-qmp-input-strict.c  |  234 ++++++++++++++++++++++++++++++++++++++++++++++
 test-qmp-input-visitor.c |   19 ++++
 tests/Makefile           |    5 +-
 9 files changed, 354 insertions(+), 44 deletions(-)
 create mode 100644 test-qmp-input-strict.c

-- 
1.7.9.1

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2012-04-02 11:29 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-03-22 11:51 [Qemu-devel] [PATCH 00/10] QAPI minor fixes and strict mode Paolo Bonzini
2012-03-22 11:51 ` [Qemu-devel] [PATCH 01/10] qapi: add a test case for type errors Paolo Bonzini
2012-03-22 20:17   ` Anthony Liguori
2012-03-22 11:51 ` [Qemu-devel] [PATCH 02/10] qapi: fail hard on stack imbalance Paolo Bonzini
2012-03-22 20:17   ` Anthony Liguori
2012-03-26 14:15   ` Luiz Capitulino
2012-03-26 15:06     ` Michael Roth
2012-03-22 11:51 ` [Qemu-devel] [PATCH 03/10] qapi: fix memory leak on error Paolo Bonzini
2012-03-22 20:17   ` Anthony Liguori
2012-03-22 11:51 ` [Qemu-devel] [PATCH 04/10] qapi: shortcut visits on errors Paolo Bonzini
2012-03-22 20:17   ` Anthony Liguori
2012-03-22 11:51 ` [Qemu-devel] [PATCH 05/10] qapi: allow freeing partially-allocated objects Paolo Bonzini
2012-03-22 20:18   ` Anthony Liguori
2012-03-22 11:51 ` [Qemu-devel] [PATCH 06/10] qapi: simplify qmp_input_next_list Paolo Bonzini
2012-03-22 20:22   ` Anthony Liguori
2012-03-22 21:24     ` Paolo Bonzini
2012-03-22 21:34       ` Anthony Liguori
2012-03-22 21:38       ` [Qemu-devel] [PATCH v2 06/10] qapi: untangle next_list Paolo Bonzini
2012-03-23 16:42         ` Michael Roth
2012-03-22 11:51 ` [Qemu-devel] [PATCH 07/10] qapi: place outermost object on qiv stack Paolo Bonzini
2012-03-22 20:25   ` Anthony Liguori
2012-03-22 11:51 ` [Qemu-devel] [PATCH 08/10] qapi: add strict mode to input visitor Paolo Bonzini
2012-03-22 20:25   ` Anthony Liguori
2012-04-02 10:34   ` Laurent Desnogues
2012-04-02 11:28     ` Paolo Bonzini
2012-03-22 11:51 ` [Qemu-devel] [PATCH 09/10] qmp: add and use q type specifier Paolo Bonzini
2012-03-22 20:27   ` Anthony Liguori
2012-03-22 11:51 ` [Qemu-devel] [PATCH 10/10] qmp: parse commands in strict mode Paolo Bonzini
2012-03-22 20:28   ` Anthony Liguori
2012-03-22 20:30     ` Luiz Capitulino
2012-03-22 21:39 ` [Qemu-devel] [PATCH 11/10] qmp: document strict parsing Paolo Bonzini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.