From nobody Fri May 3 11:54:37 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+67689+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+67689+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=hpe.com ARC-Seal: i=1; a=rsa-sha256; t=1605753859; cv=none; d=zohomail.com; s=zohoarc; b=TlD/XoL8EBmh51bIl2afMaWlZn4X6dJpt2YIZLqpVbYErWLlqAGDmMV26sTZuNHyBdLD/KUsrs/ElfoEUrJ2hgmGK+0BbRcMte6tqPOrjUH6wC3ElvEHssg7VJQEYDHomW83W+KDibiC4QthJHO3QhfL5C6CWMC7uqvWSRkTnDQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1605753859; h=Cc:Date:From:List-Id:List-Unsubscribe:Message-ID:Reply-To:Sender:Subject:To; bh=hFG8CNafa56U2hEKblhtS9RovBd9WL8LbzR5NCKEYWM=; b=SmaLlIXDNT84tguhn0NYGjpL0BJB0tr/I783hfoRXWem7NDs5t2t2J/jxsJVEL7E0qUD6n/YwjC8/xIylyq9tJqXLq8/0h5xtksbrd9VfXbNKpM1IrOKhfa1ob6aZIetgQDevHLN3jY+hbXgXWFNzeqzWPn5rGZh1BJdbD+6BZk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+67689+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1605753859763665.0115086702331; Wed, 18 Nov 2020 18:44:19 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id 5NgLYY1788612xczZACc5wAq; Wed, 18 Nov 2020 18:44:19 -0800 X-Received: from mx0a-002e3701.pphosted.com (mx0a-002e3701.pphosted.com [148.163.147.86]) by mx.groups.io with SMTP id smtpd.web10.3805.1605753858895188603 for ; Wed, 18 Nov 2020 18:44:18 -0800 X-Received: from pps.filterd (m0134421.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 0AJ2edcj032635; Thu, 19 Nov 2020 02:44:18 GMT X-Received: from g9t5008.houston.hpe.com (g9t5008.houston.hpe.com [15.241.48.72]) by mx0b-002e3701.pphosted.com with ESMTP id 34vm4vv5kf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 19 Nov 2020 02:44:18 +0000 X-Received: from g4t3433.houston.hpecorp.net (g4t3433.houston.hpecorp.net [16.208.49.245]) by g9t5008.houston.hpe.com (Postfix) with ESMTP id 8351B6B; Thu, 19 Nov 2020 02:44:17 +0000 (UTC) X-Received: from abner-virtual-machine.asiapacific.hpqcorp.net (abner-virtual-machine.asiapacific.hpqcorp.net [15.119.210.153]) by g4t3433.houston.hpecorp.net (Postfix) with ESMTP id C431745; Thu, 19 Nov 2020 02:44:15 +0000 (UTC) From: "Abner Chang" To: devel@edk2.groups.io Cc: Maciej Rabeda , Jiaxin Wu , Siyuan Fu , Laszlo Ersek , Nickle Wang , Peter O'Hanley Subject: [edk2-devel] [PATCH v3] NetworkPkg: Add NETWORK_HTTP_ENABLE macro Date: Thu, 19 Nov 2020 09:58:10 +0800 Message-Id: <20201119015810.16755-1-abner.chang@hpe.com> X-HPE-SCL: -1 Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,abner.chang@hpe.com X-Gm-Message-State: 89paDf9YxAS84Ldl5wj3npxyx1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1605753859; bh=s04UYdBOWrCRSwtP29z9z83aLwwsIws3BJ7V8gUVcjQ=; h=Cc:Date:From:Reply-To:Subject:To; b=Aci2Mp81Y26+txKPqFhPWVUgUr9m99tN2pkeffuBCPe4Ape5ZHIWL83BLUqzlmJaZvo BalNp87LsiexVWqCy6498jHIwEFKzMIMy48RgyAt7l8qh9x9MZOc6LqDufLIvvuXZUZMr TSi1cS5Bj39Z/ibKEmDNegQH/7fNvcktvl8= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" BZ:2917 Add NETWORK_HTTP_ENABLE macro and separate HttpDxe and HttpUtilitiesDxe drivers from HTTP_NETWORK_HTTP_BOOT_ENABLE macro. Current NETWORK_HTTP_BOOT_ENABLE macro is defined to enable HTTP boot feature in POST, this macro is not only enabling HTTP Boot related modules but also enabling other generic HTTP modules such as HttpDxe, HttpUtilitiesDxe and DnsDxe. These HTTP base drivers would not be only used by HTTP boot when we introduce the use case of Redfish implementation over HTTP to edk2. We should have a dedicate macro to enable generic HTTP functions on Network stack and additionally provide NETWORK_HTTP_BOOT_ENABLE for HTTP boot functionality for the use case that platform doesn't require HTTP boot. Signed-off-by: Abner Chang Cc: Maciej Rabeda Cc: Jiaxin Wu Cc: Siyuan Fu Cc: Laszlo Ersek Cc: Nickle Wang Cc: Peter O'Hanley Reviewed-by: Laszlo Ersek Reviewed-by: Maciej Rabeda --- NetworkPkg/Network.fdf.inc | 5 ++++- NetworkPkg/NetworkComponents.dsc.inc | 5 ++++- NetworkPkg/NetworkDefines.dsc.inc | 19 +++++++++++++++++-- NetworkPkg/NetworkPkg.ci.yaml | 2 ++ 4 files changed, 27 insertions(+), 4 deletions(-) diff --git a/NetworkPkg/Network.fdf.inc b/NetworkPkg/Network.fdf.inc index 803a0d64fd..8a662ad1de 100644 --- a/NetworkPkg/Network.fdf.inc +++ b/NetworkPkg/Network.fdf.inc @@ -46,10 +46,13 @@ INF NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf !endif =20 - !if $(NETWORK_HTTP_BOOT_ENABLE) =3D=3D TRUE + !if ($(NETWORK_HTTP_BOOT_ENABLE) =3D=3D TRUE) OR ($(NETWORK_HTTP_ENABLE)= =3D=3D TRUE) INF NetworkPkg/DnsDxe/DnsDxe.inf INF NetworkPkg/HttpDxe/HttpDxe.inf INF NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf + !endif + + !if $(NETWORK_HTTP_BOOT_ENABLE) =3D=3D TRUE INF NetworkPkg/HttpBootDxe/HttpBootDxe.inf !endif =20 diff --git a/NetworkPkg/NetworkComponents.dsc.inc b/NetworkPkg/NetworkCompo= nents.dsc.inc index 40cb8ee18e..21cb62082f 100644 --- a/NetworkPkg/NetworkComponents.dsc.inc +++ b/NetworkPkg/NetworkComponents.dsc.inc @@ -48,10 +48,13 @@ NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf !endif =20 - !if $(NETWORK_HTTP_BOOT_ENABLE) =3D=3D TRUE + !if ($(NETWORK_HTTP_BOOT_ENABLE) =3D=3D TRUE) OR ($(NETWORK_HTTP_ENABLE)= =3D=3D TRUE) NetworkPkg/DnsDxe/DnsDxe.inf NetworkPkg/HttpDxe/HttpDxe.inf NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf + !endif + + !if $(NETWORK_HTTP_BOOT_ENABLE) =3D=3D TRUE NetworkPkg/HttpBootDxe/HttpBootDxe.inf !endif =20 diff --git a/NetworkPkg/NetworkDefines.dsc.inc b/NetworkPkg/NetworkDefines.= dsc.inc index 18921d81f6..54deb6342a 100644 --- a/NetworkPkg/NetworkDefines.dsc.inc +++ b/NetworkPkg/NetworkDefines.dsc.inc @@ -15,12 +15,14 @@ # DEFINE NETWORK_IP4_ENABLE =3D TRUE # DEFINE NETWORK_IP6_ENABLE =3D TRUE # DEFINE NETWORK_TLS_ENABLE =3D TRUE +# DEFINE NETWORK_HTTP_ENABLE =3D FALSE # DEFINE NETWORK_HTTP_BOOT_ENABLE =3D TRUE # DEFINE NETWORK_ALLOW_HTTP_CONNECTIONS =3D FALSE # DEFINE NETWORK_ISCSI_ENABLE =3D FALSE # DEFINE NETWORK_VLAN_ENABLE =3D TRUE # # Copyright (c) 2019, Intel Corporation. All rights reserved.
+# (C) Copyright 2020 Hewlett Packard Enterprise Development LP
# # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -73,10 +75,21 @@ DEFINE NETWORK_TLS_ENABLE =3D TRUE !endif =20 +!ifndef NETWORK_HTTP_ENABLE + # + # This flag is to enable or disable HTTP(S) feature. + # The default is set to FALSE to not affecting the existing + # platforms. + # NETWORK_HTTP_ENABLE set to FALSE is not affecting NETWORK_HTTP_BOOT_EN= ABLE + # when NETWORK_HTTP_BOOT_ENABLE is TRUE. + DEFINE NETWORK_HTTP_ENABLE =3D FALSE +!endif + !ifndef NETWORK_HTTP_BOOT_ENABLE # # This flag is to enable or disable HTTP(S) boot feature. # + # DEFINE NETWORK_HTTP_BOOT_ENABLE =3D TRUE !endif =20 @@ -112,7 +125,9 @@ !error "Must enable at least IP4 or IP6 stack if NETWORK_ENABLE is set= to TRUE!" !endif =20 - !if ($(NETWORK_HTTP_BOOT_ENABLE) =3D=3D TRUE) AND ($(NETWORK_TLS_ENABLE)= =3D=3D FALSE) AND ($(NETWORK_ALLOW_HTTP_CONNECTIONS) =3D=3D FALSE) - !error "Must enable TLS to support HTTPS, or allow unsecured HTTP conn= ection, if NETWORK_HTTP_BOOT_ENABLE is set to TRUE!" + !if ($(NETWORK_HTTP_BOOT_ENABLE) =3D=3D TRUE) OR ($(NETWORK_HTTP_ENABLE)= =3D=3D TRUE) + !if ($(NETWORK_TLS_ENABLE) =3D=3D FALSE) AND ($(NETWORK_ALLOW_HTTP_CON= NECTIONS) =3D=3D FALSE) + !error "Must enable TLS to support HTTPS, or allow unsecured HTTP co= nnection, if NETWORK_HTTP_BOOT_ENABLE or NETWORK_HTTP_ENABLE is set to TRUE= !" + !endif !endif !endif diff --git a/NetworkPkg/NetworkPkg.ci.yaml b/NetworkPkg/NetworkPkg.ci.yaml index 1a3ab71792..07dc7abd69 100644 --- a/NetworkPkg/NetworkPkg.ci.yaml +++ b/NetworkPkg/NetworkPkg.ci.yaml @@ -3,6 +3,7 @@ # # Copyright (c) Microsoft Corporation # Copyright (c) 2020, Intel Corporation. All rights reserved.
+# (C) Copyright 2020 Hewlett Packard Enterprise Development LP
# SPDX-License-Identifier: BSD-2-Clause-Patent ## { @@ -71,6 +72,7 @@ "BLD_*_NETWORK_IP4_ENABLE": "TRUE", "BLD_*_NETWORK_IP6_ENABLE": "TRUE", "BLD_*_NETWORK_TLS_ENABLE": "TRUE", + "BLD_*_NETWORK_HTTP_ENABLE": "FALSE", "BLD_*_NETWORK_HTTP_BOOT_ENABLE": "TRUE", "BLD_*_NETWORK_ISCSI_ENABLE": "TRUE", } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#67689): https://edk2.groups.io/g/devel/message/67689 Mute This Topic: https://groups.io/mt/78357182/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-