Section: curl_easy_setopt options (3)
Updated: June 25, 2020
CURLOPT_TLSAUTH_TYPE - set TLS authentication methods
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TLSAUTH_TYPE, char *type);
Pass a pointer to a null-terminated string as parameter. The string should be
the method of the TLS authentication. Supported method is "SRP".
TLS-SRP authentication. Secure Remote Password authentication for TLS is
defined in RFC5054 and provides mutual authentication if both sides have a
shared secret. To use TLS-SRP, you must also set the
CURLOPT_TLSAUTH_USERNAME(3) and CURLOPT_TLSAUTH_PASSWORD(3)
The application does not have to keep the string around after setting this
TLS SRP doesn't work with TLS 1.3.
All TLS-based protocols
CURL *curl = curl_easy_init();
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
curl_easy_setopt(curl, CURLOPT_TLSAUTH_TYPE, "SRP");
curl_easy_setopt(curl, CURLOPT_TLSAUTH_USERNAME, "user");
curl_easy_setopt(curl, CURLOPT_TLSAUTH_PASSWORD, "secret");
ret = curl_easy_perform(curl);
You need to build libcurl with GnuTLS or OpenSSL with TLS-SRP support for this
to work. Added in 7.21.4
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.