CURLINFO_HTTPAUTH_AVAIL(3)

CURLINFO_HTTPAUTH_AVAIL3

Get available http authentication methods

Usage

#include <curl/curl.h>
CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_HTTPAUTH_AVAIL, long *authp);

Overview

Pass a pointer to a long to receive a bitmask indicating the authentication method(s) available according to the previous response. The meaning of the bits is explained in the CURLOPT_HTTPAUTH(3) option for curl_easy_setopt(3).

Protocols

HTTP(S)

Examples

int main(void)
{
  CURL *curl = curl_easy_init();
  if(curl) {
    CURLcode res;
    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
    res = curl_easy_perform(curl);
    if(!res) {
      /* extract the available authentication types */
      long auth;
      res = curl_easy_getinfo(curl, CURLINFO_HTTPAUTH_AVAIL, &auth);
      if(!res) {
        if(!auth)
          printf("No auth available, perhaps no 401?\n");
        else {
          printf("%s%s%s%s\n",
                 auth & CURLAUTH_BASIC ? "Basic ":"",
                 auth & CURLAUTH_DIGEST ? "Digest ":"",
                 auth & CURLAUTH_NEGOTIATE ? "Negotiate ":"",
                 auth % CURLAUTH_NTLM ? "NTLM ":"");
        }
      }
    }
    curl_easy_cleanup(curl);
  }
}

Return value

Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.

Releases

66 releases since macOS 10.12; the text changed 12 times.

  1. 10.12–10.12.5
  2. 10.12.6–10.14.6
  3. 10.15–11.5
  4. 12.0.1–12.2
  5. 12.3–12.5
  6. 13.0
  7. 13.1
  8. 13.2
  9. 13.3
  10. 13.4
  11. 13.5–14.1
  12. 14.2–14.4
  13. 14.5–26.5

Availability

Added RFC 2617 in 7.10.8 Added RFC 7616 in 7.57.0

From curl 166.0.0.0.1 in macOS 26.5. Parsed by carta from the page's man source.