tls: remove Curl_ssl false_start

The secure transport vTLS backend was the only Curl_ssl struct instance
that populated the false_start field. Since its removed, we can now
remove that field entirely. This was a protocol feature specific to TLS
1.2 that has been replaced by the more widely adopted TLS 1.3 early data
mechanisms.

--false-start is now deprecated

Closes #17595
This commit is contained in:
Daniel McCarney 2025-06-11 08:59:11 -04:00 committed by Daniel Stenberg
parent 220c5d8f49
commit 1e2e808def
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
15 changed files with 3 additions and 34 deletions

View file

@ -2210,7 +2210,6 @@ const struct Curl_ssl Curl_ssl_gnutls = {
NULL, /* set_engine */
NULL, /* set_engine_default */
NULL, /* engines_list */
NULL, /* false_start */
gtls_sha256sum, /* sha256sum */
gtls_recv, /* recv decrypted data */
gtls_send, /* send data to encrypt */

View file

@ -1618,7 +1618,6 @@ const struct Curl_ssl Curl_ssl_mbedtls = {
NULL, /* set_engine */
NULL, /* set_engine_default */
NULL, /* engines_list */
NULL, /* false_start */
mbedtls_sha256sum, /* sha256sum */
mbed_recv, /* recv decrypted data */
mbed_send, /* send data to encrypt */

View file

@ -5667,7 +5667,6 @@ const struct Curl_ssl Curl_ssl_openssl = {
ossl_set_engine, /* set_engine or provider */
ossl_set_engine_default, /* set_engine_default */
ossl_engines_list, /* engines_list */
NULL, /* false_start */
#ifndef OPENSSL_NO_SHA256
ossl_sha256sum, /* sha256sum */
#else

View file

@ -1437,7 +1437,6 @@ const struct Curl_ssl Curl_ssl_rustls = {
NULL, /* set_engine */
NULL, /* set_engine_default */
NULL, /* engines_list */
NULL, /* false_start */
NULL, /* sha256sum */
cr_recv, /* recv decrypted data */
cr_send, /* send data to encrypt */

View file

@ -2760,7 +2760,6 @@ const struct Curl_ssl Curl_ssl_schannel = {
NULL, /* set_engine */
NULL, /* set_engine_default */
NULL, /* engines_list */
NULL, /* false_start */
schannel_sha256sum, /* sha256sum */
schannel_recv, /* recv decrypted data */
schannel_send, /* send data to encrypt */

View file

@ -876,16 +876,6 @@ bool Curl_ssl_cert_status_request(void)
return FALSE;
}
/*
* Check whether the SSL backend supports false start.
*/
bool Curl_ssl_false_start(void)
{
if(Curl_ssl->false_start)
return Curl_ssl->false_start();
return FALSE;
}
static int multissl_init(void)
{
if(multissl_setup(NULL))
@ -966,7 +956,6 @@ static const struct Curl_ssl Curl_ssl_multi = {
NULL, /* set_engine */
NULL, /* set_engine_default */
NULL, /* engines_list */
NULL, /* false_start */
NULL, /* sha256sum */
multissl_recv_plain, /* recv decrypted data */
multissl_send_plain, /* send data to encrypt */

View file

@ -190,8 +190,6 @@ CURLcode Curl_pin_peer_pubkey(struct Curl_easy *data,
bool Curl_ssl_cert_status_request(void);
bool Curl_ssl_false_start(void);
/* The maximum size of the SSL channel binding is 85 bytes, as defined in
* RFC 5929, Section 4.1. The 'tls-server-end-point:' prefix is 21 bytes long,
* and SHA-512 is the longest supported hash algorithm, with a digest length of
@ -274,7 +272,6 @@ extern struct Curl_cftype Curl_cft_ssl_proxy;
#define Curl_ssl_free_certinfo(x) Curl_nop_stmt
#define Curl_ssl_random(x,y,z) ((void)x, CURLE_NOT_BUILT_IN)
#define Curl_ssl_cert_status_request() FALSE
#define Curl_ssl_false_start() FALSE
#define Curl_ssl_get_internals(a,b,c,d) NULL
#define Curl_ssl_supports(a,b) FALSE
#define Curl_ssl_cfilter_add(a,b,c) CURLE_NOT_BUILT_IN

View file

@ -175,7 +175,6 @@ struct Curl_ssl {
CURLcode (*set_engine_default)(struct Curl_easy *data);
struct curl_slist *(*engines_list)(struct Curl_easy *data);
bool (*false_start)(void);
CURLcode (*sha256sum)(const unsigned char *input, size_t inputlen,
unsigned char *sha256sum, size_t sha256sumlen);
ssize_t (*recv_plain)(struct Curl_cfilter *cf, struct Curl_easy *data,

View file

@ -2285,7 +2285,6 @@ const struct Curl_ssl Curl_ssl_wolfssl = {
NULL, /* set_engine */
NULL, /* set_engine_default */
NULL, /* engines_list */
NULL, /* false_start */
wssl_sha256sum, /* sha256sum */
wssl_recv, /* recv decrypted data */
wssl_send, /* send data to encrypt */