CURLINFO_SSL_ENGINES.3 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. .\" generated by cd2nroff 0.1 from CURLINFO_SSL_ENGINES.md
  2. .TH CURLINFO_SSL_ENGINES 3 "2025-01-17" libcurl
  3. .SH NAME
  4. CURLINFO_SSL_ENGINES \- get an slist of OpenSSL crypto\-engines
  5. .SH SYNOPSIS
  6. .nf
  7. #include <curl/curl.h>
  8. CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_SSL_ENGINES,
  9. struct curl_slist **engine_list);
  10. .fi
  11. .SH DESCRIPTION
  12. Pass the address of a \(aqstruct curl_slist *\(aq to receive a linked\-list of
  13. OpenSSL crypto\-engines supported. Note that engines are normally implemented
  14. in separate dynamic libraries. Hence not all the returned engines may be
  15. available at runtime. \fBNOTE:\fP you must call \fIcurl_slist_free_all(3)\fP
  16. on the list pointer once you are done with it, as libcurl does not free this
  17. data for you.
  18. .SH PROTOCOLS
  19. This functionality affects all TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
  20. This option works only with the following TLS backends:
  21. OpenSSL
  22. .SH EXAMPLE
  23. .nf
  24. int main(void)
  25. {
  26. CURL *curl = curl_easy_init();
  27. if(curl) {
  28. CURLcode res;
  29. struct curl_slist *engines;
  30. res = curl_easy_getinfo(curl, CURLINFO_SSL_ENGINES, &engines);
  31. if((res == CURLE_OK) && engines) {
  32. /* we have a list, free it when done using it */
  33. curl_slist_free_all(engines);
  34. }
  35. curl_easy_cleanup(curl);
  36. }
  37. }
  38. .fi
  39. .SH AVAILABILITY
  40. Added in curl 7.12.3
  41. .SH RETURN VALUE
  42. Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
  43. .SH SEE ALSO
  44. .BR CURLOPT_SSLENGINE (3),
  45. .BR curl_easy_getinfo (3),
  46. .BR curl_easy_setopt (3)