| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- .\" generated by cd2nroff 0.1 from CURLMOPT_TIMERDATA.md
- .TH CURLMOPT_TIMERDATA 3 "2025-01-17" libcurl
- .SH NAME
- CURLMOPT_TIMERDATA \- custom pointer to pass to timer callback
- .SH SYNOPSIS
- .nf
- #include <curl/curl.h>
- CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_TIMERDATA, void *pointer);
- .fi
- .SH DESCRIPTION
- A data \fBpointer\fP to pass to the timer callback set with the
- \fICURLMOPT_TIMERFUNCTION(3)\fP option.
- This pointer is not touched by libcurl but is only be passed in to the timer
- callback\(aqs \fBclientp\fP argument.
- .SH DEFAULT
- NULL
- .SH PROTOCOLS
- This functionality affects all supported protocols
- .SH EXAMPLE
- .nf
- 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);
- }
- .fi
- .SH AVAILABILITY
- Added in curl 7.16.0
- .SH RETURN VALUE
- Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not.
- .SH SEE ALSO
- .BR CURLMOPT_SOCKETFUNCTION (3),
- .BR CURLMOPT_TIMERFUNCTION (3)
|