diff --git a/Makefile b/Makefile
index c6214ba7d88..afd1b1a0c06 100644
--- a/Makefile
+++ b/Makefile
@@ -2093,6 +2093,7 @@ LIBBORINGSSL_SRC = \
third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c \
+ third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c \
@@ -2233,13 +2234,13 @@ LIBBORINGSSL_SRC = \
third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c \
third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c \
third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c \
- third_party/boringssl-with-bazel/src/crypto/x509/a_strex.c \
third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c \
third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c \
third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c \
third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c \
third_party/boringssl-with-bazel/src/crypto/x509/by_file.c \
third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c \
+ third_party/boringssl-with-bazel/src/crypto/x509/name_print.c \
third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c \
third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c \
third_party/boringssl-with-bazel/src/crypto/x509/t_req.c \
diff --git a/bazel/grpc_deps.bzl b/bazel/grpc_deps.bzl
index b873ddd36e3..4768a1db401 100644
--- a/bazel/grpc_deps.bzl
+++ b/bazel/grpc_deps.bzl
@@ -189,11 +189,11 @@ def grpc_deps():
name = "boringssl",
# Use github mirror instead of https://boringssl.googlesource.com/boringssl
# to obtain a boringssl archive with consistent sha256
- sha256 = "6f640262999cd1fb33cf705922e453e835d2d20f3f06fe0d77f6426c19257308",
- strip_prefix = "boringssl-fc44652a42b396e1645d5e72aba053349992136a",
+ sha256 = "87a2efd493bd84c0c26afc607ce6c99d2cb05046d0ebbbefe8ba5b71bdeeda1c",
+ strip_prefix = "boringssl-340faef0ad19283e985ce7fff0dec73ba4022c8d",
urls = [
- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/fc44652a42b396e1645d5e72aba053349992136a.tar.gz",
- "https://github.com/google/boringssl/archive/fc44652a42b396e1645d5e72aba053349992136a.tar.gz",
+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/340faef0ad19283e985ce7fff0dec73ba4022c8d.tar.gz",
+ "https://github.com/google/boringssl/archive/340faef0ad19283e985ce7fff0dec73ba4022c8d.tar.gz",
],
)
diff --git a/config.m4 b/config.m4
index 2e5cdf5e93c..9ff3f6382c8 100644
--- a/config.m4
+++ b/config.m4
@@ -770,6 +770,7 @@ if test "$PHP_GRPC" != "no"; then
third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c \
+ third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c \
third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c \
@@ -910,13 +911,13 @@ if test "$PHP_GRPC" != "no"; then
third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c \
third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c \
third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c \
- third_party/boringssl-with-bazel/src/crypto/x509/a_strex.c \
third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c \
third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c \
third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c \
third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c \
third_party/boringssl-with-bazel/src/crypto/x509/by_file.c \
third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c \
+ third_party/boringssl-with-bazel/src/crypto/x509/name_print.c \
third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c \
third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c \
third_party/boringssl-with-bazel/src/crypto/x509/t_req.c \
diff --git a/config.w32 b/config.w32
index 1a079e3bceb..889c95591d6 100644
--- a/config.w32
+++ b/config.w32
@@ -736,6 +736,7 @@ if (PHP_GRPC != "no") {
"third_party\\boringssl-with-bazel\\src\\crypto\\asn1\\a_object.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\asn1\\a_octet.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\asn1\\a_print.c " +
+ "third_party\\boringssl-with-bazel\\src\\crypto\\asn1\\a_strex.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\asn1\\a_strnid.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\asn1\\a_time.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\asn1\\a_type.c " +
@@ -876,13 +877,13 @@ if (PHP_GRPC != "no") {
"third_party\\boringssl-with-bazel\\src\\crypto\\trust_token\\voprf.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\a_digest.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\a_sign.c " +
- "third_party\\boringssl-with-bazel\\src\\crypto\\x509\\a_strex.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\a_verify.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\algorithm.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\asn1_gen.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\by_dir.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\by_file.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\i2d_pr.c " +
+ "third_party\\boringssl-with-bazel\\src\\crypto\\x509\\name_print.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\rsa_pss.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\t_crl.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\t_req.c " +
diff --git a/gRPC-Core.podspec b/gRPC-Core.podspec
index bd45a7d8434..756c2f92bce 100644
--- a/gRPC-Core.podspec
+++ b/gRPC-Core.podspec
@@ -177,7 +177,7 @@ Pod::Spec.new do |s|
ss.header_mappings_dir = '.'
ss.libraries = 'z'
ss.dependency "#{s.name}/Interface", version
- ss.dependency 'BoringSSL-GRPC', '0.0.20'
+ ss.dependency 'BoringSSL-GRPC', '0.0.21'
ss.dependency 'abseil/base/base', abseil_version
ss.dependency 'abseil/base/core_headers', abseil_version
ss.dependency 'abseil/container/flat_hash_map', abseil_version
diff --git a/grpc.gemspec b/grpc.gemspec
index 85069c0007e..a1c6b3043cf 100644
--- a/grpc.gemspec
+++ b/grpc.gemspec
@@ -1568,6 +1568,7 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c )
+ s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c )
@@ -1576,6 +1577,7 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c )
+ s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/charmap.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/f_enum.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c )
@@ -1826,15 +1828,14 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c )
- s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/a_strex.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/by_file.c )
- s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/charmap.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/internal.h )
+ s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/name_print.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/t_req.c )
diff --git a/grpc.gyp b/grpc.gyp
index 8df96d8852b..4aac1c01992 100644
--- a/grpc.gyp
+++ b/grpc.gyp
@@ -1684,6 +1684,7 @@
'third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c',
+ 'third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c',
@@ -1824,13 +1825,13 @@
'third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c',
'third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c',
'third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c',
- 'third_party/boringssl-with-bazel/src/crypto/x509/a_strex.c',
'third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c',
'third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c',
'third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c',
'third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c',
'third_party/boringssl-with-bazel/src/crypto/x509/by_file.c',
'third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c',
+ 'third_party/boringssl-with-bazel/src/crypto/x509/name_print.c',
'third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c',
'third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c',
'third_party/boringssl-with-bazel/src/crypto/x509/t_req.c',
diff --git a/package.xml b/package.xml
index 302cf7f2e4e..d1ccb95d9bd 100644
--- a/package.xml
+++ b/package.xml
@@ -1570,6 +1570,7 @@
+
@@ -1578,6 +1579,7 @@
+
@@ -1828,15 +1830,14 @@
-
-
+
diff --git a/src/boringssl/boringssl_prefix_symbols.h b/src/boringssl/boringssl_prefix_symbols.h
index fb08550d7e7..296724a7c81 100644
--- a/src/boringssl/boringssl_prefix_symbols.h
+++ b/src/boringssl/boringssl_prefix_symbols.h
@@ -1,4 +1,4 @@
-// generated by generate_boringssl_prefix_header.sh on BoringSSL commit: fc44652a42b396e1645d5e72aba053349992136a
+// generated by generate_boringssl_prefix_header.sh on BoringSSL commit: 340faef0ad19283e985ce7fff0dec73ba4022c8d
// Copyright (c) 2018, Google Inc.
//
@@ -509,7 +509,6 @@
#define SSL_set_verify BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_verify)
#define SSL_set_verify_algorithm_prefs BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_verify_algorithm_prefs)
#define SSL_set_verify_depth BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_verify_depth)
-#define SSL_set_verify_result BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_verify_result)
#define SSL_set_wfd BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_wfd)
#define SSL_shutdown BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_shutdown)
#define SSL_state BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_state)
@@ -1036,6 +1035,7 @@
#define CBB_add_u64le BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_u64le)
#define CBB_add_u8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_u8)
#define CBB_add_u8_length_prefixed BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_u8_length_prefixed)
+#define CBB_add_zeros BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_zeros)
#define CBB_cleanup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_cleanup)
#define CBB_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_data)
#define CBB_did_write BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_did_write)
@@ -1081,6 +1081,7 @@
#define CBS_get_u64le BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_u64le)
#define CBS_get_u8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_u8)
#define CBS_get_u8_length_prefixed BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_u8_length_prefixed)
+#define CBS_get_until_first BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_until_first)
#define CBS_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_init)
#define CBS_is_unsigned_asn1_integer BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_is_unsigned_asn1_integer)
#define CBS_is_valid_asn1_bitstring BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_is_valid_asn1_bitstring)
@@ -1145,6 +1146,7 @@
#define CRYPTO_ctr128_encrypt BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_ctr128_encrypt)
#define CRYPTO_ctr128_encrypt_ctr32 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_ctr128_encrypt_ctr32)
#define CRYPTO_fork_detect_ignore_madv_wipeonfork_for_testing BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_fork_detect_ignore_madv_wipeonfork_for_testing)
+#define CRYPTO_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_free)
#define CRYPTO_free_ex_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_free_ex_data)
#define CRYPTO_gcm128_aad BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_gcm128_aad)
#define CRYPTO_gcm128_decrypt BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_gcm128_decrypt)
@@ -1170,6 +1172,7 @@
#define CRYPTO_init_sysrand BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_init_sysrand)
#define CRYPTO_is_confidential_build BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_is_confidential_build)
#define CRYPTO_library_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_library_init)
+#define CRYPTO_malloc BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_malloc)
#define CRYPTO_malloc_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_malloc_init)
#define CRYPTO_memcmp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_memcmp)
#define CRYPTO_new_ex_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_new_ex_data)
@@ -1182,6 +1185,7 @@
#define CRYPTO_pre_sandbox_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_pre_sandbox_init)
#define CRYPTO_rdrand BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_rdrand)
#define CRYPTO_rdrand_multiple8_buf BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_rdrand_multiple8_buf)
+#define CRYPTO_realloc BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_realloc)
#define CRYPTO_refcount_dec_and_test_zero BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_refcount_dec_and_test_zero)
#define CRYPTO_refcount_inc BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_refcount_inc)
#define CRYPTO_set_add_lock_callback BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_set_add_lock_callback)
@@ -2087,6 +2091,7 @@
#define RSA_get0_key BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RSA_get0_key)
#define RSA_get0_n BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RSA_get0_n)
#define RSA_get0_p BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RSA_get0_p)
+#define RSA_get0_pss_params BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RSA_get0_pss_params)
#define RSA_get0_q BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RSA_get0_q)
#define RSA_get_ex_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RSA_get_ex_data)
#define RSA_get_ex_new_index BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RSA_get_ex_new_index)
@@ -2529,7 +2534,6 @@
#define X509_STORE_get_verify_cb BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_verify_cb)
#define X509_STORE_load_locations BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_load_locations)
#define X509_STORE_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_new)
-#define X509_STORE_set0_additional_untrusted BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set0_additional_untrusted)
#define X509_STORE_set1_param BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set1_param)
#define X509_STORE_set_cert_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_cert_crl)
#define X509_STORE_set_check_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_check_crl)
@@ -2819,6 +2823,7 @@
#define asn1_generalizedtime_to_tm BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_generalizedtime_to_tm)
#define asn1_get_choice_selector BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_get_choice_selector)
#define asn1_get_field_ptr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_get_field_ptr)
+#define asn1_is_printable BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_is_printable)
#define asn1_item_combine_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_item_combine_free)
#define asn1_refcount_dec_and_test_zero BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_refcount_dec_and_test_zero)
#define asn1_refcount_set_one BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_refcount_set_one)
@@ -3307,7 +3312,7 @@
#define pkcs12_iterations_acceptable BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, pkcs12_iterations_acceptable)
#define pkcs12_key_gen BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, pkcs12_key_gen)
#define pkcs12_pbe_encrypt_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, pkcs12_pbe_encrypt_init)
-#define pkcs7_bundle BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, pkcs7_bundle)
+#define pkcs7_add_signed_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, pkcs7_add_signed_data)
#define pkcs7_parse_header BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, pkcs7_parse_header)
#define pkcs8_pbe_decrypt BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, pkcs8_pbe_decrypt)
#define pmbtoken_exp1_blind BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, pmbtoken_exp1_blind)
@@ -3432,6 +3437,7 @@
#define x25519_ge_tobytes BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x25519_ge_tobytes)
#define x25519_pkey_meth BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x25519_pkey_meth)
#define x25519_sc_reduce BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x25519_sc_reduce)
+#define x509V3_add_value_asn1_string BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x509V3_add_value_asn1_string)
#define x509_digest_sign_algorithm BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x509_digest_sign_algorithm)
#define x509_digest_verify_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x509_digest_verify_init)
#define x509_print_rsa_pss_params BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x509_print_rsa_pss_params)
diff --git a/src/objective-c/BoringSSL-GRPC.podspec b/src/objective-c/BoringSSL-GRPC.podspec
index 34fc9cf2c9e..35a02a271b6 100644
--- a/src/objective-c/BoringSSL-GRPC.podspec
+++ b/src/objective-c/BoringSSL-GRPC.podspec
@@ -39,7 +39,7 @@
Pod::Spec.new do |s|
s.name = 'BoringSSL-GRPC'
- version = '0.0.20'
+ version = '0.0.21'
s.version = version
s.summary = 'BoringSSL is a fork of OpenSSL that is designed to meet Google\'s needs.'
# Adapted from the homepage:
@@ -76,7 +76,7 @@ Pod::Spec.new do |s|
s.source = {
:git => 'https://github.com/google/boringssl.git',
- :commit => "fc44652a42b396e1645d5e72aba053349992136a",
+ :commit => "340faef0ad19283e985ce7fff0dec73ba4022c8d",
}
s.ios.deployment_target = '9.0'
@@ -219,499 +219,500 @@ Pod::Spec.new do |s|
*) opts="--ignore-garbage" ;;
esac
base64 --decode $opts < src/include/openssl/boringssl_prefix_symbols.h
- H4sICAAAAAAC/2JvcmluZ3NzbF9wcmVmaXhfc3ltYm9scy5oAKydXXPbuJZo3+dXuO683Kk6NRM77bT7
- vim20tG0Y/tISk9nXliURNk8oUiFoOy4f/0FQErEx94g94arTs10LK21KQDEF0Hgv/7r7DErszptss3Z
- 6vX0j2RV1Xn5KESR7Otsm/9MnrJ0k9X/KZ7OqvLso/50sbg9W1e7Xd78v7Pt+pdfPlxepL9crN7/9iE7
- //DL5eYy+/UiXaXvLt+//+W33367OH//If23f/uv/zq7rvavdf741Jz93/V/nF28O7/6x9nvVfVYZGez
- cv2f8ivqWw9ZvcuFyGW8pjo7iOwfMtr+9R9nu2qTb+X/T8vNf1X12SYXTZ2vDk121jzl4kxU2+YlrbOz
- rfwwLV+Va3+o95XIzl7yRv6AWv//6tCcbbPsTCJPWZ2pX1+npUyIf5zt6+o538gkaZ7SRv6f7CxdVc+Z
- Mq1P115WTb7O1FW0cff99R4/2u+ztD7Ly7O0KBSZZ+L465afp2eL+0/L/5nMp2ezxdnD/P7P2c305uz/
- TBby3//nbHJ3o780+br8fD8/u5ktrm8nsy+Ls8nt7Zmk5pO75Wy6UK7/mS0/n82nv0/mErmXlPT17rvr
- 2683s7vfNTj78nA7k1F6wdn9J+X4Mp1ff5Z/mXyc3c6W33T4T7Pl3XSx+E/pOLu7P5v+Ob1bni0+K49x
- ZR+nZ7ezycfb6dkn+a/J3TelWzxMr2eT23/I655Pr5f/kIrjf8kvXd/fLab//Cp18jtnN5Mvk9/VhWj6
- +E/9wz5Plot7GXcuf97i6+1S/YxP8/svZ7f3C3XlZ18XUxljspwoWqahvOTFPyQ3lRc4V9c9kf+7Xs7u
- 75RPAjL0cj5R13E3/f129vv07nqq2HsNLO/n8rtfFx3zj7PJfLZQQe+/LhV9r5y6CN/f3U31d9rUV+kh
- r0VfxXQuE+LLRIs/2bnxn7r8f7yfS6e8fZLJzU3yMJ9+mv11tk9Fk4mz5qU6k0WvbPJtntVCFh5Z+Ksy
- k5nQqCImC/VOqD8oUd6ou1WVuGp7tkvXdXWW/dynpS6E8n95I87S+vGwkz5xtsoknOlA8u79z3/79428
- s8sMvJz/m/7jbPUf4EfJTP70efuFoMP84ll69u//fpao/7P6t56a3SfbRNYy8DX0f2z/8I8e+A/LIbKG
- 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
+ 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
+ 6vX0j2RV1Xn5KESR7Otsm/9MnrJ0k9X/KZ7OqvLso/50sbg5W1e7Xd78v7P3v7zbptn2Xbo5//3i8n32
+ ++WHdfbbdrt9t8nWv71fpb+8u7hYX27+7d/+67/Orqr9a50/PjVn/3f9H2cX784v/3H2uaoei+xsVq7/
+ U35Ffes+q3e5ELmM11RnB5H9Q0bbv/7jbFdt8q38/2m5+a+qPtvkoqnz1aHJzpqnXJyJatu8pHV2tpUf
+ puWrcu0P9b4S2dlL3sgfUOv/Xx2as22WnUnkKasz9evrtJQJ8Y+zfV095xuZJM1T2sj/k52lq+o5U6b1
+ 6drLqsnXmbqKNu6+v97jR/t9ltZneXmWFoUi80wcf93yy/Rscfdp+T+T+fRstji7n9/9ObueXp/9n8lC
+ /vv/nE1ur/WXJg/LL3fzs+vZ4upmMvu6OJvc3JxJaj65Xc6mC+X6n9nyy9l8+nkyl8idpKSvd99e3Txc
+ z24/a3D29f5mJqP0grO7T8rxdTq/+iL/Mvk4u5ktv+nwn2bL2+li8Z/ScXZ7dzb9c3q7PFt8UR7jyj5O
+ z25mk48307NP8l+T229Kt7ifXs0mN/+Q1z2fXi3/IRXH/5Jfurq7XUz/+SB18jtn15Ovk8/qQjR9/Kf+
+ YV8my8WdjDuXP2/xcLNUP+PT/O7r2c3dQl352cNiKmNMlhNFyzSUl7z4h+Sm8gLn6ron8n9Xy9ndrfJJ
+ QIZezifqOm6nn29mn6e3V1PF3mlgeTeX331YdMw/zibz2UIFvXtYKvpOOXURvru9nervtKmv0kNei76K
+ 6VwmxNeJFn+yc+M/dfn/eDeXTnn7JJPr6+R+Pv00++tsn4omE2fNS3Umi17Z5Ns8q4UsPLLwV2UmM6FR
+ RUwW6p1Qf1CivFF3qypx1fZsl67r6iz7uU9LXQjl//JGnKX142EnfeJslUk404Hk3fuf//bvG3lnlxl4
+ Of83/cfZ6j/Aj5KZ/Onz9gtBh/nFs/Ts3//9LFH/Z/VvPTW7S7aJrGXga+j/2P7hHz3wH5ZDZA3V0iG9
+ 53p5s0jWRS6TKtllsnrYjNX5pGNl6ECPyOrnrOboLNKxqrowWR22W1ncOG6AtyM8nycX/JT1acDO1KI+
+ dkr7tGePSYlwOjzKMt3ku0y1bDSvQXrWJ9nCFRlTbMOem5UIyK+PybNwjqm6Ii/zJk+L4y9JNoeu5qUG
+ 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
EOF
# We are renaming openssl to openssl_grpc so that there is no conflict with openssl if it exists
diff --git a/src/python/grpcio/grpc_core_dependencies.py b/src/python/grpcio/grpc_core_dependencies.py
index b05378f35de..087c9b512cc 100644
--- a/src/python/grpcio/grpc_core_dependencies.py
+++ b/src/python/grpcio/grpc_core_dependencies.py
@@ -735,6 +735,7 @@ CORE_SOURCE_FILES = [
'third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c',
+ 'third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c',
'third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c',
@@ -875,13 +876,13 @@ CORE_SOURCE_FILES = [
'third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c',
'third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c',
'third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c',
- 'third_party/boringssl-with-bazel/src/crypto/x509/a_strex.c',
'third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c',
'third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c',
'third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c',
'third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c',
'third_party/boringssl-with-bazel/src/crypto/x509/by_file.c',
'third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c',
+ 'third_party/boringssl-with-bazel/src/crypto/x509/name_print.c',
'third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c',
'third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c',
'third_party/boringssl-with-bazel/src/crypto/x509/t_req.c',
diff --git a/templates/gRPC-Core.podspec.template b/templates/gRPC-Core.podspec.template
index 2f02804371f..1265c2738a5 100644
--- a/templates/gRPC-Core.podspec.template
+++ b/templates/gRPC-Core.podspec.template
@@ -205,7 +205,7 @@
ss.header_mappings_dir = '.'
ss.libraries = 'z'
ss.dependency "#{s.name}/Interface", version
- ss.dependency 'BoringSSL-GRPC', '0.0.20'
+ ss.dependency 'BoringSSL-GRPC', '0.0.21'
% for abseil_spec in grpc_abseil_specs:
ss.dependency '${abseil_spec}', abseil_version
% endfor
diff --git a/templates/src/objective-c/BoringSSL-GRPC.podspec.template b/templates/src/objective-c/BoringSSL-GRPC.podspec.template
index e690734d203..a5b3a1908ad 100644
--- a/templates/src/objective-c/BoringSSL-GRPC.podspec.template
+++ b/templates/src/objective-c/BoringSSL-GRPC.podspec.template
@@ -69,7 +69,7 @@
Pod::Spec.new do |s|
s.name = 'BoringSSL-GRPC'
- version = '0.0.20'
+ version = '0.0.21'
s.version = version
s.summary = 'BoringSSL is a fork of OpenSSL that is designed to meet Google\'s needs.'
# Adapted from the homepage:
diff --git a/third_party/README.md b/third_party/README.md
index edd3dc1a790..19ab6d424e6 100644
--- a/third_party/README.md
+++ b/third_party/README.md
@@ -58,26 +58,26 @@ Updating some dependencies requires extra care.
### Updating third_party/boringssl-with-bazel
-- Update the `third_party/boringssl-with-bazel` submodule to the latest [`master-with-bazel`](https://github.com/google/boringssl/tree/master-with-bazel) branch
+- Update the `third_party/boringssl-with-bazel` submodule to the latest [`main-with-bazel`](https://github.com/google/boringssl/tree/main-with-bazel) branch
```
git submodule update --init # just to start in a clean state
cd third_party/boringssl-with-bazel
git fetch origin # fetch what's new in the boringssl repository
-git checkout origin/master-with-bazel # checkout the current state of master-with-bazel branch in the boringssl repo
-# Note the latest commit SHA on master-with-bazel-branch
+git checkout origin/main-with-bazel # checkout the current state of main-with-bazel branch in the boringssl repo
+# Note the latest commit SHA on main-with-bazel branch
cd ../.. # go back to grpc repo root
git status # will show that there are new commits in third_party/boringssl-with-bazel
git add third_party/boringssl-with-bazel # we actually want to update the changes to the submodule
-git commit -m "update submodule boringssl-with-bazel with origin/master-with-bazel" # commit
+git commit -m "update submodule boringssl-with-bazel with origin/main-with-bazel" # commit
```
-- Update boringssl dependency in `bazel/grpc_deps.bzl` to the same commit SHA as master-with-bazel branch
+- Update boringssl dependency in `bazel/grpc_deps.bzl` to the same commit SHA as main-with-bazel branch
- Update `http_archive(name = "boringssl",` section by updating the sha in `strip_prefix` and `urls` fields.
- Also, set `sha256` field to "" as the existing value is not valid. This will be added later once we know what that value is.
- Update `tools/run_tests/sanity/check_submodules.sh` with the same commit
-- Commit these changes `git commit -m "update boringssl dependency to master-with-bazel commit SHA"`
+- Commit these changes `git commit -m "update boringssl dependency to main-with-bazel commit SHA"`
- Run `tools/buildgen/generate_projects.sh` to regenerate the generated files
- Because `sha256` in `bazel/grpc_deps.bzl` was left empty, you will get a DEBUG msg like this one:
diff --git a/third_party/boringssl-with-bazel b/third_party/boringssl-with-bazel
index fc44652a42b..340faef0ad1 160000
--- a/third_party/boringssl-with-bazel
+++ b/third_party/boringssl-with-bazel
@@ -1 +1 @@
-Subproject commit fc44652a42b396e1645d5e72aba053349992136a
+Subproject commit 340faef0ad19283e985ce7fff0dec73ba4022c8d
diff --git a/tools/run_tests/sanity/check_submodules.sh b/tools/run_tests/sanity/check_submodules.sh
index a01e309af70..d0a018f2f2f 100755
--- a/tools/run_tests/sanity/check_submodules.sh
+++ b/tools/run_tests/sanity/check_submodules.sh
@@ -29,7 +29,7 @@ cat << EOF | sort > "$want_submodules"
third_party/abseil-cpp 997aaf3a28308eba1b9156aa35ab7bca9688e9f6
third_party/benchmark 73d4d5e8d6d449fc8663765a42aa8aeeee844489
third_party/bloaty 73594cde8c9a52a102c4341c244c833aa61b9c06
-third_party/boringssl-with-bazel fc44652a42b396e1645d5e72aba053349992136a
+third_party/boringssl-with-bazel 340faef0ad19283e985ce7fff0dec73ba4022c8d
third_party/cares/cares e982924acee7f7313b4baa4ee5ec000c5e373c30
third_party/envoy-api 2f0d081fab0b0823f088c6e368f40e1992f46fcd
third_party/googleapis 2f9af297c84c55c8b871ba4495e01ade42476c92