From nobody Mon May 20 00:21:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1589825065; cv=none; d=zohomail.com; s=zohoarc; b=KH7N+bW5/VWrSe2kzNh/upMIqIxKxo6A9UlnXs6Z+ca4mryl6PW1GDkwtptA+Ilk5sgHTf1cYxW2D3EW5ExP5JjRoWgZu26+me25VNfdHXpbSRykO3/BKkCwBpglXFKFX7wcFNt6EMJOl30p41Zd2WHfArHgC/Tf8hOHmv2LXJQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1589825065; h=Content-Type:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=49tYsxIzzACQzUjPEMtptE4ywZ48RR5MimwNRO4Z8aM=; b=jfPOsdUmm7Ypl0avIFjCtmxumhS/t6B6mit3Z3jcRzjrgDYtPSHw1OJpzUsWpHs/UmmHRTlVuvUEoY4VDqg8XenLWp37RvjHCwIVcmUvhnb4HmYduNsMqPjIbC3CaAs/BXVkzu5d+Z/Gz/5E7Xk7NJQjrqTdWaR6nFZ9J0qOlxA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1589825065162469.1849781787246; Mon, 18 May 2020 11:04:25 -0700 (PDT) Received: from localhost ([::1]:33756 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jak7j-0007k1-Ug for importer@patchew.org; Mon, 18 May 2020 14:04:23 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43394) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jak4h-0005Bb-BC for qemu-devel@nongnu.org; Mon, 18 May 2020 14:01:15 -0400 Received: from us-smtp-delivery-1.mimecast.com ([205.139.110.120]:27872 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1jak4g-00033j-9x for qemu-devel@nongnu.org; Mon, 18 May 2020 14:01:15 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-38-33UsVXUCPm6EIefVrc_Wtw-1; Mon, 18 May 2020 14:01:09 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5A268108BD0D for ; Mon, 18 May 2020 18:01:08 +0000 (UTC) Received: from thuth.com (ovpn-112-242.ams2.redhat.com [10.36.112.242]) by smtp.corp.redhat.com (Postfix) with ESMTP id 1902C1001B2C; Mon, 18 May 2020 18:01:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1589824873; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:content-type:content-type:in-reply-to:in-reply-to: references:references; bh=49tYsxIzzACQzUjPEMtptE4ywZ48RR5MimwNRO4Z8aM=; b=GgiHm0/ZlroQLAsZjnbCawrhuIfbUvhNXIrT3Uhj18JBFNyx2Qe5XjySAB2g3m5DP5i7ix I3PyeT+Z+/65f8gYaGDeNdQozGfTjidAVf3rPFEz895c0nGaJjuSpLip4CThcAvThPE5UB sRd4DGg9hpFgIYKr22lDDfT5Eiunz4A= X-MC-Unique: 33UsVXUCPm6EIefVrc_Wtw-1 From: Thomas Huth To: Jason Wang , qemu-devel@nongnu.org Subject: [PATCH v3 1/2] net: Drop the legacy "name" parameter from the -net option Date: Mon, 18 May 2020 20:01:02 +0200 Message-Id: <20200518180103.32484-2-thuth@redhat.com> In-Reply-To: <20200518180103.32484-1-thuth@redhat.com> References: <20200518180103.32484-1-thuth@redhat.com> X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=205.139.110.120; envelope-from=thuth@redhat.com; helo=us-smtp-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/17 22:51:00 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Markus Armbruster Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" It's been deprecated since QEMU v3.1, so it's time to finally remove it. The "id" parameter can simply be used instead. Reviewed-by: Eric Blake Signed-off-by: Thomas Huth --- docs/system/deprecated.rst | 15 +++++++++------ net/net.c | 10 +--------- qapi/net.json | 3 --- 3 files changed, 10 insertions(+), 18 deletions(-) diff --git a/docs/system/deprecated.rst b/docs/system/deprecated.rst index 3142fac386..1b87c8f0db 100644 --- a/docs/system/deprecated.rst +++ b/docs/system/deprecated.rst @@ -47,12 +47,6 @@ The 'file' driver for drives is no longer appropriate fo= r character or host devices and will only accept regular files (S_IFREG). The correct driver for these file types is 'host_cdrom' or 'host_device' as appropriate. =20 -``-net ...,name=3D``\ *name* (since 3.1) -'''''''''''''''''''''''''''''''''''''' - -The ``name`` parameter of the ``-net`` option is a synonym -for the ``id`` parameter, which should now be used instead. - ``-smp`` (invalid topologies) (since 3.1) ''''''''''''''''''''''''''''''''''''''''' =20 @@ -470,6 +464,15 @@ What follows is a record of recently removed, formerly= deprecated features that serves as a record for users who have encountered trouble after a recent upgrade. =20 +System emulator command line arguments +-------------------------------------- + +``-net ...,name=3D``\ *name* (removed in 5.1) +''''''''''''''''''''''''''''''''''''''''''' + +The ``name`` parameter of the ``-net`` option was a synonym +for the ``id`` parameter, which should now be used instead. + QEMU Machine Protocol (QMP) commands ------------------------------------ =20 diff --git a/net/net.c b/net/net.c index 38778e831d..a24da66e66 100644 --- a/net/net.c +++ b/net/net.c @@ -969,12 +969,10 @@ static int net_client_init1(const void *object, bool = is_netdev, Error **errp) { Netdev legacy =3D {0}; const Netdev *netdev; - const char *name; NetClientState *peer =3D NULL; =20 if (is_netdev) { netdev =3D object; - name =3D netdev->id; =20 if (netdev->type =3D=3D NET_CLIENT_DRIVER_NIC || !net_client_init_fun[netdev->type]) { @@ -987,12 +985,6 @@ static int net_client_init1(const void *object, bool i= s_netdev, Error **errp) const NetLegacyOptions *opts =3D net->opts; legacy.id =3D net->id; netdev =3D &legacy; - /* missing optional values have been initialized to "all bits zero= " */ - name =3D net->has_id ? net->id : net->name; - - if (net->has_name) { - warn_report("The 'name' parameter is deprecated, use 'id' inst= ead"); - } =20 /* Map the old options to the new flat type */ switch (opts->type) { @@ -1052,7 +1044,7 @@ static int net_client_init1(const void *object, bool = is_netdev, Error **errp) } } =20 - if (net_client_init_fun[netdev->type](netdev, name, peer, errp) < 0) { + if (net_client_init_fun[netdev->type](netdev, netdev->id, peer, errp) = < 0) { /* FIXME drop when all init functions store an Error */ if (errp && !*errp) { error_setg(errp, QERR_DEVICE_INIT_FAILED, diff --git a/qapi/net.json b/qapi/net.json index cebb1b52e3..fc7c95f6d8 100644 --- a/qapi/net.json +++ b/qapi/net.json @@ -474,8 +474,6 @@ # # @id: identifier for monitor commands # -# @name: identifier for monitor commands, ignored if @id is present -# # @opts: device type specific properties (legacy) # # Since: 1.2 @@ -483,7 +481,6 @@ { 'struct': 'NetLegacy', 'data': { '*id': 'str', - '*name': 'str', 'opts': 'NetLegacyOptions' } } =20 ## --=20 2.18.1 From nobody Mon May 20 00:21:58 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1589824981; cv=none; d=zohomail.com; s=zohoarc; b=ELVic9p2U2NUKcKB0OcDoa7eScLlEiR/ZH+K3639JgPz32+02O3jAWUpkjlJ2aTwOzzfQQ9h3M2/KTn4YpjVpLqBcNFdmfvxDoSHKjsEpMQiV1TU+m4CsEF4jpu9E05dsR2UUOfu46zyqyA0aB3q+Bs5oLX7+B/u0jkhUmbpaYM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1589824981; h=Content-Type:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=F1c+oilfDsSd/2cwkS5kVulDw/AxgAERhejaQ3GHa+0=; b=oFqpjSWeXh4402nrqgdi6tcfkj04oJyqcEGC5xyO+X01qxcY+k4gzxjcWAKKURHFnPxcmcr3EUmlAiVf5Cl7tYxk3z+OJvCTbL6twQcFPlDqImZQEoUHeCA5RwCkH6xJyAG8gsaufYEPB8pX0oMEh4Ihjut09GHyLQ2jCJSpkc4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1589824981551568.2545897602131; Mon, 18 May 2020 11:03:01 -0700 (PDT) Received: from localhost ([::1]:58646 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jak6N-0006Jj-SA for importer@patchew.org; Mon, 18 May 2020 14:02:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43438) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jak4v-0005PH-9Z for qemu-devel@nongnu.org; Mon, 18 May 2020 14:01:29 -0400 Received: from us-smtp-2.mimecast.com ([207.211.31.81]:33790 helo=us-smtp-delivery-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1jak4u-00036K-1H for qemu-devel@nongnu.org; Mon, 18 May 2020 14:01:28 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-269-bb1anneAOi6ocpVjo3Byjg-1; Mon, 18 May 2020 14:01:10 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id F34CA1800D42 for ; Mon, 18 May 2020 18:01:09 +0000 (UTC) Received: from thuth.com (ovpn-112-242.ams2.redhat.com [10.36.112.242]) by smtp.corp.redhat.com (Postfix) with ESMTP id B4CB410013D9; Mon, 18 May 2020 18:01:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1589824886; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:content-type:content-type:in-reply-to:in-reply-to: references:references; bh=F1c+oilfDsSd/2cwkS5kVulDw/AxgAERhejaQ3GHa+0=; b=edqZwDW9CvjSBnZGWxgerTA21ReAOOJ4RIfzpbQR8y2tX3N35PZGmWOTIADV6Dn4VLI7k6 rhBv23AgjSIupZeDufQU+2B1DOErx+cmZgsKB9T47uqGDH7XCAUymwce2ArVEsCRfyuwGg l7PiBnmNKiYbEug+iwbTBLR8DaPDIEw= X-MC-Unique: bb1anneAOi6ocpVjo3Byjg-1 From: Thomas Huth To: Jason Wang , qemu-devel@nongnu.org Subject: [PATCH v3 2/2] net: Drop the NetLegacy structure, always use Netdev instead Date: Mon, 18 May 2020 20:01:03 +0200 Message-Id: <20200518180103.32484-3-thuth@redhat.com> In-Reply-To: <20200518180103.32484-1-thuth@redhat.com> References: <20200518180103.32484-1-thuth@redhat.com> X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=207.211.31.81; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/17 22:52:27 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Markus Armbruster Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Now that the "name" parameter is gone, there is hardly any difference between NetLegacy and Netdev anymore, so we can drop NetLegacy and always use Netdev to simplify the code quite a bit. The only two differences that were really left between Netdev and NetLegacy: 1) NetLegacy does not allow a "hubport" type. We can continue to block this with a simple check in net_client_init1() for this type. 2) The "id" parameter was optional in NetLegacy (and an internal id was chosen via assign_name() during initialization), but it is mandatory for Netdev. To avoid that the visitor code bails out here, we have to add an internal id to the QemuOpts already earlier now. Signed-off-by: Thomas Huth Reviewed-by: Eric Blake --- Note: I did not rename the "is_netdev" parameter of the function (as Eric suggested) - you really have to think of "-netdev" vs. "-net" here and not about "Netdev" vs. "NetLegacy". But if this "is_netdev" thing still confuses us in the future, we can still rename it with an additional follow-up patch later instead. net/net.c | 77 +++++++++------------------------------------------ qapi/net.json | 46 ------------------------------ 2 files changed, 13 insertions(+), 110 deletions(-) diff --git a/net/net.c b/net/net.c index a24da66e66..d4cc5bd73e 100644 --- a/net/net.c +++ b/net/net.c @@ -965,15 +965,11 @@ static int (* const net_client_init_fun[NET_CLIENT_DR= IVER__MAX])( }; =20 =20 -static int net_client_init1(const void *object, bool is_netdev, Error **er= rp) +static int net_client_init1(const Netdev *netdev, bool is_netdev, Error **= errp) { - Netdev legacy =3D {0}; - const Netdev *netdev; NetClientState *peer =3D NULL; =20 if (is_netdev) { - netdev =3D object; - if (netdev->type =3D=3D NET_CLIENT_DRIVER_NIC || !net_client_init_fun[netdev->type]) { error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "type", @@ -981,56 +977,11 @@ static int net_client_init1(const void *object, bool = is_netdev, Error **errp) return -1; } } else { - const NetLegacy *net =3D object; - const NetLegacyOptions *opts =3D net->opts; - legacy.id =3D net->id; - netdev =3D &legacy; - - /* Map the old options to the new flat type */ - switch (opts->type) { - case NET_LEGACY_OPTIONS_TYPE_NONE: + if (netdev->type =3D=3D NET_CLIENT_DRIVER_NONE) { return 0; /* nothing to do */ - case NET_LEGACY_OPTIONS_TYPE_NIC: - legacy.type =3D NET_CLIENT_DRIVER_NIC; - legacy.u.nic =3D opts->u.nic; - break; - case NET_LEGACY_OPTIONS_TYPE_USER: - legacy.type =3D NET_CLIENT_DRIVER_USER; - legacy.u.user =3D opts->u.user; - break; - case NET_LEGACY_OPTIONS_TYPE_TAP: - legacy.type =3D NET_CLIENT_DRIVER_TAP; - legacy.u.tap =3D opts->u.tap; - break; - case NET_LEGACY_OPTIONS_TYPE_L2TPV3: - legacy.type =3D NET_CLIENT_DRIVER_L2TPV3; - legacy.u.l2tpv3 =3D opts->u.l2tpv3; - break; - case NET_LEGACY_OPTIONS_TYPE_SOCKET: - legacy.type =3D NET_CLIENT_DRIVER_SOCKET; - legacy.u.socket =3D opts->u.socket; - break; - case NET_LEGACY_OPTIONS_TYPE_VDE: - legacy.type =3D NET_CLIENT_DRIVER_VDE; - legacy.u.vde =3D opts->u.vde; - break; - case NET_LEGACY_OPTIONS_TYPE_BRIDGE: - legacy.type =3D NET_CLIENT_DRIVER_BRIDGE; - legacy.u.bridge =3D opts->u.bridge; - break; - case NET_LEGACY_OPTIONS_TYPE_NETMAP: - legacy.type =3D NET_CLIENT_DRIVER_NETMAP; - legacy.u.netmap =3D opts->u.netmap; - break; - case NET_LEGACY_OPTIONS_TYPE_VHOST_USER: - legacy.type =3D NET_CLIENT_DRIVER_VHOST_USER; - legacy.u.vhost_user =3D opts->u.vhost_user; - break; - default: - abort(); } - - if (!net_client_init_fun[netdev->type]) { + if (netdev->type =3D=3D NET_CLIENT_DRIVER_HUBPORT || + !net_client_init_fun[netdev->type]) { error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "type", "a net backend type (maybe it is not compiled " "into this binary)"); @@ -1039,7 +990,7 @@ static int net_client_init1(const void *object, bool i= s_netdev, Error **errp) =20 /* Do not add to a hub if it's a nic with a netdev=3D parameter. */ if (netdev->type !=3D NET_CLIENT_DRIVER_NIC || - !opts->u.nic.has_netdev) { + !netdev->u.nic.has_netdev) { peer =3D net_hub_add_port(0, NULL, NULL); } } @@ -1100,7 +1051,7 @@ static void show_netdevs(void) static int net_client_init(QemuOpts *opts, bool is_netdev, Error **errp) { gchar **substrings =3D NULL; - void *object =3D NULL; + Netdev *object =3D NULL; Error *err =3D NULL; int ret =3D -1; Visitor *v =3D opts_visitor_new(opts); @@ -1143,21 +1094,19 @@ static int net_client_init(QemuOpts *opts, bool is_= netdev, Error **errp) } } =20 - if (is_netdev) { - visit_type_Netdev(v, NULL, (Netdev **)&object, &err); - } else { - visit_type_NetLegacy(v, NULL, (NetLegacy **)&object, &err); + /* Create an ID for -net if the user did not specify one */ + if (!is_netdev && !qemu_opts_id(opts)) { + static int idx; + qemu_opts_set_id(opts, g_strdup_printf("__org.qemu.net%i", idx++)); } =20 + visit_type_Netdev(v, NULL, &object, &err); + if (!err) { ret =3D net_client_init1(object, is_netdev, &err); } =20 - if (is_netdev) { - qapi_free_Netdev(object); - } else { - qapi_free_NetLegacy(object); - } + qapi_free_Netdev(object); =20 out: error_propagate(errp, err); diff --git a/qapi/net.json b/qapi/net.json index fc7c95f6d8..9244c9af56 100644 --- a/qapi/net.json +++ b/qapi/net.json @@ -467,52 +467,6 @@ 'netmap': 'NetdevNetmapOptions', 'vhost-user': 'NetdevVhostUserOptions' } } =20 -## -# @NetLegacy: -# -# Captures the configuration of a network device; legacy. -# -# @id: identifier for monitor commands -# -# @opts: device type specific properties (legacy) -# -# Since: 1.2 -## -{ 'struct': 'NetLegacy', - 'data': { - '*id': 'str', - 'opts': 'NetLegacyOptions' } } - -## -# @NetLegacyOptionsType: -# -# Since: 1.2 -## -{ 'enum': 'NetLegacyOptionsType', - 'data': ['none', 'nic', 'user', 'tap', 'l2tpv3', 'socket', 'vde', - 'bridge', 'netmap', 'vhost-user'] } - -## -# @NetLegacyOptions: -# -# Like Netdev, but for use only by the legacy command line options -# -# Since: 1.2 -## -{ 'union': 'NetLegacyOptions', - 'base': { 'type': 'NetLegacyOptionsType' }, - 'discriminator': 'type', - 'data': { - 'nic': 'NetLegacyNicOptions', - 'user': 'NetdevUserOptions', - 'tap': 'NetdevTapOptions', - 'l2tpv3': 'NetdevL2TPv3Options', - 'socket': 'NetdevSocketOptions', - 'vde': 'NetdevVdeOptions', - 'bridge': 'NetdevBridgeOptions', - 'netmap': 'NetdevNetmapOptions', - 'vhost-user': 'NetdevVhostUserOptions' } } - ## # @NetFilterDirection: # --=20 2.18.1