From nobody Sun Feb 8 12:42:55 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1547852774522392.4576383863514; Fri, 18 Jan 2019 15:06:14 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id A5CAA18B320; Fri, 18 Jan 2019 23:06:12 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5FB4561D21; Fri, 18 Jan 2019 23:06:12 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 15B46180339B; Fri, 18 Jan 2019 23:06:12 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x0IN5c6H008692 for ; Fri, 18 Jan 2019 18:05:38 -0500 Received: by smtp.corp.redhat.com (Postfix) id CE8FB600D6; Fri, 18 Jan 2019 23:05:38 +0000 (UTC) Received: from worklaptop.redhat.com (ovpn-125-139.rdu2.redhat.com [10.10.125.139]) by smtp.corp.redhat.com (Postfix) with ESMTP id 6189F600C2; Fri, 18 Jan 2019 23:05:38 +0000 (UTC) From: Cole Robinson To: libvirt-list@redhat.com Date: Fri, 18 Jan 2019 18:05:27 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 09/10] vbox: Convert to net enum model X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Fri, 18 Jan 2019 23:06:13 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Convert the vbox driver to net model enum, which requires adding enum values for Am79C970A, Am79C973, 82540EM, 82545EM, 82543GC Similar to the vmx driver, case insensitive handling of the model passed in via the XML is lost. I don't know if we care Remove the now unused virDomainNetStrcaseeqModelString Signed-off-by: Cole Robinson --- src/conf/domain_conf.c | 17 ++++++----------- src/conf/domain_conf.h | 7 +++++-- src/libvirt_private.syms | 1 - src/vbox/vbox_common.c | 31 ++++++++++++++----------------- 4 files changed, 25 insertions(+), 31 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index b040b7b983..e951e8153b 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -452,7 +452,12 @@ VIR_ENUM_IMPL(virDomainNetModel, VIR_DOMAIN_NET_MODEL_= LAST, "vlance", "vmxnet", "vmxnet2", - "vmxnet3") + "vmxnet3", + "Am79C970A", + "Am79C973", + "82540EM", + "82545EM", + "82543GC") =20 VIR_ENUM_IMPL(virDomainNetBackend, VIR_DOMAIN_NET_BACKEND_TYPE_LAST, "default", @@ -29884,16 +29889,6 @@ virDomainNetSetModelString(virDomainNetDefPtr ifac= e, return 0; } =20 -int -virDomainNetStrcaseeqModelString(const virDomainNetDef *iface, - const char *model) -{ - if (iface->model) - return STRCASEEQ(virDomainNetModelTypeToString(iface->model), - model); - return iface->modelstr && STRCASEEQ(iface->modelstr, model); -} - bool virDomainNetHasVirtioModel(const virDomainNetDef *iface) { diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index e144d2c87c..b4e70480ac 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -978,6 +978,11 @@ typedef enum { VIR_DOMAIN_NET_MODEL_VMXNET, VIR_DOMAIN_NET_MODEL_VMXNET2, VIR_DOMAIN_NET_MODEL_VMXNET3, + VIR_DOMAIN_NET_MODEL_AM79C970A, + VIR_DOMAIN_NET_MODEL_AM79C973, + VIR_DOMAIN_NET_MODEL_82540EM, + VIR_DOMAIN_NET_MODEL_82545EM, + VIR_DOMAIN_NET_MODEL_82543GC, =20 VIR_DOMAIN_NET_MODEL_LAST } virDomainNetModelType; @@ -3297,8 +3302,6 @@ bool virDomainNetGetActualTrustGuestRxFilters(virDoma= inNetDefPtr iface); const char *virDomainNetGetModelString(const virDomainNetDef *iface); int virDomainNetSetModelString(virDomainNetDefPtr iface, const char *model); -int virDomainNetStrcaseeqModelString(const virDomainNetDef *iface, - const char *model); bool virDomainNetHasVirtioModel(const virDomainNetDef *iface); int virDomainNetAppendIPAddress(virDomainNetDefPtr def, const char *address, diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 3ed0b3b11c..e4585e4884 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -484,7 +484,6 @@ virDomainNetRemoveHostdev; virDomainNetResolveActualType; virDomainNetSetDeviceImpl; virDomainNetSetModelString; -virDomainNetStrcaseeqModelString; virDomainNetTypeFromString; virDomainNetTypeSharesHostView; virDomainNetTypeToString; diff --git a/src/vbox/vbox_common.c b/src/vbox/vbox_common.c index fa8d899fec..0474c58730 100644 --- a/src/vbox/vbox_common.c +++ b/src/vbox/vbox_common.c @@ -1309,7 +1309,7 @@ vboxAttachNetwork(virDomainDefPtr def, vboxDriverPtr = data, IMachine *machine) macaddrvbox[VIR_MAC_STRING_BUFLEN - 6] =3D '\0'; =20 VIR_DEBUG("NIC(%zu): Type: %d", i, def->nets[i]->type); - VIR_DEBUG("NIC(%zu): Model: %s", i, virDomainNetGetModelString(de= f->nets[i])); + VIR_DEBUG("NIC(%zu): Model: %s", i, virDomainNetModelTypeToString= (def->nets[i]->model)); VIR_DEBUG("NIC(%zu): Mac: %s", i, macaddr); VIR_DEBUG("NIC(%zu): ifname: %s", i, def->nets[i]->ifname); if (def->nets[i]->type =3D=3D VIR_DOMAIN_NET_TYPE_NETWORK) { @@ -1338,19 +1338,19 @@ vboxAttachNetwork(virDomainDefPtr def, vboxDriverPt= r data, IMachine *machine) =20 gVBoxAPI.UINetworkAdapter.SetEnabled(adapter, 1); =20 - if (virDomainNetGetModelString(def->nets[i])) { - if (virDomainNetStrcaseeqModelString(def->nets[i], "Am79C970A"= )) { + if (def->nets[i]->model) { + if (def->nets[i]->model =3D=3D VIR_DOMAIN_NET_MODEL_AM79C970A)= { adapterType =3D NetworkAdapterType_Am79C970A; - } else if (virDomainNetStrcaseeqModelString(def->nets[i], "Am7= 9C973")) { + } else if (def->nets[i]->model =3D=3D VIR_DOMAIN_NET_MODEL_AM7= 9C973) { adapterType =3D NetworkAdapterType_Am79C973; - } else if (virDomainNetStrcaseeqModelString(def->nets[i], "825= 40EM")) { + } else if (def->nets[i]->model =3D=3D VIR_DOMAIN_NET_MODEL_825= 40EM) { adapterType =3D NetworkAdapterType_I82540EM; - } else if (virDomainNetStrcaseeqModelString(def->nets[i], "825= 45EM")) { + } else if (def->nets[i]->model =3D=3D VIR_DOMAIN_NET_MODEL_825= 45EM) { adapterType =3D NetworkAdapterType_I82545EM; - } else if (virDomainNetStrcaseeqModelString(def->nets[i], "825= 43GC")) { + } else if (def->nets[i]->model =3D=3D VIR_DOMAIN_NET_MODEL_825= 43GC) { adapterType =3D NetworkAdapterType_I82543GC; } else if (gVBoxAPI.APIVersion >=3D 3000051 && - virDomainNetStrcaseeqModelString(def->nets[i], "vir= tio")) { + def->nets[i]->model =3D=3D VIR_DOMAIN_NET_MODEL_VIR= TIO) { /* Only vbox 3.1 and later support NetworkAdapterType_Virt= o */ adapterType =3D NetworkAdapterType_Virtio; } @@ -3687,7 +3687,6 @@ vboxDumpNetwork(vboxDriverPtr data, INetworkAdapter *= adapter) { PRUint32 attachmentType =3D NetworkAttachmentType_Null; PRUint32 adapterType =3D NetworkAdapterType_Null; - const char *model =3D NULL; PRUnichar *utf16 =3D NULL; char *utf8 =3D NULL; virDomainNetDefPtr net =3D NULL; @@ -3742,28 +3741,26 @@ vboxDumpNetwork(vboxDriverPtr data, INetworkAdapter= *adapter) gVBoxAPI.UINetworkAdapter.GetAdapterType(adapter, &adapterType); switch (adapterType) { case NetworkAdapterType_Am79C970A: - model =3D "Am79C970A"; + net->model =3D VIR_DOMAIN_NET_MODEL_AM79C970A; break; case NetworkAdapterType_Am79C973: - model =3D "Am79C973"; + net->model =3D VIR_DOMAIN_NET_MODEL_AM79C973; break; case NetworkAdapterType_I82540EM: - model =3D "82540EM"; + net->model =3D VIR_DOMAIN_NET_MODEL_82540EM; break; case NetworkAdapterType_I82545EM: - model =3D "82545EM"; + net->model =3D VIR_DOMAIN_NET_MODEL_82545EM; break; case NetworkAdapterType_I82543GC: - model =3D "82543GC"; + net->model =3D VIR_DOMAIN_NET_MODEL_82543GC; break; case NetworkAdapterType_Virtio: /* Only vbox 3.1 and later support NetworkAdapterType_Virto */ if (gVBoxAPI.APIVersion >=3D 3000051) - model =3D "virtio"; + net->model =3D VIR_DOMAIN_NET_MODEL_VIRTIO; break; } - if (virDomainNetSetModelString(net, model) < 0) - goto error; =20 gVBoxAPI.UINetworkAdapter.GetMACAddress(adapter, &utf16); VBOX_UTF16_TO_UTF8(utf16, &utf8); --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list