From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-il1-f176.google.com (mail-il1-f176.google.com [209.85.166.176]) by mx.groups.io with SMTP id smtpd.web09.4719.1635928474138952852 for ; Wed, 03 Nov 2021 01:34:34 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20210112 header.b=bAAEL/oU; spf=pass (domain: gmail.com, ip: 209.85.166.176, mailfrom: vineel.kovvuri@gmail.com) Received: by mail-il1-f176.google.com with SMTP id j28so1766787ila.1 for ; Wed, 03 Nov 2021 01:34:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=0dBnhVk6g543d8NN76+ew2VdL+YSGi9ziK73vx2Z448=; b=bAAEL/oUZNTGMhrWV/w7wZ4oE8ulRswtByJoQ5ZIEGsj1wRc60dJY51E1aP27XzOOv /R5INkRMEOfllMa9PqcVqMVDlX7c/EwW4k4+n7r8KxTM3B9srdTsOSZw7xXqORz/Os8q Xj8w7rQrHGIdSu0X6uh/q88jPBbtH6uIc0m0ZRoic1VzxPa2RFoEvn0VJsUR6kEBaS3l mUFYYPDIr6Ac+TW++xj74lZ2jICDUeuIaQCwTLBqNluVswHRGHJr3tAJH6v5qLyJUfpg IP6db7mzMVQzTvx6uGT2iEWck2JsRiLJVS+gcmGkZQYqIq9J8U6NJiMA4UyXbj3hKDB6 GK1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=0dBnhVk6g543d8NN76+ew2VdL+YSGi9ziK73vx2Z448=; b=rDc/qUTdMp4LelWbUagtDlt8/XtHbvwQosqR8qcAqZUn6ZjQKR2/eK5kTBRydMVfHn CJ35HoOANXYKqUSgjJ5fYUdnKqFPwG7ELwn/43mHKFHyJJteaOgVJDxC8FuEcfyHY+Mi nBcauNzD3qokXudANuioTc8yiNtayErxMKFXbsBXudapULyOSzToA+mwxBYhZy31aFiT hNwGZ0BAiBNklMQ1xFI31IaLQGE2lgaaSI0vDuWih4emaNNL8scMyQdueb/mZIpONbv2 zKfPoi4EF+c0mOgSaSzNa5kk3MLL99cew3Y77sDlk3+55+TksrJBonlDBlC62vrgI103 eVfw== X-Gm-Message-State: AOAM531u5bZ23kK+9dlmfQdGA1P6Uy0osP85HFIXkJwHmA2zG7sdygtq t3Kz7V0JyqMHsxu/txchDoOz7nOLliG5Kh66kaI= X-Google-Smtp-Source: ABdhPJwqjurp99XQGcrbQ95Ze0s+PjZA2WaxM2ADGbLPIu6olKa91C2XPrAKfoSjtYdfM6D4A8vBNRhYchl6h0Z+vaU= X-Received: by 2002:a05:6e02:1b81:: with SMTP id h1mr29908487ili.290.1635928473420; Wed, 03 Nov 2021 01:34:33 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Vineel Kovvuri Date: Wed, 3 Nov 2021 01:34:22 -0700 Message-ID: Subject: Re: [PATCH 1/2] Reconfigure OpensslLib to add elliptic curve chipher algorithms To: "Yao, Jiewen" Cc: Vineel Kovvuri , "devel@edk2.groups.io" , Sean Brogan , Bret Barkelew , Mike Turner , Jancarlo Perez Content-Type: multipart/alternative; boundary="00000000000089496a05cfde4737" --00000000000089496a05cfde4737 Content-Type: text/plain; charset="UTF-8" Hi Jiewen, Thanks for checking. One of the issue is, ecc change required additional vsinstrincs to be included. If not, IA32 build will fail with __allmul undefined. So I have to include below in OVMFPKGIA32.dsc from Project Mu [LibraryClasses.IA32] NULL|MdePkg/Library/VsIntrinsicLib/VsIntrinsicLib.inf but then I am hitting a new failure when building "stuart_build -c OvmfPkg/PlatformCI/PlatformBuild.py TOOL_CHAIN_TAG=VS2019 TARGET=DEBUG -a IA32" ERROR - Linker #2001 from LINK : unresolved external symbol __ModuleEntryPoint ERROR - Linker #1120 from d:\repos\edk2\Build\OvmfIa32\DEBUG_VS2019\IA32\OvmfPkg\ResetVector\ResetVector\DEBUG\ResetVector.dll : fatal 1 unresolved externals ERROR - Compiler #1077 from NMAKE : fatal '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.28.29910\bin\Hostx86\x86\link.exe"' : return code '0x460' ERROR - Compiler #7000 from : Failed to execute command ERROR - EDK2 #002 from : Failed to build module Probably I am missing something. The other issue is the increased size of the OVMF firmware after enabling ec ciphers. We need some guidance in handling this as OVMF is being used by other open source projects like QEMU etc. Thanks, Vineel On Tue, Nov 2, 2021 at 5:37 PM Yao, Jiewen wrote: > Hello Vineel > May I know if you have send out v2? > > > -----Original Message----- > > From: Vineel Kovvuri > > Sent: Tuesday, October 19, 2021 4:06 AM > > To: Yao, Jiewen ; Vineel Kovvuri > > ; devel@edk2.groups.io; Sean Brogan > > ; Bret Barkelew > > ; Mike Turner > > > > Cc: Jancarlo Perez > > Subject: RE: [PATCH 1/2] Reconfigure OpensslLib to add elliptic curve > chipher > > algorithms > > > > Hi Jiewen, > > > > Sorry for the build break. I will fix this locally and send you the > patch. > > > > Thanks, > > Vineel > > > > -----Original Message----- > > From: Yao, Jiewen > > Sent: Saturday, October 16, 2021 7:49 PM > > To: Vineel Kovvuri ; devel@edk2.groups.io; > Sean > > Brogan ; Bret Barkelew > > ; Mike Turner > > > > Cc: Vineel Kovvuri > > Subject: [EXTERNAL] RE: [PATCH 1/2] Reconfigure OpensslLib to add > elliptic > > curve chipher algorithms > > > > Hi > > This patch fails in the P-R - > > > https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.c > > om%2Ftianocore%2Fedk2%2Fpull%2F2073&data=04%7C01%7Cvineelko%4 > > 0microsoft.com%7C5d3643d0f0ec4bb48ba608d99118b6e7%7C72f988bf86f141 > > af91ab2d7cd011db47%7C1%7C0%7C637700357621360496%7CUnknown%7CT > > WFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXV > > CI6Mn0%3D%7C1000&sdata=NbiiW6sHXAfHEkkL7aBbnGlZoYXbAzmkgzeqb > > biuJ6Q%3D&reserved=0. Please double check. > > > > You are encourage to try P-R by yourself before submit the patch. > > > > Thank you > > Yao Jiewen > > > > > -----Original Message----- > > > From: Vineel Kovvuri > > > Sent: Tuesday, October 12, 2021 1:38 PM > > > To: devel@edk2.groups.io; Yao, Jiewen ; > > > sean.brogan@microsoft.com; bret.barkelew@microsoft.com; > > > Michael.Turner@microsoft.com > > > Cc: Vineel Kovvuri > > > Subject: [PATCH 1/2] Reconfigure OpensslLib to add elliptic curve > > > chipher algorithms > > > > > > This commit is a cherry pick of project mu's commit > > > https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgith > > > > > ub.com%2Fmicrosoft%2Fmu_tiano_plus%2Fcommit%2F1f3b135ddc821718a78c > > 3&am > > > > > p;data=04%7C01%7Cvineelko%40microsoft.com%7C5d3643d0f0ec4bb48ba608 > > d991 > > > > > 18b6e7%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637700357621 > > 360496 > > > %7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLC > > JBTiI6I > > > > > k1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=OFSVeefYJN%2Bq1BgGMKAJ0 > > H%2B2wfX > > > %2Bbn%2B4rmppat62i1o%3D&reserved=0 > > > 52316197889c5d3e0c2 > > > > > > Reconfigure OpensslLib to add elliptic curve chipher algorithms. > > > The only file manually changed is process_files.pl. > > > Running the script changes the other three files. > > > > > > BugZilla: > > > https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugz > > > > > illa.tianocore.org%2Fshow_bug.cgi%3Fid%3D3679&data=04%7C01%7Cvin > > ee > > > > > lko%40microsoft.com%7C5d3643d0f0ec4bb48ba608d99118b6e7%7C72f988bf8 > > 6f14 > > > > > 1af91ab2d7cd011db47%7C1%7C0%7C637700357621360496%7CUnknown%7CT > > WFpbGZsb > > > > > 3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0% > > 3D% > > > > > 7C1000&sdata=hUoZ%2F%2BTHW4aIvzk2N%2BCgtSqQ9igntGGt2vtlOgPTE > > KY%3D& > > > amp;reserved=0 > > > > > > Signed-off-by: Vineel Kovvuri > > > --- > > > .../Library/Include/openssl/opensslconf.h | 25 ++-------- > > > CryptoPkg/Library/OpensslLib/OpensslLib.inf | 50 +++++++++++++++++++ > > > .../Library/OpensslLib/OpensslLibCrypto.inf | 50 +++++++++++++++++++ > > > CryptoPkg/Library/OpensslLib/process_files.pl | 1 - > > > 4 files changed, 105 insertions(+), 21 deletions(-) > > > > > > diff --git a/CryptoPkg/Library/Include/openssl/opensslconf.h > > > b/CryptoPkg/Library/Include/openssl/opensslconf.h > > > index b8d59aebe8..09a6641ffc 100644 > > > --- a/CryptoPkg/Library/Include/openssl/opensslconf.h > > > +++ b/CryptoPkg/Library/Include/openssl/opensslconf.h > > > @@ -55,9 +55,6 @@ extern "C" { > > > #ifndef OPENSSL_NO_DSA > > > # define OPENSSL_NO_DSA > > > #endif > > > -#ifndef OPENSSL_NO_EC > > > -# define OPENSSL_NO_EC > > > -#endif > > > #ifndef OPENSSL_NO_IDEA > > > # define OPENSSL_NO_IDEA > > > #endif > > > @@ -88,9 +85,6 @@ extern "C" { > > > #ifndef OPENSSL_NO_SEED > > > # define OPENSSL_NO_SEED > > > #endif > > > -#ifndef OPENSSL_NO_SM2 > > > -# define OPENSSL_NO_SM2 > > > -#endif > > > #ifndef OPENSSL_NO_SRP > > > # define OPENSSL_NO_SRP > > > #endif > > > @@ -154,12 +148,6 @@ extern "C" { > > > #ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 # define > > > OPENSSL_NO_EC_NISTP_64_GCC_128 #endif -#ifndef OPENSSL_NO_ECDH -# > > > define OPENSSL_NO_ECDH -#endif -#ifndef OPENSSL_NO_ECDSA -# define > > > OPENSSL_NO_ECDSA -#endif #ifndef OPENSSL_NO_EGD # define > > > OPENSSL_NO_EGD #endif @@ -226,9 +214,6 @@ extern "C" { #ifndef > > > OPENSSL_NO_TESTS # define OPENSSL_NO_TESTS #endif -#ifndef > > > OPENSSL_NO_TLS1_3 -# define OPENSSL_NO_TLS1_3 -#endif #ifndef > > > OPENSSL_NO_UBSAN # define OPENSSL_NO_UBSAN #endif @@ -265,11 > > +250,11 > > > @@ extern "C" { > > > # undef DECLARE_DEPRECATED > > > # define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); > > > # endif > > > -#elif defined(__SUNPRO_C) > > > -#if (__SUNPRO_C >= 0x5130) > > > -#undef DECLARE_DEPRECATED > > > -#define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); > > > -#endif > > > +# elif defined(__SUNPRO_C) > > > +# if (__SUNPRO_C >= 0x5130) > > > +# undef DECLARE_DEPRECATED > > > +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); > > > +# endif > > > # endif > > > #endif > > > > > > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf > > > b/CryptoPkg/Library/OpensslLib/OpensslLib.inf > > > index d84bde056a..bd3d9cc90f 100644 > > > --- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf > > > +++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf > > > @@ -199,6 +199,43 @@ > > > $(OPENSSL_PATH)/crypto/dso/dso_vms.c > > > $(OPENSSL_PATH)/crypto/dso/dso_win32.c > > > $(OPENSSL_PATH)/crypto/ebcdic.c > > > + $(OPENSSL_PATH)/crypto/ec/curve25519.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448_tables.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/eddsa.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/f_generic.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/scalar.c > > > + $(OPENSSL_PATH)/crypto/ec/ec2_oct.c > > > + $(OPENSSL_PATH)/crypto/ec/ec2_smpl.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_ameth.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_asn1.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_check.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_curve.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_cvt.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_err.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_key.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_kmeth.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_lib.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_mult.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_oct.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_pmeth.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_print.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdh_kdf.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdh_ossl.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdsa_ossl.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdsa_sign.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdsa_vrf.c > > > + $(OPENSSL_PATH)/crypto/ec/eck_prn.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_mont.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nist.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp224.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp256.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp521.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nistputil.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_oct.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_smpl.c > > > + $(OPENSSL_PATH)/crypto/ec/ecx_meth.c > > > $(OPENSSL_PATH)/crypto/err/err.c > > > $(OPENSSL_PATH)/crypto/err/err_prn.c > > > $(OPENSSL_PATH)/crypto/evp/bio_b64.c > > > @@ -384,6 +421,10 @@ > > > $(OPENSSL_PATH)/crypto/siphash/siphash.c > > > $(OPENSSL_PATH)/crypto/siphash/siphash_ameth.c > > > $(OPENSSL_PATH)/crypto/siphash/siphash_pmeth.c > > > + $(OPENSSL_PATH)/crypto/sm2/sm2_crypt.c > > > + $(OPENSSL_PATH)/crypto/sm2/sm2_err.c > > > + $(OPENSSL_PATH)/crypto/sm2/sm2_pmeth.c > > > + $(OPENSSL_PATH)/crypto/sm2/sm2_sign.c > > > $(OPENSSL_PATH)/crypto/sm3/m_sm3.c > > > $(OPENSSL_PATH)/crypto/sm3/sm3.c > > > $(OPENSSL_PATH)/crypto/sm4/sm4.c > > > @@ -496,6 +537,15 @@ > > > $(OPENSSL_PATH)/crypto/conf/conf_local.h > > > $(OPENSSL_PATH)/crypto/dh/dh_local.h > > > $(OPENSSL_PATH)/crypto/dso/dso_local.h > > > + $(OPENSSL_PATH)/crypto/ec/ec_local.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448_local.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448utils.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/ed448.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/field.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/point_448.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/word.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/arch_intrinsics.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.h > > > $(OPENSSL_PATH)/crypto/evp/evp_local.h > > > $(OPENSSL_PATH)/crypto/hmac/hmac_local.h > > > $(OPENSSL_PATH)/crypto/lhash/lhash_local.h > > > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > > > b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > > > index cdeed0d073..38ccf1a5b6 100644 > > > --- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > > > +++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > > > @@ -199,6 +199,43 @@ > > > $(OPENSSL_PATH)/crypto/dso/dso_vms.c > > > $(OPENSSL_PATH)/crypto/dso/dso_win32.c > > > $(OPENSSL_PATH)/crypto/ebcdic.c > > > + $(OPENSSL_PATH)/crypto/ec/curve25519.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448_tables.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/eddsa.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/f_generic.c > > > + $(OPENSSL_PATH)/crypto/ec/curve448/scalar.c > > > + $(OPENSSL_PATH)/crypto/ec/ec2_oct.c > > > + $(OPENSSL_PATH)/crypto/ec/ec2_smpl.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_ameth.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_asn1.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_check.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_curve.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_cvt.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_err.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_key.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_kmeth.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_lib.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_mult.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_oct.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_pmeth.c > > > + $(OPENSSL_PATH)/crypto/ec/ec_print.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdh_kdf.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdh_ossl.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdsa_ossl.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdsa_sign.c > > > + $(OPENSSL_PATH)/crypto/ec/ecdsa_vrf.c > > > + $(OPENSSL_PATH)/crypto/ec/eck_prn.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_mont.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nist.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp224.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp256.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp521.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_nistputil.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_oct.c > > > + $(OPENSSL_PATH)/crypto/ec/ecp_smpl.c > > > + $(OPENSSL_PATH)/crypto/ec/ecx_meth.c > > > $(OPENSSL_PATH)/crypto/err/err.c > > > $(OPENSSL_PATH)/crypto/err/err_prn.c > > > $(OPENSSL_PATH)/crypto/evp/bio_b64.c > > > @@ -384,6 +421,10 @@ > > > $(OPENSSL_PATH)/crypto/siphash/siphash.c > > > $(OPENSSL_PATH)/crypto/siphash/siphash_ameth.c > > > $(OPENSSL_PATH)/crypto/siphash/siphash_pmeth.c > > > + $(OPENSSL_PATH)/crypto/sm2/sm2_crypt.c > > > + $(OPENSSL_PATH)/crypto/sm2/sm2_err.c > > > + $(OPENSSL_PATH)/crypto/sm2/sm2_pmeth.c > > > + $(OPENSSL_PATH)/crypto/sm2/sm2_sign.c > > > $(OPENSSL_PATH)/crypto/sm3/m_sm3.c > > > $(OPENSSL_PATH)/crypto/sm3/sm3.c > > > $(OPENSSL_PATH)/crypto/sm4/sm4.c > > > @@ -496,6 +537,15 @@ > > > $(OPENSSL_PATH)/crypto/conf/conf_local.h > > > $(OPENSSL_PATH)/crypto/dh/dh_local.h > > > $(OPENSSL_PATH)/crypto/dso/dso_local.h > > > + $(OPENSSL_PATH)/crypto/ec/ec_local.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448_local.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448utils.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/ed448.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/field.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/point_448.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/word.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/arch_intrinsics.h > > > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.h > > > $(OPENSSL_PATH)/crypto/evp/evp_local.h > > > $(OPENSSL_PATH)/crypto/hmac/hmac_local.h > > > $(OPENSSL_PATH)/crypto/lhash/lhash_local.h > > > diff --git a/CryptoPkg/Library/OpensslLib/process_files.pl > > > b/CryptoPkg/Library/OpensslLib/process_files.pl > > > index 42bff05fa6..2ebfbbbca0 100755 > > > --- a/CryptoPkg/Library/OpensslLib/process_files.pl > > > +++ b/CryptoPkg/Library/OpensslLib/process_files.pl > > > @@ -169,7 +169,6 @@ BEGIN { > > > "no-dgram", > > > "no-dsa", > > > "no-dynamic-engine", > > > - "no-ec", > > > "no-ec2m", > > > "no-engine", > > > "no-err", > > > -- > > > 2.17.1 > > --00000000000089496a05cfde4737 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi=C2=A0Jiewen,=C2=A0

