From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-002e3701.pphosted.com (mx0a-002e3701.pphosted.com [148.163.147.86]) by mx.groups.io with SMTP id smtpd.web08.865.1605164183450753841 for ; Wed, 11 Nov 2020 22:56:23 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@hpe.com header.s=pps0720 header.b=gIa0yBWb; spf=pass (domain: hpe.com, ip: 148.163.147.86, mailfrom: prvs=05853b2334=abner.chang@hpe.com) Received: from pps.filterd (m0150241.ppops.net [127.0.0.1]) by mx0a-002e3701.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 0AC6qu3V017366; Thu, 12 Nov 2020 06:56:23 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=from : to : cc : subject : date : message-id; s=pps0720; bh=emetrfunoZVFR2K+0L25wCkmFaRE6DYEXOtdCHECIX0=; b=gIa0yBWb/JsCOTVJcje/flbDyR3oJrmg++HEgBvHVwX6LrBioGyRuXRPm4eUBWMETUMk DZu721k9f5qnB/RdXzS/iYYy3T1I35Y1j5adVVXeyNTWB5g2CiqiKWmb++lyFkRoLRY8 tnYNTFkDwEk4veZCkcc+6B0NHPEgeJD5BZo420LDhYl/lTQBg0whkvpgFXlhefz1IgBq +fBMQ0ciJp0InXW2yUiH+T/Qkz4HaU/9SAK1k3JChqxPcvH+NMalIPNpreQI0wuyRr05 iEpr2qGDKqwNu9szhjFy7V5DG1kLEeTNgtt5380QmKzesvy+FLEn7AK8OOhqjMuQzf/B 4A== Received: from g4t3425.houston.hpe.com (g4t3425.houston.hpe.com [15.241.140.78]) by mx0a-002e3701.pphosted.com with ESMTP id 34qwxxekam-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 12 Nov 2020 06:56:23 +0000 Received: from g9t2301.houston.hpecorp.net (g9t2301.houston.hpecorp.net [16.220.97.129]) by g4t3425.houston.hpe.com (Postfix) with ESMTP id 21F108D; Thu, 12 Nov 2020 06:56:22 +0000 (UTC) Received: from abner-virtual-machine.asiapacific.hpqcorp.net (abner-virtual-machine.asiapacific.hpqcorp.net [15.119.210.153]) by g9t2301.houston.hpecorp.net (Postfix) with ESMTP id BA6A44C; Thu, 12 Nov 2020 06:56:19 +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: [PATCH v2] NetworkPkg: Add NETWORK_HTTP_ENABLE macro Date: Thu, 12 Nov 2020 14:10:30 +0800 Message-Id: <20201112061030.22734-1-abner.chang@hpe.com> X-Mailer: git-send-email 2.17.1 X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.312,18.0.737 definitions=2020-11-11_12:2020-11-10,2020-11-11 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 lowpriorityscore=0 adultscore=0 mlxlogscore=999 priorityscore=1501 malwarescore=0 phishscore=0 clxscore=1015 suspectscore=1 bulkscore=0 mlxscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2011120039 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 --- NetworkPkg/Network.fdf.inc | 5 ++++- NetworkPkg/NetworkComponents.dsc.inc | 5 ++++- NetworkPkg/NetworkDefines.dsc.inc | 9 +++++++++ NetworkPkg/NetworkPkg.ci.yaml | 1 + 4 files changed, 18 insertions(+), 2 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 - !if $(NETWORK_HTTP_BOOT_ENABLE) == TRUE + !if ($(NETWORK_HTTP_BOOT_ENABLE) == TRUE) OR ($(NETWORK_HTTP_ENABLE) == TRUE) INF NetworkPkg/DnsDxe/DnsDxe.inf INF NetworkPkg/HttpDxe/HttpDxe.inf INF NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf + !endif + + !if $(NETWORK_HTTP_BOOT_ENABLE) == TRUE INF NetworkPkg/HttpBootDxe/HttpBootDxe.inf !endif diff --git a/NetworkPkg/NetworkComponents.dsc.inc b/NetworkPkg/NetworkComponents.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 - !if $(NETWORK_HTTP_BOOT_ENABLE) == TRUE + !if ($(NETWORK_HTTP_BOOT_ENABLE) == TRUE) OR ($(NETWORK_HTTP_ENABLE) == TRUE) NetworkPkg/DnsDxe/DnsDxe.inf NetworkPkg/HttpDxe/HttpDxe.inf NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf + !endif + + !if $(NETWORK_HTTP_BOOT_ENABLE) == TRUE NetworkPkg/HttpBootDxe/HttpBootDxe.inf !endif diff --git a/NetworkPkg/NetworkDefines.dsc.inc b/NetworkPkg/NetworkDefines.dsc.inc index a442d1b157..6f274582a8 100644 --- a/NetworkPkg/NetworkDefines.dsc.inc +++ b/NetworkPkg/NetworkDefines.dsc.inc @@ -15,12 +15,14 @@ # DEFINE NETWORK_IP4_ENABLE = TRUE # DEFINE NETWORK_IP6_ENABLE = TRUE # DEFINE NETWORK_TLS_ENABLE = TRUE +# DEFINE NETWORK_HTTP_ENABLE = TRUE # DEFINE NETWORK_HTTP_BOOT_ENABLE = TRUE # DEFINE NETWORK_ALLOW_HTTP_CONNECTIONS = FALSE # DEFINE NETWORK_ISCSI_ENABLE = TRUE # DEFINE NETWORK_VLAN_ENABLE = 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,6 +75,13 @@ DEFINE NETWORK_TLS_ENABLE = TRUE !endif +!ifndef NETWORK_HTTP_ENABLE + # + # This flag is to enable or disable HTTP(S) feature. + # + DEFINE NETWORK_HTTP_ENABLE = TRUE +!endif + !ifndef NETWORK_HTTP_BOOT_ENABLE # # This flag is to enable or disable HTTP(S) boot feature. diff --git a/NetworkPkg/NetworkPkg.ci.yaml b/NetworkPkg/NetworkPkg.ci.yaml index 1a3ab71792..66b74cfe9a 100644 --- a/NetworkPkg/NetworkPkg.ci.yaml +++ b/NetworkPkg/NetworkPkg.ci.yaml @@ -71,6 +71,7 @@ "BLD_*_NETWORK_IP4_ENABLE": "TRUE", "BLD_*_NETWORK_IP6_ENABLE": "TRUE", "BLD_*_NETWORK_TLS_ENABLE": "TRUE", + "BLD_*_NETWORK_HTTP_ENABLE": "TRUE", "BLD_*_NETWORK_HTTP_BOOT_ENABLE": "TRUE", "BLD_*_NETWORK_ISCSI_ENABLE": "TRUE", } -- 2.17.1