public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g
@ 2017-12-22  6:28 Long Qin
  2017-12-25  7:14 ` Ye, Ting
  0 siblings, 1 reply; 4+ messages in thread
From: Long Qin @ 2017-12-22  6:28 UTC (permalink / raw)
  To: edk2-devel; +Cc: ting.ye

Update the supported OpenSSL version to the latest 1.1.0g (02-Nov-2017).
The changes includes:
 - Re-generate the OpensslLib[crypto].inf using process_files.pl script
   to reflect the openssl source changes.
 - Update OpenSSL-HOWTO.txt
 - On Visual Studio Build: adding "/wd4819" to disable one addition build
   warning issue, which was already fixed in OpenSSL-HEAD
   https://github.com/openssl/openssl/pull/4691.
 - On GCC Build: openssl-1.1.0g introduced one additional build warning:
    ...\openssl\crypto\asn1\x_int64.c:105:32: error: format '%ld' expects
        argument of type 'long int', but argument 3 has type 'int64_t
        {aka long long int}' [-Werror=format=]
    return BIO_printf(out, "%"BIO_PRI64"d\n", **(int64_t **)pval);
                                ^
    Adding "-Wno-error=format" to GCC build flag to suppress this warning,
    since we have no real printf usage in BaseCryptLib, and BIO_printf()
    was already wrappered as the dummy implementation in CryptoPkg.

Cc: Ye Ting <ting.ye@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Long Qin <qin.long@intel.com>
---
 CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt    | 10 +++++-----
 CryptoPkg/Library/OpensslLib/OpensslLib.inf       | 14 +++++++++-----
 CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 14 +++++++++-----
 CryptoPkg/Library/OpensslLib/buildinf.h           |  2 +-
 4 files changed, 24 insertions(+), 16 deletions(-)

diff --git a/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt b/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
index e8b0bab010..d152138129 100644
--- a/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
+++ b/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
@@ -18,7 +18,7 @@ on the cryptography.
                              OpenSSL-Version
 =============================================================================
   EDKII supports building with the latest release of OpenSSL.
-  The latest official release is OpenSSL-1.1.0e (Released at 2017-Feb-16).
+  The latest official release is OpenSSL-1.1.0g (Released at 2017-Nov-02).
   NOTE: Only latest release version was fully validated.
         And no guarantees on build & functionality if using other versions.
 
@@ -28,13 +28,13 @@ on the cryptography.
 1. Clone the latest official OpenSSL release into the directory
      CryptoPkg/Library/OpensslLib/openssl/
 
-   Use OpenSSL-1.1.0e release as one example:
-     (OpenSSL_1_1_0e below is the tag name for the OpenSSL-1.1.0e release)
+   Use OpenSSL-1.1.0g release as one example:
+     (OpenSSL_1_1_0g below is the tag name for the OpenSSL-1.1.0g release)
      > cd CryptoPkg/Library/OpensslLib
-     > git clone -b OpenSSL_1_1_0e https://github.com/openssl/openssl openssl
+     > git clone -b OpenSSL_1_1_0g https://github.com/openssl/openssl openssl
      or
      > git clone https://github.com/openssl/openssl openssl
-     > git checkout OpenSSL_1_1_0e
+     > git checkout OpenSSL_1_1_0g
 Or
 2. Download the latest OpenSSL release package from the official website:
      https://www.openssl.org/source/
diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
index 1d15da6660..5302ad7fb5 100644
--- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
+++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
@@ -95,6 +95,7 @@
   $(OPENSSL_PATH)/crypto/asn1/x_algor.c
   $(OPENSSL_PATH)/crypto/asn1/x_bignum.c
   $(OPENSSL_PATH)/crypto/asn1/x_info.c
+  $(OPENSSL_PATH)/crypto/asn1/x_int64.c
   $(OPENSSL_PATH)/crypto/asn1/x_long.c
   $(OPENSSL_PATH)/crypto/asn1/x_pkey.c
   $(OPENSSL_PATH)/crypto/asn1/x_sig.c
@@ -539,10 +540,11 @@
   #   C4389: 'operator' : signed/unsigned mismatch (xxxx)
   #   C4702: unreachable code
   #   C4706: assignment within conditional expression
+  #   C4819: The file contains a character that cannot be represented in the current code page
   #
-  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706
-  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
-  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
+  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706 /wd4819
+  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
+  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
 
   INTEL:*_*_IA32_CC_FLAGS  = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
   INTEL:*_*_X64_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
@@ -551,10 +553,12 @@
   #
   # Suppress the following build warnings in openssl so we don't break the build with -Werror
   #   -Werror=maybe-uninitialized: there exist some other paths for which the variable is not initialized.
+  #   -Werror=format: Check calls to printf and scanf, etc., to make sure that the arguments supplied have
+  #                   types appropriate to the format string specified.
   #
   GCC:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
-  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -DNO_MSABI_VA_FUNCS
-  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
+  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format -DNO_MSABI_VA_FUNCS
+  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format
   GCC:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS)
   GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS)
 
diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
index 6fc8884da4..0c7f9e9e66 100644
--- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
+++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
@@ -95,6 +95,7 @@
   $(OPENSSL_PATH)/crypto/asn1/x_algor.c
   $(OPENSSL_PATH)/crypto/asn1/x_bignum.c
   $(OPENSSL_PATH)/crypto/asn1/x_info.c
+  $(OPENSSL_PATH)/crypto/asn1/x_int64.c
   $(OPENSSL_PATH)/crypto/asn1/x_long.c
   $(OPENSSL_PATH)/crypto/asn1/x_pkey.c
   $(OPENSSL_PATH)/crypto/asn1/x_sig.c
@@ -500,10 +501,11 @@
   #   C4389: 'operator' : signed/unsigned mismatch (xxxx)
   #   C4702: unreachable code
   #   C4706: assignment within conditional expression
+  #   C4819: The file contains a character that cannot be represented in the current code page
   #
-  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706
-  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
-  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
+  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706 /wd4819
+  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
+  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
 
   INTEL:*_*_IA32_CC_FLAGS  = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
   INTEL:*_*_X64_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
@@ -512,10 +514,12 @@
   #
   # Suppress the following build warnings in openssl so we don't break the build with -Werror
   #   -Werror=maybe-uninitialized: there exist some other paths for which the variable is not initialized.
+  #   -Werror=format: Check calls to printf and scanf, etc., to make sure that the arguments supplied have
+  #                   types appropriate to the format string specified.
   #
   GCC:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
-  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -DNO_MSABI_VA_FUNCS
-  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
+  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format -DNO_MSABI_VA_FUNCS
+  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format
   GCC:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS)
   GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS)
 
diff --git a/CryptoPkg/Library/OpensslLib/buildinf.h b/CryptoPkg/Library/OpensslLib/buildinf.h
index 3d967d2a86..c5ca293c72 100644
--- a/CryptoPkg/Library/OpensslLib/buildinf.h
+++ b/CryptoPkg/Library/OpensslLib/buildinf.h
@@ -1,2 +1,2 @@
 #define PLATFORM  "UEFI"
-#define DATE      "Tues Mar 21 01:23:45 PDT 2017"
+#define DATE      "Fri Dec 22 01:23:45 PDT 2017"
-- 
2.15.1.windows.2



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g
  2017-12-22  6:28 [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g Long Qin
@ 2017-12-25  7:14 ` Ye, Ting
  2017-12-26 19:24   ` Ard Biesheuvel
  0 siblings, 1 reply; 4+ messages in thread
From: Ye, Ting @ 2017-12-25  7:14 UTC (permalink / raw)
  To: Long, Qin, edk2-devel@lists.01.org

Reviewed-by: Ye Ting <ting.ye@intel.com>


-----Original Message-----
From: Long, Qin 
Sent: Friday, December 22, 2017 2:28 PM
To: edk2-devel@lists.01.org
Cc: Ye, Ting <ting.ye@intel.com>
Subject: [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g

Update the supported OpenSSL version to the latest 1.1.0g (02-Nov-2017).
The changes includes:
 - Re-generate the OpensslLib[crypto].inf using process_files.pl script
   to reflect the openssl source changes.
 - Update OpenSSL-HOWTO.txt
 - On Visual Studio Build: adding "/wd4819" to disable one addition build
   warning issue, which was already fixed in OpenSSL-HEAD
   https://github.com/openssl/openssl/pull/4691.
 - On GCC Build: openssl-1.1.0g introduced one additional build warning:
    ...\openssl\crypto\asn1\x_int64.c:105:32: error: format '%ld' expects
        argument of type 'long int', but argument 3 has type 'int64_t
        {aka long long int}' [-Werror=format=]
    return BIO_printf(out, "%"BIO_PRI64"d\n", **(int64_t **)pval);
                                ^
    Adding "-Wno-error=format" to GCC build flag to suppress this warning,
    since we have no real printf usage in BaseCryptLib, and BIO_printf()
    was already wrappered as the dummy implementation in CryptoPkg.

Cc: Ye Ting <ting.ye@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Long Qin <qin.long@intel.com>
---
 CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt    | 10 +++++-----
 CryptoPkg/Library/OpensslLib/OpensslLib.inf       | 14 +++++++++-----
 CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 14 +++++++++-----
 CryptoPkg/Library/OpensslLib/buildinf.h           |  2 +-
 4 files changed, 24 insertions(+), 16 deletions(-)

diff --git a/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt b/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
index e8b0bab010..d152138129 100644
--- a/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
+++ b/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
@@ -18,7 +18,7 @@ on the cryptography.
                              OpenSSL-Version  =============================================================================
   EDKII supports building with the latest release of OpenSSL.
-  The latest official release is OpenSSL-1.1.0e (Released at 2017-Feb-16).
+  The latest official release is OpenSSL-1.1.0g (Released at 2017-Nov-02).
   NOTE: Only latest release version was fully validated.
         And no guarantees on build & functionality if using other versions.
 
@@ -28,13 +28,13 @@ on the cryptography.
 1. Clone the latest official OpenSSL release into the directory
      CryptoPkg/Library/OpensslLib/openssl/
 
-   Use OpenSSL-1.1.0e release as one example:
-     (OpenSSL_1_1_0e below is the tag name for the OpenSSL-1.1.0e release)
+   Use OpenSSL-1.1.0g release as one example:
+     (OpenSSL_1_1_0g below is the tag name for the OpenSSL-1.1.0g 
+ release)
      > cd CryptoPkg/Library/OpensslLib
-     > git clone -b OpenSSL_1_1_0e https://github.com/openssl/openssl openssl
+     > git clone -b OpenSSL_1_1_0g https://github.com/openssl/openssl 
+ openssl
      or
      > git clone https://github.com/openssl/openssl openssl
-     > git checkout OpenSSL_1_1_0e
+     > git checkout OpenSSL_1_1_0g
 Or
 2. Download the latest OpenSSL release package from the official website:
      https://www.openssl.org/source/
diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
index 1d15da6660..5302ad7fb5 100644
--- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
+++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
@@ -95,6 +95,7 @@
   $(OPENSSL_PATH)/crypto/asn1/x_algor.c
   $(OPENSSL_PATH)/crypto/asn1/x_bignum.c
   $(OPENSSL_PATH)/crypto/asn1/x_info.c
+  $(OPENSSL_PATH)/crypto/asn1/x_int64.c
   $(OPENSSL_PATH)/crypto/asn1/x_long.c
   $(OPENSSL_PATH)/crypto/asn1/x_pkey.c
   $(OPENSSL_PATH)/crypto/asn1/x_sig.c
@@ -539,10 +540,11 @@
   #   C4389: 'operator' : signed/unsigned mismatch (xxxx)
   #   C4702: unreachable code
   #   C4706: assignment within conditional expression
+  #   C4819: The file contains a character that cannot be represented in the current code page
   #
-  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706
-  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
-  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
+  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706 /wd4819
+  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
+  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
 
   INTEL:*_*_IA32_CC_FLAGS  = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
   INTEL:*_*_X64_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
@@ -551,10 +553,12 @@
   #
   # Suppress the following build warnings in openssl so we don't break the build with -Werror
   #   -Werror=maybe-uninitialized: there exist some other paths for which the variable is not initialized.
+  #   -Werror=format: Check calls to printf and scanf, etc., to make sure that the arguments supplied have
+  #                   types appropriate to the format string specified.
   #
   GCC:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
-  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -DNO_MSABI_VA_FUNCS
-  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
+  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format -DNO_MSABI_VA_FUNCS
+  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format
   GCC:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS)
   GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS)
 
diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
index 6fc8884da4..0c7f9e9e66 100644
--- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
+++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
@@ -95,6 +95,7 @@
   $(OPENSSL_PATH)/crypto/asn1/x_algor.c
   $(OPENSSL_PATH)/crypto/asn1/x_bignum.c
   $(OPENSSL_PATH)/crypto/asn1/x_info.c
+  $(OPENSSL_PATH)/crypto/asn1/x_int64.c
   $(OPENSSL_PATH)/crypto/asn1/x_long.c
   $(OPENSSL_PATH)/crypto/asn1/x_pkey.c
   $(OPENSSL_PATH)/crypto/asn1/x_sig.c
@@ -500,10 +501,11 @@
   #   C4389: 'operator' : signed/unsigned mismatch (xxxx)
   #   C4702: unreachable code
   #   C4706: assignment within conditional expression
+  #   C4819: The file contains a character that cannot be represented in the current code page
   #
-  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706
-  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
-  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
+  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706 /wd4819
+  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
+  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
 
   INTEL:*_*_IA32_CC_FLAGS  = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
   INTEL:*_*_X64_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
@@ -512,10 +514,12 @@
   #
   # Suppress the following build warnings in openssl so we don't break the build with -Werror
   #   -Werror=maybe-uninitialized: there exist some other paths for which the variable is not initialized.
+  #   -Werror=format: Check calls to printf and scanf, etc., to make sure that the arguments supplied have
+  #                   types appropriate to the format string specified.
   #
   GCC:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
-  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -DNO_MSABI_VA_FUNCS
-  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
+  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format -DNO_MSABI_VA_FUNCS
+  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format
   GCC:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS)
   GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS)
 
diff --git a/CryptoPkg/Library/OpensslLib/buildinf.h b/CryptoPkg/Library/OpensslLib/buildinf.h
index 3d967d2a86..c5ca293c72 100644
--- a/CryptoPkg/Library/OpensslLib/buildinf.h
+++ b/CryptoPkg/Library/OpensslLib/buildinf.h
@@ -1,2 +1,2 @@
 #define PLATFORM  "UEFI"
-#define DATE      "Tues Mar 21 01:23:45 PDT 2017"
+#define DATE      "Fri Dec 22 01:23:45 PDT 2017"
--
2.15.1.windows.2



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g
  2017-12-25  7:14 ` Ye, Ting
