CURLOPT_CLOSESOCKETDATA - Man Page

pointer passed to the socket close callback

Synopsis

#include <curl/curl.h>

CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CLOSESOCKETDATA,
                          void *pointer);

Description

Pass a pointer that will be untouched by libcurl and passed as the first argument in the closesocket callback set with CURLOPT_CLOSESOCKETFUNCTION(3).

Default

The default value of this parameter is NULL.

Protocols

All except file:

Example

static int closesocket(void *clientp, curl_socket_t item)
{
  printf("libcurl wants to close %d now\n", (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_CLOSESOCKETFUNCTION(3), CURLOPT_OPENSOCKETFUNCTION(3),

Referenced By

curl_easy_setopt(3), CURLOPT_CLOSESOCKETFUNCTION(3).

January 02, 2023 libcurl 8.0.1 curl_easy_setopt options