Thanks for c= hecking. One of the issue is, ecc change required additional vsinstrincs to= be included. If not, IA32 build will fail with __allmul undefined. So I ha= ve to include below in=C2=A0OVMFPKGIA32.dsc from Project Mu

<= /div>
[LibraryClasses.IA32]
=C2=A0 NULL|MdePkg/Library/VsIntrinsicLi= b/VsIntrinsicLib.inf

but then I am hitting a n= ew failure when building "stuart_build -c OvmfPkg/PlatformCI/PlatformB= uild.py TOOL_CHAIN_TAG=3DVS2019 TARGET=3DDEBUG -a IA32"

ERROR -= Linker #2001 from LINK : =C2=A0 unresolved external symbol __ModuleEntryPo= int
ERROR - Linker #1120 from d:\repos\edk2\Build\OvmfIa32\DEBUG_VS2019\= IA32\OvmfPkg\ResetVector\ResetVector\DEBUG\ResetVector.dll : fatal =C2=A0 1= unresolved externals
ERROR - Compiler #1077 from NMAKE : fatal =C2=A0 &= #39;"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC= \Tools\MSVC\14.28.29910\bin\Hostx86\x86\link.exe"' : return code &= #39;0x460'
ERROR - Compiler #7000 from : =C2=A0 Failed to execute co= mmand
ERROR - EDK2 #002 from : =C2=A0 Failed to build module

