From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Mv8Td-0008UZ-Vr for qemu-devel@nongnu.org; Tue, 06 Oct 2009 07:45:10 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Mv8TX-0008Ta-E6 for qemu-devel@nongnu.org; Tue, 06 Oct 2009 07:45:08 -0400 Received: from [199.232.76.173] (port=52648 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Mv8TV-0008TP-JU for qemu-devel@nongnu.org; Tue, 06 Oct 2009 07:45:03 -0400 Received: from mx1.redhat.com ([209.132.183.28]:64940) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Mv8TV-0003Le-3a for qemu-devel@nongnu.org; Tue, 06 Oct 2009 07:45:01 -0400 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n96BIreo008453 for ; Tue, 6 Oct 2009 07:18:53 -0400 From: Mark McLoughlin Date: Tue, 6 Oct 2009 12:17:12 +0100 Message-Id: <1254827836-11021-23-git-send-email-markmc@redhat.com> In-Reply-To: <1254827783.2720.42.camel@blaa> References: <1254827783.2720.42.camel@blaa> Subject: [Qemu-devel] [PATCH] Clean up legacy code in net_client_init() List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Mark McLoughlin Now that we've ported everything over to QemuOpts, we can kill off all the cruft in net_client_init(). Note, the 'channel' type requires special handling as it uses a format that QemuOpts can't parse Signed-off-by: Mark McLoughlin --- net.c | 58 ++++++++++++++-------------------------------------------- 1 files changed, 14 insertions(+), 44 deletions(-) diff --git a/net.c b/net.c index fd4af3c..534305c 100644 --- a/net.c +++ b/net.c @@ -3032,42 +3032,12 @@ static int net_client_init_from_opts(Monitor *mon, QemuOpts *opts) int net_client_init(Monitor *mon, const char *device, const char *p) { - char buf[1024]; - int vlan_id, ret; - VLANState *vlan; - char *name = NULL; - - if (!strcmp(device, "none") || - !strcmp(device, "nic") || - !strcmp(device, "user") || - !strcmp(device, "tap") || - !strcmp(device, "socket") || - !strcmp(device, "vde") || - !strcmp(device, "dump")) { - QemuOpts *opts; - - opts = qemu_opts_parse(&qemu_net_opts, p, NULL); - if (!opts) { - return -1; - } - - qemu_opt_set(opts, "type", device); - - return net_client_init_from_opts(mon, opts); - } - - vlan_id = 0; - if (get_param_value(buf, sizeof(buf), "vlan", p)) { - vlan_id = strtol(buf, NULL, 0); - } - vlan = qemu_find_vlan(vlan_id, 1); - - if (get_param_value(buf, sizeof(buf), "name", p)) { - name = qemu_strdup(buf); - } + QemuOpts *opts; #ifdef CONFIG_SLIRP if (!strcmp(device, "channel")) { + int ret; + if (QTAILQ_EMPTY(&slirp_stacks)) { struct slirp_config_str *config; @@ -3080,19 +3050,19 @@ int net_client_init(Monitor *mon, const char *device, const char *p) } else { ret = slirp_guestfwd(QTAILQ_FIRST(&slirp_stacks), p, 1); } - } else -#endif - { - qemu_error("Unknown network device: %s\n", device); - ret = -1; - goto out; + + return ret; } - if (ret < 0) { - qemu_error("Could not initialize device '%s'\n", device); +#endif + + opts = qemu_opts_parse(&qemu_net_opts, p, NULL); + if (!opts) { + return -1; } -out: - qemu_free(name); - return ret; + + qemu_opt_set(opts, "type", device); + + return net_client_init_from_opts(mon, opts); } void net_client_uninit(NICInfo *nd) -- 1.6.2.5