Go to file
Mark Wu 1c1d46cc0b qmp: add test tool for QMP
Anthony wrote this quickly to aid in testing.  It's similar to qmp-shell with
a few important differences:

1) It is not interactive.  That makes it useful for scripting.

2) qmp-shell:

(QEMU) set_password protocol=vnc password=foo

3) qmp:

$ qmp set_password --protocol=vnc --password=foo

4) Extensible, git-style interface.  If an invalid command name is
passed, it will try to exec qmp-$1.

5) It attempts to pretty print the JSON responses in a shell friendly
format such that tools can work with the output.

Hope others will also find it useful.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Signed-off-by: Mark Wu <wudxw@linux.vnet.ibm.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2011-12-06 11:40:00 -02:00
audio fmodaudio: Remove unused variable 'bits16' (reported by cppcheck) 2011-11-18 21:55:29 +04:00
block Merge remote-tracking branch 'kwolf/for-anthony' into staging 2011-12-05 09:39:25 -06:00
bsd-user
darwin-user fix spelling in darwin-user sub directory 2011-12-02 10:50:56 +00:00
default-configs xtensa_lx60: add FLASH support 2011-11-02 05:05:52 +04:00
docs docs: Add writing-qmp-commands.txt 2011-12-06 11:40:00 -02:00
fpu softfloat: Implement fused multiply-add 2011-10-19 16:14:06 +00:00
fsdev hw/9pfs: Use the correct file descriptor in Fsdriver Callback 2011-12-04 22:35:28 +05:30
gdb-xml
hw hw/arm_gic.c: Ignore attempts to complete nonexistent IRQs 2011-12-05 21:38:56 +01:00
libcacard fix spelling in libcacard sub directory 2011-12-02 10:50:56 +00:00
linux-headers KVM: Update kernel headers 2011-10-06 09:48:07 +02:00
linux-user fix spelling in linux-user sub directory 2011-12-02 10:50:56 +00:00
net slirp: Clean up net_slirp_hostfwd_remove()'s use of get_str_sep() 2011-11-22 11:11:23 +00:00
pc-bios add sgabios blob and submodule 2011-11-07 10:57:36 -06:00
qapi qapi: Check for negative enum values 2011-11-17 15:15:03 -02:00
qga
QMP qmp: add test tool for QMP 2011-12-06 11:40:00 -02:00
roms add sgabios blob and submodule 2011-11-07 10:57:36 -06:00
scripts fix spelling in scripts sub directory 2011-12-02 10:50:57 +00:00
slirp main-loop: create main-loop.c 2011-10-21 18:14:30 +02:00
sysconfigs/target
target-alpha fix spelling in target sub directory 2011-12-02 10:50:57 +00:00
target-arm target-arm/helper.c: Don't allocate TCG resources unless TCG enabled 2011-12-05 21:38:47 +01:00
target-cris softmmu_header: pass CPUState to tlb_fill 2011-10-01 09:31:26 +00:00
target-i386 x86/cpuid: Tighten parsing of tsc_freq=FREQ 2011-11-28 16:20:52 -06:00
target-lm32 lm32: add missing qemu_init_vcpu() call 2011-10-03 12:44:22 +02:00
target-m68k softmmu_header: pass CPUState to tlb_fill 2011-10-01 09:31:26 +00:00
target-microblaze fix spelling in target sub directory 2011-12-02 10:50:57 +00:00
target-mips fix spelling in target sub directory 2011-12-02 10:50:57 +00:00
target-ppc fix spelling in target sub directory 2011-12-02 10:50:57 +00:00
target-s390x s390x: Add shutdown for TCG s390-virtio machine 2011-11-14 17:47:26 +01:00
target-sh4 Merge remote-tracking branch 'stefanha/trivial-patches' into staging 2011-12-05 08:44:33 -06:00
target-sparc fix spelling in target sub directory 2011-12-02 10:50:57 +00:00
target-unicore32
target-xtensa target-xtensa: fix MMUv3 initialization 2011-11-26 09:44:34 +00:00
tcg fix spelling in tcg sub directory 2011-12-02 10:50:57 +00:00
tests fix spelling in tests sub directory 2011-12-02 10:50:57 +00:00
trace trace: Add wildcard trace event support 2011-11-01 14:12:15 +00:00
ui fix spelling in ui sub directory 2011-12-02 10:50:57 +00:00
.gitignore Add qapi related generated files to .gitignore 2011-11-01 11:50:12 -05:00
.gitmodules add sgabios blob and submodule 2011-11-07 10:57:36 -06:00
a.out.h
acl.c acl: Fix use after free in qemu_acl_reset() 2011-11-01 06:23:48 +00:00
acl.h
aes.c
aes.h
aio.c
alpha-dis.c
alpha.ld
arch_init.c migration: make *save_live return errors 2011-10-20 13:23:52 +02:00
arch_init.h
arm-dis.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
arm-semi.c
arm.ld
async.c main-loop: create main-loop.h 2011-10-21 18:14:30 +02:00
balloon.c qapi: Convert query-balloon 2011-10-27 11:48:47 -02:00
balloon.h qapi: Convert query-balloon 2011-10-27 11:48:47 -02:00
bitmap.c
bitmap.h
bitops.c
bitops.h
block_int.h block: add interface to toggle copy-on-read 2011-12-05 14:51:38 +01:00
block-migration.c block: convert qemu_aio_flush() calls to bdrv_drain_all() 2011-12-05 14:56:06 +01:00
block-migration.h
block.c block: convert qemu_aio_flush() calls to bdrv_drain_all() 2011-12-05 14:56:06 +01:00
block.h block: convert qemu_aio_flush() calls to bdrv_drain_all() 2011-12-05 14:56:06 +01:00
blockdev.c block: convert qemu_aio_flush() calls to bdrv_drain_all() 2011-12-05 14:56:06 +01:00
blockdev.h hmp/qmp: add block_set_io_throttle 2011-12-05 14:51:35 +01:00
bswap.h bswap.h: build fix 2011-09-16 08:26:31 -05:00
bt-host.c
bt-host.h
bt-vhci.c
buffered_file.c migration: use qemu_file_get_error() return value when possible 2011-10-20 13:23:52 +02:00
buffered_file.h
cache-utils.c
cache-utils.h
Changelog
check-qdict.c
check-qfloat.c
check-qint.c
check-qjson.c
check-qlist.c
check-qstring.c
cmd.c cmd: Fix potential memory leak 2011-11-07 08:01:15 +00:00
cmd.h
CODING_STYLE
compatfd.c compatfd.c: Don't pass NULL pointer to SYS_signalfd 2011-10-21 18:01:35 +02:00
compatfd.h
compiler.h Fix and clean code which tests the gcc version 2011-09-23 11:51:05 -05:00
config.h
configure configure: Drop armv4l/armv4b distinction in $cpu 2011-12-05 21:38:53 +01:00
console.c console: Fix rendering of VGA underline 2011-11-07 10:57:37 -06:00
console.h qapi: Convert query-vnc 2011-10-27 11:48:47 -02:00
COPYING
COPYING.LIB
coroutine-gthread.c
coroutine-ucontext.c
coroutine-win32.c
cpu-all.h fix spelling in main directory 2011-12-02 10:50:57 +00:00
cpu-common.h fix spelling in main directory 2011-12-02 10:50:57 +00:00
cpu-defs.h
cpu-exec.c PPC: Fix sync instructions problem in SMP 2011-10-06 09:48:03 +02:00
cpus.c Merge remote-tracking branch 'kwolf/for-anthony' into staging 2011-12-05 09:39:25 -06:00
cpus.h Simplify cpu_exec_all to tcg_exec_all 2011-11-01 10:58:08 -05:00
cris-dis.c
cursor_hidden.xpm
cursor_left_ptr.xpm
cursor.c
cutils.c cutils: Make strtosz & friends leave follow set to callers 2011-11-28 16:20:52 -06:00
def-helper.h
device_tree.c device_tree: Fix potential memory leak 2011-10-26 13:36:34 +01:00
device_tree.h device tree: add add_subnode command 2011-10-06 09:48:00 +02:00
dis-asm.h tcg: Add tci disassembler 2011-10-31 21:52:17 +01:00
disas.c tcg: Add tci disassembler 2011-10-31 21:52:17 +01:00
disas.h
dma-helpers.c dma-helpers: Add trace events 2011-12-05 14:51:38 +01:00
dma.h Use dma_addr_t type for scatter/gather code 2011-11-01 16:52:05 -05:00
dyngen-exec.h tcg: Add bytecode generator for tcg interpreter 2011-10-31 21:52:16 +01:00
elf.h
envlist.c
envlist.h
error_int.h
error.c Drop qemu-objects.h from modules that don't require it 2011-10-27 11:48:47 -02:00
error.h
event_notifier.c event_notifier: move to top-level directory 2011-11-01 16:52:08 -05:00
event_notifier.h event_notifier: move to top-level directory 2011-11-01 16:52:08 -05:00
exec-all.h tcg: Add bytecode generator for tcg interpreter 2011-10-31 21:52:16 +01:00
exec-memory.h fix spelling in main directory 2011-12-02 10:50:57 +00:00
exec.c Make cpu_single_env thread-local 2011-11-01 10:58:08 -05:00
gdbstub.c gdbstub: Fix memory leak 2011-11-19 11:22:24 +00:00
gdbstub.h
gen-icount.h
HACKING
hmp-commands.hx block: add -drive copy-on-read=on|off 2011-12-05 14:51:38 +01:00
hmp.c hmp/qmp: add block_set_io_throttle 2011-12-05 14:51:35 +01:00
hmp.h qapi: Convert query-pci 2011-10-27 11:48:47 -02:00
host-utils.c
host-utils.h Move macro QEMU_GNUC_PREREQ to compiler.h 2011-09-23 11:51:05 -05:00
hppa-dis.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
hppa.ld
i386-dis.c
i386.ld
ia64-dis.c ia64-dis.c: Undefine ABS to avoid clash with glib 2011-11-01 11:50:12 -05:00
ia64.ld
input.c qapi: Convert query-mice 2011-10-27 11:48:46 -02:00
int128.h Add support for 128-bit arithmetic 2011-10-16 13:13:05 +02:00
iohandler.c Revert to a hand-made select loop 2011-10-21 18:14:30 +02:00
ioport-user.c
ioport.c Introduce PortioList 2011-10-11 15:57:07 +02:00
ioport.h Introduce PortioList 2011-10-11 15:57:07 +02:00
iorange.h
iov.c
iov.h
json-lexer.c
json-lexer.h
json-parser.c
json-parser.h
json-streamer.c
json-streamer.h
kvm-all.c kvm_init didn't set return value after create vm failed 2011-11-01 16:52:05 -05:00
kvm-stub.c
kvm.h
libfdt_env.h
LICENSE
linux-aio.c linux-aio: Allow reads beyond the end of growable images 2011-10-14 10:29:13 +02:00
m68k-dis.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
m68k-semi.c
m68k.ld
main-loop.c main-loop: Add missing include file 2011-10-25 15:38:08 -05:00
main-loop.h fix spelling in main directory 2011-12-02 10:50:57 +00:00
MAINTAINERS MAINTAINERS: Delete spurious '.' 2011-12-02 10:50:56 +00:00
Makefile Makefile: use full path for qapi-generated directory 2011-11-30 09:28:32 -06:00
Makefile.dis
Makefile.hw
Makefile.objs hw/9pfs: Improve portability to older systems 2011-12-04 22:35:27 +05:30
Makefile.target Merge branch 'tci' of git://qemu.weilnetz.de/qemu 2011-11-02 20:52:13 +00:00
Makefile.user build: Move tracing objects into libuser on usermode emulation targets 2011-09-16 08:25:56 -05:00
memory.c memory: add MemoryRegionOps::valid.accepts 2011-11-24 18:32:00 +02:00
memory.h memory: add MemoryRegionOps::valid.accepts 2011-11-24 18:32:00 +02:00
microblaze-dis.c
migration-exec.c migration: move migrate_new to do_migrate 2011-10-20 13:23:53 +02:00
migration-fd.c migration: flush migration data to disk. 2011-11-01 11:50:21 -05:00
migration-tcp.c migration: make migration-{tcp,unix} consistent 2011-10-20 13:23:55 +02:00
migration-unix.c migration: make migration-{tcp,unix} consistent 2011-10-20 13:23:55 +02:00
migration.c block: allow migration to work with image files (v3) 2011-11-21 14:58:48 -06:00
migration.h migrate: add migration blockers 2011-11-21 14:57:22 -06:00
mips-dis.c Remove blanks before \n in output strings 2011-09-16 08:25:56 -05:00
mips.ld
module.c
module.h
monitor.c monitor: Fix file_completion() to check for stat() failure 2011-11-17 12:57:49 +00:00
monitor.h Monitor: Introduce monitor_get_cpu_index() 2011-10-27 11:48:46 -02:00
nbd.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
nbd.h nbd: sync API definitions with upstream 2011-09-19 11:34:33 +02:00
net.c Move filedescriptor parsing code from net.c into qemu_parse_fd() 2011-11-01 16:52:08 -05:00
net.h
notify.c
notify.h
os-posix.c os-posix: Plug fd leak in qemu_create_pidfile() 2011-11-11 12:49:52 -06:00
os-win32.c Replace WriteFileEx with WriteFile in qemu_create_pidfile 2011-11-09 12:06:20 -06:00
osdep.c
osdep.h Move macro QEMU_GNUC_PREREQ to compiler.h 2011-09-23 11:51:05 -05:00
oslib-posix.c 9pfs: improve portability to older systems 2011-11-28 11:36:27 -06:00
oslib-win32.c add socket_set_block 2011-10-21 17:34:12 +02:00
path.c
pci-ids.txt
pflib.c
pflib.h
poison.h
posix-aio-compat.c posix-aio-compat: Plug memory leak on paio_init() error path 2011-11-11 12:49:52 -06:00
ppc64.ld ppc64: Fix linker script 2011-10-06 09:48:09 +02:00
ppc-dis.c
ppc.ld
qapi-schema-guest.json
qapi-schema-test.json
qapi-schema.json hmp/qmp: add block_set_io_throttle 2011-12-05 14:51:35 +01:00
qbool.c
qbool.h
qdict-test-data.txt
qdict.c
qdict.h
qemu_socket.h add socket_set_block 2011-10-21 17:34:12 +02:00
qemu-aio.h
qemu-barrier.h qemu-barrier: Fix build failure on PowerPC Mac OS X 2011-11-01 11:50:11 -05:00
qemu-char.c qemu-char: rename qemu_chr_event to qemu_chr_be_event and make it public 2011-11-28 16:20:51 -06:00
qemu-char.h qemu-char: rename qemu_chr_event to qemu_chr_be_event and make it public 2011-11-28 16:20:51 -06:00
qemu-common.h qemu-common: add QEMU_ALIGN_DOWN() and QEMU_ALIGN_UP() macros 2011-12-05 14:51:37 +01:00
qemu-config.c block: add -drive copy-on-read=on|off 2011-12-05 14:51:38 +01:00
qemu-config.h
qemu-coroutine-int.h
qemu-coroutine-lock.c coroutine: add qemu_co_queue_restart_all() 2011-12-05 14:51:38 +01:00
qemu-coroutine.c
qemu-coroutine.h coroutine: add qemu_co_queue_restart_all() 2011-12-05 14:51:38 +01:00
qemu-doc.texi Merge remote-tracking branch 'kwolf/block-stable' into staging 2011-11-18 13:30:08 -06:00
qemu-error.c
qemu-error.h
qemu-ga.c
qemu-img-cmds.hx
qemu-img.c qemu-img: Tighten parsing of size arguments 2011-11-28 16:20:52 -06:00
qemu-img.texi
qemu-io.c Merge remote-tracking branch 'kwolf/for-anthony' into staging 2011-12-05 09:39:25 -06:00
qemu-lock.h
qemu-log.h
qemu-nbd.c qemu-nbd: open the block device after starting the client thread 2011-11-11 14:02:58 +01:00
qemu-nbd.texi
qemu-objects.h
qemu-option.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
qemu-option.h qemu: Add opt_set_bool functionality 2011-10-31 12:34:16 +05:30
qemu-options.h
qemu-options.hx block: add -drive copy-on-read=on|off 2011-12-05 14:51:38 +01:00
qemu-os-posix.h 9pfs: improve portability to older systems 2011-11-28 11:36:27 -06:00
qemu-os-win32.h main-loop: create main-loop.c 2011-10-21 18:14:30 +02:00
qemu-progress.c
qemu-queue.h qemu-queue: Introduce QLIST_INSERT_HEAD_RCU and dummy RCU wrappers. 2011-10-31 12:34:18 +05:30
qemu-sockets.c qemu-sockets: Plug fd leak on unix_connect_opts() error path 2011-11-11 12:49:52 -06:00
qemu-tech.texi qemu-tech.texi: Update default code cache size 2011-11-10 09:41:40 +00:00
qemu-thread-posix.c Abort on thread layer errors 2011-09-21 10:50:10 +01:00
qemu-thread-posix.h
qemu-thread-win32.c Abort on thread layer errors 2011-09-21 10:50:10 +01:00
qemu-thread-win32.h
qemu-thread.h qemu-queue: Introduce QLIST_INSERT_HEAD_RCU and dummy RCU wrappers. 2011-10-31 12:34:18 +05:30
qemu-timer-common.c
qemu-timer.c win32: remove broken timers 2011-11-09 12:06:20 -06:00
qemu-timer.h main-loop: create main-loop.h 2011-10-21 18:14:30 +02:00
qemu-tls.h qemu-tls.h: Add abstraction layer for TLS variables 2011-11-01 10:58:08 -05:00
qemu-tool.c qed: add migration blocker (v2) 2011-11-21 14:58:48 -06:00
qemu-x509.h
qemu-xattr.h configure: fix detection for xattr.h on modern distributions 2011-11-09 12:06:20 -06:00
qemu.sasl
qerror.c Merge remote-tracking branch 'kwolf/for-anthony' into staging 2011-12-05 09:39:25 -06:00
qerror.h Merge remote-tracking branch 'kwolf/for-anthony' into staging 2011-12-05 09:39:25 -06:00
qfloat.c
qfloat.h
qint.c
qint.h
qjson.c
qjson.h
qlist.c
qlist.h
qmp-commands.hx hmp/qmp: add block_set_io_throttle 2011-12-05 14:51:35 +01:00
qmp.c qapi: Convert query-spice 2011-10-27 11:48:47 -02:00
qobject.h
qstring.c
qstring.h
range.h
readline.c readline: Fix buffer overrun on re-add to history 2011-11-07 08:03:49 +00:00
readline.h
README
rules.mak
s390-dis.c
s390.ld
savevm.c Merge remote-tracking branch 'kwolf/for-anthony' into staging 2011-12-05 09:39:25 -06:00
sh4-dis.c
softmmu_defs.h Document softmmu templates 2011-10-01 09:31:08 +00:00
softmmu_exec.h Document softmmu templates 2011-10-01 09:31:08 +00:00
softmmu_header.h Document softmmu templates 2011-10-01 09:31:08 +00:00
softmmu_template.h softmmu_header: pass CPUState to tlb_fill 2011-10-01 09:31:26 +00:00
softmmu-semi.h
sparc64.ld
sparc-dis.c
sparc.ld
spice-qemu-char.c spice-qemu-char: Generate chardev open/close events 2011-11-28 16:20:51 -06:00
sysemu.h main-loop: create main-loop.h 2011-10-21 18:14:30 +02:00
targphys.h
tcg-runtime.c
tci-dis.c tcg: Add tci disassembler 2011-10-31 21:52:17 +01:00
tci.c tcg: Standardize on TCGReg as the enum for hard registers 2011-11-14 17:47:26 +01:00
test-coroutine.c
test-qmp-commands.c qapi: add test cases for generated free functions 2011-10-04 11:00:46 -03:00
test-visitor.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
thunk.c
thunk.h
TODO
trace-events dma-helpers: Add trace events 2011-12-05 14:51:38 +01:00
translate-all.c
uboot_image.h
usb-bsd.c
usb-linux.c usb-host: add usb_host_do_reset function. 2011-11-23 17:17:17 +01:00
usb-redir.c usb-redir: Don't try to write to the chardev after a close event 2011-11-28 16:20:51 -06:00
usb-stub.c
user-exec.c
VERSION Update version for 1.1 development branch 2011-12-05 08:39:02 -06:00
version.rc
vgafont.h
vl.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
x86_64.ld
xen-all.c Drop the vm_running global variable 2011-09-15 16:39:32 -03:00
xen-mapcache.c block: convert qemu_aio_flush() calls to bdrv_drain_all() 2011-12-05 14:56:06 +01:00
xen-mapcache.h
xen-stub.c
xtensa-semi.c

Read the documentation in qemu-doc.html.

Fabrice Bellard.