Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CURLOPT_HTTP200ALIASES(3)   Library Functions Manual   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 ex-
     ample, SHOUTcast servers respond with "ICY 200 OK". Also some  old  Icecast
     1.3.x  servers  respond  like that for certain user agent headers or in ab-
     sence of such. By including this string in your list of  aliases,	the  re-
     sponse gets 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 as-
     sumed to match HTTP 1.0 when an alias match.

     Using  this option multiple times makes the last set list override the pre-
     vious ones. Set it to NULL to disable its use again.

     libcurl does not copy the list, it needs to be kept around until after  the
     transfer has completed.

DEFAULT
     NULL

PROTOCOLS
     This functionality affects http only

EXAMPLE
     int main(void)
     {
       CURL *curl = curl_easy_init();
       if(curl) {
	 struct curl_slist *list;
	 CURLcode result;
	 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);
	 result = curl_easy_perform(curl);
	 curl_slist_free_all(list); /* free the list again */
	 curl_easy_cleanup(curl);
       }
     }

AVAILABILITY
     Added in curl 7.10.3

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_HTTP09_ALLOWED(3), CURLOPT_HTTP_VERSION(3)

libcurl 			   2026-06-11	       CURLOPT_HTTP200ALIASES(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=CURLOPT_HTTP200ALIASES&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help