public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Qin Long <qin.long@intel.com>
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
Subject: [PATCH v2 00/11] Upgrade CryptoPkg to use the OpenSSL 1.1.0xx/stable release
Date: Thu, 23 Mar 2017 21:19:21 +0800	[thread overview]
Message-ID: <20170323131932.6168-1-qin.long@intel.com> (raw)

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



             reply	other threads:[~2017-03-23 13:19 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-23 13:19 Qin Long [this message]
2017-03-23 13:19 ` [PATCH v2 01/11] CryptoPkg/OpensslLib: Update INF files to support OpenSSL-1.1.0x build Qin Long
2017-03-23 18:27   ` Laszlo Ersek
2017-03-27  9:40   ` Gary Lin
2017-03-23 13:19 ` [PATCH v2 02/11] CryptoPkg: Update .gitignore for OpenSSL source masking Qin Long
2017-03-23 18:28   ` Laszlo Ersek
2017-03-23 13:19 ` [PATCH v2 03/11] CryptoPkg/OpensslLib: Remove patch file and installation scripts Qin Long
2017-03-23 18:28   ` Laszlo Ersek
2017-03-23 13:19 ` [PATCH v2 04/11] CryptoPkg/OpensslLib: Add new Perl script for file list generation Qin Long
2017-03-23 18:29   ` Laszlo Ersek
2017-03-23 13:19 ` [PATCH v2 05/11] CryptoPkg/OpensslLib: Add new OpenSSL-HOWTO document Qin Long
2017-03-23 18:31   ` Laszlo Ersek
2017-03-27  9:58   ` Gary Lin
2017-03-23 13:19 ` [PATCH v2 06/11] CryptoPkg: Fix handling of &strcmp function pointers Qin Long
2017-03-23 18:33   ` Laszlo Ersek
2017-03-27  9:41   ` Gary Lin
2017-03-23 13:19 ` [PATCH v2 07/11] CryptoPkg: Clean-up CRT Library Wrapper Qin Long
2017-03-23 18:34   ` Laszlo Ersek
2017-03-27  9:42   ` Gary Lin
2017-03-30 17:33   ` Laszlo Ersek
2017-03-31  2:06     ` Long, Qin
2017-03-23 13:19 ` [PATCH v2 08/11] CryptoPkg: Add extra build option to disable VS build warning Qin Long
2017-03-23 13:19 ` [PATCH v2 09/11] CryptoPkg: Update HMAC Wrapper with opaque HMAC_CTX object Qin Long
2017-03-23 18:37   ` Laszlo Ersek
2017-03-27  9:56     ` Gary Lin
2017-03-23 13:19 ` [PATCH v2 10/11] CryptoPkg: Update PK Cipher Wrappers work with opaque objects Qin Long
2017-03-23 18:38   ` Laszlo Ersek
2017-03-27  9:44   ` Gary Lin
2017-03-23 13:19 ` [PATCH v2 11/11] CryptoPkg/TlsLib: Update TLS Wrapper to align with OpenSSL changes Qin Long
2017-03-23 16:23   ` Palmer, Thomas
2017-03-24  5:40   ` Wu, Jiaxin
2017-03-23 17:28 ` [PATCH v2 00/11] Upgrade CryptoPkg to use the OpenSSL 1.1.0xx/stable release Laszlo Ersek
2017-03-28  8:19 ` Ye, Ting

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170323131932.6168-1-qin.long@intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox