dwww Home | Manual pages | Find package

CURLOPT_ALTSVC(3)           Library Functions Manual          CURLOPT_ALTSVC(3)

NAME
       CURLOPT_ALTSVC - alt-svc cache filename

SYNOPSIS
       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ALTSVC, char *filename);

DESCRIPTION
       Pass  in a pointer to a filename to instruct libcurl to use that file as
       the Alt-Svc cache to read existing cache contents from and possibly also
       write it back to after a transfer, unless CURLALTSVC_READONLYFILE is set
       in CURLOPT_ALTSVC_CTRL(3).

       Specify a blank filename ("") to make libcurl not load from  a  file  at
       all.

       The  application  does  not have to keep the string around after setting
       this option.

       Using this option multiple times makes the last set string override  the
       previous ones. Set it to NULL to disable its use again.

SECURITY CONCERNS
       libcurl cannot fully protect against attacks where an attacker has write
       access to the same directory where it is directed to save files. This is
       particularly sensitive if you save files using elevated privileges.

DEFAULT
       NULL. The alt-svc cache is not read nor written to file.

PROTOCOLS
       This functionality affects http only

EXAMPLE
       int main(void)
       {
         CURL *curl = curl_easy_init();
         if(curl) {
           curl_easy_setopt(curl, CURLOPT_ALTSVC_CTRL, (long)CURLALTSVC_H1);
           curl_easy_setopt(curl, CURLOPT_ALTSVC, "altsvc-cache.txt");
           curl_easy_perform(curl);
         }
       }

FILE FORMAT
       A text based file with one line per alt-svc entry and each line consists
       of nine space-separated fields.

       An example line could look like

       h2 www.example.com 8443 h3 second.example.com 443 "20190808 06:18:37" 1 0

       The fields of that line are:

       h2     ALPN id for the source origin

       www.example.comp
              Hostname for the source origin

       8443   Port number for the source origin

       h3     ALPN id for the destination host

       second.example.com
              Hostname for the destination host

       443    Port number for the destination host

       2019*  Expiration  date and time of this entry within double quotes. The
              date format is "YYYYMMDD HH:MM:SS" and the time zone is GMT.

       1      Boolean (1 or 0) if "persist" was set for this entry

       0      Integer priority value (not currently used)

AVAILABILITY
       Added in curl 7.64.1

RETURN VALUE
       curl_easy_setopt(3) returns a CURLcode indicating success or error.

       CURLE_OK (0) means everything was OK, non-zero means an error  occurred,
       see libcurl-errors(3).

SEE ALSO
       CURLOPT_ALTSVC_CTRL(3),   CURLOPT_CONNECT_TO(3),  CURLOPT_COOKIEFILE(3),
       CURLOPT_RESOLVE(3)

libcurl                            2026-07-12                 CURLOPT_ALTSVC(3)

Generated by dwww version 1.16 on Sat Oct 3 05:45:00 CEST 2026.