diff options
author | Daniel Kurtz <djkurtz@chromium.org> | 2017-06-29 19:34:04 +0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2019-09-18 07:04:45 -0700 |
commit | 57fb3f37f4a5a3c5176c0682ddfba133b6022291 (patch) | |
tree | 6834a14d11d7658bbf746e3fce4360d717dc142d /BUILD.gn | |
parent | f4736afd702d3f9ac65a2810a1fc472d964941b7 (diff) | |
download | platform_external_libchrome-57fb3f37f4a5a3c5176c0682ddfba133b6022291.tar.gz platform_external_libchrome-57fb3f37f4a5a3c5176c0682ddfba133b6022291.tar.bz2 platform_external_libchrome-57fb3f37f4a5a3c5176c0682ddfba133b6022291.zip |
CHROMIUM: crypto: Update for OpenSSL 1.1
OpenSSL 1.1 has made significant non-backwards compatible changes to its
API as outlined in:
https://wiki.openssl.org/index.php/OpenSSL_1.1.0_Changes
This CL adds a libcrypto-compat.[ch] helper layer adapted from the link
above. Subsequent CLs convert packages that use libchrome's crypto
library (e.g. those in platform2) to be compatible with OpenSSL 1.1 by
making use of this common compat layer.
This compat layer can be removed once all of Chrome OS has been
converted to OpenSSL 1.1+ (crbug.com/984789).
In addition to incorporating the stock compat layer:
(1) Fix ScopedEVP_MD_CTX since EVP_MD_CTX_destroy has been renamed
EVP_MD_CTX_free.
(2) Add OpenSSL 1.1 BIO_get/_set() helpers not in the original
libcrypto-compat.* files.
(3) Add OpenSSL 1.1 HMAC_CTX_new/free() helpers.
(4) Add TLS_client_method compat helper
This is a Chromium OS local patch because upstream Chromium crypto has
already replaced "crypto/scoped_openssl_types.h" with the equivalent
BoringSSL scopers. See:
https://chromium.googlesource.com/chromium/src/+/f165962d15779b07d42d5ecefd304c494a459f1c
Signed-off-by: Daniel Kurtz <djkurtz@chromium.org>
BUG=chromium:737942
TEST=cros_workon --board=betty start libchrome trunks
TEST=Hack libchrome ebuild to build from HEAD
TEST=Apply patch to fix trunks for OpenSSL 1.1
TEST=w/ openssl-1.0.2r: FEATURES=test emerge-betty libchrome trunks
TEST=w/ openssl-1.1.0j: FEATURES=test emerge-betty libchrome trunks
=> Both Pass
Change-Id: Ib2aa8935e572908d3f468442d55f052707924cc2
Reviewed-on: https://chromium-review.googlesource.com/555191
Tested-by: Daniel Kurtz <djkurtz@chromium.org>
Commit-Ready: Daniel Kurtz <djkurtz@chromium.org>
Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org>
Reviewed-by: Hidehiko Abe <hidehiko@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Nick Crews <ncrews@chromium.org>
Diffstat (limited to 'BUILD.gn')
-rw-r--r-- | BUILD.gn | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -343,6 +343,8 @@ if (use.crypto) { "crypto/symmetric_key_nss.cc", "crypto/third_party/nss/rsawrapr.c", "crypto/third_party/nss/sha512.cc", + # Added to libchrome only (not upstream) to support OpenSSL 1.1 API + "crypto/libcrypto-compat.c", ] } ] |