qemu/scripts
John Snow 6092c3ecc4 scripts: qmp-shell: Expand support for QMP expressions
This includes support for [] expressions, single-quotes in
QMP expressions (which is not strictly a part of JSON), and
the ability to use "True", "False" and "None" literals instead
of JSON's equivalent true, false, and null literals.

qmp-shell currently allows you to describe values as
JSON expressions:
key={"key":{"key2":"val"}}

But it does not currently support arrays, which are needed
for serializing and deserializing transactions:
key=[{"type":"drive-backup","data":{...}}]

qmp-shell also only currently accepts doubly quoted strings
as-per JSON spec, but QMP allows single quotes.

Lastly, python allows you to utilize "True" or "False" as
boolean literals, but JSON expects "true" or "false". Expand
qmp-shell to allow the user to type either, converting to the
correct type.

As a consequence of the above, the key=val parsing is also improved
to give better error messages if a key=val token is not provided.

CAVEAT: The parser is still extremely rudimentary and does not
expect to find spaces in {} nor [] expressions. This patch does
not improve this functionality.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Tested-by: Kashyap Chamarthy <kchamart@redhat.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2015-05-11 08:59:07 -04:00
..
kvm kvm_stat: add kvm_stat.1 man page 2015-03-10 10:49:25 +01:00
qemu-guest-agent
qmp scripts: qmp-shell: Expand support for QMP expressions 2015-05-11 08:59:07 -04:00
tracetool trace: add DTrace reserved words for .d files 2015-03-02 15:39:43 -06:00
acpi_extract_preprocess.py
acpi_extract.py i386: Add an ACPI_EXTRACT_NAME_BUFFER16 directive. 2014-11-02 11:52:24 +02:00
analyse-9p-simpletrace.py
analyze-migration.py Fix name error in migration stream analyzation script 2015-02-10 09:27:20 +03:00
check-qerror.sh
checkpatch.pl checkpatch: complain about ffs(3) calls 2015-04-28 15:36:08 +02:00
cleanup-trace-events.pl cleanup-trace-events.pl: Tighten search for trace event call 2014-09-26 09:34:38 +01:00
coverity-model.c coverity: fix address_space_rw model 2015-05-05 10:42:11 +02:00
create_config
disas-objdump.pl
dump-guest-memory.py exec: convert ram_list to QLIST 2015-02-16 17:30:20 +01:00
extract-vsssdk-headers
feature_to_c.sh
get_maintainer.pl get_maintainer.pl: Remove the --git-chief-penguins option 2014-12-10 11:46:43 +03:00
gtester-cat
hxtool
make_device_config.sh build: pass .d file name to scripts/make_device_config.sh, fix makefile target 2015-03-18 12:07:25 +01:00
make-release
ordereddict.py
qapi-commands.py qapi: Drop support for inline nested types 2015-05-05 18:39:02 +02:00
qapi-event.py qapi: Drop support for inline nested types 2015-05-05 18:39:02 +02:00
qapi-types.py qapi: Drop support for inline nested types 2015-05-05 18:39:02 +02:00
qapi-visit.py qapi: Drop dead visitor code related to nested structs 2015-05-05 18:39:02 +02:00
qapi.py qapi: Check for member name conflicts with a base class 2015-05-05 18:39:02 +02:00
qemu-binfmt-conf.sh
qemu-gdb.py scripts: add 'qemu coroutine' command to qemu-gdb.py 2015-04-28 15:36:09 +02:00
qtest.py qtest: Add scripts/qtest.py 2015-02-16 15:07:18 +00:00
refresh-pxe-roms.sh
shaderinclude.pl opengl: add shader build infrastructure 2015-05-05 09:03:32 +02:00
signrom.py
simpletrace.py
switch-timer-api
texi2pod.pl
tracetool.py
update-acpi.sh
update-linux-headers.sh update-linux-headers.sh: s/__inline__/inline/ 2015-02-26 13:04:08 +01:00
vmstate-static-checker.py vmstate-static-checker: update whitelist 2015-02-05 17:16:14 +01:00