CURLOPT_PROXY_SSL_CIPHER_LIST.3 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. .\" **************************************************************************
  2. .\" * _ _ ____ _
  3. .\" * Project ___| | | | _ \| |
  4. .\" * / __| | | | |_) | |
  5. .\" * | (__| |_| | _ <| |___
  6. .\" * \___|\___/|_| \_\_____|
  7. .\" *
  8. .\" * Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
  9. .\" *
  10. .\" * This software is licensed as described in the file COPYING, which
  11. .\" * you should have received as part of this distribution. The terms
  12. .\" * are also available at https://curl.se/docs/copyright.html.
  13. .\" *
  14. .\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
  15. .\" * copies of the Software, and permit persons to whom the Software is
  16. .\" * furnished to do so, under the terms of the COPYING file.
  17. .\" *
  18. .\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
  19. .\" * KIND, either express or implied.
  20. .\" *
  21. .\" * SPDX-License-Identifier: curl
  22. .\" *
  23. .\" **************************************************************************
  24. .\"
  25. .TH CURLOPT_PROXY_SSL_CIPHER_LIST 3 "16 Nov 2016" libcurl libcurl
  26. .SH NAME
  27. CURLOPT_PROXY_SSL_CIPHER_LIST \- ciphers to use for HTTPS proxy
  28. .SH SYNOPSIS
  29. .nf
  30. #include <curl/curl.h>
  31. CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXY_SSL_CIPHER_LIST,
  32. char *list);
  33. .fi
  34. .SH DESCRIPTION
  35. Pass a char *, pointing to a null-terminated string holding the list of
  36. ciphers to use for the connection to the HTTPS proxy. The list must be
  37. syntactically correct, it consists of one or more cipher strings separated by
  38. colons. Commas or spaces are also acceptable separators but colons are
  39. normally used, \&!, \&- and \&+ can be used as operators.
  40. For OpenSSL and GnuTLS valid examples of cipher lists include \fBRC4-SHA\fP,
  41. \fBSHA1+DES\fP, \fBTLSv1\fP and \fBDEFAULT\fP. The default list is normally
  42. set when you compile OpenSSL.
  43. For WolfSSL, valid examples of cipher lists include \fBECDHE-RSA-RC4-SHA\fP,
  44. \fBAES256-SHA:AES256-SHA256\fP, etc.
  45. For BearSSL, valid examples of cipher lists include
  46. \fBECDHE-RSA-CHACHA20-POLY1305:ECDHE-RSA-AES128-GCM-SHA256\fP, or when using IANA names
  47. \fBTLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256:TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\fP,
  48. etc.
  49. With BearSSL you do not add/remove ciphers. If one uses this option then all
  50. known ciphers are disabled and only those passed in are enabled.
  51. you will find more details about cipher lists on this URL:
  52. https://curl.se/docs/ssl-ciphers.html
  53. The application does not have to keep the string around after setting this
  54. option.
  55. .SH DEFAULT
  56. NULL, use internal default
  57. .SH PROTOCOLS
  58. All
  59. .SH EXAMPLE
  60. .nf
  61. CURL *curl = curl_easy_init();
  62. if(curl) {
  63. curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
  64. curl_easy_setopt(curl, CURLOPT_PROXY, "https://localhost");
  65. curl_easy_setopt(curl, CURLOPT_PROXY_SSL_CIPHER_LIST, "TLSv1");
  66. ret = curl_easy_perform(curl);
  67. curl_easy_cleanup(curl);
  68. }
  69. .fi
  70. .SH AVAILABILITY
  71. Added in 7.52.0, in 7.83.0 for BearSSL
  72. If built TLS enabled.
  73. .SH RETURN VALUE
  74. Returns CURLE_OK if TLS is supported, CURLE_UNKNOWN_OPTION if not, or
  75. CURLE_OUT_OF_MEMORY if there was insufficient heap space.
  76. .SH "SEE ALSO"
  77. .BR CURLOPT_PROXY_TLS13_CIPHERS "(3), " CURLOPT_PROXY_SSLVERSION "(3), "
  78. .BR CURLOPT_SSL_CIPHER_LIST "(3), " CURLOPT_TLS13_CIPHERS "(3), "
  79. .BR CURLOPT_SSLVERSION "(3), "