GNURLOPT_P...13_CIPHERS(3)
okay so bestie, welcome to the GNURLOPT_P...13_CIPHERS(3) page from the curl_easy_setopt options manual β it's literally the glow-up guide for picking cipher suites for a proxy's TLS 1.3 connection. π
β¨
πΈ NAME πΈ
CURLOPT_PROXY_TLS13_CIPHERSβ ciphers suites for proxy TLS 1.3
π¦ SYNOPSIS π¦
the signature is giving exactly this, no cap:
#include <gnurl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXY_TLS13_CIPHERS,
char *list);
β¨ DESCRIPTION β¨
Pass a char *, pointing to a null-terminated string holding the list of cipher suites to use for the TLS 1.3 connection to a proxy. The list must be syntactically correct, bestie β it consists of one or more cipher suite strings separated by colons. π
you'll find more details about cipher lists on this URL:
https://curl.haxx.se/docs/ssl-ciphers.html
This option is currently used only when curl is built to use OpenSSL 1.1.1 or later. If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using the CURLOPT_PROXY_SSL_CIPHER_LIST option. π«Ά
The application does not have to keep the string around after setting this option β like, it's totally fine to not keep it around. π
π DEFAULT π
NULL, use internal default. so if you don't pass a list, the internal default is doing its thing. β
π PROTOCOLS π
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc. π
π₯ EXAMPLE π₯
here's the example, copied exactly because we do not mess with code in this group chat:
CURL *curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
curl_easy_setopt(curl, CURLOPT_PROXY_TLS13_CIPHERS,
"TLS13-CHACHA20-POLY1305-SHA256");
ret = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
π AVAILABILITY π
Added in 7.61.0. Available when built with OpenSSL >= 1.1.1. π
π RETURN VALUE π
Returns CURLE_OK if supported, CURLE_NOT_BUILT_IN otherwise. that's the whole vibe check. π
π¦ SEE ALSO π¦
go read these next, iykyk:
CURLOPT_PROXY_SSL_CIPHER_LIST(3)CURLOPT_PROXY_SSLVERSION(3)CURLOPT_SSL_CIPHER_LIST(3)CURLOPT_TLS13_CIPHERS(3)CURLOPT_SSLVERSION(3)
(and yes, the source list has a trailing comma after the last one β we respect the chaos. π)
mwah π β this page comes from libcurl 7.61.0, dated 25 May 2018. periodt. π«Ά
π¦ where this page comes from
- nixos 26.05: libgnurl 7.72.0
- nixpkgs unstable: libgnurl 7.72.0
- Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms