DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

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