Provided by: libcurl4-doc_8.5.0-2ubuntu10.1_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  callbacks's
       clientp argument.

DEFAULT

       NULL

PROTOCOLS

       All

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 7.16.0

RETURN VALUE

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

SEE ALSO

       CURLMOPT_TIMERFUNCTION(3), CURLMOPT_SOCKETFUNCTION(3)