Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

CURLOPT_HTTP200ALIASES (3)

Name

CURLOPT_HTTP200ALIASES - alternative matches for HTTP 200 OK

Synopsis

#include <curl/curl.h>

CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP200ALIASES,
struct curl_slist *aliases);

Description

CURLOPT_HTTP200ALIASES(3)  curl_easy_setopt options  CURLOPT_HTTP200ALIASES(3)



NAME
       CURLOPT_HTTP200ALIASES - alternative matches for HTTP 200 OK

SYNOPSIS
       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP200ALIASES,
                                 struct curl_slist *aliases);

DESCRIPTION
       Pass  a pointer to a linked list of aliases to be treated as valid HTTP
       200 responses.  Some servers respond  with  a  custom  header  response
       line.   For  example, SHOUTcast servers respond with "ICY 200 OK". Also
       some old Icecast 1.3.x servers will respond like that for certain  user
       agent  headers  or in absence of such. By including this string in your
       list of aliases, the response will be treated as a  valid  HTTP  header
       line such as "HTTP/1.0 200 OK".

       The  linked  list  should  be  a  fully valid list of struct curl_slist
       structs, and be properly filled in.  Use curl_slist_append(3) to create
       the list and curl_slist_free_all(3) to clean up an entire list.

       The alias itself is not parsed for any version strings. The protocol is
       assumed to match HTTP 1.0 when an alias match.

DEFAULT
       NULL

PROTOCOLS
       HTTP

EXAMPLE
       CURL *curl = curl_easy_init();
       if(curl) {
         struct curl_slist *list;
         curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");

         list = curl_slist_append(NULL, "ICY 200 OK");
         list = curl_slist_append(list, "WEIRDO 99 FINE");

         curl_easy_setopt(curl, CURLOPT_HTTP200ALIASES, list);
         curl_easy_perform(curl);
         curl_slist_free_all(list); /* free the list again */
       }

AVAILABILITY
       Added in 7.10.3

RETURN VALUE
       Returns CURLE_OK if HTTP is supported, and CURLE_UNKNOWN_OPTION if not.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | web/curl         |
       +---------------+------------------+
       |Stability      | Uncommitted      |
       +---------------+------------------+

SEE ALSO
       CURLOPT_HTTP_VERSION(3),



NOTES
       Source code for open source software components in Oracle  Solaris  can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This    software    was    built    from    source     available     at
       https://github.com/oracle/solaris-userland.    The  original  community
       source      was      downloaded       from        https://curl.se/down-
       load/curl-7.83.1.tar.bz2.

       Further information about this software can be found on the open source
       community website at http://curl.haxx.se/.



libcurl 7.83.1                 November 01, 2021     CURLOPT_HTTP200ALIASES(3)