diff mbox

[05/26] QemuOpt: add qemu_opt_print_help()

Message ID 1395360813-2833-6-git-send-email-l@dorileo.org
State New
Headers show

Commit Message

Leandro Dorileo March 21, 2014, 12:13 a.m. UTC
Analogous to print_option_help(QEMUOptionParameter *list) this function
displays the available key and help for each described QemuOptDesc in
QemuOptList.

Signed-off-by: Leandro Dorileo <l@dorileo.org>
---
 include/qemu/option.h |  1 +
 util/qemu-option.c    | 12 ++++++++++++
 2 files changed, 13 insertions(+)
diff mbox

Patch

diff --git a/include/qemu/option.h b/include/qemu/option.h
index 3f4976d..62eacf3 100644
--- a/include/qemu/option.h
+++ b/include/qemu/option.h
@@ -177,6 +177,7 @@  void qemu_opts_absorb_qdict(QemuOpts *opts, QDict *qdict, Error **errp);
 
 typedef int (*qemu_opts_loopfunc)(QemuOpts *opts, void *opaque);
 void qemu_opts_print(QemuOpts *opts);
+void qemu_opts_print_help(QemuOpts *opts);
 int qemu_opts_foreach(QemuOptsList *list, qemu_opts_loopfunc func, void *opaque,
                       int abort_on_failure);
 
diff --git a/util/qemu-option.c b/util/qemu-option.c
index 026d2ff..6fac370 100644
--- a/util/qemu-option.c
+++ b/util/qemu-option.c
@@ -1022,6 +1022,18 @@  void qemu_opts_print(QemuOpts *opts)
     }
 }
 
+void qemu_opts_print_help(QemuOpts *opts)
+{
+    QemuOptDesc *desc = opts->list->desc;
+
+    printf("Supported options:\n");
+
+    for (; desc && desc->name; desc++) {
+        printf("%-16s %s\n", desc->name, desc->help ?
+               desc->help : "No description available");
+    }
+}
+
 static int opts_do_parse(QemuOpts *opts, const char *params,
                          const char *firstname, bool prepend)
 {