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

FreeBSD Manual Pages

  
 
  

home | help
CURLINFO_SCHEME(3)	   Library Functions Manual	    CURLINFO_SCHEME(3)

NAME
       CURLINFO_SCHEME	-  get the URL scheme (sometimes called	protocol) used
       in the connection

SYNOPSIS
       #include	<curl/curl.h>

       CURLcode	curl_easy_getinfo(CURL *handle,	CURLINFO_SCHEME, char **scheme);

DESCRIPTION
       Pass a pointer to a char	pointer	to receive the pointer to a  null-ter-
       minated	string holding the URL scheme used for the most	recent connec-
       tion done with this CURL	handle.

       The scheme pointer is NULL or points to private memory.	You  MUST  NOT
       free  -	it gets	freed when you call curl_easy_cleanup(3) on the	corre-
       sponding	curl handle.

       The returned scheme might be upper or lowercase.	 Do  comparisons  case
       insensitively.

PROTOCOLS
       This functionality affects all supported	protocols

EXAMPLE
       int main(void)
       {
	 CURL *curl = curl_easy_init();
	 if(curl) {
	   CURLcode res;
	   curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
	   res = curl_easy_perform(curl);
	   if(res == CURLE_OK) {
	     char *scheme = NULL;
	     curl_easy_getinfo(curl, CURLINFO_SCHEME, &scheme);
	     if(scheme)
	       printf("scheme: %s\n", scheme); /* scheme: HTTP */
	   }
	   curl_easy_cleanup(curl);
	 }
       }

AVAILABILITY
       Added in	curl 7.52.0

RETURN VALUE
       curl_easy_getinfo(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
       CURLINFO_EFFECTIVE_URL(3),      CURLINFO_PROTOCOL(3),	  CURLINFO_RE-
       SPONSE_CODE(3), curl_easy_getinfo(3), curl_easy_setopt(3)

libcurl				  2025-06-03		    CURLINFO_SCHEME(3)

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

home | help