From nobody Sun Sep 28 17:40:23 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1757437255; cv=none; d=zohomail.com; s=zohoarc; b=dtU8Wkt40Mk0Cc77bLr4Ey7gzbh4SODXKOWC+QcrNdxXN1N48pRpRedV5PHba2yV61Vy0yITl3Zo8sAMS1/xaR7v3Yw7F3eoxs0tc5jSA0n9oAzJeZd3bQMrVMuv2RI7M6lWkFoJgsIvrxwp5e1C5e4Da2UG78iD8TCZMrjV3fE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1757437255; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=cKWmvwbl3Ykqw62VPAK0MxfC1m5cPJWLJRvuPtRLz5Q=; b=XGe7cYRzcU5XEWjNMC/dBHN+/ln9iyq9scz215a6P7hE/ET0CTllIKCZELAAiHZhFay1EDc1d0G/zhyCwDSm7Up5RtX0/RGkXzTcvqwDJW3G+J0z4QG3cs0rJP66W3cx2DU3l08Fr+2Xve4a5TZMU8y6Mh3c2of22ExtfUPrCx8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1757437255714310.8595173894108; Tue, 9 Sep 2025 10:00:55 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uw1g4-00072o-KD; Tue, 09 Sep 2025 12:58:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uw1fg-0006PR-AP for qemu-devel@nongnu.org; Tue, 09 Sep 2025 12:58:22 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uw1fc-0007fL-3d for qemu-devel@nongnu.org; Tue, 09 Sep 2025 12:58:19 -0400 Received: from mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-66-9NVuwgytMzWtYUYjkAlydg-1; Tue, 09 Sep 2025 12:58:12 -0400 Received: from mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.93]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id B0E991800451; Tue, 9 Sep 2025 16:58:11 +0000 (UTC) Received: from toolbx.redhat.com (unknown [10.42.28.45]) by mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 214711800446; Tue, 9 Sep 2025 16:58:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1757437094; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=cKWmvwbl3Ykqw62VPAK0MxfC1m5cPJWLJRvuPtRLz5Q=; b=heo0OcjHIW3GsGLr+owQ9acS8o1xBx/RfVJ24QBzlgVFv0yfbL7e7EboDfkIw6CqMKNM2M 3GsF4ICAqylZcvmvqVWXMyOyAydAVmzwjQI/rgK0+TSFL40x5V1IkwNlg0DN0cvG5RPr/l CRyTvZXMPvp/sBoaakSWZ+hVa++fSjc= X-MC-Unique: 9NVuwgytMzWtYUYjkAlydg-1 X-Mimecast-MFC-AGG-ID: 9NVuwgytMzWtYUYjkAlydg_1757437091 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: qemu-devel@nongnu.org Cc: "Michael S. Tsirkin" , Paolo Bonzini , Peter Maydell , Stefan Hajnoczi , Markus Armbruster , Thomas Huth , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH 14/15] hw/net: mark all NICs as insecure except e1000, e1000e & xen Date: Tue, 9 Sep 2025 17:57:25 +0100 Message-ID: <20250909165726.3814465-15-berrange@redhat.com> In-Reply-To: <20250909165726.3814465-1-berrange@redhat.com> References: <20250909165726.3814465-1-berrange@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.93 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=170.10.133.124; envelope-from=berrange@redhat.com; helo=us-smtp-delivery-124.mimecast.com 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_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1757437257908124100 Historically most NICs are only interesting for non-virtualization use cases and have not been written with malicious guests in mind. The exception is a handful of NICs from the x86 world. These days virtio-net or xen-net should be used in all virtualized guests. An exception is made, however, for the e1000/e1000e NICs since they are a common fallback NIC option for scenarios where virtio is not available. Signed-off-by: Daniel P. Berrang=C3=A9 --- hw/net/allwinner-sun8i-emac.c | 1 + hw/net/allwinner_emac.c | 3 ++- hw/net/cadence_gem.c | 1 + hw/net/can/can_kvaser_pci.c | 1 + hw/net/can/can_mioe3680_pci.c | 1 + hw/net/can/can_pcm3680_pci.c | 1 + hw/net/can/ctucan_pci.c | 1 + hw/net/can/xlnx-versal-canfd.c | 1 + hw/net/can/xlnx-zynqmp-can.c | 1 + hw/net/dp8393x.c | 1 + hw/net/e1000.c | 1 + hw/net/e1000e.c | 1 + hw/net/eepro100.c | 1 + hw/net/fsl_etsec/etsec.c | 1 + hw/net/ftgmac100.c | 1 + hw/net/igb.c | 1 + hw/net/igbvf.c | 1 + hw/net/imx_fec.c | 2 ++ hw/net/lan9118.c | 1 + hw/net/lan9118_phy.c | 1 + hw/net/lance.c | 1 + hw/net/lasi_i82596.c | 1 + hw/net/mcf_fec.c | 1 + hw/net/msf2-emac.c | 1 + hw/net/mv88w8618_eth.c | 1 + hw/net/ne2000-isa.c | 1 + hw/net/ne2000-pci.c | 1 + hw/net/npcm7xx_emc.c | 1 + hw/net/npcm_gmac.c | 1 + hw/net/npcm_pcs.c | 1 + hw/net/opencores_eth.c | 1 + hw/net/pcnet-pci.c | 1 + hw/net/rocker/rocker.c | 1 + hw/net/rtl8139.c | 1 + hw/net/smc91c111.c | 1 + hw/net/spapr_llan.c | 1 + hw/net/stellaris_enet.c | 1 + hw/net/sungem.c | 1 + hw/net/sunhme.c | 1 + hw/net/tulip.c | 1 + hw/net/virtio-net.c | 1 + hw/net/vmxnet3.c | 1 + hw/net/xen_nic.c | 1 + hw/net/xgmac.c | 1 + hw/net/xilinx_axienet.c | 1 + hw/net/xilinx_ethlite.c | 1 + 46 files changed, 48 insertions(+), 1 deletion(-) diff --git a/hw/net/allwinner-sun8i-emac.c b/hw/net/allwinner-sun8i-emac.c index 30a81576b4..9239be7a2b 100644 --- a/hw/net/allwinner-sun8i-emac.c +++ b/hw/net/allwinner-sun8i-emac.c @@ -892,6 +892,7 @@ static const TypeInfo allwinner_sun8i_emac_info =3D { .instance_size =3D sizeof(AwSun8iEmacState), .instance_init =3D allwinner_sun8i_emac_init, .class_init =3D allwinner_sun8i_emac_class_init, + .insecure =3D true, }; =20 static void allwinner_sun8i_emac_register_types(void) diff --git a/hw/net/allwinner_emac.c b/hw/net/allwinner_emac.c index 77d089d988..2c2cd68aae 100644 --- a/hw/net/allwinner_emac.c +++ b/hw/net/allwinner_emac.c @@ -528,8 +528,9 @@ static const TypeInfo aw_emac_info =3D { .name =3D TYPE_AW_EMAC, .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(AwEmacState), - .instance_init =3D aw_emac_init, + .instance_init =3D aw_emac_init, .class_init =3D aw_emac_class_init, + .insecure =3D true, }; =20 static void aw_emac_register_types(void) diff --git a/hw/net/cadence_gem.c b/hw/net/cadence_gem.c index 44446666de..0d9894a95a 100644 --- a/hw/net/cadence_gem.c +++ b/hw/net/cadence_gem.c @@ -1833,6 +1833,7 @@ static const TypeInfo gem_info =3D { .instance_size =3D sizeof(CadenceGEMState), .instance_init =3D gem_init, .class_init =3D gem_class_init, + .insecure =3D true, }; =20 static void gem_register_types(void) diff --git a/hw/net/can/can_kvaser_pci.c b/hw/net/can/can_kvaser_pci.c index be16769de2..d22d8af9d0 100644 --- a/hw/net/can/can_kvaser_pci.c +++ b/hw/net/can/can_kvaser_pci.c @@ -305,6 +305,7 @@ static const TypeInfo kvaser_pci_info =3D { .instance_size =3D sizeof(KvaserPCIState), .class_init =3D kvaser_pci_class_init, .instance_init =3D kvaser_pci_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/can/can_mioe3680_pci.c b/hw/net/can/can_mioe3680_pci.c index 44f3ba370d..9d73b3da8f 100644 --- a/hw/net/can/can_mioe3680_pci.c +++ b/hw/net/can/can_mioe3680_pci.c @@ -248,6 +248,7 @@ static const TypeInfo mioe3680_pci_info =3D { .instance_size =3D sizeof(Mioe3680PCIState), .class_init =3D mioe3680_pci_class_init, .instance_init =3D mioe3680_pci_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/can/can_pcm3680_pci.c b/hw/net/can/can_pcm3680_pci.c index 7296d63be7..dd17f184e9 100644 --- a/hw/net/can/can_pcm3680_pci.c +++ b/hw/net/can/can_pcm3680_pci.c @@ -249,6 +249,7 @@ static const TypeInfo pcm3680i_pci_info =3D { .instance_size =3D sizeof(Pcm3680iPCIState), .class_init =3D pcm3680i_pci_class_init, .instance_init =3D pcm3680i_pci_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/can/ctucan_pci.c b/hw/net/can/ctucan_pci.c index bed6785433..24dbd2b7c5 100644 --- a/hw/net/can/ctucan_pci.c +++ b/hw/net/can/ctucan_pci.c @@ -262,6 +262,7 @@ static const TypeInfo ctucan_pci_info =3D { .instance_size =3D sizeof(CtuCanPCIState), .class_init =3D ctucan_pci_class_init, .instance_init =3D ctucan_pci_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/can/xlnx-versal-canfd.c b/hw/net/can/xlnx-versal-canfd.c index 3eb111949f..3bd3e92c29 100644 --- a/hw/net/can/xlnx-versal-canfd.c +++ b/hw/net/can/xlnx-versal-canfd.c @@ -2068,6 +2068,7 @@ static const TypeInfo canfd_info =3D { .instance_size =3D sizeof(XlnxVersalCANFDState), .class_init =3D canfd_class_init, .instance_init =3D canfd_init, + .insecure =3D true, }; =20 static void canfd_register_types(void) diff --git a/hw/net/can/xlnx-zynqmp-can.c b/hw/net/can/xlnx-zynqmp-can.c index ca9edd4a5b..c9a21e0fe5 100644 --- a/hw/net/can/xlnx-zynqmp-can.c +++ b/hw/net/can/xlnx-zynqmp-can.c @@ -1194,6 +1194,7 @@ static const TypeInfo can_info =3D { .instance_size =3D sizeof(XlnxZynqMPCANState), .class_init =3D xlnx_zynqmp_can_class_init, .instance_init =3D xlnx_zynqmp_can_init, + .insecure =3D true, }; =20 static void can_register_types(void) diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c index d49032059b..06e0da8052 100644 --- a/hw/net/dp8393x.c +++ b/hw/net/dp8393x.c @@ -956,6 +956,7 @@ static const TypeInfo dp8393x_info =3D { .instance_size =3D sizeof(dp8393xState), .instance_init =3D dp8393x_instance_init, .class_init =3D dp8393x_class_init, + .insecure =3D true, }; =20 static void dp8393x_register_types(void) diff --git a/hw/net/e1000.c b/hw/net/e1000.c index a80a7b0cdb..684350557f 100644 --- a/hw/net/e1000.c +++ b/hw/net/e1000.c @@ -1759,6 +1759,7 @@ static void e1000_register_types(void) type_info.parent =3D TYPE_E1000_BASE; type_info.class_data =3D info; type_info.class_init =3D e1000_class_init; + type_info.secure =3D true, =20 type_register_static(&type_info); } diff --git a/hw/net/e1000e.c b/hw/net/e1000e.c index 89e6d52ba0..83cf3cf643 100644 --- a/hw/net/e1000e.c +++ b/hw/net/e1000e.c @@ -721,6 +721,7 @@ static const TypeInfo e1000e_info =3D { .instance_size =3D sizeof(E1000EState), .class_init =3D e1000e_class_init, .instance_init =3D e1000e_instance_init, + .secure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_PCIE_DEVICE }, { } diff --git a/hw/net/eepro100.c b/hw/net/eepro100.c index d47df5a97f..78c7bb1a12 100644 --- a/hw/net/eepro100.c +++ b/hw/net/eepro100.c @@ -2094,6 +2094,7 @@ static void eepro100_register_types(void) type_info.class_init =3D eepro100_class_init; type_info.instance_size =3D sizeof(EEPRO100State); type_info.instance_init =3D eepro100_instance_init; + type_info.insecure =3D true, type_info.interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/fsl_etsec/etsec.c b/hw/net/fsl_etsec/etsec.c index 846f6cbc5d..474b941ba5 100644 --- a/hw/net/fsl_etsec/etsec.c +++ b/hw/net/fsl_etsec/etsec.c @@ -437,6 +437,7 @@ static const TypeInfo etsec_types[] =3D { .instance_size =3D sizeof(eTSEC), .class_init =3D etsec_class_init, .instance_init =3D etsec_instance_init, + .insecure =3D true, }, }; =20 diff --git a/hw/net/ftgmac100.c b/hw/net/ftgmac100.c index c41ce889cf..7243ad8a02 100644 --- a/hw/net/ftgmac100.c +++ b/hw/net/ftgmac100.c @@ -1277,6 +1277,7 @@ static const TypeInfo ftgmac100_info =3D { .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(FTGMAC100State), .class_init =3D ftgmac100_class_init, + .insecure =3D true, }; =20 /* diff --git a/hw/net/igb.c b/hw/net/igb.c index e4c02365d6..2ce8582e76 100644 --- a/hw/net/igb.c +++ b/hw/net/igb.c @@ -635,6 +635,7 @@ static const TypeInfo igb_info =3D { .instance_size =3D sizeof(IGBState), .class_init =3D igb_class_init, .instance_init =3D igb_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_PCIE_DEVICE }, { } diff --git a/hw/net/igbvf.c b/hw/net/igbvf.c index 31d72c4977..2072b7a169 100644 --- a/hw/net/igbvf.c +++ b/hw/net/igbvf.c @@ -325,6 +325,7 @@ static const TypeInfo igbvf_info =3D { .parent =3D TYPE_PCI_DEVICE, .instance_size =3D sizeof(IgbVfState), .class_init =3D igbvf_class_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_PCIE_DEVICE }, { } diff --git a/hw/net/imx_fec.c b/hw/net/imx_fec.c index e5e34dd1a4..22f20dc048 100644 --- a/hw/net/imx_fec.c +++ b/hw/net/imx_fec.c @@ -1261,12 +1261,14 @@ static const TypeInfo imx_fec_info =3D { .instance_size =3D sizeof(IMXFECState), .instance_init =3D imx_fec_init, .class_init =3D imx_eth_class_init, + .insecure =3D true, }; =20 static const TypeInfo imx_enet_info =3D { .name =3D TYPE_IMX_ENET, .parent =3D TYPE_IMX_FEC, .instance_init =3D imx_enet_init, + .insecure =3D true, }; =20 static void imx_eth_register_types(void) diff --git a/hw/net/lan9118.c b/hw/net/lan9118.c index 3017e12971..f59468aa34 100644 --- a/hw/net/lan9118.c +++ b/hw/net/lan9118.c @@ -1325,6 +1325,7 @@ static const TypeInfo lan9118_info =3D { .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(lan9118_state), .class_init =3D lan9118_class_init, + .insecure =3D true, }; =20 static void lan9118_register_types(void) diff --git a/hw/net/lan9118_phy.c b/hw/net/lan9118_phy.c index 4c4e03df11..305c019a68 100644 --- a/hw/net/lan9118_phy.c +++ b/hw/net/lan9118_phy.c @@ -216,6 +216,7 @@ static const TypeInfo types[] =3D { .instance_size =3D sizeof(Lan9118PhyState), .instance_init =3D lan9118_phy_init, .class_init =3D lan9118_phy_class_init, + .insecure =3D true, } }; =20 diff --git a/hw/net/lance.c b/hw/net/lance.c index dfb855c23a..314d1eeae3 100644 --- a/hw/net/lance.c +++ b/hw/net/lance.c @@ -161,6 +161,7 @@ static const TypeInfo lance_info =3D { .instance_size =3D sizeof(SysBusPCNetState), .class_init =3D lance_class_init, .instance_init =3D lance_instance_init, + .insecure =3D true, }; =20 static void lance_register_types(void) diff --git a/hw/net/lasi_i82596.c b/hw/net/lasi_i82596.c index 9e1dd21546..56ee1688d1 100644 --- a/hw/net/lasi_i82596.c +++ b/hw/net/lasi_i82596.c @@ -181,6 +181,7 @@ static const TypeInfo lasi_82596_info =3D { .instance_size =3D sizeof(SysBusI82596State), .class_init =3D lasi_82596_class_init, .instance_init =3D lasi_82596_instance_init, + .insecure =3D true, }; =20 static void lasi_82596_register_types(void) diff --git a/hw/net/mcf_fec.c b/hw/net/mcf_fec.c index ae128fa311..20d2bc3fd3 100644 --- a/hw/net/mcf_fec.c +++ b/hw/net/mcf_fec.c @@ -681,6 +681,7 @@ static const TypeInfo mcf_fec_info =3D { .instance_size =3D sizeof(mcf_fec_state), .instance_init =3D mcf_fec_instance_init, .class_init =3D mcf_fec_class_init, + .insecure =3D true, }; =20 static void mcf_fec_register_types(void) diff --git a/hw/net/msf2-emac.c b/hw/net/msf2-emac.c index 59045973ab..d92e0bee09 100644 --- a/hw/net/msf2-emac.c +++ b/hw/net/msf2-emac.c @@ -581,6 +581,7 @@ static const TypeInfo msf2_emac_info =3D { .instance_size =3D sizeof(MSF2EmacState), .instance_init =3D msf2_emac_init, .class_init =3D msf2_emac_class_init, + .insecure =3D true, }; =20 static void msf2_emac_register_types(void) diff --git a/hw/net/mv88w8618_eth.c b/hw/net/mv88w8618_eth.c index 6f08846c81..56a1e9dff3 100644 --- a/hw/net/mv88w8618_eth.c +++ b/hw/net/mv88w8618_eth.c @@ -392,6 +392,7 @@ static const TypeInfo mv88w8618_eth_info =3D { .instance_size =3D sizeof(mv88w8618_eth_state), .instance_init =3D mv88w8618_eth_init, .class_init =3D mv88w8618_eth_class_init, + .insecure =3D true, }; =20 static void musicpal_register_types(void) diff --git a/hw/net/ne2000-isa.c b/hw/net/ne2000-isa.c index 673c785abc..cb3ffc7668 100644 --- a/hw/net/ne2000-isa.c +++ b/hw/net/ne2000-isa.c @@ -142,6 +142,7 @@ static const TypeInfo ne2000_isa_info =3D { .instance_size =3D sizeof(ISANE2000State), .class_init =3D isa_ne2000_class_initfn, .instance_init =3D isa_ne2000_instance_init, + .insecure =3D true, }; =20 static void ne2000_isa_register_types(void) diff --git a/hw/net/ne2000-pci.c b/hw/net/ne2000-pci.c index ce937e1b61..b1381efb89 100644 --- a/hw/net/ne2000-pci.c +++ b/hw/net/ne2000-pci.c @@ -122,6 +122,7 @@ static const TypeInfo ne2000_info =3D { .instance_size =3D sizeof(PCINE2000State), .class_init =3D ne2000_class_init, .instance_init =3D ne2000_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/npcm7xx_emc.c b/hw/net/npcm7xx_emc.c index 9ba35e2c81..b8f7cb9135 100644 --- a/hw/net/npcm7xx_emc.c +++ b/hw/net/npcm7xx_emc.c @@ -867,6 +867,7 @@ static const TypeInfo npcm7xx_emc_info =3D { .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(NPCM7xxEMCState), .class_init =3D npcm7xx_emc_class_init, + .insecure =3D true, }; =20 static void npcm7xx_emc_register_type(void) diff --git a/hw/net/npcm_gmac.c b/hw/net/npcm_gmac.c index 5e32cd3edf..bafbee028f 100644 --- a/hw/net/npcm_gmac.c +++ b/hw/net/npcm_gmac.c @@ -933,6 +933,7 @@ static const TypeInfo npcm_gmac_types[] =3D { .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(NPCMGMACState), .class_init =3D npcm_gmac_class_init, + .insecure =3D true, }, }; DEFINE_TYPES(npcm_gmac_types) diff --git a/hw/net/npcm_pcs.c b/hw/net/npcm_pcs.c index 6aec105271..42ee30382c 100644 --- a/hw/net/npcm_pcs.c +++ b/hw/net/npcm_pcs.c @@ -405,6 +405,7 @@ static const TypeInfo npcm_pcs_types[] =3D { .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(NPCMPCSState), .class_init =3D npcm_pcs_class_init, + .insecure =3D true, }, }; DEFINE_TYPES(npcm_pcs_types) diff --git a/hw/net/opencores_eth.c b/hw/net/opencores_eth.c index 7e955c0132..3d03f8fd73 100644 --- a/hw/net/opencores_eth.c +++ b/hw/net/opencores_eth.c @@ -763,6 +763,7 @@ static const TypeInfo open_eth_info =3D { .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(OpenEthState), .class_init =3D open_eth_class_init, + .insecure =3D true, }; =20 static void open_eth_register_types(void) diff --git a/hw/net/pcnet-pci.c b/hw/net/pcnet-pci.c index 0ca5bc2193..2ad441e78a 100644 --- a/hw/net/pcnet-pci.c +++ b/hw/net/pcnet-pci.c @@ -280,6 +280,7 @@ static const TypeInfo pcnet_info =3D { .instance_size =3D sizeof(PCIPCNetState), .class_init =3D pcnet_class_init, .instance_init =3D pcnet_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/rocker/rocker.c b/hw/net/rocker/rocker.c index cc49701dd3..5e8ecf1c02 100644 --- a/hw/net/rocker/rocker.c +++ b/hw/net/rocker/rocker.c @@ -1498,6 +1498,7 @@ static const TypeInfo rocker_info =3D { .parent =3D TYPE_PCI_DEVICE, .instance_size =3D sizeof(Rocker), .class_init =3D rocker_class_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c index 324fb932aa..a6147099f3 100644 --- a/hw/net/rtl8139.c +++ b/hw/net/rtl8139.c @@ -3439,6 +3439,7 @@ static const TypeInfo rtl8139_info =3D { .instance_size =3D sizeof(RTL8139State), .class_init =3D rtl8139_class_init, .instance_init =3D rtl8139_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/smc91c111.c b/hw/net/smc91c111.c index 5cd78e334b..89c959234e 100644 --- a/hw/net/smc91c111.c +++ b/hw/net/smc91c111.c @@ -928,6 +928,7 @@ static const TypeInfo smc91c111_info =3D { .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(smc91c111_state), .class_init =3D smc91c111_class_init, + .insecure =3D true, }; =20 static void smc91c111_register_types(void) diff --git a/hw/net/spapr_llan.c b/hw/net/spapr_llan.c index f6f217d632..07b8d125e5 100644 --- a/hw/net/spapr_llan.c +++ b/hw/net/spapr_llan.c @@ -873,6 +873,7 @@ static const TypeInfo spapr_vlan_info =3D { .class_init =3D spapr_vlan_class_init, .instance_init =3D spapr_vlan_instance_init, .instance_finalize =3D spapr_vlan_instance_finalize, + .insecure =3D true, }; =20 static void spapr_vlan_register_types(void) diff --git a/hw/net/stellaris_enet.c b/hw/net/stellaris_enet.c index 2fc51e1e16..cb29ba6e02 100644 --- a/hw/net/stellaris_enet.c +++ b/hw/net/stellaris_enet.c @@ -516,6 +516,7 @@ static const TypeInfo stellaris_enet_info =3D { .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(stellaris_enet_state), .class_init =3D stellaris_enet_class_init, + .insecure =3D true, }; =20 static void stellaris_enet_register_types(void) diff --git a/hw/net/sungem.c b/hw/net/sungem.c index b405eb89fa..7ca0ab8d46 100644 --- a/hw/net/sungem.c +++ b/hw/net/sungem.c @@ -1477,6 +1477,7 @@ static const TypeInfo sungem_info =3D { .instance_size =3D sizeof(SunGEMState), .class_init =3D sungem_class_init, .instance_init =3D sungem_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { } diff --git a/hw/net/sunhme.c b/hw/net/sunhme.c index c2f7a8483d..5d601395f3 100644 --- a/hw/net/sunhme.c +++ b/hw/net/sunhme.c @@ -958,6 +958,7 @@ static const TypeInfo sunhme_info =3D { .class_init =3D sunhme_class_init, .instance_size =3D sizeof(SunHMEState), .instance_init =3D sunhme_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { } diff --git a/hw/net/tulip.c b/hw/net/tulip.c index 319af906c8..4b1645bd27 100644 --- a/hw/net/tulip.c +++ b/hw/net/tulip.c @@ -1035,6 +1035,7 @@ static const TypeInfo tulip_info =3D { .instance_size =3D sizeof(TULIPState), .class_init =3D tulip_class_init, .instance_init =3D tulip_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, { }, diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 6b5b5dace3..b34c0f3afc 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -4259,6 +4259,7 @@ static const TypeInfo virtio_net_info =3D { .instance_size =3D sizeof(VirtIONet), .instance_init =3D virtio_net_instance_init, .class_init =3D virtio_net_class_init, + .secure =3D true, }; =20 static void virtio_register_types(void) diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c index af73aa8ef2..29b0efc1db 100644 --- a/hw/net/vmxnet3.c +++ b/hw/net/vmxnet3.c @@ -2491,6 +2491,7 @@ static const TypeInfo vmxnet3_info =3D { .instance_size =3D sizeof(VMXNET3State), .class_init =3D vmxnet3_class_init, .instance_init =3D vmxnet3_instance_init, + .insecure =3D true, .interfaces =3D (const InterfaceInfo[]) { { INTERFACE_PCIE_DEVICE }, { INTERFACE_CONVENTIONAL_PCI_DEVICE }, diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c index 34c6a1d0b0..eae29b4407 100644 --- a/hw/net/xen_nic.c +++ b/hw/net/xen_nic.c @@ -581,6 +581,7 @@ static const TypeInfo xen_net_type_info =3D { .parent =3D TYPE_XEN_DEVICE, .instance_size =3D sizeof(XenNetDev), .class_init =3D xen_netdev_class_init, + .secure =3D true, }; =20 static void xen_net_register_types(void) diff --git a/hw/net/xgmac.c b/hw/net/xgmac.c index d45f872467..1fa2361404 100644 --- a/hw/net/xgmac.c +++ b/hw/net/xgmac.c @@ -432,6 +432,7 @@ static const TypeInfo xgmac_enet_info =3D { .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(XgmacState), .class_init =3D xgmac_enet_class_init, + .insecure =3D true, }; =20 static void xgmac_enet_register_types(void) diff --git a/hw/net/xilinx_axienet.c b/hw/net/xilinx_axienet.c index 1f5c748047..1e27bfff3d 100644 --- a/hw/net/xilinx_axienet.c +++ b/hw/net/xilinx_axienet.c @@ -1038,6 +1038,7 @@ static const TypeInfo xilinx_enet_info =3D { .instance_size =3D sizeof(XilinxAXIEnet), .class_init =3D xilinx_enet_class_init, .instance_init =3D xilinx_enet_init, + .insecure =3D true, }; =20 static const TypeInfo xilinx_enet_data_stream_info =3D { diff --git a/hw/net/xilinx_ethlite.c b/hw/net/xilinx_ethlite.c index 42b19d07c7..81ed721ad8 100644 --- a/hw/net/xilinx_ethlite.c +++ b/hw/net/xilinx_ethlite.c @@ -401,6 +401,7 @@ static const TypeInfo xilinx_ethlite_types[] =3D { .instance_size =3D sizeof(XlnxXpsEthLite), .instance_init =3D xilinx_ethlite_init, .class_init =3D xilinx_ethlite_class_init, + .insecure =3D true, }, }; =20 --=20 2.50.1