@ 2017-12-26 19:24   ` Ard Biesheuvel
  2017-12-27  1:41     ` Long, Qin
  0 siblings, 1 reply; 4+ messages in thread
From: Ard Biesheuvel @ 2017-12-26 19:24 UTC (permalink / raw)
  To: Ye, Ting; +Cc: Long, Qin, edk2-devel@lists.01.org

On 25 December 2017 at 07:14, Ye, Ting <ting.ye@intel.com> wrote:
> Reviewed-by: Ye Ting <ting.ye@intel.com>
>
>
> -----Original Message-----
> From: Long, Qin
> Sent: Friday, December 22, 2017 2:28 PM
> To: edk2-devel@lists.01.org
> Cc: Ye, Ting <ting.ye@intel.com>
> Subject: [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g
>
> Update the supported OpenSSL version to the latest 1.1.0g (02-Nov-2017).
> The changes includes:
>  - Re-generate the OpensslLib[crypto].inf using process_files.pl script
>    to reflect the openssl source changes.
>  - Update OpenSSL-HOWTO.txt
>  - On Visual Studio Build: adding "/wd4819" to disable one addition build
>    warning issue, which was already fixed in OpenSSL-HEAD
>    https://github.com/openssl/openssl/pull/4691.
>  - On GCC Build: openssl-1.1.0g introduced one additional build warning:
>     ...\openssl\crypto\asn1\x_int64.c:105:32: error: format '%ld' expects
>         argument of type 'long int', but argument 3 has type 'int64_t
>         {aka long long int}' [-Werror=format=]
>     return BIO_printf(out, "%"BIO_PRI64"d\n", **(int64_t **)pval);
>                                 ^
>     Adding "-Wno-error=format" to GCC build flag to suppress this warning,
>     since we have no real printf usage in BaseCryptLib, and BIO_printf()
>     was already wrappered as the dummy implementation in CryptoPkg.
>

This patch does not add this flag to GCC for ARM or AARCH64, so the
build is now broken.

Please fix.

> Cc: Ye Ting <ting.ye@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Long Qin <qin.long@intel.com>
> ---
>  CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt    | 10 +++++-----
>  CryptoPkg/Library/OpensslLib/OpensslLib.inf       | 14 +++++++++-----
>  CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 14 +++++++++-----
>  CryptoPkg/Library/OpensslLib/buildinf.h           |  2 +-
>  4 files changed, 24 insertions(+), 16 deletions(-)
>
> diff --git a/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt b/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
> index e8b0bab010..d152138129 100644
> --- a/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
> +++ b/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
> @@ -18,7 +18,7 @@ on the cryptography.
>                               OpenSSL-Version  =============================================================================
>    EDKII supports building with the latest release of OpenSSL.
> -  The latest official release is OpenSSL-1.1.0e (Released at 2017-Feb-16).
> +  The latest official release is OpenSSL-1.1.0g (Released at 2017-Nov-02).
>    NOTE: Only latest release version was fully validated.
>          And no guarantees on build & functionality if using other versions.
>
> @@ -28,13 +28,13 @@ on the cryptography.
>  1. Clone the latest official OpenSSL release into the directory
>       CryptoPkg/Library/OpensslLib/openssl/
>
> -   Use OpenSSL-1.1.0e release as one example:
> -     (OpenSSL_1_1_0e below is the tag name for the OpenSSL-1.1.0e release)
> +   Use OpenSSL-1.1.0g release as one example:
> +     (OpenSSL_1_1_0g below is the tag name for the OpenSSL-1.1.0g
> + release)
>       > cd CryptoPkg/Library/OpensslLib
> -     > git clone -b OpenSSL_1_1_0e https://github.com/openssl/openssl openssl
> +     > git clone -b OpenSSL_1_1_0g https://github.com/openssl/openssl
> + openssl
>       or
>       > git clone https://github.com/openssl/openssl openssl
> -     > git checkout OpenSSL_1_1_0e
> +     > git checkout OpenSSL_1_1_0g
>  Or
>  2. Download the latest OpenSSL release package from the official website:
>       https://www.openssl.org/source/
> diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> index 1d15da6660..5302ad7fb5 100644
> --- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> +++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> @@ -95,6 +95,7 @@
>    $(OPENSSL_PATH)/crypto/asn1/x_algor.c
>    $(OPENSSL_PATH)/crypto/asn1/x_bignum.c
>    $(OPENSSL_PATH)/crypto/asn1/x_info.c
> +  $(OPENSSL_PATH)/crypto/asn1/x_int64.c
>    $(OPENSSL_PATH)/crypto/asn1/x_long.c
>    $(OPENSSL_PATH)/crypto/asn1/x_pkey.c
>    $(OPENSSL_PATH)/crypto/asn1/x_sig.c
> @@ -539,10 +540,11 @@
>    #   C4389: 'operator' : signed/unsigned mismatch (xxxx)
>    #   C4702: unreachable code
>    #   C4706: assignment within conditional expression
> +  #   C4819: The file contains a character that cannot be represented in the current code page
>    #
> -  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706
> -  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
> -  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
> +  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706 /wd4819
> +  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
> +  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
>
>    INTEL:*_*_IA32_CC_FLAGS  = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
>    INTEL:*_*_X64_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
> @@ -551,10 +553,12 @@
>    #
>    # Suppress the following build warnings in openssl so we don't break the build with -Werror
>    #   -Werror=maybe-uninitialized: there exist some other paths for which the variable is not initialized.
> +  #   -Werror=format: Check calls to printf and scanf, etc., to make sure that the arguments supplied have
> +  #                   types appropriate to the format string specified.
>    #
>    GCC:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
> -  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -DNO_MSABI_VA_FUNCS
> -  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
> +  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format -DNO_MSABI_VA_FUNCS
> +  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format
>    GCC:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS)
>    GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS)
>
> diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> index 6fc8884da4..0c7f9e9e66 100644
> --- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> +++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> @@ -95,6 +95,7 @@
>    $(OPENSSL_PATH)/crypto/asn1/x_algor.c
>    $(OPENSSL_PATH)/crypto/asn1/x_bignum.c
>    $(OPENSSL_PATH)/crypto/asn1/x_info.c
> +  $(OPENSSL_PATH)/crypto/asn1/x_int64.c
>    $(OPENSSL_PATH)/crypto/asn1/x_long.c
>    $(OPENSSL_PATH)/crypto/asn1/x_pkey.c
>    $(OPENSSL_PATH)/crypto/asn1/x_sig.c
> @@ -500,10 +501,11 @@
>    #   C4389: 'operator' : signed/unsigned mismatch (xxxx)
>    #   C4702: unreachable code
>    #   C4706: assignment within conditional expression
> +  #   C4819: The file contains a character that cannot be represented in the current code page
>    #
> -  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706
> -  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
> -  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
> +  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706 /wd4819
> +  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
> +  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
>
>    INTEL:*_*_IA32_CC_FLAGS  = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
>    INTEL:*_*_X64_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
> @@ -512,10 +514,12 @@
>    #
>    # Suppress the following build warnings in openssl so we don't break the build with -Werror
>    #   -Werror=maybe-uninitialized: there exist some other paths for which the variable is not initialized.
> +  #   -Werror=format: Check calls to printf and scanf, etc., to make sure that the arguments supplied have
> +  #                   types appropriate to the format string specified.
>    #
>    GCC:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
> -  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -DNO_MSABI_VA_FUNCS
> -  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
> +  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format -DNO_MSABI_VA_FUNCS
> +  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format
>    GCC:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS)
>    GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS)
>
> diff --git a/CryptoPkg/Library/OpensslLib/buildinf.h b/CryptoPkg/Library/OpensslLib/buildinf.h
> index 3d967d2a86..c5ca293c72 100644
> --- a/CryptoPkg/Library/OpensslLib/buildinf.h
> +++ b/CryptoPkg/Library/OpensslLib/buildinf.h
> @@ -1,2 +1,2 @@
>  #define PLATFORM  "UEFI"
> -#define DATE      "Tues Mar 21 01:23:45 PDT 2017"
> +#define DATE      "Fri Dec 22 01:23:45 PDT 2017"
> --
> 2.15.1.windows.2
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g
  2017-12-26 19:24   ` Ard Biesheuvel
@ 2017-12-27  1:41     ` Long, Qin
  0 siblings, 0 replies; 4+ messages in thread
