Provided by: libcurl4-doc_8.11.0-1ubuntu2_all bug

NAME

       CURLMOPT_TIMERDATA - custom pointer to pass to timer callback

SYNOPSIS

       #include <curl/curl.h>

       CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_TIMERDATA, void *pointer);

DESCRIPTION

       A  data  pointer  to  pass  to  the  timer callback set with the CURLMOPT_TIMERFUNCTION(3)
       option.

       This pointer is not touched by libcurl but is only be passed in to  the  timer  callback's
       clientp argument.

DEFAULT

       NULL

PROTOCOLS

       This functionality affects all supported protocols

EXAMPLE

       struct priv {
         void *custom;
       };

       static int timerfunc(CURLM *multi, long timeout_ms, void *clientp)
       {
        struct priv *mydata = clientp;
        printf("our ptr: %p\n", mydata->custom);

        if(timeout_ms) {
          /* this is the new single timeout to wait for */
        }
        else {
          /* delete the timeout, nothing to wait for now */
        }
       }

       int main(void)
       {
         struct priv mydata;
         CURLM *multi = curl_multi_init();
         curl_multi_setopt(multi, CURLMOPT_TIMERFUNCTION, timerfunc);
         curl_multi_setopt(multi, CURLMOPT_TIMERDATA, &mydata);
       }

AVAILABILITY

       Added in curl 7.16.0

RETURN VALUE

       Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not.

SEE ALSO

       CURLMOPT_SOCKETFUNCTION(3), CURLMOPT_TIMERFUNCTION(3)