From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id DE59C80385 for ; Thu, 23 Mar 2017 06:19:54 -0700 (PDT) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga105.jf.intel.com with ESMTP; 23 Mar 2017 06:19:54 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,210,1486454400"; d="scan'208";a="1146042066" Received: from shwde6388.ccr.corp.intel.com ([10.239.9.17]) by fmsmga002.fm.intel.com with ESMTP; 23 Mar 2017 06:19:52 -0700 From: Qin Long To: edk2-devel@lists.01.org Cc: ting.ye@intel.com, jiaxin.wu@intel.com, lersek@redhat.com, ard.biesheuvel@linaro.org, glin@suse.com, ronald.cron@arm.com, Moso.Lee@citrix.com, thomas.palmer@hpe.com Date: Thu, 23 Mar 2017 21:19:21 +0800 Message-Id: <20170323131932.6168-1-qin.long@intel.com> X-Mailer: git-send-email 2.11.1.windows.1 Subject: [PATCH v2 00/11] Upgrade CryptoPkg to use the OpenSSL 1.1.0xx/stable release X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Mar 2017 13:19:55 -0000 V2 Changes: 1. Re-format patch series & handle some format fixes (as Laszlo Ersek's comments); 2. Updated TlsLib Wrapper (as Thomas Palmer's comments); 3. Add "ENGINESDIR" definition to support OpenSSL build if engine is enabled (as Moso Lee's comments) (https://github.com/qloong/edk2/tree/dev-openssl-stable-v2) Current EDKII-CryptoPkg is leveraging OpenSSL-1.0.2xx as the underlying cryptographic provider, which requires some extra patches (EDKII-openssl-xxxx.patch) and installation scripts for EDKII build & usage. The latest stable version of OpenSSL was upgraded to the 1.1.0 series of release, with lots of EDKII-specific patches integration, which make CryptoPkg possbile to remove all extra patch and scripts for more native build support. This patch series is to update EDKII-CryptoPkg to support native building with the latest OpenSSL 1.1.0xx. (By now, the latest OpenSSL stable release is 1.1.0e). Refer to "CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt" for the information about the version and source installation. (NOTE: The extra build options for ARM/RVCT/XCODE were kept as before, and further optimizations were expected from community.) Qin Long (11): CryptoPkg/OpensslLib: Update INF files to support OpenSSL-1.1.0x build CryptoPkg: Update .gitignore for OpenSSL source masking CryptoPkg/OpensslLib: Remove patch file and installation scripts. CryptoPkg/OpensslLib: Add new Perl script for file list generation. CryptoPkg/OpensslLib: Add new OpenSSL-HOWTO document. CryptoPkg: Fix handling of &strcmp function pointers CryptoPkg: Clean-up CRT Library Wrapper. CryptoPkg: Add extra build option to disable VS build warning CryptoPkg: Update HMAC Wrapper with opaque HMAC_CTX object. CryptoPkg: Update PK Cipher Wrappers work with opaque objects. CryptoPkg/TlsLib: Update TLS Wrapper to align with OpenSSL changes. CryptoPkg/.gitignore | 3 +- CryptoPkg/CryptoPkg.dec | 8 +- CryptoPkg/Include/CrtLibSupport.h | 193 ++ CryptoPkg/Include/Library/BaseCryptLib.h | 93 +- CryptoPkg/Include/OpenSslSupport.h | 286 --- CryptoPkg/Include/arpa/inet.h | 16 - CryptoPkg/Include/assert.h | 7 +- CryptoPkg/Include/ctype.h | 7 +- CryptoPkg/Include/dirent.h | 16 - CryptoPkg/Include/errno.h | 7 +- CryptoPkg/Include/internal/dso_conf.h | 0 CryptoPkg/Include/limits.h | 7 +- CryptoPkg/Include/malloc.h | 16 - CryptoPkg/Include/math.h | 16 - CryptoPkg/Include/memory.h | 7 +- CryptoPkg/Include/netdb.h | 16 - CryptoPkg/Include/netinet/in.h | 16 - CryptoPkg/Include/openssl/opensslconf.h | 308 +++ CryptoPkg/Include/sgtty.h | 16 - CryptoPkg/Include/signal.h | 16 - CryptoPkg/Include/stdarg.h | 7 +- CryptoPkg/Include/stddef.h | 6 +- CryptoPkg/Include/stdio.h | 7 +- CryptoPkg/Include/stdlib.h | 7 +- CryptoPkg/Include/string.h | 7 +- CryptoPkg/Include/strings.h | 6 +- CryptoPkg/Include/sys/ioctl.h | 16 - CryptoPkg/Include/sys/param.h | 16 - CryptoPkg/Include/sys/socket.h | 16 - CryptoPkg/Include/sys/stat.h | 16 - CryptoPkg/Include/sys/time.h | 7 +- CryptoPkg/Include/sys/times.h | 16 - CryptoPkg/Include/sys/types.h | 7 +- CryptoPkg/Include/sys/un.h | 16 - CryptoPkg/Include/syslog.h | 6 +- CryptoPkg/Include/time.h | 6 +- CryptoPkg/Include/unistd.h | 6 +- CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf | 9 +- CryptoPkg/Library/BaseCryptLib/Hmac/CryptHmacMd5.c | 77 +- .../Library/BaseCryptLib/Hmac/CryptHmacMd5Null.c | 40 +- .../Library/BaseCryptLib/Hmac/CryptHmacSha1.c | 75 +- .../Library/BaseCryptLib/Hmac/CryptHmacSha1Null.c | 40 +- .../Library/BaseCryptLib/Hmac/CryptHmacSha256.c | 75 +- .../BaseCryptLib/Hmac/CryptHmacSha256Null.c | 40 +- CryptoPkg/Library/BaseCryptLib/InternalCryptLib.h | 10 +- CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf | 8 +- CryptoPkg/Library/BaseCryptLib/Pk/CryptDh.c | 69 +- CryptoPkg/Library/BaseCryptLib/Pk/CryptPkcs7Sign.c | 10 +- .../Library/BaseCryptLib/Pk/CryptPkcs7Verify.c | 68 +- CryptoPkg/Library/BaseCryptLib/Pk/CryptRsaBasic.c | 189 +- CryptoPkg/Library/BaseCryptLib/Pk/CryptRsaExt.c | 70 +- CryptoPkg/Library/BaseCryptLib/Pk/CryptTs.c | 20 +- CryptoPkg/Library/BaseCryptLib/Pk/CryptX509.c | 41 +- CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf | 8 +- CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf | 6 + .../BaseCryptLib/SysCall/BaseMemAllocation.c | 5 +- .../BaseCryptLib/SysCall/ConstantTimeClock.c | 6 +- .../Library/BaseCryptLib/SysCall/CrtWrapper.c | 185 +- .../Library/BaseCryptLib/SysCall/HelperWrapper.c | 54 - .../BaseCryptLib/SysCall/RuntimeMemAllocation.c | 3 +- .../Library/BaseCryptLib/SysCall/TimerWrapper.c | 4 +- CryptoPkg/Library/IntrinsicLib/MemoryIntrinsics.c | 8 +- .../Library/OpensslLib/EDKII_openssl-1.0.2k.patch | 2094 -------------------- CryptoPkg/Library/OpensslLib/Install.cmd | 80 - CryptoPkg/Library/OpensslLib/Install.sh | 82 - CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt | 53 + CryptoPkg/Library/OpensslLib/OpensslLib.inf | 866 ++++---- CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 793 ++++---- CryptoPkg/Library/OpensslLib/Patch-HOWTO.txt | 61 - CryptoPkg/Library/OpensslLib/buildinf.h | 2 +- CryptoPkg/Library/OpensslLib/opensslconf.h | 497 ----- CryptoPkg/Library/OpensslLib/process_files.pl | 223 +++ CryptoPkg/Library/OpensslLib/process_files.sh | 110 - CryptoPkg/Library/TlsLib/InternalTlsLib.h | 5 +- CryptoPkg/Library/TlsLib/TlsConfig.c | 21 +- CryptoPkg/Library/TlsLib/TlsInit.c | 51 +- CryptoPkg/Library/TlsLib/TlsLib.inf | 9 +- 77 files changed, 2464 insertions(+), 4825 deletions(-) create mode 100644 CryptoPkg/Include/CrtLibSupport.h delete mode 100644 CryptoPkg/Include/OpenSslSupport.h delete mode 100644 CryptoPkg/Include/arpa/inet.h delete mode 100644 CryptoPkg/Include/dirent.h create mode 100644 CryptoPkg/Include/internal/dso_conf.h delete mode 100644 CryptoPkg/Include/malloc.h delete mode 100644 CryptoPkg/Include/math.h delete mode 100644 CryptoPkg/Include/netdb.h delete mode 100644 CryptoPkg/Include/netinet/in.h create mode 100644 CryptoPkg/Include/openssl/opensslconf.h delete mode 100644 CryptoPkg/Include/sgtty.h delete mode 100644 CryptoPkg/Include/signal.h delete mode 100644 CryptoPkg/Include/sys/ioctl.h delete mode 100644 CryptoPkg/Include/sys/param.h delete mode 100644 CryptoPkg/Include/sys/socket.h delete mode 100644 CryptoPkg/Include/sys/stat.h delete mode 100644 CryptoPkg/Include/sys/times.h delete mode 100644 CryptoPkg/Include/sys/un.h delete mode 100644 CryptoPkg/Library/BaseCryptLib/SysCall/HelperWrapper.c delete mode 100644 CryptoPkg/Library/OpensslLib/EDKII_openssl-1.0.2k.patch delete mode 100755 CryptoPkg/Library/OpensslLib/Install.cmd delete mode 100755 CryptoPkg/Library/OpensslLib/Install.sh create mode 100644 CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt delete mode 100644 CryptoPkg/Library/OpensslLib/Patch-HOWTO.txt delete mode 100644 CryptoPkg/Library/OpensslLib/opensslconf.h create mode 100644 CryptoPkg/Library/OpensslLib/process_files.pl delete mode 100755 CryptoPkg/Library/OpensslLib/process_files.sh -- 2.11.1.windows.1