diff --git a/ssl/test/bssl_shim.cc b/ssl/test/bssl_shim.cc
index e2a6c13..5044915 100644
--- a/ssl/test/bssl_shim.cc
+++ b/ssl/test/bssl_shim.cc
@@ -790,8 +790,7 @@
         return false;
       }
       SSL_set_accept_state(ssl_handoff.get());
-      if (!MoveTestConfig(ssl_handoff.get(), ssl) ||
-          !MoveTestState(ssl_handoff.get(), ssl)) {
+      if (!MoveTestState(ssl_handoff.get(), ssl)) {
         return false;
       }
       MoveBIOs(ssl_handoff.get(), ssl);
@@ -821,8 +820,7 @@
       }
 
       MoveBIOs(ssl, ssl_handoff.get());
-      if (!MoveTestConfig(ssl, ssl_handoff.get()) ||
-          !MoveTestState(ssl, ssl_handoff.get())) {
+      if (!MoveTestState(ssl, ssl_handoff.get())) {
         return false;
       }
 
@@ -865,8 +863,7 @@
         return false;
       }
       MoveBIOs(ssl_handback.get(), ssl);
-      if (!MoveTestConfig(ssl_handback.get(), ssl) ||
-          !MoveTestState(ssl_handback.get(), ssl)) {
+      if (!MoveTestState(ssl_handback.get(), ssl)) {
         return false;
       }
 
diff --git a/ssl/test/test_config.cc b/ssl/test/test_config.cc
index c6500ab..3c5046e 100644
--- a/ssl/test/test_config.cc
+++ b/ssl/test/test_config.cc
@@ -372,16 +372,6 @@
   return (const TestConfig *)SSL_get_ex_data(ssl, g_config_index);
 }
 
-bool MoveTestConfig(SSL *dest, SSL *src) {
-  const TestConfig *config = GetTestConfig(src);
-  if (!SSL_set_ex_data(src, g_config_index, nullptr) ||
-      !SSL_set_ex_data(dest, g_config_index, (void *)config)) {
-    return false;
-  }
-
-  return true;
-}
-
 static int LegacyOCSPCallback(SSL *ssl, void *arg) {
   const TestConfig *config = GetTestConfig(ssl);
   if (!SSL_is_server(ssl)) {
diff --git a/ssl/test/test_config.h b/ssl/test/test_config.h
index 930100e..6f815b5 100644
--- a/ssl/test/test_config.h
+++ b/ssl/test/test_config.h
@@ -179,8 +179,6 @@
 
 const TestConfig *GetTestConfig(const SSL *ssl);
 
-bool MoveTestConfig(SSL *dest, SSL *src);
-
 bool LoadCertificate(bssl::UniquePtr<X509> *out_x509,
                      bssl::UniquePtr<STACK_OF(X509)> *out_chain,
                      const std::string &file);
