Add a function to write the QemuOpts configuration to a git-style
config file.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
qemu-config.c | 39 +++++++++++++++++++++++++++++++++++++++
qemu-config.h | 2 ++
2 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/qemu-config.c b/qemu-config.c
index f02dd42..fa236e9 100644
--- a/qemu-config.c
+++ b/qemu-config.c
@@ -238,3 +238,42 @@ int qemu_set_option(const char *str)
return 0;
}
+struct ConfigWriteData {
+ QemuOptsList *list;
+ FILE *fp;
+};
+
+static int config_write_opt(const char *name, const char *value, void *opaque)
+{
+ struct ConfigWriteData *data = opaque;
+
+ fprintf(data->fp, " %s = \"%s\"\n", name, value);
+ return 0;
+}
+
+static int config_write_opts(QemuOpts *opts, void *opaque)
+{
+ struct ConfigWriteData *data = opaque;
+ const char *id = qemu_opts_id(opts);
+
+ if (id) {
+ fprintf(data->fp, "[%s \"%s\"]\n", data->list->name, id);