summary refs log tree commit diff stats
path: root/net
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2012-07-17 16:17:18 +0200
committerStefan Hajnoczi <stefanha@linux.vnet.ibm.com>2012-07-23 11:55:18 +0100
commit4a917c39aed9ad7f648c435204a6586c4ca3f2f2 (patch)
treeeedbeb5d9598f8949dd2bb92d4d147a2e3b88fbe /net
parentbef8e8fe07e80821992f61d3775c6ac3766eee48 (diff)
downloadfocaccia-qemu-4a917c39aed9ad7f648c435204a6586c4ca3f2f2.tar.gz
focaccia-qemu-4a917c39aed9ad7f648c435204a6586c4ca3f2f2.zip
convert net_init_vde() to NetClientOptions
v1->v2:
- NetdevVdeOptions::port and ::mode are of type uint16. Remove superfluous
  range checks.

Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Diffstat (limited to 'net')
-rw-r--r--net/vde.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/net/vde.c b/net/vde.c
index 8e60f68800..703888c503 100644
--- a/net/vde.c
+++ b/net/vde.c
@@ -110,20 +110,17 @@ static int net_vde_init(VLANState *vlan, const char *model,
     return 0;
 }
 
-int net_init_vde(QemuOpts *opts, const NetClientOptions *new_opts,
+int net_init_vde(QemuOpts *old_opts, const NetClientOptions *opts,
                  const char *name, VLANState *vlan)
 {
-    const char *sock;
-    const char *group;
-    int port, mode;
+    const NetdevVdeOptions *vde;
 
-    sock  = qemu_opt_get(opts, "sock");
-    group = qemu_opt_get(opts, "group");
+    assert(opts->kind == NET_CLIENT_OPTIONS_KIND_VDE);
+    vde = opts->vde;
 
-    port = qemu_opt_get_number(opts, "port", 0);
-    mode = qemu_opt_get_number(opts, "mode", 0700);
-
-    if (net_vde_init(vlan, "vde", name, sock, port, group, mode) == -1) {
+    /* missing optional values have been initialized to "all bits zero" */
+    if (net_vde_init(vlan, "vde", name, vde->sock, vde->port, vde->group,
+                     vde->has_mode ? vde->mode : 0700) == -1) {
         return -1;
     }