GNURLOPT_P...IPHER_LIST(3)
π GNURLOPT_P...IPHER_LIST(3) π
okay bestie, so this page lives in the curl_easy_setopt options manual (the gnurl build of it), and it's fully about one single option β CURLOPT_PROXY_SSL_CIPHER_LIST. It's the one that tells your HTTPS proxy handshake exactly which ciphers it's allowed to use. No proxy? Then this page is not your main character rn, but stay anyway because knowledge is free β¨
πΈ NAME πΈ
CURLOPT_PROXY_SSL_CIPHER_LIST β specify ciphers to use for proxy TLS. literally the picker for which cryptographic vibes your proxy connection is allowed to serve π
π SYNOPSIS π
#include <gnurl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXY_SSL_CIPHER_LIST,
char *list);
π¦ DESCRIPTION π¦
okay so you pass a char *, pointing to a null-terminated string holding the list of ciphers to use for the connection to the HTTPS proxy. Simple concept. Butβ
the list must be syntactically correct (no cap, that's a requirement, not a suggestion π). It consists of one or more cipher strings separated by colons. Commas or spaces are also acceptable separators, but colons are normally used. And !, - and + can be used as operators.
For OpenSSL and GnuTLS, valid examples of cipher lists include 'RC4-SHA', Β΄SHA1+DESΒ΄, 'TLSv1' and 'DEFAULT'. The default list is normally set when you compile OpenSSL.
You'll find more details about cipher lists on this URL:
https://www.openssl.org/docs/apps/ciphers.html
For NSS, valid examples of cipher lists include 'rsa_rc4_128_md5', Β΄rsa_aes_128_shaΒ΄, etc. And heads up β with NSS you don't add/remove ciphers. If one uses this option then all known ciphers are disabled and only those passed in are enabled. It's giving all-or-nothing, bestie π«Ά
You'll find more details about the NSS cipher lists on this URL:
http://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html#Directives
Bestie perk incoming: the application does not have to keep the string around after setting this option β so you can let it go, curl's got the vibe handled π
β DEFAULT β
NULL, use internal default β i.e. say nothing and curl picks for you. lowkey iconic lazy-girl behavior, honestly π
π PROTOCOLS π
All. every single one. no exclusions. we love range π¦
π₯ EXAMPLE π₯
CURL *curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
curl_easy_setopt(curl, CURLOPT_PROXY, "https://localhost");
curl_easy_setopt(curl, CURLOPT_PROXY_SSL_CIPHER_LIST, "TLSv1");
ret = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
copied exactly, not one character touched, this is the canonical serve π
π§ AVAILABILITY π§
Added in 7.52.0.
If built TLS enabled. (yes, that's the whole condition, don't come for the grammar π)
π RETURN VALUE π
CURLE_OKβ if TLS is supported πCURLE_UNKNOWN_OPTIONβ if not πCURLE_OUT_OF_MEMORYβ if there was insufficient heap space π
π SEE ALSO π
CURLOPT_PROXY_TLS13_CIPHERS(3)CURLOPT_PROXY_SSLVERSION(3)CURLOPT_SSL_CIPHER_LIST(3)CURLOPT_TLS13_CIPHERS(3)CURLOPT_SSLVERSION(3)
and that's the whole page, bestie β go configure something cute β¨ this was libcurl 7.52.0, dated 16 Nov 2016, and the title on the header and footer lines is GNURLOPT_P...IPHER_LIST(3). mwah. slay. bye π
π
π¦ where this page comes from
- nixos 26.05: libgnurl 7.72.0
- nixpkgs unstable: libgnurl 7.72.0
- Copyright (C) 1998 - 2020, 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