HTTP Strict-Transport-Security. Added as experimental in curl 7.74.0. Supported "for real" since 7.77.0.
HTTP Strict Transport Security
libcurl features an in-memory cache for HSTS hosts, so that subsequent HTTP-only requests to a hostname present in the cache gets internally "redirected" to the HTTPS version.
curl_easy_setopt()
options:CURLOPT_HSTS_CTRL
- enable HSTS for this easy handleCURLOPT_HSTS
- specify filename where to store the HSTS cache on close
(and possibly read from at startup)--hsts [filename]
- enable HSTS, use the file as HSTS cache. If filename
is ""
(no length) then no file is used, only in-memory cache.Lines starting with #
are ignored.
For each hsts entry:
[host name] "YYYYMMDD HH:MM:SS"
The [host name]
is dot-prefixed if it includes subdomains.
The time stamp is when the entry expires.
CURLOPT_HSTS_PRELOAD
- provide a set of HSTS hostnames to load first