1--- 2c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. 3SPDX-License-Identifier: curl 4Title: CURLOPT_SSL_EC_CURVES 5Section: 3 6Source: libcurl 7See-also: 8 - CURLOPT_SSL_CIPHER_LIST (3) 9 - CURLOPT_SSL_OPTIONS (3) 10 - CURLOPT_TLS13_CIPHERS (3) 11Protocol: 12 - TLS 13TLS-backend: 14 - OpenSSL 15 - wolfSSL 16Added-in: 7.73.0 17--- 18 19# NAME 20 21CURLOPT_SSL_EC_CURVES - key exchange curves 22 23# SYNOPSIS 24 25~~~c 26#include <curl/curl.h> 27 28CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_EC_CURVES, char *list); 29~~~ 30 31# DESCRIPTION 32 33Pass a string as parameter with a colon delimited list of Elliptic curve (EC) 34algorithms. This option defines the client's key exchange algorithms in the 35SSL handshake (if the SSL backend libcurl is built to use supports it). 36 37The application does not have to keep the string around after setting this 38option. 39 40Using this option multiple times makes the last set string override the 41previous ones. Set it to NULL to restore back to internal default. 42 43# DEFAULT 44 45"", embedded in SSL backend 46 47# %PROTOCOLS% 48 49# EXAMPLE 50 51~~~c 52int main(void) 53{ 54 CURL *curl = curl_easy_init(); 55 if(curl) { 56 CURLcode res; 57 curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/"); 58 curl_easy_setopt(curl, CURLOPT_SSL_EC_CURVES, "X25519:P-521"); 59 res = curl_easy_perform(curl); 60 curl_easy_cleanup(curl); 61 } 62} 63~~~ 64 65# %AVAILABILITY% 66 67# RETURN VALUE 68 69Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. 70