AP05/curl_arm64/share/man/man3/CURLOPT_HSTS_CTRL.3

56 lines
1.6 KiB
Groff
Raw Normal View History

2025-12-02 05:06:35 +00:00
.\" generated by cd2nroff 0.1 from CURLOPT_HSTS_CTRL.md
.TH CURLOPT_HSTS_CTRL 3 "2025-07-07" libcurl
.SH NAME
CURLOPT_HSTS_CTRL \- control HSTS behavior
.SH SYNOPSIS
.nf
#include <curl/curl.h>
#define CURLHSTS_ENABLE (1<<0)
#define CURLHSTS_READONLYFILE (1<<1)
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HSTS_CTRL, long bitmask);
.fi
.SH DESCRIPTION
HSTS (HTTP Strict Transport Security) means that an HTTPS server can instruct
the client to not contact it again over clear\-text HTTP for a certain period
into the future. libcurl then automatically redirects HTTP attempts to such
hosts to instead use HTTPS. This is done by libcurl retaining this knowledge
in an in\-memory cache.
Populate the long \fIbitmask\fP with the correct set of features to instruct
libcurl how to handle HSTS for the transfers using this handle.
.SH BITS
.IP CURLHSTS_ENABLE
Enable the in\-memory HSTS cache for this handle.
.IP CURLHSTS_READONLYFILE
Make the HSTS file (if specified) read\-only \- makes libcurl not save the cache
to the file when closing the handle.
.SH DEFAULT
0
.SH PROTOCOLS
This functionality affects http only
.SH EXAMPLE
.nf
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_HSTS_CTRL, (long)CURLHSTS_ENABLE);
curl_easy_perform(curl);
}
}
.fi
.SH AVAILABILITY
Added in curl 7.74.0
.SH RETURN VALUE
\fIcurl_easy_setopt(3)\fP returns a CURLcode indicating success or error.
CURLE_OK (0) means everything was OK, non\-zero means an error occurred, see
\fIlibcurl\-errors(3)\fP.
.SH SEE ALSO
.BR CURLOPT_ALTSVC (3),
.BR CURLOPT_CONNECT_TO (3),
.BR CURLOPT_HSTS (3),
.BR CURLOPT_RESOLVE (3)