Remove old ProofVerifier::VerifyCertChain

PiperOrigin-RevId: 927496507
diff --git a/build/source_list.bzl b/build/source_list.bzl
index 3a37cb3..1329e37 100644
--- a/build/source_list.bzl
+++ b/build/source_list.bzl
@@ -569,7 +569,6 @@
     "quic/core/crypto/p256_key_exchange.cc",
     "quic/core/crypto/proof_source.cc",
     "quic/core/crypto/proof_source_x509.cc",
-    "quic/core/crypto/proof_verifier.cc",
     "quic/core/crypto/quic_client_session_cache.cc",
     "quic/core/crypto/quic_compressed_certs_cache.cc",
     "quic/core/crypto/quic_crypter.cc",
diff --git a/build/source_list.gni b/build/source_list.gni
index e2457fe..a851de2 100644
--- a/build/source_list.gni
+++ b/build/source_list.gni
@@ -569,7 +569,6 @@
     "src/quiche/quic/core/crypto/p256_key_exchange.cc",
     "src/quiche/quic/core/crypto/proof_source.cc",
     "src/quiche/quic/core/crypto/proof_source_x509.cc",
-    "src/quiche/quic/core/crypto/proof_verifier.cc",
     "src/quiche/quic/core/crypto/quic_client_session_cache.cc",
     "src/quiche/quic/core/crypto/quic_compressed_certs_cache.cc",
     "src/quiche/quic/core/crypto/quic_crypter.cc",
diff --git a/build/source_list.json b/build/source_list.json
index 6cf4e9a..5c9c47b 100644
--- a/build/source_list.json
+++ b/build/source_list.json
@@ -568,7 +568,6 @@
     "quiche/quic/core/crypto/p256_key_exchange.cc",
     "quiche/quic/core/crypto/proof_source.cc",
     "quiche/quic/core/crypto/proof_source_x509.cc",
-    "quiche/quic/core/crypto/proof_verifier.cc",
     "quiche/quic/core/crypto/quic_client_session_cache.cc",
     "quiche/quic/core/crypto/quic_compressed_certs_cache.cc",
     "quiche/quic/core/crypto/quic_crypter.cc",
diff --git a/quiche/quic/core/crypto/proof_verifier.cc b/quiche/quic/core/crypto/proof_verifier.cc
deleted file mode 100644
index bf78a4b..0000000
--- a/quiche/quic/core/crypto/proof_verifier.cc
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright (c) 2026 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "quiche/quic/core/crypto/proof_verifier.h"
-
-#include <memory>
-#include <string>
-#include <utility>
-#include <vector>
-
-#include "absl/strings/string_view.h"
-#include "quiche/quic/core/quic_types.h"
-#include "quiche/common/platform/api/quiche_logging.h"
-
-namespace quic {
-
-QuicAsyncStatus ProofVerifier::VerifyCertChain(
-    const std::string& hostname, uint16_t port,
-    const std::vector<absl::string_view>& certs,
-    const std::string& ocsp_response, const std::string& cert_sct,
-    const ProofVerifyContext* context, std::string* error_details,
-    std::unique_ptr<ProofVerifyDetails>* details, uint8_t* out_alert,
-    std::unique_ptr<ProofVerifierCallback> callback) {
-  // To avoid needing an atomic migration of all quiche consumers to use the new
-  // VerifyCertChain function definition, this shim is provided so that old
-  // ProofVerifier implementations continue to work.
-  //
-  // TODO(b/517611362): Remove this once all ProofVerifier implementations
-  // have stopped implementing the old VerifyCertChain.
-  std::vector<std::string> certs_str;
-  certs_str.reserve(certs.size());
-  for (absl::string_view cert : certs) {
-    certs_str.push_back(std::string(cert));
-  }
-  return VerifyCertChain(hostname, port, certs_str, ocsp_response, cert_sct,
-                         context, error_details, details, out_alert,
-                         std::move(callback));
-}
-
-QuicAsyncStatus ProofVerifier::VerifyCertChain(
-    const std::string&, uint16_t, const std::vector<std::string>&,
-    const std::string&, const std::string&, const ProofVerifyContext*,
-    std::string*, std::unique_ptr<ProofVerifyDetails>*, uint8_t*,
-    std::unique_ptr<ProofVerifierCallback>) {
-  // This function exists only for ProofVerifiers that don't implement the new
-  // VerifyCertChain (that takes a vector of absl::string_views for the certs).
-  // A ProofVerifier needs to implement one of the VerifyCertChain functions
-  // (and it should implement the other one). If it implements neither, it will
-  // end up here.
-  QUICHE_NOTREACHED();
-  return QUIC_FAILURE;
-}
-
-}  // namespace quic
diff --git a/quiche/quic/core/crypto/proof_verifier.h b/quiche/quic/core/crypto/proof_verifier.h
index 15031e5..fb0b4be 100644
--- a/quiche/quic/core/crypto/proof_verifier.h
+++ b/quiche/quic/core/crypto/proof_verifier.h
@@ -105,19 +105,7 @@
       const std::string& ocsp_response, const std::string& cert_sct,
       const ProofVerifyContext* context, std::string* error_details,
       std::unique_ptr<ProofVerifyDetails>* details, uint8_t* out_alert,
-      std::unique_ptr<ProofVerifierCallback> callback);
-
-  // Deprecated: Same as VerifyCertChain above, but |certs| contains
-  // std::strings instead of absl::string_views.
-  //
-  // TODO(b/517611362): Remove this once all ProofVerifier implementations
-  // have migrated to the new VerifyCertChain.
-  virtual QuicAsyncStatus VerifyCertChain(
-      const std::string& hostname, uint16_t port,
-      const std::vector<std::string>& certs, const std::string& ocsp_response,
-      const std::string& cert_sct, const ProofVerifyContext* context,
-      std::string* error_details, std::unique_ptr<ProofVerifyDetails>* details,
-      uint8_t* out_alert, std::unique_ptr<ProofVerifierCallback> callback);
+      std::unique_ptr<ProofVerifierCallback> callback) = 0;
 
   // Returns a ProofVerifyContext instance which can be use for subsequent
   // verifications. Applications may chose create a different context and