Probably I am missing something.

The ot= her issue is the increased size of the OVMF firmware after enabling=C2=A0ec= ciphers. We need some guidance=C2=A0in handling this as OVMF is being used= by other open source projects like QEMU etc.

Thanks,
Vineel


On Tue, Nov 2, 2021 at 5:37 PM Yao, Jiewen &l= t;jiewen.yao@intel.com> wrot= e:
Hello Vineel<= br> May I know if you have send out v2?

> -----Original Message-----
> From: Vineel Kovvuri <vineelko@microsoft.com>
> Sent: Tuesday, October 19, 2021 4:06 AM
> To: Yao, Jiewen <jiewen.yao@intel.com>; Vineel Kovvuri
> <vine= el.kovvuri@gmail.com>; devel@edk2.groups.io; Sean Brogan
> <sea= n.brogan@microsoft.com>; Bret Barkelew
> <B= ret.Barkelew@microsoft.com>; Mike Turner
> <= Michael.Turner@microsoft.com>
> Cc: Jancarlo Perez <jpere@microsoft.com>
> Subject: RE: [PATCH 1/2] Reconfigure OpensslLib to add elliptic curve = chipher
> algorithms
>
> Hi Jiewen,
>
> Sorry for the build break. I will fix this locally and send you the pa= tch.
>
> Thanks,
> Vineel
>
> -----Original Message-----
> From: Yao, Jiewen <jiewen.yao@intel.com>
> Sent: Saturday, October 16, 2021 7:49 PM
> To: Vineel Kovvuri <vineel.kovvuri@gmail.com>; devel@edk2.groups.io; Sean
> Brogan <sean.brogan@microsoft.com>; Bret Barkelew
> <B= ret.Barkelew@microsoft.com>; Mike Turner
> <= Michael.Turner@microsoft.com>
> Cc: Vineel Kovvuri <vineelko@microsoft.com>
> Subject: [EXTERNAL] RE: [PATCH 1/2] Reconfigure OpensslLib to add elli= ptic
> curve chipher algorithms
>
> Hi
> This patch fails in the P-R -
> https://nam06.safel= inks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgithub.c
> om%2Ftianocore%2Fedk2%2Fpull%2F2073&amp;data=3D04%7C01%7Cvineelko%= 4
> 0microsoft.com%7C5d3643d0f0ec4bb48ba608d99118b6e7%7C72f988bf86f141
> af91ab2d7cd011db47%7C1%7C0%7C637700357621360496%7CUnknown%7CT
> WFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXV > CI6Mn0%3D%7C1000&amp;sdata=3DNbiiW6sHXAfHEkkL7aBbnGlZoYXbAzmkgzeqb=
> biuJ6Q%3D&amp;reserved=3D0. Please double check.
>
> You are encourage to try P-R by yourself before submit the patch.
>
> Thank you
> Yao Jiewen
>
> > -----Original Message-----
> > From: Vineel Kovvuri <vineel.kovvuri@gmail.com>
> > Sent: Tuesday, October 12, 2021 1:38 PM
> > To: dev= el@edk2.groups.io; Yao, Jiewen <jiewen.yao@intel.com>;
> > se= an.brogan@microsoft.com; bret.barkelew@microsoft.com;
> > Michael.Turner@microsoft.com
> > Cc: Vineel Kovvuri <vineelko@microsoft.com>
> > Subject: [PATCH 1/2] Reconfigure OpensslLib to add elliptic curve=
> > chipher algorithms
> >
> > This commit is a cherry pick of project mu's commit
> > https://nam06.safe= links.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgith
> >
> ub.com<= /a>%2Fmicrosoft%2Fmu_tiano_plus%2Fcommit%2F1f3b135ddc821718a78c
> 3&am
> >
> p;data=3D04%7C01%7Cvineelko%
40microsoft.com%7C5d3643d0f0ec4bb48ba608<= br> > d991
> >
> 18b6e7%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637700357621
> 360496
> > %7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLC > JBTiI6I
> >
> k1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=3DOFSVeefYJN%2Bq1BgGMKAJ0 > H%2B2wfX
> > %2Bbn%2B4rmppat62i1o%3D&amp;reserved=3D0
> > 52316197889c5d3e0c2
> >
> > Reconfigure OpensslLib to add elliptic curve chipher algorithms.<= br> > > The only file manually changed is process_files.pl.
> > Running the script changes the other three files.
> >
> > BugZilla:
> > https://nam06.safe= links.protection.outlook.com/?url=3Dhttps%3A%2F%2Fbugz
> >
> illa.tianocore.org%2Fshow_bug.cgi%3Fid%3D3679&amp;data=3D04%7C= 01%7Cvin
> ee
> >
> lko%40microsoft.com%7C5d3643d0f0ec4bb48ba608d99118b6e7%7C72f988bf8 > 6f14
> >
> 1af91ab2d7cd011db47%7C1%7C0%7C637700357621360496%7CUnknown%7CT
> WFpbGZsb
> >
> 3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0% > 3D%
> >
> 7C1000&amp;sdata=3DhUoZ%2F%2BTHW4aIvzk2N%2BCgtSqQ9igntGGt2vtlOgPTE=
> KY%3D&
> > amp;reserved=3D0
> >
> > Signed-off-by: Vineel Kovvuri <vineelko@microsoft.com>
> > ---
> >=C2=A0 .../Library/Include/openssl/opensslconf.h=C2=A0 =C2=A0 =C2= =A0| 25 ++--------
> >=C2=A0 CryptoPkg/Library/OpensslLib/OpensslLib.inf=C2=A0 =C2=A0| 5= 0 +++++++++++++++++++
> >=C2=A0 .../Library/OpensslLib/OpensslLibCrypto.inf=C2=A0 =C2=A0| 5= 0 +++++++++++++++++++
> >=C2=A0 CryptoPkg/Library/OpensslLib/process_files.pl |=C2=A0 1 -=
> >=C2=A0 4 files changed, 105 insertions(+), 21 deletions(-)
> >
> > diff --git a/CryptoPkg/Library/Include/openssl/opensslconf.h
> > b/CryptoPkg/Library/Include/openssl/opensslconf.h
> > index b8d59aebe8..09a6641ffc 100644
> > --- a/CryptoPkg/Library/Include/openssl/opensslconf.h
> > +++ b/CryptoPkg/Library/Include/openssl/opensslconf.h
> > @@ -55,9 +55,6 @@ extern "C" {
> >=C2=A0 #ifndef OPENSSL_NO_DSA
> >=C2=A0 # define OPENSSL_NO_DSA
> >=C2=A0 #endif
> > -#ifndef OPENSSL_NO_EC
> > -# define OPENSSL_NO_EC
> > -#endif
> >=C2=A0 #ifndef OPENSSL_NO_IDEA
> >=C2=A0 # define OPENSSL_NO_IDEA
> >=C2=A0 #endif
> > @@ -88,9 +85,6 @@ extern "C" {
> >=C2=A0 #ifndef OPENSSL_NO_SEED
> >=C2=A0 # define OPENSSL_NO_SEED
> >=C2=A0 #endif
> > -#ifndef OPENSSL_NO_SM2
> > -# define OPENSSL_NO_SM2
> > -#endif
> >=C2=A0 #ifndef OPENSSL_NO_SRP
> >=C2=A0 # define OPENSSL_NO_SRP
> >=C2=A0 #endif
> > @@ -154,12 +148,6 @@ extern "C" {
> >=C2=A0 #ifndef OPENSSL_NO_EC_NISTP_64_GCC_128=C2=A0 # define
> > OPENSSL_NO_EC_NISTP_64_GCC_128=C2=A0 #endif -#ifndef OPENSSL_NO_E= CDH -#
> > define OPENSSL_NO_ECDH -#endif -#ifndef OPENSSL_NO_ECDSA -# defin= e
> > OPENSSL_NO_ECDSA -#endif=C2=A0 #ifndef OPENSSL_NO_EGD=C2=A0 # def= ine
> > OPENSSL_NO_EGD=C2=A0 #endif @@ -226,9 +214,6 @@ extern "C&qu= ot; {=C2=A0 #ifndef
> > OPENSSL_NO_TESTS=C2=A0 # define OPENSSL_NO_TESTS=C2=A0 #endif -#i= fndef
> > OPENSSL_NO_TLS1_3 -# define OPENSSL_NO_TLS1_3 -#endif=C2=A0 #ifnd= ef
> > OPENSSL_NO_UBSAN=C2=A0 # define OPENSSL_NO_UBSAN=C2=A0 #endif @@ = -265,11
> +250,11
> > @@ extern "C" {
> >=C2=A0 #=C2=A0 =C2=A0undef DECLARE_DEPRECATED
> >=C2=A0 #=C2=A0 =C2=A0define DECLARE_DEPRECATED(f)=C2=A0 =C2=A0 f _= _attribute__ ((deprecated));
> >=C2=A0 #=C2=A0 endif
> > -#elif defined(__SUNPRO_C)
> > -#if (__SUNPRO_C >=3D 0x5130)
> > -#undef DECLARE_DEPRECATED
> > -#define DECLARE_DEPRECATED(f)=C2=A0 =C2=A0 f __attribute__ ((dep= recated));
> > -#endif
> > +# elif defined(__SUNPRO_C)
> > +#=C2=A0 if (__SUNPRO_C >=3D 0x5130)
> > +#=C2=A0 =C2=A0undef DECLARE_DEPRECATED
> > +#=C2=A0 =C2=A0define DECLARE_DEPRECATED(f)=C2=A0 =C2=A0 f __attr= ibute__ ((deprecated));
> > +#=C2=A0 endif
> >=C2=A0 # endif
> >=C2=A0 #endif
> >
> > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> > b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> > index d84bde056a..bd3d9cc90f 100644
> > --- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> > +++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> > @@ -199,6 +199,43 @@
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/dso/dso_vms.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/dso/dso_win32.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/ebcdic.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve25519.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/curve448.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/curve448_tables.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/eddsa.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/f_generic.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/scalar.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec2_oct.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec2_smpl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_ameth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_asn1.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_check.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_curve.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_cvt.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_err.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_key.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_kmeth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_lib.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_mult.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_oct.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_pmeth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_print.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdh_kdf.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdh_ossl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdsa_ossl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdsa_sign.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdsa_vrf.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/eck_prn.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_mont.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nist.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nistp224.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nistp256.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nistp521.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nistputil.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_oct.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_smpl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecx_meth.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/err/err.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/err/err_prn.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/evp/bio_b64.c
> > @@ -384,6 +421,10 @@
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/siphash/siphash.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/siphash/siphash_ameth.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/siphash/siphash_pmeth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/sm2/sm2_crypt.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/sm2/sm2_err.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/sm2/sm2_pmeth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/sm2/sm2_sign.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/sm3/m_sm3.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/sm3/sm3.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/sm4/sm4.c
> > @@ -496,6 +537,15 @@
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/conf/conf_local.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/dh/dh_local.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/dso/dso_local.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_local.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/curve448_local.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/curve448utils.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/ed448.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/field.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/point_448.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/word.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/arch_intrinsic= s.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/evp/evp_local.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/hmac/hmac_local.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/lhash/lhash_local.h
> > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > > b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> > index cdeed0d073..38ccf1a5b6 100644
> > --- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> > +++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> > @@ -199,6 +199,43 @@
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/dso/dso_vms.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/dso/dso_win32.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/ebcdic.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve25519.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/curve448.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/curve448_tables.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/eddsa.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/f_generic.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/scalar.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec2_oct.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec2_smpl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_ameth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_asn1.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_check.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_curve.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_cvt.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_err.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_key.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_kmeth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_lib.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_mult.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_oct.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_pmeth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_print.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdh_kdf.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdh_ossl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdsa_ossl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdsa_sign.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecdsa_vrf.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/eck_prn.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_mont.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nist.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nistp224.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nistp256.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nistp521.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_nistputil.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_oct.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecp_smpl.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ecx_meth.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/err/err.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/err/err_prn.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/evp/bio_b64.c
> > @@ -384,6 +421,10 @@
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/siphash/siphash.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/siphash/siphash_ameth.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/siphash/siphash_pmeth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/sm2/sm2_crypt.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/sm2/sm2_err.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/sm2/sm2_pmeth.c
> > +=C2=A0 $(OPENSSL_PATH)/crypto/sm2/sm2_sign.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/sm3/m_sm3.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/sm3/sm3.c
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/sm4/sm4.c
> > @@ -496,6 +537,15 @@
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/conf/conf_local.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/dh/dh_local.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/dso/dso_local.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/ec_local.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/curve448_local.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/curve448utils.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/ed448.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/field.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/point_448.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/word.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/arch_intrinsic= s.h
> > +=C2=A0 $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/evp/evp_local.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/hmac/hmac_local.h
> >=C2=A0 =C2=A0 $(OPENSSL_PATH)/crypto/lhash/lhash_local.h
> > diff --git a/CryptoPkg/Library/OpensslLib/process_files.pl
> > b/CryptoPkg/Library/OpensslLib/process_files.pl
> > index 42bff05fa6..2ebfbbbca0 100755
> > --- a/CryptoPkg/Library/OpensslLib/process_files.pl
> > +++ b/CryptoPkg/Library/OpensslLib/process_files.pl
> > @@ -169,7 +169,6 @@ BEGIN {
> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &qu= ot;no-dgram",
> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &qu= ot;no-dsa",
> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &qu= ot;no-dynamic-engine",
> > -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 "no= -ec",
> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &qu= ot;no-ec2m",
> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &qu= ot;no-engine",
> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &qu= ot;no-err",
> > --
> > 2.17.1

--00000000000089496a05cfde4737--