diff --git a/ssl/internal.h b/ssl/internal.h
index 297c155..a63c0cd 100644
--- a/ssl/internal.h
+++ b/ssl/internal.h
@@ -1077,8 +1077,6 @@
                                     uint8_t *const limit);
 int ssl_parse_clienthello_tlsext(SSL *s, CBS *cbs);
 int ssl_parse_serverhello_tlsext(SSL *s, CBS *cbs);
-int ssl_prepare_clienthello_tlsext(SSL *s);
-int ssl_prepare_serverhello_tlsext(SSL *s);
 
 #define tlsext_tick_md EVP_sha256
 
diff --git a/ssl/s3_clnt.c b/ssl/s3_clnt.c
index 58f92ce..cf98bb6 100644
--- a/ssl/s3_clnt.c
+++ b/ssl/s3_clnt.c
@@ -693,11 +693,6 @@
     *(p++) = 0; /* Add the NULL method */
 
     /* TLS extensions*/
-    if (ssl_prepare_clienthello_tlsext(s) <= 0) {
-      OPENSSL_PUT_ERROR(SSL, SSL_R_CLIENTHELLO_TLSEXT);
-      goto err;
-    }
-
     p = ssl_add_clienthello_tlsext(s, p, buf + SSL3_RT_MAX_PLAIN_LENGTH,
                                    p - buf);
     if (p == NULL) {
diff --git a/ssl/s3_srvr.c b/ssl/s3_srvr.c
index f038347..fba5bcb 100644
--- a/ssl/s3_srvr.c
+++ b/ssl/s3_srvr.c
@@ -1207,10 +1207,7 @@
 
     /* put the compression method */
     *(p++) = 0;
-    if (ssl_prepare_serverhello_tlsext(s) <= 0) {
-      OPENSSL_PUT_ERROR(SSL, SSL_R_SERVERHELLO_TLSEXT);
-      return -1;
-    }
+
     p = ssl_add_serverhello_tlsext(s, p, buf + SSL3_RT_MAX_PLAIN_LENGTH);
     if (p == NULL) {
       OPENSSL_PUT_ERROR(SSL, ERR_R_INTERNAL_ERROR);
diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c
index 2607931..86cc74e 100644
--- a/ssl/t1_lib.c
+++ b/ssl/t1_lib.c
@@ -2535,10 +2535,6 @@
   return 1;
 }
 
-int ssl_prepare_clienthello_tlsext(SSL *s) { return 1; }
-
-int ssl_prepare_serverhello_tlsext(SSL *s) { return 1; }
-
 static int ssl_check_clienthello_tlsext(SSL *s) {
   int ret = SSL_TLSEXT_ERR_NOACK;
   int al = SSL_AD_UNRECOGNIZED_NAME;
