diff options
author | Max Reitz <mreitz@redhat.com> | 2013-12-20 19:28:05 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2014-01-22 12:07:17 +0100 |
commit | adf5c449e5beb163999e4ba7366d5f9aebb504a1 (patch) | |
tree | 4572ebc23d0f2f0029b64c3ec994297dbed598a4 /include | |
parent | 9f23fc0c23ab16e9c16b41ed300786924f7a7768 (diff) | |
download | qemu-adf5c449e5beb163999e4ba7366d5f9aebb504a1.zip qemu-adf5c449e5beb163999e4ba7366d5f9aebb504a1.tar.gz qemu-adf5c449e5beb163999e4ba7366d5f9aebb504a1.tar.bz2 |
qemu-option: Add qemu_config_parse_qdict()
This function basically parses command-line options given as a QDict
replacing a config file.
For instance, the QDict {"section.opt1": 42, "section.opt2": 23}
corresponds to the config file:
[section]
opt1 = 42
opt2 = 23
It is possible to specify multiple sections and also multiple sections
of the same type. On the command line, this looks like the following:
inject-error.0.event=reftable_load,\
inject-error.1.event=l2_load,\
set-state.event=l1_update
This would correspond to the following config file:
[inject-error "inject-error.0"]
event = reftable_load
[inject-error "inject-error.1"]
event = l2_load
[set-state]
event = l1_update
Signed-off-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/qemu/config-file.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/qemu/config-file.h b/include/qemu/config-file.h index 508428f..dbd97c4 100644 --- a/include/qemu/config-file.h +++ b/include/qemu/config-file.h @@ -4,6 +4,7 @@ #include <stdio.h> #include "qemu/option.h" #include "qapi/error.h" +#include "qapi/qmp/qdict.h" QemuOptsList *qemu_find_opts(const char *group); QemuOptsList *qemu_find_opts_err(const char *group, Error **errp); @@ -18,6 +19,11 @@ int qemu_config_parse(FILE *fp, QemuOptsList **lists, const char *fname); int qemu_read_config_file(const char *filename); +/* Parse QDict options as a replacement for a config file (allowing multiple + enumerated (0..(n-1)) configuration "sections") */ +void qemu_config_parse_qdict(QDict *options, QemuOptsList **lists, + Error **errp); + /* Read default QEMU config files */ int qemu_read_default_config_files(bool userconfig); |