From 720bc3e5a3f038dd45df7f77bf823593badda85a Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Jul 18 2018 15:35:24 +0000 Subject: Enable IPv6 --- diff --git a/0005-advertise-OpenSSL-on-TianoCore-splash-screen-boot-lo.patch b/0005-advertise-OpenSSL-on-TianoCore-splash-screen-boot-lo.patch index 847f7b5..1aff322 100644 --- a/0005-advertise-OpenSSL-on-TianoCore-splash-screen-boot-lo.patch +++ b/0005-advertise-OpenSSL-on-TianoCore-splash-screen-boot-lo.patch @@ -73,11 +73,13 @@ Notes about the 20160608b-988715a -> 20170228-c325e41585e3 rebase: - a new UNI (~description) file for the new driver INF file. - In the OVMF DSC and FDF files, we select the new driver INF for - inclusion if either SECURE_BOOT_ENABLE or TLS_ENABLE is set, as they - both make use of OpenSSL (although different subsets of it). + inclusion if either SECURE_BOOT_ENABLE, NETWORK_IP6_ENABLE, or + TLS_ENABLE is set, as they all make use of OpenSSL (although + different subsets of it). - In the AAVMF DSC and FDF files, we only look at SECURE_BOOT_ENABLE, - because the ArmVirtQemu platform does not support TLS_ENABLE yet. + or NETWORK_IP6_ENABLE, because the ArmVirtQemu platform does not + support TLS_ENABLE yet. - This patch is best displayed with "git show --find-copies-harder". @@ -96,7 +98,7 @@ Signed-off-by: Paolo Bonzini ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc | 4 + ArmVirtPkg/ArmVirtQemuKernel.dsc | 4 + MdeModulePkg/Logo/Logo-OpenSSL.bmp.b64 | 2743 ++++++++++++++++++++++++ - MdeModulePkg/Logo/Logo-OpenSSL.idf | 18 + + MdeModulePkg/Logo/Logo-OpenSSL.idf | 15 + MdeModulePkg/Logo/LogoOpenSSLDxe.inf | 61 + MdeModulePkg/Logo/LogoOpenSSLDxe.uni | 22 + OvmfPkg/OvmfPkgIa32.dsc | 4 + @@ -105,7 +107,7 @@ Signed-off-by: Paolo Bonzini OvmfPkg/OvmfPkgIa32X64.fdf | 4 + OvmfPkg/OvmfPkgX64.dsc | 4 + OvmfPkg/OvmfPkgX64.fdf | 4 + - 13 files changed, 2880 insertions(+) + 13 files changed, 2877 insertions(+) create mode 100644 MdeModulePkg/Logo/Logo-OpenSSL.bmp.b64 create mode 100644 MdeModulePkg/Logo/Logo-OpenSSL.idf create mode 100644 MdeModulePkg/Logo/LogoOpenSSLDxe.inf @@ -119,7 +121,7 @@ index d74feb7..7331597 100644 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf MdeModulePkg/Universal/BdsDxe/BdsDxe.inf -+!if $(SECURE_BOOT_ENABLE) == TRUE ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) + MdeModulePkg/Logo/LogoOpenSSLDxe.inf +!else MdeModulePkg/Logo/LogoDxe.inf @@ -135,7 +137,7 @@ index 89f95b2..8941b7f 100644 # # TianoCore logo (splash screen) # -+!if $(SECURE_BOOT_ENABLE) == TRUE ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) + INF MdeModulePkg/Logo/LogoOpenSSLDxe.inf +!else INF MdeModulePkg/Logo/LogoDxe.inf @@ -151,7 +153,7 @@ index 1e823ae..1981aae 100644 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf MdeModulePkg/Universal/BdsDxe/BdsDxe.inf -+!if $(SECURE_BOOT_ENABLE) == TRUE ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) + MdeModulePkg/Logo/LogoOpenSSLDxe.inf +!else MdeModulePkg/Logo/LogoDxe.inf @@ -2913,13 +2915,10 @@ new file mode 100644 index 0000000..15de807 --- /dev/null +++ b/MdeModulePkg/Logo/Logo-OpenSSL.idf -@@ -0,0 +1,18 @@ +@@ -0,0 +1,15 @@ +// /** @file +// Platform Logo image definition file. +// -+// Console Platfrom DXE Driver that specifies whether device can be used as console -+// input/output device or error output device and update global variables accordingly. -+// +// Copyright (c) 2016, Intel Corporation. All rights reserved.
+// +// This program and the accompanying materials @@ -3035,7 +3034,7 @@ index 054839f..889735a 100644 NULL|IntelFrameworkModulePkg/Library/LegacyBootManagerLib/LegacyBootManagerLib.inf !endif } -+!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) + MdeModulePkg/Logo/LogoOpenSSLDxe.inf +!else MdeModulePkg/Logo/LogoDxe.inf @@ -3051,7 +3050,7 @@ index 0427ded..f552bc9 100644 INF RuleOverride = BINARY EdkShellBinPkg/FullShell/FullShell.inf !endif -+!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) +INF MdeModulePkg/Logo/LogoOpenSSLDxe.inf +!else INF MdeModulePkg/Logo/LogoDxe.inf @@ -3067,7 +3066,7 @@ index d033fcf..af2cdf1 100644 NULL|IntelFrameworkModulePkg/Library/LegacyBootManagerLib/LegacyBootManagerLib.inf !endif } -+!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) + MdeModulePkg/Logo/LogoOpenSSLDxe.inf +!else MdeModulePkg/Logo/LogoDxe.inf @@ -3083,7 +3082,7 @@ index 6df47f4..ee77ae1 100644 INF RuleOverride = BINARY USE = X64 EdkShellBinPkg/FullShell/FullShell.inf !endif -+!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) +INF MdeModulePkg/Logo/LogoOpenSSLDxe.inf +!else INF MdeModulePkg/Logo/LogoDxe.inf @@ -3099,7 +3098,7 @@ index de335a1..3572e42 100644 NULL|IntelFrameworkModulePkg/Library/LegacyBootManagerLib/LegacyBootManagerLib.inf !endif } -+!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) + MdeModulePkg/Logo/LogoOpenSSLDxe.inf +!else MdeModulePkg/Logo/LogoDxe.inf @@ -3115,7 +3114,7 @@ index 2e2a174..505d25d 100644 INF RuleOverride = BINARY EdkShellBinPkg/FullShell/FullShell.inf !endif -+!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) +INF MdeModulePkg/Logo/LogoOpenSSLDxe.inf +!else INF MdeModulePkg/Logo/LogoDxe.inf diff --git a/0012-OvmfPkg-allow-exclusion-of-the-shell-from-the-firmwa.patch b/0012-OvmfPkg-allow-exclusion-of-the-shell-from-the-firmwa.patch index 870c65a..6ac2215 100644 --- a/0012-OvmfPkg-allow-exclusion-of-the-shell-from-the-firmwa.patch +++ b/0012-OvmfPkg-allow-exclusion-of-the-shell-from-the-firmwa.patch @@ -72,7 +72,7 @@ index f552bc9..73007dd 100644 !endif +!endif - !if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) + !if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) INF MdeModulePkg/Logo/LogoOpenSSLDxe.inf diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf index ee77ae1..116b3c6 100644 @@ -91,7 +91,7 @@ index ee77ae1..116b3c6 100644 !endif +!endif - !if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) + !if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) INF MdeModulePkg/Logo/LogoOpenSSLDxe.inf diff --git a/OvmfPkg/OvmfPkgX64.fdf b/OvmfPkg/OvmfPkgX64.fdf index 505d25d..84d5845 100644 @@ -110,7 +110,7 @@ index 505d25d..84d5845 100644 !endif +!endif - !if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) + !if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) || ($(TLS_ENABLE) == TRUE) INF MdeModulePkg/Logo/LogoOpenSSLDxe.inf -- 2.17.0 diff --git a/0053-ArmVirtPkg-unify-HttpLib-resolutions-in-ArmVirt.dsc..patch b/0053-ArmVirtPkg-unify-HttpLib-resolutions-in-ArmVirt.dsc..patch new file mode 100644 index 0000000..24d6c6d --- /dev/null +++ b/0053-ArmVirtPkg-unify-HttpLib-resolutions-in-ArmVirt.dsc..patch @@ -0,0 +1,67 @@ +From 77b702bfa4947caaa6b4b04730820d91bdf07b03 Mon Sep 17 00:00:00 2001 +From: Laszlo Ersek +Date: Fri, 13 Jul 2018 01:41:11 +0200 +Subject: [PATCH 1/2] ArmVirtPkg: unify HttpLib resolutions in + "ArmVirt.dsc.inc" + +We already resolve a number of networking-related library classes in +ArmVirt.dsc.inc; follow suit with HttpLib. + +Cc: Julien Grall +Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1007 +Contributed-under: TianoCore Contribution Agreement 1.1 +Signed-off-by: Laszlo Ersek +Reviewed-by: Ard Biesheuvel +--- + ArmVirtPkg/ArmVirt.dsc.inc | 3 +++ + ArmVirtPkg/ArmVirtQemu.dsc | 4 ---- + ArmVirtPkg/ArmVirtQemuKernel.dsc | 4 ---- + 3 files changed, 3 insertions(+), 8 deletions(-) + +diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc +index 7464ac70ed..76c400a5de 100644 +--- a/ArmVirtPkg/ArmVirt.dsc.inc ++++ b/ArmVirtPkg/ArmVirt.dsc.inc +@@ -80,6 +80,9 @@ [LibraryClasses.common] + DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf + UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf + IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf ++!if $(HTTP_BOOT_ENABLE) == TRUE ++ HttpLib|MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf ++!endif + + # + # It is not possible to prevent the ARM compiler from inserting calls to intrinsic functions. +diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc +index 744d127a10..742df36285 100644 +--- a/ArmVirtPkg/ArmVirtQemu.dsc ++++ b/ArmVirtPkg/ArmVirtQemu.dsc +@@ -64,10 +64,6 @@ [LibraryClasses.common] + PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf + PciHostBridgeLib|ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.inf + +-!if $(HTTP_BOOT_ENABLE) == TRUE +- HttpLib|MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf +-!endif +- + [LibraryClasses.common.PEIM] + ArmVirtMemInfoLib|ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoPeiLib.inf + +diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc +index e59f53b728..4ae61ec635 100644 +--- a/ArmVirtPkg/ArmVirtQemuKernel.dsc ++++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc +@@ -64,10 +64,6 @@ [LibraryClasses.common] + PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf + PciHostBridgeLib|ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.inf + +-!if $(HTTP_BOOT_ENABLE) == TRUE +- HttpLib|MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf +-!endif +- + [LibraryClasses.common.UEFI_DRIVER] + UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf + +-- +2.17.1 + diff --git a/0054-ArmVirtPkg-ArmVirtQemu-enable-the-IPv6-stack.patch b/0054-ArmVirtPkg-ArmVirtQemu-enable-the-IPv6-stack.patch new file mode 100644 index 0000000..23d532b --- /dev/null +++ b/0054-ArmVirtPkg-ArmVirtQemu-enable-the-IPv6-stack.patch @@ -0,0 +1,188 @@ +From ae08ea246fe9b4a4e05b7ee6cdbd5b0fa38f3f69 Mon Sep 17 00:00:00 2001 +From: Laszlo Ersek +Date: Fri, 13 Jul 2018 01:41:12 +0200 +Subject: [PATCH 2/2] ArmVirtPkg/ArmVirtQemu: enable the IPv6 stack + +Add the IPv6 stack to ArmVirtQemu with a cumulative port of the following +OvmfPkg commits: + +* 36c6413f76e5 "OvmfPkg: enable the IPv6 support", 2014-12-19 + +* 96302b80d90e "OvmfPkg: Enable Network2 Shell Commands for IPv6", + 2016-03-08 + +* 6d0f8941bdc2 "OvmfPkg: always resolve OpenSslLib, IntrinsicLib and + BaseCryptLib", 2017-01-17 + +* 32e22f20c985 "OvmfPkg: correct the IScsiDxe module included for the IPv6 + stack", 2017-01-17 + +The IPv6-enabled IScsiDxe driver depends on BaseCryptLib, and the +"CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf" instance depends on +IntrinsicLib and OpensslLib. This is why commit 6d0f8941bdc2 is relevant. + +However, unlike in OvmfPkg, in ArmVirtPkg we'll precisely track the +firmware features that require these library classes. (The OvmfPkg +discussion was quite complex, and the OvmfPkg solution was a compromise: +.) + +The ArmVirtXen platform is not extended with the relevant drivers because +currently it doesn't include any networking support. + +Cc: Julien Grall +Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1007 +Contributed-under: TianoCore Contribution Agreement 1.1 +Signed-off-by: Laszlo Ersek +Reviewed-by: Ard Biesheuvel +--- + ArmVirtPkg/ArmVirt.dsc.inc | 18 +++++++++++++++--- + ArmVirtPkg/ArmVirtQemu.dsc | 13 ++++++++++++- + ArmVirtPkg/ArmVirtQemuKernel.dsc | 13 ++++++++++++- + ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc | 12 +++++++++++- + 4 files changed, 50 insertions(+), 6 deletions(-) + +diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc +index 76c400a5de..8bb54c5e65 100644 +--- a/ArmVirtPkg/ArmVirt.dsc.inc ++++ b/ArmVirtPkg/ArmVirt.dsc.inc +@@ -80,6 +80,9 @@ [LibraryClasses.common] + DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf + UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf + IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf ++!if $(NETWORK_IP6_ENABLE) == TRUE ++ TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf ++!endif + !if $(HTTP_BOOT_ENABLE) == TRUE + HttpLib|MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf + !endif +@@ -144,14 +147,20 @@ [LibraryClasses.common] + XenIoMmioLib|OvmfPkg/Library/XenIoMmioLib/XenIoMmioLib.inf + + # +- # Secure Boot dependencies ++ # CryptoPkg libraries needed by multiple firmware features + # +-!if $(SECURE_BOOT_ENABLE) == TRUE ++!if ($(SECURE_BOOT_ENABLE) == TRUE) || ($(NETWORK_IP6_ENABLE) == TRUE) + IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf + OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf ++ BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf ++!endif ++ ++ # ++ # Secure Boot dependencies ++ # ++!if $(SECURE_BOOT_ENABLE) == TRUE + TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf + AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf +- BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf + + # re-use the UserPhysicalPresent() dummy implementation from the ovmf tree + PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf +@@ -406,6 +415,9 @@ [Components.common] + NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf + NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf + NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf ++!if $(NETWORK_IP6_ENABLE) == TRUE ++ NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf ++!endif + HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf +diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc +index 742df36285..885c6b14b8 100644 +--- a/ArmVirtPkg/ArmVirtQemu.dsc ++++ b/ArmVirtPkg/ArmVirtQemu.dsc +@@ -34,6 +34,7 @@ [Defines] + # -D FLAG=VALUE + # + DEFINE SECURE_BOOT_ENABLE = FALSE ++ DEFINE NETWORK_IP6_ENABLE = FALSE + DEFINE HTTP_BOOT_ENABLE = FALSE + + !include ArmVirtPkg/ArmVirt.dsc.inc +@@ -344,10 +345,20 @@ [Components.common] + MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf + MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf + MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf +- MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf + MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf ++!if $(NETWORK_IP6_ENABLE) == TRUE ++ NetworkPkg/Ip6Dxe/Ip6Dxe.inf ++ NetworkPkg/TcpDxe/TcpDxe.inf ++ NetworkPkg/Udp6Dxe/Udp6Dxe.inf ++ NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf ++ NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf ++ NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf ++ NetworkPkg/IScsiDxe/IScsiDxe.inf ++!else ++ MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf + MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf + MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf ++!endif + !if $(HTTP_BOOT_ENABLE) == TRUE + NetworkPkg/DnsDxe/DnsDxe.inf + NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf +diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc +index 4ae61ec635..434d6861a5 100644 +--- a/ArmVirtPkg/ArmVirtQemuKernel.dsc ++++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc +@@ -34,6 +34,7 @@ [Defines] + # -D FLAG=VALUE + # + DEFINE SECURE_BOOT_ENABLE = FALSE ++ DEFINE NETWORK_IP6_ENABLE = FALSE + DEFINE HTTP_BOOT_ENABLE = FALSE + + !include ArmVirtPkg/ArmVirt.dsc.inc +@@ -333,10 +334,20 @@ [Components.common] + MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf + MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf + MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf +- MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf + MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf ++!if $(NETWORK_IP6_ENABLE) == TRUE ++ NetworkPkg/Ip6Dxe/Ip6Dxe.inf ++ NetworkPkg/TcpDxe/TcpDxe.inf ++ NetworkPkg/Udp6Dxe/Udp6Dxe.inf ++ NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf ++ NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf ++ NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf ++ NetworkPkg/IScsiDxe/IScsiDxe.inf ++!else ++ MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf + MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf + MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf ++!endif + !if $(HTTP_BOOT_ENABLE) == TRUE + NetworkPkg/DnsDxe/DnsDxe.inf + NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf +diff --git a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc +index 63a202c788..a6390bd4b8 100644 +--- a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc ++++ b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc +@@ -125,10 +125,20 @@ [FV.FvMain] + INF MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf + INF MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf + INF MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf +- INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf + INF MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf ++!if $(NETWORK_IP6_ENABLE) == TRUE ++ INF NetworkPkg/Ip6Dxe/Ip6Dxe.inf ++ INF NetworkPkg/TcpDxe/TcpDxe.inf ++ INF NetworkPkg/Udp6Dxe/Udp6Dxe.inf ++ INF NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf ++ INF NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf ++ INF NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf ++ INF NetworkPkg/IScsiDxe/IScsiDxe.inf ++!else ++ INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf + INF MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf + INF MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf ++!endif + !if $(HTTP_BOOT_ENABLE) == TRUE + INF NetworkPkg/DnsDxe/DnsDxe.inf + INF NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf +-- +2.17.1 + diff --git a/edk2.spec b/edk2.spec index 7733db7..505adfe 100644 --- a/edk2.spec +++ b/edk2.spec @@ -35,7 +35,7 @@ Name: edk2 Version: %{edk2_date}git%{edk2_githash} -Release: 3%{dist} +Release: 4%{dist} Summary: EFI Development Kit II Group: Applications/Emulators @@ -72,6 +72,8 @@ Patch0016: 0016-ArmVirtPkg-set-early-hello-message-RH-only.patch Patch0050: 0050-OvmfPkg-PlatformBootManagerLib-connect-consoles-unco.patch Patch0051: 0051-ArmVirtPkg-PlatformBootManagerLib-connect-Virtio-RNG.patch Patch0052: 0052-OvmfPkg-PlatformBootManagerLib-connect-Virtio-RNG-de.patch +Patch0053: 0053-ArmVirtPkg-unify-HttpLib-resolutions-in-ArmVirt.dsc..patch +Patch0054: 0054-ArmVirtPkg-ArmVirtQemu-enable-the-IPv6-stack.patch %if 0%{?cross:1} # Tweak the tools_def to support cross-compiling. @@ -166,6 +168,8 @@ variable files to enforce Secure Boot. %if 0%{?build_ovmf_x64:1} %package ovmf Summary: Open Virtual Machine Firmware +# OVMF includes the Secure Boot and IPv6 features; it has a builtin OpenSSL +# library. License: BSD and OpenSSL Provides: OVMF = %{version}-%{release} Obsoletes: OVMF < %{version}-%{release} @@ -178,6 +182,8 @@ Open Virtual Machine Firmware (x64) %if 0%{?build_ovmf_ia32:1} %package ovmf-ia32 Summary: Open Virtual Machine Firmware +# OVMF includes the Secure Boot and IPv6 features; it has a builtin OpenSSL +# library. License: BSD and OpenSSL BuildArch: noarch %description ovmf-ia32 @@ -191,6 +197,8 @@ Summary: AARCH64 Virtual Machine Firmware Provides: AAVMF = %{version}-%{release} Obsoletes: AAVMF < %{version}-%{release} BuildArch: noarch +# No Secure Boot for AAVMF yet, but we include OpenSSL for the IPv6 stack. +License: BSD and OpenSSL %description aarch64 EFI Development Kit II AARCH64 UEFI Firmware @@ -220,7 +228,6 @@ cp -a -- %{SOURCE2} . # add openssl (cd .. && tar -xvf %{SOURCE1}) -cp CryptoPkg/Library/OpensslLib/openssl/LICENSE LICENSE.openssl # Extract QOSB tar -xvf %{SOURCE3} @@ -234,7 +241,7 @@ base64 --decode < MdeModulePkg/Logo/Logo-OpenSSL.bmp.b64 > MdeModulePkg/Logo/Log source ./edksetup.sh # compiler -CC_FLAGS="-t GCC49" +CC_FLAGS="-t GCC5" # parallel builds JOBS="%{?_smp_mflags}" @@ -244,8 +251,8 @@ if test "$JOBS" != ""; then fi # common features -CC_FLAGS="${CC_FLAGS} -b DEBUG" -CC_FLAGS="${CC_FLAGS} --cmd-len=65536" +CC_FLAGS="$CC_FLAGS --cmd-len=65536 -t %{TOOLCHAIN} -b DEBUG --hash" +CC_FLAGS="$CC_FLAGS -D NETWORK_IP6_ENABLE" # ovmf features OVMF_FLAGS="${CC_FLAGS}" @@ -270,10 +277,10 @@ sed -i -e 's/-Werror//' Conf/tools_def.txt %if 0%{?cross:1} -export GCC49_IA32_PREFIX="x86_64-linux-gnu-" -export GCC49_X64_PREFIX="x86_64-linux-gnu-" -export GCC49_AARCH64_PREFIX="aarch64-linux-gnu-" -export GCC49_ARM_PREFIX="arm-linux-gnu-" +export GCC5_IA32_PREFIX="x86_64-linux-gnu-" +export GCC5_X64_PREFIX="x86_64-linux-gnu-" +export GCC5_AARCH64_PREFIX="aarch64-linux-gnu-" +export GCC5_ARM_PREFIX="arm-linux-gnu-" %endif # build ovmf (x64) @@ -360,6 +367,7 @@ python3 qemu-ovmf-secureboot-%{qosb_version}/ovmf-vars-generator \ %endif %install +cp CryptoPkg/Library/OpensslLib/openssl/LICENSE LICENSE.openssl mkdir -p %{buildroot}%{_bindir} \ %{buildroot}%{_datadir}/%{name}/Conf \ %{buildroot}%{_datadir}/%{name}/Scripts @@ -413,6 +421,7 @@ install qemu-ovmf-secureboot-%{qosb_version}/ovmf-vars-generator %{buildroot}%{_ %files tools %license License.txt +%license LICENSE.openssl %{_bindir}/BootSectImage %{_bindir}/Brotli %{_bindir}/DevicePath @@ -510,6 +519,9 @@ install qemu-ovmf-secureboot-%{qosb_version}/ovmf-vars-generator %{buildroot}%{_ %changelog +* Wed Jul 18 2018 Paolo Bonzini - 20180529gitee3198e672e2-4 +- Enable IPv6 + * Thu Jul 12 2018 Fedora Release Engineering - 20180529gitee3198e672e2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild