[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 13/16] convert net_init_vde() to NetClientOptions
From: |
Laszlo Ersek |
Subject: |
[Qemu-devel] [PATCH 13/16] convert net_init_vde() to NetClientOptions |
Date: |
Tue, 22 May 2012 12:45:52 +0200 |
Signed-off-by: Laszlo Ersek <address@hidden>
---
net/vde.c | 37 +++++++++++++++++++++++++++++--------
1 files changed, 29 insertions(+), 8 deletions(-)
diff --git a/net/vde.c b/net/vde.c
index 8e60f68..35e8113 100644
--- a/net/vde.c
+++ b/net/vde.c
@@ -110,20 +110,41 @@ 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;
- sock = qemu_opt_get(opts, "sock");
- group = qemu_opt_get(opts, "group");
+ const NetdevVdeOptions *vde;
- port = qemu_opt_get_number(opts, "port", 0);
- mode = qemu_opt_get_number(opts, "mode", 0700);
+ assert(opts->kind == NET_CLIENT_OPTIONS_KIND_VDE);
+ vde = opts->vde;
- if (net_vde_init(vlan, "vde", name, sock, port, group, mode) == -1) {
+ if (vde->has_port) {
+ if (vde->port > INT_MAX) {
+ error_report("invalid port: %"PRId64, vde->port);
+ return -1;
+ }
+ port = vde->port;
+ }
+ else {
+ port = 0;
+ }
+
+ if (vde->has_mode) {
+ if (vde->mode > INT_MAX) {
+ error_report("invalid mode: %"PRId64, vde->mode);
+ return -1;
+ }
+ mode = vde->mode;
+ }
+ else {
+ mode = 0700;
+ }
+
+ /* missing optional values have been initialized to "all bits zero" */
+ if (net_vde_init(vlan, "vde", name, vde->sock, port, vde->group, mode) ==
+ -1) {
return -1;
}
--
1.7.1
- [Qemu-devel] [PATCH 01/16] qapi: fix error propagation, (continued)
- [Qemu-devel] [PATCH 01/16] qapi: fix error propagation, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 03/16] expose QemuOpt and QemuOpts struct definitions to interested parties, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 05/16] qapi schema: remove trailing whitespace, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 04/16] qapi: introduce OptsVisitor, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 08/16] convert net_client_init() to OptsVisitor, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 06/16] qapi schema: add Netdev types, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 09/16] convert net_init_nic() to NetClientOptions, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 10/16] convert net_init_dump() to NetClientOptions, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 15/16] convert net_init_bridge() to NetClientOptions, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 12/16] convert net_init_socket() to NetClientOptions, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 13/16] convert net_init_vde() to NetClientOptions,
Laszlo Ersek <=
- [Qemu-devel] [PATCH 07/16] hw, net: "net_client_type" -> "NetClientOptionsKind" (qapi-generated), Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 14/16] convert net_init_tap() to NetClientOptions, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 11/16] convert net_init_slirp() to NetClientOptions, Laszlo Ersek, 2012/05/22
- [Qemu-devel] [PATCH 16/16] remove unused QemuOpts parameter from net init functions, Laszlo Ersek, 2012/05/22