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

FreeBSD Manual Pages

  
 
  

home | help
CURLINFO_ACTIVESOCKET(3)   curl_easy_getinfo options  CURLINFO_ACTIVESOCKET(3)

NAME
       CURLINFO_ACTIVESOCKET - get the active socket

SYNOPSIS
       #include	<curl/curl.h>

       CURLcode	curl_easy_getinfo(CURL *handle,	CURLINFO_ACTIVESOCKET,
				  curl_socket_t	*socket);

DESCRIPTION
       Pass  a	pointer	to a curl_socket_t to receive the most recently	active
       socket used for the transfer connection by this curl  session.  If  the
       socket  is  no  longer valid, CURL_SOCKET_BAD is	returned. When you are
       finished	working	with the socket, you must call curl_easy_cleanup(3) as
       usual  on  the easy handle and let libcurl close	the socket and cleanup
       other resources associated with the handle. This	option returns the ac-
       tive  socket only after the transfer is complete, and is	typically used
       in combination with CURLOPT_CONNECT_ONLY(3), which skips	 the  transfer
       phase.

       CURLINFO_ACTIVESOCKET(3)	 was added as a	replacement for	CURLINFO_LAST-
       SOCKET(3) since that one	isn't working on all platforms.

PROTOCOLS
       All

EXAMPLE
       CURL *curl = curl_easy_init();
       if(curl)	{
	 curl_socket_t sockfd;
	 curl_easy_setopt(curl,	CURLOPT_URL, "http://example.com");

	 /* Do not do the transfer - only connect to host */
	 curl_easy_setopt(curl,	CURLOPT_CONNECT_ONLY, 1L);
	 res = curl_easy_perform(curl);

	 /* Extract the	socket from the	curl handle */
	 res = curl_easy_getinfo(curl, CURLINFO_ACTIVESOCKET, &sockfd);

	 if(res	!= CURLE_OK) {
	   printf("Error: %s\n", curl_easy_strerror(res));
	   return 1;
	 }
       }

AVAILABILITY
       Added in	7.45.0

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

SEE ALSO
       curl_easy_getinfo(3), curl_easy_setopt(3), CURLINFO_LASTSOCKET(3),

libcurl	7.72.0			 June 04, 2020	      CURLINFO_ACTIVESOCKET(3)

NAME | SYNOPSIS | DESCRIPTION | PROTOCOLS | EXAMPLE | AVAILABILITY | RETURN VALUE | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=CURLINFO_ACTIVESOCKET&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help