• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1---
2c: Copyright (C) Daniel Stenberg, <daniel.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)
11---
12
13# NAME
14
15CURLOPT_SSL_EC_CURVES - key exchange curves
16
17# SYNOPSIS
18
19~~~c
20#include <curl/curl.h>
21
22CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_EC_CURVES, char *alg_list);
23~~~
24
25# DESCRIPTION
26
27Pass a string as parameter with a colon delimited list of (EC) algorithms. This
28option defines the client's key exchange algorithms in the SSL handshake (if
29the SSL backend libcurl is built to use supports it).
30
31# DEFAULT
32
33"", embedded in SSL backend
34
35# PROTOCOLS
36
37HTTP
38
39# EXAMPLE
40
41~~~c
42int main(void)
43{
44  CURL *curl = curl_easy_init();
45  if(curl) {
46    CURLcode res;
47    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
48    curl_easy_setopt(curl, CURLOPT_SSL_EC_CURVES, "X25519:P-521");
49    res = curl_easy_perform(curl);
50    curl_easy_cleanup(curl);
51  }
52}
53~~~
54
55# AVAILABILITY
56
57Added in 7.73.0. Supported by the OpenSSL backend.
58
59# RETURN VALUE
60
61Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
62