CURLOPT_CLOSESOCKETFUNCTION(3)
CURLOPT_CLOSESOCKETFUNCTION(3curl_easy_setopt optionCURLOPT_CLOSESOCKETFUNCTION(3)
NAME
CURLOPT_CLOSESOCKETFUNCTION - callback to socket close
replacement function
SYNOPSIS
#include <curl/curl.h>
int closesocket_callback(void *clientp, curl_socket_t item);
CURLcode curl_easy_setopt(CURL *handle,
CURLOPT_CLOSESOCKETFUNCTION, closesocket_callback);
DESCRIPTION
Pass a pointer to your callback function, which should match
the prototype shown above.
This callback function gets called by libcurl instead of the
close(3) or closesocket(3) call when sockets are closed (not
for any other file descriptors). This is pretty much the
reverse to the CURLOPT_OPENSOCKETFUNCTION(3) option. Return
0 to signal success and 1 if there was an error.
The clientp pointer is set with CURLOPT_CLOSESOCKETDATA(3).
item is the socket libcurl wants to be closed.
DEFAULT
By default libcurl uses the standard socket close function.
PROTOCOLS
All
EXAMPLE
static int closesocket(void *clientp, curl_socket_t item)
{
printf("libcurl wants to close %d now0, (int)item);
return 0;
}
/* call this function to close sockets */
curl_easy_setopt(curl, CURLOPT_CLOSESOCKETFUNCTION, closesocket);
curl_easy_setopt(curl, CURLOPT_CLOSESOCKETDATA, &sockfd);
AVAILABILITY
Added in 7.21.7
RETURN VALUE
Returns CURLE_OK if the option is supported, and
CURLE_UNKNOWN_OPTION if not.
SEE ALSO
CURLOPT_CLOSESOCKETDATA(3), CURLOPT_OPENSOCKETFUNCTION(3),
libcurl 7.58.0 Last change: May 31, 2017 1
Man(1) output converted with
man2html