tests: add basic ECH tests

Test 4000 and 4001

Closes #17192
This commit is contained in:
sftcd 2025-04-25 18:26:04 +01:00 committed by Daniel Stenberg
parent e2a23d5d0d
commit 460ead61b6
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
7 changed files with 124 additions and 6 deletions

View file

@ -961,8 +961,7 @@ init_config_builder_ech(struct Curl_easy *data,
return CURLE_OK;
}
if(data->set.tls_ech & CURLECH_CLA_CFG
&& data->set.str[STRING_ECH_CONFIG]) {
if(data->set.tls_ech & CURLECH_CLA_CFG && data->set.str[STRING_ECH_CONFIG]) {
const char *b64 = data->set.str[STRING_ECH_CONFIG];
size_t decode_result;
if(!b64) {
@ -1008,6 +1007,10 @@ init_config_builder_ech(struct Curl_easy *data,
goto cleanup;
}
cleanup:
/* if we base64 decoded, we can free now */
if(data->set.tls_ech & CURLECH_CLA_CFG && data->set.str[STRING_ECH_CONFIG]) {
free(ech_config);
}
if(dns) {
Curl_resolv_unlink(data, &dns);
}

View file

@ -1352,9 +1352,7 @@ CURLcode Curl_wssl_ctx_init(struct wssl_ctx *wctx,
goto out;
}
if(data->set.tls_ech == CURLECH_GREASE) {
infof(data, "ECH: GREASE'd ECH not yet supported for wolfSSL");
result = CURLE_SSL_CONNECT_ERROR;
goto out;
infof(data, "ECH: GREASE is done by default by wolfSSL: no need to ask");
}
if(data->set.tls_ech & CURLECH_CLA_CFG
&& data->set.str[STRING_ECH_CONFIG]) {