qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 1/5] qemu-option: add alias support


From: Luiz Capitulino
Subject: [Qemu-devel] [PATCH 1/5] qemu-option: add alias support
Date: Tue, 10 Jul 2012 16:50:27 -0300

It allows for specifying an alias for each option name, see next commits
examples.

Signed-off-by: Luiz Capitulino <address@hidden>
---
 qemu-option.c | 9 ++++++++-
 qemu-option.h | 1 +
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/qemu-option.c b/qemu-option.c
index bb3886c..59a1f6e 100644
--- a/qemu-option.c
+++ b/qemu-option.c
@@ -616,6 +616,7 @@ static void opt_set(QemuOpts *opts, const char *name, const 
char *value,
                     bool prepend, Error **errp)
 {
     QemuOpt *opt;
+    const char *optname;
     const QemuOptDesc *desc = opts->list->desc;
     Error *local_err = NULL;
     int i;
@@ -624,18 +625,24 @@ static void opt_set(QemuOpts *opts, const char *name, 
const char *value,
         if (strcmp(desc[i].name, name) == 0) {
             break;
         }
+        if (desc[i].alias && strcmp(desc[i].alias, name) == 0) {
+            break;
+        }
     }
     if (desc[i].name == NULL) {
         if (i == 0) {
             /* empty list -> allow any */;
+            optname = name;
         } else {
             error_set(errp, QERR_INVALID_PARAMETER, name);
             return;
         }
+    } else {
+        optname = desc[i].name;
     }
 
     opt = g_malloc0(sizeof(*opt));
-    opt->name = g_strdup(name);
+    opt->name = g_strdup(optname);
     opt->opts = opts;
     if (prepend) {
         QTAILQ_INSERT_HEAD(&opts->head, opt, next);
diff --git a/qemu-option.h b/qemu-option.h
index 951dec3..7106d2f 100644
--- a/qemu-option.h
+++ b/qemu-option.h
@@ -94,6 +94,7 @@ enum QemuOptType {
 
 typedef struct QemuOptDesc {
     const char *name;
+    const char *alias;
     enum QemuOptType type;
     const char *help;
 } QemuOptDesc;
-- 
1.7.11.1.116.g8228a23




reply via email to

[Prev in Thread] Current Thread [Next in Thread]