From: Long, Qin @ 2017-12-27  1:41 UTC (permalink / raw)
  To: Ard Biesheuvel, Ye, Ting; +Cc: edk2-devel@lists.01.org

Hi, Ard,

Could you kindly help to produce one extra patch to fix and validate this ARM & AARCH64 build?  Thanks.


Best Regards & Thanks,
LONG, Qin

From: Ard Biesheuvel [mailto:ard.biesheuvel@linaro.org]
Sent: Wednesday, December 27, 2017 3:25 AM
To: Ye, Ting <ting.ye@intel.com>
Cc: Long, Qin <qin.long@intel.com>; edk2-devel@lists.01.org
Subject: Re: [edk2] [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g

On 25 December 2017 at 07:14, Ye, Ting <ting.ye@intel.com<mailto:ting.ye@intel.com>> wrote:
> Reviewed-by: Ye Ting <ting.ye@intel.com<mailto:ting.ye@intel.com>>
>
>
> -----Original Message-----
> From: Long, Qin
> Sent: Friday, December 22, 2017 2:28 PM
> To: edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
> Cc: Ye, Ting <ting.ye@intel.com<mailto:ting.ye@intel.com>>
> Subject: [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g
>
> Update the supported OpenSSL version to the latest 1.1.0g (02-Nov-2017).
> The changes includes:
>  - Re-generate the OpensslLib[crypto].inf using process_files.pl script
>    to reflect the openssl source changes.
>  - Update OpenSSL-HOWTO.txt
>  - On Visual Studio Build: adding "/wd4819" to disable one addition build
>    warning issue, which was already fixed in OpenSSL-HEAD
>    https://github.com/openssl/openssl/pull/4691.
>  - On GCC Build: openssl-1.1.0g introduced one additional build warning:
>     ...\openssl\crypto\asn1\x_int64.c:105:32: error: format '%ld' expects
>         argument of type 'long int', but argument 3 has type 'int64_t
>         {aka long long int}' [-Werror=format=]
>     return BIO_printf(out, "%"BIO_PRI64"d\n", **(int64_t **)pval);
>                                 ^
>     Adding "-Wno-error=format" to GCC build flag to suppress this warning,
>     since we have no real printf usage in BaseCryptLib, and BIO_printf()
>     was already wrappered as the dummy implementation in CryptoPkg.
>

This patch does not add this flag to GCC for ARM or AARCH64, so the
build is now broken.

Please fix.

> Cc: Ye Ting <ting.ye@intel.com<mailto:ting.ye@intel.com>>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Long Qin <qin.long@intel.com<mailto:qin.long@intel.com>>
> ---
>  CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt    | 10 +++++-----
>  CryptoPkg/Library/OpensslLib/OpensslLib.inf       | 14 +++++++++-----
>  CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 14 +++++++++-----
>  CryptoPkg/Library/OpensslLib/buildinf.h           |  2 +-
>  4 files changed, 24 insertions(+), 16 deletions(-)
>
> diff --git a/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt b/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
> index e8b0bab010..d152138129 100644
> --- a/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
> +++ b/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
> @@ -18,7 +18,7 @@ on the cryptography.
>                               OpenSSL-Version  =============================================================================
>    EDKII supports building with the latest release of OpenSSL.
> -  The latest official release is OpenSSL-1.1.0e (Released at 2017-Feb-16).
> +  The latest official release is OpenSSL-1.1.0g (Released at 2017-Nov-02).
>    NOTE: Only latest release version was fully validated.
>          And no guarantees on build & functionality if using other versions.
>
> @@ -28,13 +28,13 @@ on the cryptography.
>  1. Clone the latest official OpenSSL release into the directory
>       CryptoPkg/Library/OpensslLib/openssl/
>
> -   Use OpenSSL-1.1.0e release as one example:
> -     (OpenSSL_1_1_0e below is the tag name for the OpenSSL-1.1.0e release)
> +   Use OpenSSL-1.1.0g release as one example:
> +     (OpenSSL_1_1_0g below is the tag name for the OpenSSL-1.1.0g
> + release)
>       > cd CryptoPkg/Library/OpensslLib
> -     > git clone -b OpenSSL_1_1_0e https://github.com/openssl/openssl openssl
> +     > git clone -b OpenSSL_1_1_0g https://github.com/openssl/openssl
> + openssl
>       or
>       > git clone https://github.com/openssl/openssl openssl
> -     > git checkout OpenSSL_1_1_0e
> +     > git checkout OpenSSL_1_1_0g
>  Or
>  2. Download the latest OpenSSL release package from the official website:
>       https://www.openssl.org/source/
> diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> index 1d15da6660..5302ad7fb5 100644
> --- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> +++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> @@ -95,6 +95,7 @@
>    $(OPENSSL_PATH)/crypto/asn1/x_algor.c
>    $(OPENSSL_PATH)/crypto/asn1/x_bignum.c
>    $(OPENSSL_PATH)/crypto/asn1/x_info.c
> +  $(OPENSSL_PATH)/crypto/asn1/x_int64.c
>    $(OPENSSL_PATH)/crypto/asn1/x_long.c
>    $(OPENSSL_PATH)/crypto/asn1/x_pkey.c
>    $(OPENSSL_PATH)/crypto/asn1/x_sig.c
> @@ -539,10 +540,11 @@
>    #   C4389: 'operator' : signed/unsigned mismatch (xxxx)
>    #   C4702: unreachable code
>    #   C4706: assignment within conditional expression
> +  #   C4819: The file contains a character that cannot be represented in the current code page
>    #
> -  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706
> -  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
> -  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
> +  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706 /wd4819
> +  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
> +  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
>
>    INTEL:*_*_IA32_CC_FLAGS  = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
>    INTEL:*_*_X64_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
> @@ -551,10 +553,12 @@
>    #
>    # Suppress the following build warnings in openssl so we don't break the build with -Werror
>    #   -Werror=maybe-uninitialized: there exist some other paths for which the variable is not initialized.
> +  #   -Werror=format: Check calls to printf and scanf, etc., to make sure that the arguments supplied have
> +  #                   types appropriate to the format string specified.
>    #
>    GCC:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
> -  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -DNO_MSABI_VA_FUNCS
> -  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
> +  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format -DNO_MSABI_VA_FUNCS
> +  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format
>    GCC:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS)
>    GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS)
>
> diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> index 6fc8884da4..0c7f9e9e66 100644
> --- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> +++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> @@ -95,6 +95,7 @@
>    $(OPENSSL_PATH)/crypto/asn1/x_algor.c
>    $(OPENSSL_PATH)/crypto/asn1/x_bignum.c
>    $(OPENSSL_PATH)/crypto/asn1/x_info.c
> +  $(OPENSSL_PATH)/crypto/asn1/x_int64.c
>    $(OPENSSL_PATH)/crypto/asn1/x_long.c
>    $(OPENSSL_PATH)/crypto/asn1/x_pkey.c
>    $(OPENSSL_PATH)/crypto/asn1/x_sig.c
> @@ -500,10 +501,11 @@
>    #   C4389: 'operator' : signed/unsigned mismatch (xxxx)
>    #   C4702: unreachable code
>    #   C4706: assignment within conditional expression
> +  #   C4819: The file contains a character that cannot be represented in the current code page
>    #
> -  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706
> -  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
> -  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706
> +  MSFT:*_*_IA32_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4389 /wd4702 /wd4706 /wd4819
> +  MSFT:*_*_X64_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
> +  MSFT:*_*_IPF_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4090 /wd4244 /wd4245 /wd4267 /wd4306 /wd4389 /wd4702 /wd4706 /wd4819
>
>    INTEL:*_*_IA32_CC_FLAGS  = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
>    INTEL:*_*_X64_CC_FLAGS   = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) /w
> @@ -512,10 +514,12 @@
>    #
>    # Suppress the following build warnings in openssl so we don't break the build with -Werror
>    #   -Werror=maybe-uninitialized: there exist some other paths for which the variable is not initialized.
> +  #   -Werror=format: Check calls to printf and scanf, etc., to make sure that the arguments supplied have
> +  #                   types appropriate to the format string specified.
>    #
>    GCC:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
> -  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -DNO_MSABI_VA_FUNCS
> -  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized
> +  GCC:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format -DNO_MSABI_VA_FUNCS
> +  GCC:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) -Wno-error=maybe-uninitialized -Wno-error=format
>    GCC:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS)
>    GCC:*_*_AARCH64_CC_FLAGS = $(OPENSSL_FLAGS)
>
> diff --git a/CryptoPkg/Library/OpensslLib/buildinf.h b/CryptoPkg/Library/OpensslLib/buildinf.h
> index 3d967d2a86..c5ca293c72 100644
> --- a/CryptoPkg/Library/OpensslLib/buildinf.h
> +++ b/CryptoPkg/Library/OpensslLib/buildinf.h
> @@ -1,2 +1,2 @@
>  #define PLATFORM  "UEFI"
> -#define DATE      "Tues Mar 21 01:23:45 PDT 2017"
> +#define DATE      "Fri Dec 22 01:23:45 PDT 2017"
> --
> 2.15.1.windows.2
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
> https://lists.01.org/mailman/listinfo/edk2-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-12-27  1:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-22  6:28 [PATCH] CryptoPkg/OpensslLib: Update OpenSSL version to 1.1.0g Long Qin
2017-12-25  7:14 ` Ye, Ting
2017-12-26 19:24   ` Ard Biesheuvel
2017-12-27  1:41     ` Long, Qin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox