Roll boringssl

Bug: 435002264
Test: unit
Change-Id: I9f18f0bb7fb7747b51619c5a8e9b016043bfbe69
Reviewed-on: https://pigweed-review.googlesource.com/c/open-dice/+/311088
Lint: Lint 🤖 <android-build-ayeaye@system.gserviceaccount.com>
Pigweed-Auto-Submit: Darren Krahn <dkrahn@google.com>
Reviewed-by: Andrew Scull <ascull@google.com>
Presubmit-Verified: CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com>
Commit-Queue: Darren Krahn <dkrahn@google.com>
diff --git a/third_party/boringssl/BUILD.generated.gni b/third_party/boringssl/BUILD.generated.gni
index 194fdbb..3147735 100644
--- a/third_party/boringssl/BUILD.generated.gni
+++ b/third_party/boringssl/BUILD.generated.gni
@@ -1,132 +1,152 @@
-# Copyright 2016 The Chromium Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
+# Copyright 2015 The BoringSSL Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 
 # This file is created by generate_build_files.py. Do not edit manually.
 
 crypto_sources = [
-  "err_data.c",
-  "src/crypto/asn1/a_bitstr.c",
-  "src/crypto/asn1/a_bool.c",
-  "src/crypto/asn1/a_d2i_fp.c",
-  "src/crypto/asn1/a_dup.c",
-  "src/crypto/asn1/a_gentm.c",
-  "src/crypto/asn1/a_i2d_fp.c",
-  "src/crypto/asn1/a_int.c",
-  "src/crypto/asn1/a_mbstr.c",
-  "src/crypto/asn1/a_object.c",
-  "src/crypto/asn1/a_octet.c",
-  "src/crypto/asn1/a_strex.c",
-  "src/crypto/asn1/a_strnid.c",
-  "src/crypto/asn1/a_time.c",
-  "src/crypto/asn1/a_type.c",
-  "src/crypto/asn1/a_utctm.c",
-  "src/crypto/asn1/asn1_lib.c",
-  "src/crypto/asn1/asn1_par.c",
-  "src/crypto/asn1/asn_pack.c",
-  "src/crypto/asn1/f_int.c",
-  "src/crypto/asn1/f_string.c",
+  "src/crypto/aes/aes.cc",
+  "src/crypto/asn1/a_bitstr.cc",
+  "src/crypto/asn1/a_bool.cc",
+  "src/crypto/asn1/a_d2i_fp.cc",
+  "src/crypto/asn1/a_dup.cc",
+  "src/crypto/asn1/a_gentm.cc",
+  "src/crypto/asn1/a_i2d_fp.cc",
+  "src/crypto/asn1/a_int.cc",
+  "src/crypto/asn1/a_mbstr.cc",
+  "src/crypto/asn1/a_object.cc",
+  "src/crypto/asn1/a_octet.cc",
+  "src/crypto/asn1/a_strex.cc",
+  "src/crypto/asn1/a_strnid.cc",
+  "src/crypto/asn1/a_time.cc",
+  "src/crypto/asn1/a_type.cc",
+  "src/crypto/asn1/a_utctm.cc",
+  "src/crypto/asn1/asn1_lib.cc",
+  "src/crypto/asn1/asn1_par.cc",
+  "src/crypto/asn1/asn_pack.cc",
+  "src/crypto/asn1/f_int.cc",
+  "src/crypto/asn1/f_string.cc",
   "src/crypto/asn1/internal.h",
-  "src/crypto/asn1/posix_time.c",
-  "src/crypto/asn1/tasn_dec.c",
-  "src/crypto/asn1/tasn_enc.c",
-  "src/crypto/asn1/tasn_fre.c",
-  "src/crypto/asn1/tasn_new.c",
-  "src/crypto/asn1/tasn_typ.c",
-  "src/crypto/asn1/tasn_utl.c",
-  "src/crypto/base64/base64.c",
-  "src/crypto/bio/bio.c",
-  "src/crypto/bio/bio_mem.c",
-  "src/crypto/bio/connect.c",
-  "src/crypto/bio/fd.c",
-  "src/crypto/bio/file.c",
-  "src/crypto/bio/hexdump.c",
+  "src/crypto/asn1/posix_time.cc",
+  "src/crypto/asn1/tasn_dec.cc",
+  "src/crypto/asn1/tasn_enc.cc",
+  "src/crypto/asn1/tasn_fre.cc",
+  "src/crypto/asn1/tasn_new.cc",
+  "src/crypto/asn1/tasn_typ.cc",
+  "src/crypto/asn1/tasn_utl.cc",
+  "src/crypto/base64/base64.cc",
+  "src/crypto/bcm_support.h",
+  "src/crypto/bio/bio.cc",
+  "src/crypto/bio/bio_mem.cc",
+  "src/crypto/bio/connect.cc",
+  "src/crypto/bio/errno.cc",
+  "src/crypto/bio/fd.cc",
+  "src/crypto/bio/file.cc",
+  "src/crypto/bio/hexdump.cc",
   "src/crypto/bio/internal.h",
-  "src/crypto/bio/pair.c",
-  "src/crypto/bio/printf.c",
-  "src/crypto/bio/socket.c",
-  "src/crypto/bio/socket_helper.c",
-  "src/crypto/blake2/blake2.c",
-  "src/crypto/bn_extra/bn_asn1.c",
-  "src/crypto/bn_extra/convert.c",
-  "src/crypto/buf/buf.c",
-  "src/crypto/bytestring/asn1_compat.c",
-  "src/crypto/bytestring/ber.c",
-  "src/crypto/bytestring/cbb.c",
-  "src/crypto/bytestring/cbs.c",
+  "src/crypto/bio/pair.cc",
+  "src/crypto/bio/printf.cc",
+  "src/crypto/bio/socket.cc",
+  "src/crypto/bio/socket_helper.cc",
+  "src/crypto/blake2/blake2.cc",
+  "src/crypto/bn/bn_asn1.cc",
+  "src/crypto/bn/convert.cc",
+  "src/crypto/bn/div.cc",
+  "src/crypto/bn/exponentiation.cc",
+  "src/crypto/bn/sqrt.cc",
+  "src/crypto/buf/buf.cc",
+  "src/crypto/bytestring/asn1_compat.cc",
+  "src/crypto/bytestring/ber.cc",
+  "src/crypto/bytestring/cbb.cc",
+  "src/crypto/bytestring/cbs.cc",
   "src/crypto/bytestring/internal.h",
-  "src/crypto/bytestring/unicode.c",
-  "src/crypto/chacha/chacha.c",
+  "src/crypto/bytestring/unicode.cc",
+  "src/crypto/chacha/chacha.cc",
   "src/crypto/chacha/internal.h",
-  "src/crypto/cipher_extra/cipher_extra.c",
-  "src/crypto/cipher_extra/derive_key.c",
-  "src/crypto/cipher_extra/e_aesctrhmac.c",
-  "src/crypto/cipher_extra/e_aesgcmsiv.c",
-  "src/crypto/cipher_extra/e_chacha20poly1305.c",
-  "src/crypto/cipher_extra/e_des.c",
-  "src/crypto/cipher_extra/e_null.c",
-  "src/crypto/cipher_extra/e_rc2.c",
-  "src/crypto/cipher_extra/e_rc4.c",
-  "src/crypto/cipher_extra/e_tls.c",
-  "src/crypto/cipher_extra/internal.h",
-  "src/crypto/cipher_extra/tls_cbc.c",
-  "src/crypto/conf/conf.c",
-  "src/crypto/conf/conf_def.h",
+  "src/crypto/cipher/derive_key.cc",
+  "src/crypto/cipher/e_aesctrhmac.cc",
+  "src/crypto/cipher/e_aeseax.cc",
+  "src/crypto/cipher/e_aesgcmsiv.cc",
+  "src/crypto/cipher/e_chacha20poly1305.cc",
+  "src/crypto/cipher/e_des.cc",
+  "src/crypto/cipher/e_null.cc",
+  "src/crypto/cipher/e_rc2.cc",
+  "src/crypto/cipher/e_rc4.cc",
+  "src/crypto/cipher/e_tls.cc",
+  "src/crypto/cipher/get_cipher.cc",
+  "src/crypto/cipher/internal.h",
+  "src/crypto/cipher/tls_cbc.cc",
+  "src/crypto/cms/cms.cc",
+  "src/crypto/conf/conf.cc",
   "src/crypto/conf/internal.h",
-  "src/crypto/cpu_aarch64_apple.c",
-  "src/crypto/cpu_aarch64_freebsd.c",
-  "src/crypto/cpu_aarch64_fuchsia.c",
-  "src/crypto/cpu_aarch64_linux.c",
-  "src/crypto/cpu_aarch64_win.c",
-  "src/crypto/cpu_arm.c",
-  "src/crypto/cpu_arm_freebsd.c",
-  "src/crypto/cpu_arm_linux.c",
+  "src/crypto/cpu_aarch64_apple.cc",
+  "src/crypto/cpu_aarch64_fuchsia.cc",
+  "src/crypto/cpu_aarch64_linux.cc",
+  "src/crypto/cpu_aarch64_openbsd.cc",
+  "src/crypto/cpu_aarch64_sysreg.cc",
+  "src/crypto/cpu_aarch64_win.cc",
+  "src/crypto/cpu_arm_freebsd.cc",
+  "src/crypto/cpu_arm_linux.cc",
   "src/crypto/cpu_arm_linux.h",
-  "src/crypto/cpu_intel.c",
-  "src/crypto/cpu_ppc64le.c",
-  "src/crypto/crypto.c",
-  "src/crypto/curve25519/curve25519.c",
+  "src/crypto/cpu_intel.cc",
+  "src/crypto/crypto.cc",
+  "src/crypto/curve25519/curve25519.cc",
+  "src/crypto/curve25519/curve25519_64_adx.cc",
   "src/crypto/curve25519/curve25519_tables.h",
   "src/crypto/curve25519/internal.h",
-  "src/crypto/curve25519/spake25519.c",
-  "src/crypto/des/des.c",
+  "src/crypto/curve25519/spake25519.cc",
+  "src/crypto/des/des.cc",
   "src/crypto/des/internal.h",
-  "src/crypto/dh_extra/dh_asn1.c",
-  "src/crypto/dh_extra/params.c",
-  "src/crypto/digest_extra/digest_extra.c",
-  "src/crypto/dsa/dsa.c",
-  "src/crypto/dsa/dsa_asn1.c",
+  "src/crypto/dh/dh_asn1.cc",
+  "src/crypto/dh/params.cc",
+  "src/crypto/digest/digest_extra.cc",
+  "src/crypto/dsa/dsa.cc",
+  "src/crypto/dsa/dsa_asn1.cc",
   "src/crypto/dsa/internal.h",
-  "src/crypto/ec_extra/ec_asn1.c",
-  "src/crypto/ec_extra/ec_derive.c",
-  "src/crypto/ec_extra/hash_to_curve.c",
-  "src/crypto/ec_extra/internal.h",
-  "src/crypto/ecdh_extra/ecdh_extra.c",
-  "src/crypto/ecdsa_extra/ecdsa_asn1.c",
-  "src/crypto/engine/engine.c",
-  "src/crypto/err/err.c",
+  "src/crypto/ec/ec_asn1.cc",
+  "src/crypto/ec/ec_derive.cc",
+  "src/crypto/ec/hash_to_curve.cc",
+  "src/crypto/ec/internal.h",
+  "src/crypto/ecdh/ecdh.cc",
+  "src/crypto/ecdsa/ecdsa_asn1.cc",
+  "src/crypto/ecdsa/ecdsa_p1363.cc",
+  "src/crypto/engine/engine.cc",
+  "src/crypto/err/err.cc",
   "src/crypto/err/internal.h",
-  "src/crypto/evp/evp.c",
-  "src/crypto/evp/evp_asn1.c",
-  "src/crypto/evp/evp_ctx.c",
+  "src/crypto/evp/evp.cc",
+  "src/crypto/evp/evp_asn1.cc",
+  "src/crypto/evp/evp_ctx.cc",
   "src/crypto/evp/internal.h",
-  "src/crypto/evp/p_dsa_asn1.c",
-  "src/crypto/evp/p_ec.c",
-  "src/crypto/evp/p_ec_asn1.c",
-  "src/crypto/evp/p_ed25519.c",
-  "src/crypto/evp/p_ed25519_asn1.c",
-  "src/crypto/evp/p_hkdf.c",
-  "src/crypto/evp/p_rsa.c",
-  "src/crypto/evp/p_rsa_asn1.c",
-  "src/crypto/evp/p_x25519.c",
-  "src/crypto/evp/p_x25519_asn1.c",
-  "src/crypto/evp/pbkdf.c",
-  "src/crypto/evp/print.c",
-  "src/crypto/evp/scrypt.c",
-  "src/crypto/evp/sign.c",
-  "src/crypto/ex_data.c",
+  "src/crypto/evp/p_dh.cc",
+  "src/crypto/evp/p_dh_asn1.cc",
+  "src/crypto/evp/p_dsa_asn1.cc",
+  "src/crypto/evp/p_ec.cc",
+  "src/crypto/evp/p_ec_asn1.cc",
+  "src/crypto/evp/p_ed25519.cc",
+  "src/crypto/evp/p_ed25519_asn1.cc",
+  "src/crypto/evp/p_hkdf.cc",
+  "src/crypto/evp/p_rsa.cc",
+  "src/crypto/evp/p_rsa_asn1.cc",
+  "src/crypto/evp/p_x25519.cc",
+  "src/crypto/evp/p_x25519_asn1.cc",
+  "src/crypto/evp/pbkdf.cc",
+  "src/crypto/evp/print.cc",
+  "src/crypto/evp/scrypt.cc",
+  "src/crypto/evp/sign.cc",
+  "src/crypto/ex_data.cc",
   "src/crypto/fipsmodule/aes/internal.h",
-  "src/crypto/fipsmodule/bcm.c",
+  "src/crypto/fipsmodule/bcm.cc",
+  "src/crypto/fipsmodule/bcm_interface.h",
   "src/crypto/fipsmodule/bn/internal.h",
   "src/crypto/fipsmodule/bn/rsaz_exp.h",
   "src/crypto/fipsmodule/cipher/internal.h",
@@ -134,170 +154,371 @@
   "src/crypto/fipsmodule/dh/internal.h",
   "src/crypto/fipsmodule/digest/internal.h",
   "src/crypto/fipsmodule/digest/md32_common.h",
+  "src/crypto/fipsmodule/ec/builtin_curves.h",
   "src/crypto/fipsmodule/ec/internal.h",
   "src/crypto/fipsmodule/ec/p256-nistz-table.h",
   "src/crypto/fipsmodule/ec/p256-nistz.h",
   "src/crypto/fipsmodule/ec/p256_table.h",
   "src/crypto/fipsmodule/ecdsa/internal.h",
-  "src/crypto/fipsmodule/fips_shared_support.c",
-  "src/crypto/fipsmodule/md5/internal.h",
-  "src/crypto/fipsmodule/modes/internal.h",
-  "src/crypto/fipsmodule/rand/fork_detect.h",
-  "src/crypto/fipsmodule/rand/getrandom_fillin.h",
+  "src/crypto/fipsmodule/fips_shared_support.cc",
+  "src/crypto/fipsmodule/keccak/internal.h",
   "src/crypto/fipsmodule/rand/internal.h",
   "src/crypto/fipsmodule/rsa/internal.h",
   "src/crypto/fipsmodule/service_indicator/internal.h",
   "src/crypto/fipsmodule/sha/internal.h",
+  "src/crypto/fipsmodule/slhdsa/address.h",
+  "src/crypto/fipsmodule/slhdsa/fors.h",
+  "src/crypto/fipsmodule/slhdsa/merkle.h",
+  "src/crypto/fipsmodule/slhdsa/params.h",
+  "src/crypto/fipsmodule/slhdsa/thash.h",
+  "src/crypto/fipsmodule/slhdsa/wots.h",
   "src/crypto/fipsmodule/tls/internal.h",
-  "src/crypto/hkdf/hkdf.c",
-  "src/crypto/hpke/hpke.c",
-  "src/crypto/hrss/hrss.c",
+  "src/crypto/fuzzer_mode.cc",
+  "src/crypto/hpke/hpke.cc",
+  "src/crypto/hrss/hrss.cc",
   "src/crypto/hrss/internal.h",
   "src/crypto/internal.h",
+  "src/crypto/kyber/internal.h",
+  "src/crypto/kyber/kyber.cc",
   "src/crypto/lhash/internal.h",
-  "src/crypto/lhash/lhash.c",
-  "src/crypto/mem.c",
-  "src/crypto/obj/obj.c",
+  "src/crypto/lhash/lhash.cc",
+  "src/crypto/md4/md4.cc",
+  "src/crypto/md5/internal.h",
+  "src/crypto/md5/md5.cc",
+  "src/crypto/mem.cc",
+  "src/crypto/mem_internal.h",
+  "src/crypto/mldsa/mldsa.cc",
+  "src/crypto/mlkem/mlkem.cc",
+  "src/crypto/obj/obj.cc",
   "src/crypto/obj/obj_dat.h",
-  "src/crypto/obj/obj_xref.c",
-  "src/crypto/pem/pem_all.c",
-  "src/crypto/pem/pem_info.c",
-  "src/crypto/pem/pem_lib.c",
-  "src/crypto/pem/pem_oth.c",
-  "src/crypto/pem/pem_pk8.c",
-  "src/crypto/pem/pem_pkey.c",
-  "src/crypto/pem/pem_x509.c",
-  "src/crypto/pem/pem_xaux.c",
+  "src/crypto/obj/obj_xref.cc",
+  "src/crypto/pem/internal.h",
+  "src/crypto/pem/pem_all.cc",
+  "src/crypto/pem/pem_info.cc",
+  "src/crypto/pem/pem_lib.cc",
+  "src/crypto/pem/pem_oth.cc",
+  "src/crypto/pem/pem_pk8.cc",
+  "src/crypto/pem/pem_pkey.cc",
+  "src/crypto/pem/pem_x509.cc",
+  "src/crypto/pem/pem_xaux.cc",
   "src/crypto/pkcs7/internal.h",
-  "src/crypto/pkcs7/pkcs7.c",
-  "src/crypto/pkcs7/pkcs7_x509.c",
+  "src/crypto/pkcs7/pkcs7.cc",
+  "src/crypto/pkcs7/pkcs7_x509.cc",
   "src/crypto/pkcs8/internal.h",
-  "src/crypto/pkcs8/p5_pbev2.c",
-  "src/crypto/pkcs8/pkcs8.c",
-  "src/crypto/pkcs8/pkcs8_x509.c",
+  "src/crypto/pkcs8/p5_pbev2.cc",
+  "src/crypto/pkcs8/pkcs8.cc",
+  "src/crypto/pkcs8/pkcs8_x509.cc",
   "src/crypto/poly1305/internal.h",
-  "src/crypto/poly1305/poly1305.c",
-  "src/crypto/poly1305/poly1305_arm.c",
-  "src/crypto/poly1305/poly1305_vec.c",
+  "src/crypto/poly1305/poly1305.cc",
+  "src/crypto/poly1305/poly1305_arm.cc",
+  "src/crypto/poly1305/poly1305_vec.cc",
   "src/crypto/pool/internal.h",
-  "src/crypto/pool/pool.c",
-  "src/crypto/rand_extra/deterministic.c",
-  "src/crypto/rand_extra/forkunsafe.c",
-  "src/crypto/rand_extra/fuchsia.c",
-  "src/crypto/rand_extra/passive.c",
-  "src/crypto/rand_extra/rand_extra.c",
-  "src/crypto/rand_extra/windows.c",
-  "src/crypto/rc4/rc4.c",
-  "src/crypto/refcount_c11.c",
-  "src/crypto/refcount_lock.c",
-  "src/crypto/rsa_extra/rsa_asn1.c",
-  "src/crypto/rsa_extra/rsa_print.c",
-  "src/crypto/siphash/siphash.c",
-  "src/crypto/stack/stack.c",
-  "src/crypto/thread.c",
-  "src/crypto/thread_none.c",
-  "src/crypto/thread_pthread.c",
-  "src/crypto/thread_win.c",
+  "src/crypto/pool/pool.cc",
+  "src/crypto/rand/deterministic.cc",
+  "src/crypto/rand/fork_detect.cc",
+  "src/crypto/rand/forkunsafe.cc",
+  "src/crypto/rand/getentropy.cc",
+  "src/crypto/rand/getrandom_fillin.h",
+  "src/crypto/rand/internal.h",
+  "src/crypto/rand/ios.cc",
+  "src/crypto/rand/passive.cc",
+  "src/crypto/rand/rand.cc",
+  "src/crypto/rand/trusty.cc",
+  "src/crypto/rand/urandom.cc",
+  "src/crypto/rand/windows.cc",
+  "src/crypto/rc4/rc4.cc",
+  "src/crypto/refcount.cc",
+  "src/crypto/rsa/internal.h",
+  "src/crypto/rsa/rsa_asn1.cc",
+  "src/crypto/rsa/rsa_crypt.cc",
+  "src/crypto/rsa/rsa_extra.cc",
+  "src/crypto/rsa/rsa_print.cc",
+  "src/crypto/sha/sha1.cc",
+  "src/crypto/sha/sha256.cc",
+  "src/crypto/sha/sha512.cc",
+  "src/crypto/siphash/siphash.cc",
+  "src/crypto/slhdsa/slhdsa.cc",
+  "src/crypto/spake2plus/internal.h",
+  "src/crypto/spake2plus/spake2plus.cc",
+  "src/crypto/stack/stack.cc",
+  "src/crypto/thread.cc",
+  "src/crypto/thread_none.cc",
+  "src/crypto/thread_pthread.cc",
+  "src/crypto/thread_win.cc",
   "src/crypto/trust_token/internal.h",
-  "src/crypto/trust_token/pmbtoken.c",
-  "src/crypto/trust_token/trust_token.c",
-  "src/crypto/trust_token/voprf.c",
-  "src/crypto/x509/a_digest.c",
-  "src/crypto/x509/a_sign.c",
-  "src/crypto/x509/a_verify.c",
-  "src/crypto/x509/algorithm.c",
-  "src/crypto/x509/asn1_gen.c",
-  "src/crypto/x509/by_dir.c",
-  "src/crypto/x509/by_file.c",
-  "src/crypto/x509/i2d_pr.c",
+  "src/crypto/trust_token/pmbtoken.cc",
+  "src/crypto/trust_token/trust_token.cc",
+  "src/crypto/trust_token/voprf.cc",
+  "src/crypto/x509/a_digest.cc",
+  "src/crypto/x509/a_sign.cc",
+  "src/crypto/x509/a_verify.cc",
+  "src/crypto/x509/algorithm.cc",
+  "src/crypto/x509/asn1_gen.cc",
+  "src/crypto/x509/by_dir.cc",
+  "src/crypto/x509/by_file.cc",
+  "src/crypto/x509/i2d_pr.cc",
   "src/crypto/x509/internal.h",
-  "src/crypto/x509/name_print.c",
-  "src/crypto/x509/rsa_pss.c",
-  "src/crypto/x509/t_crl.c",
-  "src/crypto/x509/t_req.c",
-  "src/crypto/x509/t_x509.c",
-  "src/crypto/x509/t_x509a.c",
-  "src/crypto/x509/x509.c",
-  "src/crypto/x509/x509_att.c",
-  "src/crypto/x509/x509_cmp.c",
-  "src/crypto/x509/x509_d2.c",
-  "src/crypto/x509/x509_def.c",
-  "src/crypto/x509/x509_ext.c",
-  "src/crypto/x509/x509_lu.c",
-  "src/crypto/x509/x509_obj.c",
-  "src/crypto/x509/x509_req.c",
-  "src/crypto/x509/x509_set.c",
-  "src/crypto/x509/x509_trs.c",
-  "src/crypto/x509/x509_txt.c",
-  "src/crypto/x509/x509_v3.c",
-  "src/crypto/x509/x509_vfy.c",
-  "src/crypto/x509/x509_vpm.c",
-  "src/crypto/x509/x509cset.c",
-  "src/crypto/x509/x509name.c",
-  "src/crypto/x509/x509rset.c",
-  "src/crypto/x509/x509spki.c",
-  "src/crypto/x509/x_algor.c",
-  "src/crypto/x509/x_all.c",
-  "src/crypto/x509/x_attrib.c",
-  "src/crypto/x509/x_crl.c",
-  "src/crypto/x509/x_exten.c",
-  "src/crypto/x509/x_info.c",
-  "src/crypto/x509/x_name.c",
-  "src/crypto/x509/x_pkey.c",
-  "src/crypto/x509/x_pubkey.c",
-  "src/crypto/x509/x_req.c",
-  "src/crypto/x509/x_sig.c",
-  "src/crypto/x509/x_spki.c",
-  "src/crypto/x509/x_val.c",
-  "src/crypto/x509/x_x509.c",
-  "src/crypto/x509/x_x509a.c",
-  "src/crypto/x509v3/ext_dat.h",
-  "src/crypto/x509v3/internal.h",
-  "src/crypto/x509v3/pcy_cache.c",
-  "src/crypto/x509v3/pcy_data.c",
-  "src/crypto/x509v3/pcy_map.c",
-  "src/crypto/x509v3/pcy_node.c",
-  "src/crypto/x509v3/pcy_tree.c",
-  "src/crypto/x509v3/v3_akey.c",
-  "src/crypto/x509v3/v3_akeya.c",
-  "src/crypto/x509v3/v3_alt.c",
-  "src/crypto/x509v3/v3_bcons.c",
-  "src/crypto/x509v3/v3_bitst.c",
-  "src/crypto/x509v3/v3_conf.c",
-  "src/crypto/x509v3/v3_cpols.c",
-  "src/crypto/x509v3/v3_crld.c",
-  "src/crypto/x509v3/v3_enum.c",
-  "src/crypto/x509v3/v3_extku.c",
-  "src/crypto/x509v3/v3_genn.c",
-  "src/crypto/x509v3/v3_ia5.c",
-  "src/crypto/x509v3/v3_info.c",
-  "src/crypto/x509v3/v3_int.c",
-  "src/crypto/x509v3/v3_lib.c",
-  "src/crypto/x509v3/v3_ncons.c",
-  "src/crypto/x509v3/v3_ocsp.c",
-  "src/crypto/x509v3/v3_pci.c",
-  "src/crypto/x509v3/v3_pcia.c",
-  "src/crypto/x509v3/v3_pcons.c",
-  "src/crypto/x509v3/v3_pmaps.c",
-  "src/crypto/x509v3/v3_prn.c",
-  "src/crypto/x509v3/v3_purp.c",
-  "src/crypto/x509v3/v3_skey.c",
-  "src/crypto/x509v3/v3_utl.c",
+  "src/crypto/x509/name_print.cc",
+  "src/crypto/x509/policy.cc",
+  "src/crypto/x509/rsa_pss.cc",
+  "src/crypto/x509/t_crl.cc",
+  "src/crypto/x509/t_req.cc",
+  "src/crypto/x509/t_x509.cc",
+  "src/crypto/x509/t_x509a.cc",
+  "src/crypto/x509/v3_akey.cc",
+  "src/crypto/x509/v3_akeya.cc",
+  "src/crypto/x509/v3_alt.cc",
+  "src/crypto/x509/v3_bcons.cc",
+  "src/crypto/x509/v3_bitst.cc",
+  "src/crypto/x509/v3_conf.cc",
+  "src/crypto/x509/v3_cpols.cc",
+  "src/crypto/x509/v3_crld.cc",
+  "src/crypto/x509/v3_enum.cc",
+  "src/crypto/x509/v3_extku.cc",
+  "src/crypto/x509/v3_genn.cc",
+  "src/crypto/x509/v3_ia5.cc",
+  "src/crypto/x509/v3_info.cc",
+  "src/crypto/x509/v3_int.cc",
+  "src/crypto/x509/v3_lib.cc",
+  "src/crypto/x509/v3_ncons.cc",
+  "src/crypto/x509/v3_ocsp.cc",
+  "src/crypto/x509/v3_pcons.cc",
+  "src/crypto/x509/v3_pmaps.cc",
+  "src/crypto/x509/v3_prn.cc",
+  "src/crypto/x509/v3_purp.cc",
+  "src/crypto/x509/v3_skey.cc",
+  "src/crypto/x509/v3_utl.cc",
+  "src/crypto/x509/x509.cc",
+  "src/crypto/x509/x509_att.cc",
+  "src/crypto/x509/x509_cmp.cc",
+  "src/crypto/x509/x509_d2.cc",
+  "src/crypto/x509/x509_def.cc",
+  "src/crypto/x509/x509_ext.cc",
+  "src/crypto/x509/x509_lu.cc",
+  "src/crypto/x509/x509_obj.cc",
+  "src/crypto/x509/x509_req.cc",
+  "src/crypto/x509/x509_set.cc",
+  "src/crypto/x509/x509_trs.cc",
+  "src/crypto/x509/x509_txt.cc",
+  "src/crypto/x509/x509_v3.cc",
+  "src/crypto/x509/x509_vfy.cc",
+  "src/crypto/x509/x509_vpm.cc",
+  "src/crypto/x509/x509cset.cc",
+  "src/crypto/x509/x509name.cc",
+  "src/crypto/x509/x509rset.cc",
+  "src/crypto/x509/x509spki.cc",
+  "src/crypto/x509/x_algor.cc",
+  "src/crypto/x509/x_all.cc",
+  "src/crypto/x509/x_attrib.cc",
+  "src/crypto/x509/x_crl.cc",
+  "src/crypto/x509/x_exten.cc",
+  "src/crypto/x509/x_name.cc",
+  "src/crypto/x509/x_pubkey.cc",
+  "src/crypto/x509/x_req.cc",
+  "src/crypto/x509/x_sig.cc",
+  "src/crypto/x509/x_spki.cc",
+  "src/crypto/x509/x_val.cc",
+  "src/crypto/x509/x_x509.cc",
+  "src/crypto/x509/x_x509a.cc",
+  "src/crypto/xwing/xwing.cc",
+  "src/gen/crypto/err_data.cc",
+  "src/third_party/fiat/bedrock_unverified_bareminimum.c.inc",
+  "src/third_party/fiat/bedrock_unverified_platform.c.inc",
   "src/third_party/fiat/curve25519_32.h",
   "src/third_party/fiat/curve25519_64.h",
+  "src/third_party/fiat/curve25519_64_adx.h",
+  "src/third_party/fiat/curve25519_64_msvc.h",
   "src/third_party/fiat/p256_32.h",
   "src/third_party/fiat/p256_64.h",
+  "src/third_party/fiat/p256_64_msvc.h",
+  "src/third_party/fiat/p256_field.c.inc",
+  "src/third_party/fiat/p256_field_32.br.c.inc",
+  "src/third_party/fiat/p256_field_64.br.c.inc",
+  "src/third_party/fiat/p256_point.br.c.inc",
+]
+
+crypto_sources_asm = [
+  "src/crypto/curve25519/asm/x25519-asm-arm.S",
+  "src/crypto/hrss/asm/poly_rq_mul.S",
+  "src/crypto/poly1305/poly1305_arm_asm.S",
+  "src/gen/bcm/aes-gcm-avx2-x86_64-apple.S",
+  "src/gen/bcm/aes-gcm-avx2-x86_64-linux.S",
+  "src/gen/bcm/aes-gcm-avx512-x86_64-apple.S",
+  "src/gen/bcm/aes-gcm-avx512-x86_64-linux.S",
+  "src/gen/bcm/aesni-gcm-x86_64-apple.S",
+  "src/gen/bcm/aesni-gcm-x86_64-linux.S",
+  "src/gen/bcm/aesni-x86-apple.S",
+  "src/gen/bcm/aesni-x86-linux.S",
+  "src/gen/bcm/aesni-x86_64-apple.S",
+  "src/gen/bcm/aesni-x86_64-linux.S",
+  "src/gen/bcm/aesv8-armv7-linux.S",
+  "src/gen/bcm/aesv8-armv8-apple.S",
+  "src/gen/bcm/aesv8-armv8-linux.S",
+  "src/gen/bcm/aesv8-armv8-win.S",
+  "src/gen/bcm/aesv8-gcm-armv8-apple.S",
+  "src/gen/bcm/aesv8-gcm-armv8-linux.S",
+  "src/gen/bcm/aesv8-gcm-armv8-win.S",
+  "src/gen/bcm/armv4-mont-linux.S",
+  "src/gen/bcm/armv8-mont-apple.S",
+  "src/gen/bcm/armv8-mont-linux.S",
+  "src/gen/bcm/armv8-mont-win.S",
+  "src/gen/bcm/bn-586-apple.S",
+  "src/gen/bcm/bn-586-linux.S",
+  "src/gen/bcm/bn-armv8-apple.S",
+  "src/gen/bcm/bn-armv8-linux.S",
+  "src/gen/bcm/bn-armv8-win.S",
+  "src/gen/bcm/bsaes-armv7-linux.S",
+  "src/gen/bcm/co-586-apple.S",
+  "src/gen/bcm/co-586-linux.S",
+  "src/gen/bcm/ghash-armv4-linux.S",
+  "src/gen/bcm/ghash-neon-armv8-apple.S",
+  "src/gen/bcm/ghash-neon-armv8-linux.S",
+  "src/gen/bcm/ghash-neon-armv8-win.S",
+  "src/gen/bcm/ghash-ssse3-x86-apple.S",
+  "src/gen/bcm/ghash-ssse3-x86-linux.S",
+  "src/gen/bcm/ghash-ssse3-x86_64-apple.S",
+  "src/gen/bcm/ghash-ssse3-x86_64-linux.S",
+  "src/gen/bcm/ghash-x86-apple.S",
+  "src/gen/bcm/ghash-x86-linux.S",
+  "src/gen/bcm/ghash-x86_64-apple.S",
+  "src/gen/bcm/ghash-x86_64-linux.S",
+  "src/gen/bcm/ghashv8-armv7-linux.S",
+  "src/gen/bcm/ghashv8-armv8-apple.S",
+  "src/gen/bcm/ghashv8-armv8-linux.S",
+  "src/gen/bcm/ghashv8-armv8-win.S",
+  "src/gen/bcm/p256-armv8-asm-apple.S",
+  "src/gen/bcm/p256-armv8-asm-linux.S",
+  "src/gen/bcm/p256-armv8-asm-win.S",
+  "src/gen/bcm/p256-x86_64-asm-apple.S",
+  "src/gen/bcm/p256-x86_64-asm-linux.S",
+  "src/gen/bcm/p256_beeu-armv8-asm-apple.S",
+  "src/gen/bcm/p256_beeu-armv8-asm-linux.S",
+  "src/gen/bcm/p256_beeu-armv8-asm-win.S",
+  "src/gen/bcm/p256_beeu-x86_64-asm-apple.S",
+  "src/gen/bcm/p256_beeu-x86_64-asm-linux.S",
+  "src/gen/bcm/rdrand-x86_64-apple.S",
+  "src/gen/bcm/rdrand-x86_64-linux.S",
+  "src/gen/bcm/rsaz-avx2-apple.S",
+  "src/gen/bcm/rsaz-avx2-linux.S",
+  "src/gen/bcm/sha1-586-apple.S",
+  "src/gen/bcm/sha1-586-linux.S",
+  "src/gen/bcm/sha1-armv4-large-linux.S",
+  "src/gen/bcm/sha1-armv8-apple.S",
+  "src/gen/bcm/sha1-armv8-linux.S",
+  "src/gen/bcm/sha1-armv8-win.S",
+  "src/gen/bcm/sha1-x86_64-apple.S",
+  "src/gen/bcm/sha1-x86_64-linux.S",
+  "src/gen/bcm/sha256-586-apple.S",
+  "src/gen/bcm/sha256-586-linux.S",
+  "src/gen/bcm/sha256-armv4-linux.S",
+  "src/gen/bcm/sha256-armv8-apple.S",
+  "src/gen/bcm/sha256-armv8-linux.S",
+  "src/gen/bcm/sha256-armv8-win.S",
+  "src/gen/bcm/sha256-x86_64-apple.S",
+  "src/gen/bcm/sha256-x86_64-linux.S",
+  "src/gen/bcm/sha512-586-apple.S",
+  "src/gen/bcm/sha512-586-linux.S",
+  "src/gen/bcm/sha512-armv4-linux.S",
+  "src/gen/bcm/sha512-armv8-apple.S",
+  "src/gen/bcm/sha512-armv8-linux.S",
+  "src/gen/bcm/sha512-armv8-win.S",
+  "src/gen/bcm/sha512-x86_64-apple.S",
+  "src/gen/bcm/sha512-x86_64-linux.S",
+  "src/gen/bcm/vpaes-armv7-linux.S",
+  "src/gen/bcm/vpaes-armv8-apple.S",
+  "src/gen/bcm/vpaes-armv8-linux.S",
+  "src/gen/bcm/vpaes-armv8-win.S",
+  "src/gen/bcm/vpaes-x86-apple.S",
+  "src/gen/bcm/vpaes-x86-linux.S",
+  "src/gen/bcm/vpaes-x86_64-apple.S",
+  "src/gen/bcm/vpaes-x86_64-linux.S",
+  "src/gen/bcm/x86-mont-apple.S",
+  "src/gen/bcm/x86-mont-linux.S",
+  "src/gen/bcm/x86_64-mont-apple.S",
+  "src/gen/bcm/x86_64-mont-linux.S",
+  "src/gen/bcm/x86_64-mont5-apple.S",
+  "src/gen/bcm/x86_64-mont5-linux.S",
+  "src/gen/crypto/aes128gcmsiv-x86_64-apple.S",
+  "src/gen/crypto/aes128gcmsiv-x86_64-linux.S",
+  "src/gen/crypto/chacha-armv4-linux.S",
+  "src/gen/crypto/chacha-armv8-apple.S",
+  "src/gen/crypto/chacha-armv8-linux.S",
+  "src/gen/crypto/chacha-armv8-win.S",
+  "src/gen/crypto/chacha-x86-apple.S",
+  "src/gen/crypto/chacha-x86-linux.S",
+  "src/gen/crypto/chacha-x86_64-apple.S",
+  "src/gen/crypto/chacha-x86_64-linux.S",
+  "src/gen/crypto/chacha20_poly1305_armv8-apple.S",
+  "src/gen/crypto/chacha20_poly1305_armv8-linux.S",
+  "src/gen/crypto/chacha20_poly1305_armv8-win.S",
+  "src/gen/crypto/chacha20_poly1305_x86_64-apple.S",
+  "src/gen/crypto/chacha20_poly1305_x86_64-linux.S",
+  "src/gen/crypto/md5-586-apple.S",
+  "src/gen/crypto/md5-586-linux.S",
+  "src/gen/crypto/md5-x86_64-apple.S",
+  "src/gen/crypto/md5-x86_64-linux.S",
+  "src/gen/test_support/trampoline-armv4-linux.S",
+  "src/gen/test_support/trampoline-armv8-apple.S",
+  "src/gen/test_support/trampoline-armv8-linux.S",
+  "src/gen/test_support/trampoline-armv8-win.S",
+  "src/gen/test_support/trampoline-x86-apple.S",
+  "src/gen/test_support/trampoline-x86-linux.S",
+  "src/gen/test_support/trampoline-x86_64-apple.S",
+  "src/gen/test_support/trampoline-x86_64-linux.S",
+  "src/third_party/fiat/asm/fiat_curve25519_adx_mul.S",
+  "src/third_party/fiat/asm/fiat_curve25519_adx_square.S",
+  "src/third_party/fiat/asm/fiat_p256_adx_mul.S",
+  "src/third_party/fiat/asm/fiat_p256_adx_sqr.S",
+]
+
+crypto_sources_nasm = [
+  "src/gen/bcm/aes-gcm-avx2-x86_64-win.asm",
+  "src/gen/bcm/aes-gcm-avx512-x86_64-win.asm",
+  "src/gen/bcm/aesni-gcm-x86_64-win.asm",
+  "src/gen/bcm/aesni-x86-win.asm",
+  "src/gen/bcm/aesni-x86_64-win.asm",
+  "src/gen/bcm/bn-586-win.asm",
+  "src/gen/bcm/co-586-win.asm",
+  "src/gen/bcm/ghash-ssse3-x86-win.asm",
+  "src/gen/bcm/ghash-ssse3-x86_64-win.asm",
+  "src/gen/bcm/ghash-x86-win.asm",
+  "src/gen/bcm/ghash-x86_64-win.asm",
+  "src/gen/bcm/p256-x86_64-asm-win.asm",
+  "src/gen/bcm/p256_beeu-x86_64-asm-win.asm",
+  "src/gen/bcm/rdrand-x86_64-win.asm",
+  "src/gen/bcm/rsaz-avx2-win.asm",
+  "src/gen/bcm/sha1-586-win.asm",
+  "src/gen/bcm/sha1-x86_64-win.asm",
+  "src/gen/bcm/sha256-586-win.asm",
+  "src/gen/bcm/sha256-x86_64-win.asm",
+  "src/gen/bcm/sha512-586-win.asm",
+  "src/gen/bcm/sha512-x86_64-win.asm",
+  "src/gen/bcm/vpaes-x86-win.asm",
+  "src/gen/bcm/vpaes-x86_64-win.asm",
+  "src/gen/bcm/x86-mont-win.asm",
+  "src/gen/bcm/x86_64-mont-win.asm",
+  "src/gen/bcm/x86_64-mont5-win.asm",
+  "src/gen/crypto/aes128gcmsiv-x86_64-win.asm",
+  "src/gen/crypto/chacha-x86-win.asm",
+  "src/gen/crypto/chacha-x86_64-win.asm",
+  "src/gen/crypto/chacha20_poly1305_x86_64-win.asm",
+  "src/gen/crypto/md5-586-win.asm",
+  "src/gen/crypto/md5-x86_64-win.asm",
+  "src/gen/test_support/trampoline-x86-win.asm",
+  "src/gen/test_support/trampoline-x86_64-win.asm",
 ]
 
 crypto_headers = [
   "src/include/openssl/aead.h",
   "src/include/openssl/aes.h",
   "src/include/openssl/arm_arch.h",
+  "src/include/openssl/asm_base.h",
   "src/include/openssl/asn1.h",
   "src/include/openssl/asn1_mac.h",
   "src/include/openssl/asn1t.h",
   "src/include/openssl/base.h",
   "src/include/openssl/base64.h",
+  "src/include/openssl/bcm_public.h",
   "src/include/openssl/bio.h",
   "src/include/openssl/blake2.h",
   "src/include/openssl/blowfish.h",
@@ -309,6 +530,7 @@
   "src/include/openssl/chacha.h",
   "src/include/openssl/cipher.h",
   "src/include/openssl/cmac.h",
+  "src/include/openssl/cms.h",
   "src/include/openssl/conf.h",
   "src/include/openssl/cpu.h",
   "src/include/openssl/crypto.h",
@@ -328,6 +550,7 @@
   "src/include/openssl/evp.h",
   "src/include/openssl/evp_errors.h",
   "src/include/openssl/ex_data.h",
+  "src/include/openssl/experimental/kyber.h",
   "src/include/openssl/hkdf.h",
   "src/include/openssl/hmac.h",
   "src/include/openssl/hpke.h",
@@ -338,6 +561,8 @@
   "src/include/openssl/md4.h",
   "src/include/openssl/md5.h",
   "src/include/openssl/mem.h",
+  "src/include/openssl/mldsa.h",
+  "src/include/openssl/mlkem.h",
   "src/include/openssl/nid.h",
   "src/include/openssl/obj.h",
   "src/include/openssl/obj_mac.h",
@@ -351,6 +576,7 @@
   "src/include/openssl/pkcs8.h",
   "src/include/openssl/poly1305.h",
   "src/include/openssl/pool.h",
+  "src/include/openssl/posix_time.h",
   "src/include/openssl/rand.h",
   "src/include/openssl/rc4.h",
   "src/include/openssl/ripemd.h",
@@ -358,9 +584,12 @@
   "src/include/openssl/safestack.h",
   "src/include/openssl/service_indicator.h",
   "src/include/openssl/sha.h",
+  "src/include/openssl/sha2.h",
   "src/include/openssl/siphash.h",
+  "src/include/openssl/slhdsa.h",
   "src/include/openssl/span.h",
   "src/include/openssl/stack.h",
+  "src/include/openssl/target.h",
   "src/include/openssl/thread.h",
   "src/include/openssl/time.h",
   "src/include/openssl/trust_token.h",
@@ -368,6 +597,37 @@
   "src/include/openssl/x509.h",
   "src/include/openssl/x509_vfy.h",
   "src/include/openssl/x509v3.h",
+  "src/include/openssl/x509v3_errors.h",
+  "src/include/openssl/xwing.h",
+]
+
+rust_bssl_sys = [ "src/rust/bssl-sys/src/lib.rs" ]
+
+rust_bssl_crypto = [
+  "src/rust/bssl-crypto/src/aead.rs",
+  "src/rust/bssl-crypto/src/aes.rs",
+  "src/rust/bssl-crypto/src/cipher/aes_cbc.rs",
+  "src/rust/bssl-crypto/src/cipher/aes_ctr.rs",
+  "src/rust/bssl-crypto/src/cipher/mod.rs",
+  "src/rust/bssl-crypto/src/digest.rs",
+  "src/rust/bssl-crypto/src/ec.rs",
+  "src/rust/bssl-crypto/src/ecdh.rs",
+  "src/rust/bssl-crypto/src/ecdsa.rs",
+  "src/rust/bssl-crypto/src/ed25519.rs",
+  "src/rust/bssl-crypto/src/hkdf.rs",
+  "src/rust/bssl-crypto/src/hmac.rs",
+  "src/rust/bssl-crypto/src/hpke.rs",
+  "src/rust/bssl-crypto/src/lib.rs",
+  "src/rust/bssl-crypto/src/macros.rs",
+  "src/rust/bssl-crypto/src/mem.rs",
+  "src/rust/bssl-crypto/src/mldsa.rs",
+  "src/rust/bssl-crypto/src/mlkem.rs",
+  "src/rust/bssl-crypto/src/rand.rs",
+  "src/rust/bssl-crypto/src/rsa.rs",
+  "src/rust/bssl-crypto/src/scoped.rs",
+  "src/rust/bssl-crypto/src/slhdsa.rs",
+  "src/rust/bssl-crypto/src/test_helpers.rs",
+  "src/rust/bssl-crypto/src/x25519.rs",
 ]
 
 ssl_sources = [
@@ -393,6 +653,7 @@
   "src/ssl/ssl_buffer.cc",
   "src/ssl/ssl_cert.cc",
   "src/ssl/ssl_cipher.cc",
+  "src/ssl/ssl_credential.cc",
   "src/ssl/ssl_file.cc",
   "src/ssl/ssl_key_share.cc",
   "src/ssl/ssl_lib.cc",
@@ -419,6 +680,92 @@
   "src/include/openssl/tls1.h",
 ]
 
+pki_sources = [
+  "src/pki/cert_error_id.cc",
+  "src/pki/cert_error_params.cc",
+  "src/pki/cert_errors.cc",
+  "src/pki/cert_issuer_source_static.cc",
+  "src/pki/certificate.cc",
+  "src/pki/certificate_policies.cc",
+  "src/pki/common_cert_errors.cc",
+  "src/pki/crl.cc",
+  "src/pki/encode_values.cc",
+  "src/pki/extended_key_usage.cc",
+  "src/pki/general_names.cc",
+  "src/pki/input.cc",
+  "src/pki/ip_util.cc",
+  "src/pki/name_constraints.cc",
+  "src/pki/ocsp.cc",
+  "src/pki/parse_certificate.cc",
+  "src/pki/parse_name.cc",
+  "src/pki/parse_values.cc",
+  "src/pki/parsed_certificate.cc",
+  "src/pki/parser.cc",
+  "src/pki/path_builder.cc",
+  "src/pki/pem.cc",
+  "src/pki/revocation_util.cc",
+  "src/pki/signature_algorithm.cc",
+  "src/pki/simple_path_builder_delegate.cc",
+  "src/pki/string_util.cc",
+  "src/pki/trust_store.cc",
+  "src/pki/trust_store_collection.cc",
+  "src/pki/trust_store_in_memory.cc",
+  "src/pki/verify.cc",
+  "src/pki/verify_certificate_chain.cc",
+  "src/pki/verify_error.cc",
+  "src/pki/verify_name_match.cc",
+  "src/pki/verify_signed_data.cc",
+]
+
+pki_internal_headers = [
+  "src/pki/cert_error_id.h",
+  "src/pki/cert_error_params.h",
+  "src/pki/cert_errors.h",
+  "src/pki/cert_issuer_source.h",
+  "src/pki/cert_issuer_source_static.h",
+  "src/pki/cert_issuer_source_sync_unittest.h",
+  "src/pki/certificate_policies.h",
+  "src/pki/common_cert_errors.h",
+  "src/pki/crl.h",
+  "src/pki/encode_values.h",
+  "src/pki/extended_key_usage.h",
+  "src/pki/general_names.h",
+  "src/pki/input.h",
+  "src/pki/ip_util.h",
+  "src/pki/mock_signature_verify_cache.h",
+  "src/pki/name_constraints.h",
+  "src/pki/nist_pkits_unittest.h",
+  "src/pki/ocsp.h",
+  "src/pki/parse_certificate.h",
+  "src/pki/parse_name.h",
+  "src/pki/parse_values.h",
+  "src/pki/parsed_certificate.h",
+  "src/pki/parser.h",
+  "src/pki/path_builder.h",
+  "src/pki/pem.h",
+  "src/pki/revocation_util.h",
+  "src/pki/signature_algorithm.h",
+  "src/pki/simple_path_builder_delegate.h",
+  "src/pki/string_util.h",
+  "src/pki/test_helpers.h",
+  "src/pki/testdata/nist-pkits/pkits_testcases-inl.h",
+  "src/pki/trust_store.h",
+  "src/pki/trust_store_collection.h",
+  "src/pki/trust_store_in_memory.h",
+  "src/pki/verify_certificate_chain.h",
+  "src/pki/verify_certificate_chain_typed_unittest.h",
+  "src/pki/verify_name_match.h",
+  "src/pki/verify_signed_data.h",
+]
+
+pki_headers = [
+  "src/include/openssl/pki/certificate.h",
+  "src/include/openssl/pki/ocsp.h",
+  "src/include/openssl/pki/signature_verify_cache.h",
+  "src/include/openssl/pki/verify.h",
+  "src/include/openssl/pki/verify_error.h",
+]
+
 tool_sources = [
   "src/tool/args.cc",
   "src/tool/ciphers.cc",
@@ -441,221 +788,39 @@
   "src/tool/transport_common.h",
 ]
 
-crypto_sources_apple_aarch64 = [
-  "apple-aarch64/crypto/chacha/chacha-armv8.S",
-  "apple-aarch64/crypto/cipher_extra/chacha20_poly1305_armv8.S",
-  "apple-aarch64/crypto/fipsmodule/aesv8-armx64.S",
-  "apple-aarch64/crypto/fipsmodule/armv8-mont.S",
-  "apple-aarch64/crypto/fipsmodule/ghash-neon-armv8.S",
-  "apple-aarch64/crypto/fipsmodule/ghashv8-armx64.S",
-  "apple-aarch64/crypto/fipsmodule/p256-armv8-asm.S",
-  "apple-aarch64/crypto/fipsmodule/p256_beeu-armv8-asm.S",
-  "apple-aarch64/crypto/fipsmodule/sha1-armv8.S",
-  "apple-aarch64/crypto/fipsmodule/sha256-armv8.S",
-  "apple-aarch64/crypto/fipsmodule/sha512-armv8.S",
-  "apple-aarch64/crypto/fipsmodule/vpaes-armv8.S",
-  "apple-aarch64/crypto/test/trampoline-armv8.S",
-]
-
-crypto_sources_apple_arm = [
-  "apple-arm/crypto/chacha/chacha-armv4.S",
-  "apple-arm/crypto/fipsmodule/aesv8-armx32.S",
-  "apple-arm/crypto/fipsmodule/armv4-mont.S",
-  "apple-arm/crypto/fipsmodule/bsaes-armv7.S",
-  "apple-arm/crypto/fipsmodule/ghash-armv4.S",
-  "apple-arm/crypto/fipsmodule/ghashv8-armx32.S",
-  "apple-arm/crypto/fipsmodule/sha1-armv4-large.S",
-  "apple-arm/crypto/fipsmodule/sha256-armv4.S",
-  "apple-arm/crypto/fipsmodule/sha512-armv4.S",
-  "apple-arm/crypto/fipsmodule/vpaes-armv7.S",
-  "apple-arm/crypto/test/trampoline-armv4.S",
-]
-
-crypto_sources_apple_x86 = [
-  "apple-x86/crypto/chacha/chacha-x86.S",
-  "apple-x86/crypto/fipsmodule/aesni-x86.S",
-  "apple-x86/crypto/fipsmodule/bn-586.S",
-  "apple-x86/crypto/fipsmodule/co-586.S",
-  "apple-x86/crypto/fipsmodule/ghash-ssse3-x86.S",
-  "apple-x86/crypto/fipsmodule/ghash-x86.S",
-  "apple-x86/crypto/fipsmodule/md5-586.S",
-  "apple-x86/crypto/fipsmodule/sha1-586.S",
-  "apple-x86/crypto/fipsmodule/sha256-586.S",
-  "apple-x86/crypto/fipsmodule/sha512-586.S",
-  "apple-x86/crypto/fipsmodule/vpaes-x86.S",
-  "apple-x86/crypto/fipsmodule/x86-mont.S",
-  "apple-x86/crypto/test/trampoline-x86.S",
-]
-
-crypto_sources_apple_x86_64 = [
-  "apple-x86_64/crypto/chacha/chacha-x86_64.S",
-  "apple-x86_64/crypto/cipher_extra/aes128gcmsiv-x86_64.S",
-  "apple-x86_64/crypto/cipher_extra/chacha20_poly1305_x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/aesni-gcm-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/aesni-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/ghash-ssse3-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/ghash-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/md5-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/p256-x86_64-asm.S",
-  "apple-x86_64/crypto/fipsmodule/p256_beeu-x86_64-asm.S",
-  "apple-x86_64/crypto/fipsmodule/rdrand-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/rsaz-avx2.S",
-  "apple-x86_64/crypto/fipsmodule/sha1-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/sha256-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/sha512-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/vpaes-x86_64.S",
-  "apple-x86_64/crypto/fipsmodule/x86_64-mont.S",
-  "apple-x86_64/crypto/fipsmodule/x86_64-mont5.S",
-  "apple-x86_64/crypto/test/trampoline-x86_64.S",
-]
-
-crypto_sources_linux_aarch64 = [
-  "linux-aarch64/crypto/chacha/chacha-armv8.S",
-  "linux-aarch64/crypto/cipher_extra/chacha20_poly1305_armv8.S",
-  "linux-aarch64/crypto/fipsmodule/aesv8-armx64.S",
-  "linux-aarch64/crypto/fipsmodule/armv8-mont.S",
-  "linux-aarch64/crypto/fipsmodule/ghash-neon-armv8.S",
-  "linux-aarch64/crypto/fipsmodule/ghashv8-armx64.S",
-  "linux-aarch64/crypto/fipsmodule/p256-armv8-asm.S",
-  "linux-aarch64/crypto/fipsmodule/p256_beeu-armv8-asm.S",
-  "linux-aarch64/crypto/fipsmodule/sha1-armv8.S",
-  "linux-aarch64/crypto/fipsmodule/sha256-armv8.S",
-  "linux-aarch64/crypto/fipsmodule/sha512-armv8.S",
-  "linux-aarch64/crypto/fipsmodule/vpaes-armv8.S",
-  "linux-aarch64/crypto/test/trampoline-armv8.S",
-]
-
-crypto_sources_linux_arm = [
-  "linux-arm/crypto/chacha/chacha-armv4.S",
-  "linux-arm/crypto/fipsmodule/aesv8-armx32.S",
-  "linux-arm/crypto/fipsmodule/armv4-mont.S",
-  "linux-arm/crypto/fipsmodule/bsaes-armv7.S",
-  "linux-arm/crypto/fipsmodule/ghash-armv4.S",
-  "linux-arm/crypto/fipsmodule/ghashv8-armx32.S",
-  "linux-arm/crypto/fipsmodule/sha1-armv4-large.S",
-  "linux-arm/crypto/fipsmodule/sha256-armv4.S",
-  "linux-arm/crypto/fipsmodule/sha512-armv4.S",
-  "linux-arm/crypto/fipsmodule/vpaes-armv7.S",
-  "linux-arm/crypto/test/trampoline-armv4.S",
-  "src/crypto/curve25519/asm/x25519-asm-arm.S",
-  "src/crypto/poly1305/poly1305_arm_asm.S",
-]
-
-crypto_sources_linux_ppc64le = [
-  "linux-ppc64le/crypto/fipsmodule/aesp8-ppc.S",
-  "linux-ppc64le/crypto/fipsmodule/ghashp8-ppc.S",
-  "linux-ppc64le/crypto/test/trampoline-ppc.S",
-]
-
-crypto_sources_linux_x86 = [
-  "linux-x86/crypto/chacha/chacha-x86.S",
-  "linux-x86/crypto/fipsmodule/aesni-x86.S",
-  "linux-x86/crypto/fipsmodule/bn-586.S",
-  "linux-x86/crypto/fipsmodule/co-586.S",
-  "linux-x86/crypto/fipsmodule/ghash-ssse3-x86.S",
-  "linux-x86/crypto/fipsmodule/ghash-x86.S",
-  "linux-x86/crypto/fipsmodule/md5-586.S",
-  "linux-x86/crypto/fipsmodule/sha1-586.S",
-  "linux-x86/crypto/fipsmodule/sha256-586.S",
-  "linux-x86/crypto/fipsmodule/sha512-586.S",
-  "linux-x86/crypto/fipsmodule/vpaes-x86.S",
-  "linux-x86/crypto/fipsmodule/x86-mont.S",
-  "linux-x86/crypto/test/trampoline-x86.S",
-]
-
-crypto_sources_linux_x86_64 = [
-  "linux-x86_64/crypto/chacha/chacha-x86_64.S",
-  "linux-x86_64/crypto/cipher_extra/aes128gcmsiv-x86_64.S",
-  "linux-x86_64/crypto/cipher_extra/chacha20_poly1305_x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/aesni-gcm-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/aesni-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/ghash-ssse3-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/ghash-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/md5-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/p256-x86_64-asm.S",
-  "linux-x86_64/crypto/fipsmodule/p256_beeu-x86_64-asm.S",
-  "linux-x86_64/crypto/fipsmodule/rdrand-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/rsaz-avx2.S",
-  "linux-x86_64/crypto/fipsmodule/sha1-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/sha256-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/sha512-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/vpaes-x86_64.S",
-  "linux-x86_64/crypto/fipsmodule/x86_64-mont.S",
-  "linux-x86_64/crypto/fipsmodule/x86_64-mont5.S",
-  "linux-x86_64/crypto/test/trampoline-x86_64.S",
-  "src/crypto/hrss/asm/poly_rq_mul.S",
-]
-
-crypto_sources_win_aarch64 = [
-  "win-aarch64/crypto/chacha/chacha-armv8.S",
-  "win-aarch64/crypto/cipher_extra/chacha20_poly1305_armv8.S",
-  "win-aarch64/crypto/fipsmodule/aesv8-armx64.S",
-  "win-aarch64/crypto/fipsmodule/armv8-mont.S",
-  "win-aarch64/crypto/fipsmodule/ghash-neon-armv8.S",
-  "win-aarch64/crypto/fipsmodule/ghashv8-armx64.S",
-  "win-aarch64/crypto/fipsmodule/p256-armv8-asm.S",
-  "win-aarch64/crypto/fipsmodule/p256_beeu-armv8-asm.S",
-  "win-aarch64/crypto/fipsmodule/sha1-armv8.S",
-  "win-aarch64/crypto/fipsmodule/sha256-armv8.S",
-  "win-aarch64/crypto/fipsmodule/sha512-armv8.S",
-  "win-aarch64/crypto/fipsmodule/vpaes-armv8.S",
-  "win-aarch64/crypto/test/trampoline-armv8.S",
-]
-
-crypto_sources_win_x86 = [
-  "win-x86/crypto/chacha/chacha-x86.asm",
-  "win-x86/crypto/fipsmodule/aesni-x86.asm",
-  "win-x86/crypto/fipsmodule/bn-586.asm",
-  "win-x86/crypto/fipsmodule/co-586.asm",
-  "win-x86/crypto/fipsmodule/ghash-ssse3-x86.asm",
-  "win-x86/crypto/fipsmodule/ghash-x86.asm",
-  "win-x86/crypto/fipsmodule/md5-586.asm",
-  "win-x86/crypto/fipsmodule/sha1-586.asm",
-  "win-x86/crypto/fipsmodule/sha256-586.asm",
-  "win-x86/crypto/fipsmodule/sha512-586.asm",
-  "win-x86/crypto/fipsmodule/vpaes-x86.asm",
-  "win-x86/crypto/fipsmodule/x86-mont.asm",
-  "win-x86/crypto/test/trampoline-x86.asm",
-]
-
-crypto_sources_win_x86_64 = [
-  "win-x86_64/crypto/chacha/chacha-x86_64.asm",
-  "win-x86_64/crypto/cipher_extra/aes128gcmsiv-x86_64.asm",
-  "win-x86_64/crypto/cipher_extra/chacha20_poly1305_x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/aesni-gcm-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/aesni-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/ghash-ssse3-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/ghash-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/md5-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/p256-x86_64-asm.asm",
-  "win-x86_64/crypto/fipsmodule/p256_beeu-x86_64-asm.asm",
-  "win-x86_64/crypto/fipsmodule/rdrand-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/rsaz-avx2.asm",
-  "win-x86_64/crypto/fipsmodule/sha1-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/sha256-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/sha512-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/vpaes-x86_64.asm",
-  "win-x86_64/crypto/fipsmodule/x86_64-mont.asm",
-  "win-x86_64/crypto/fipsmodule/x86_64-mont5.asm",
-  "win-x86_64/crypto/test/trampoline-x86_64.asm",
-]
-
 fuzzers = [
   "arm_cpuinfo",
   "bn_div",
   "bn_mod_exp",
   "cert",
   "client",
+  "client_no_fuzzer_mode",
+  "conf",
+  "crl_getcrlstatusforcert_fuzzer",
+  "crl_parse_crl_certificatelist_fuzzer",
+  "crl_parse_crl_tbscertlist_fuzzer",
+  "crl_parse_issuing_distribution_point_fuzzer",
   "decode_client_hello_inner",
   "der_roundtrip",
   "dtls_client",
   "dtls_server",
+  "ocsp_parse_ocsp_cert_id_fuzzer",
+  "ocsp_parse_ocsp_response_data_fuzzer",
+  "ocsp_parse_ocsp_response_fuzzer",
+  "ocsp_parse_ocsp_single_response_fuzzer",
+  "parse_authority_key_identifier_fuzzer",
+  "parse_certificate_fuzzer",
+  "parse_crldp_fuzzer",
   "pkcs12",
   "pkcs8",
   "privkey",
   "read_pem",
   "server",
+  "server_no_fuzzer_mode",
   "session",
   "spki",
   "ssl_ctx_api",
+  "verify_name_match_fuzzer",
+  "verify_name_match_normalizename_fuzzer",
+  "verify_name_match_verifynameinsubtree_fuzzer",
 ]
diff --git a/third_party/boringssl/BUILD.gn b/third_party/boringssl/BUILD.gn
index 2801a40..7c152f8 100644
--- a/third_party/boringssl/BUILD.gn
+++ b/third_party/boringssl/BUILD.gn
@@ -33,7 +33,7 @@
     "OPENSSL_NO_ASM",
     "OPENSSL_NO_THREADS_CORRUPT_MEMORY_AND_LEAK_SECRETS_IF_THREADED",
   ]
-  cflags_c = [
+  cflags = [
     "-Wno-unused-parameter",
     "-no-pedantic",
   ]
diff --git a/third_party/boringssl/src b/third_party/boringssl/src
index 396625d..6cd35e8 160000
--- a/third_party/boringssl/src
+++ b/third_party/boringssl/src
@@ -1 +1 @@
-Subproject commit 396625d50212143bc03517c9fdd21b1c965b3f45
+Subproject commit 6cd35e8ba6aa0b8bb3eaff35a7aa6b6385e34fa0