curl/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYSTATUS.md
Daniel Stenberg e3fe020089
docs/libcurl: generate PROTOCOLS from meta-data
Remove the PROTOCOLS section from the source files completely and
instead generate them based on the header data in the curldown files.

It also generates TLS backend information for options marked for TLS as
protocol.

Closes #13175
2024-03-23 18:13:03 +01:00

1.6 KiB

c SPDX-License-Identifier Title Section Source See-also Protocol TLS-backend
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. curl CURLOPT_DOH_SSL_VERIFYSTATUS 3 libcurl
CURLOPT_DOH_SSL_VERIFYHOST (3)
CURLOPT_DOH_SSL_VERIFYPEER (3)
CURLOPT_SSL_VERIFYSTATUS (3)
TLS
OpenSSL
GnuTLS

NAME

CURLOPT_DOH_SSL_VERIFYSTATUS - verify the DoH SSL certificate's status

SYNOPSIS

#include <curl/curl.h>

CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DOH_SSL_VERIFYSTATUS,
                          long verify);

DESCRIPTION

Pass a long as parameter set to 1 to enable or 0 to disable.

This option determines whether libcurl verifies the status of the DoH (DNS-over-HTTPS) server cert using the "Certificate Status Request" TLS extension (aka. OCSP stapling).

This option is the DoH equivalent of CURLOPT_SSL_VERIFYSTATUS(3) and only affects requests to the DoH server.

If this option is enabled and the server does not support the TLS extension, the verification fails.

DEFAULT

0

EXAMPLE

int main(void)
{
  CURL *curl = curl_easy_init();
  if(curl) {
    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");

    curl_easy_setopt(curl, CURLOPT_DOH_URL,
                     "https://cloudflare-dns.com/dns-query");

    /* Ask for OCSP stapling when verifying the DoH server */
    curl_easy_setopt(curl, CURLOPT_DOH_SSL_VERIFYSTATUS, 1L);

    curl_easy_perform(curl);
  }
}

AVAILABILITY

Added in 7.76.0.

RETURN VALUE

Returns CURLE_OK if OCSP stapling is supported by the SSL backend, otherwise returns CURLE_NOT_BUILT_IN.