| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- .\" generated by cd2nroff 0.1 from CURLOPT_DEBUGDATA.md
- .TH CURLOPT_DEBUGDATA 3 "2025-01-17" libcurl
- .SH NAME
- CURLOPT_DEBUGDATA \- pointer passed to the debug callback
- .SH SYNOPSIS
- .nf
- #include <curl/curl.h>
- CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DEBUGDATA, void *pointer);
- .fi
- .SH DESCRIPTION
- Pass a \fIpointer\fP to whatever you want passed in to your
- \fICURLOPT_DEBUGFUNCTION(3)\fP in the last void * argument. This pointer is
- not used by libcurl, it is only passed to the callback.
- .SH DEFAULT
- NULL
- .SH PROTOCOLS
- This functionality affects all supported protocols
- .SH EXAMPLE
- .nf
- struct data {
- void *custom;
- };
- static int my_trace(CURL *handle, curl_infotype type,
- char *data, size_t size,
- void *clientp)
- {
- struct data *mine = clientp;
- printf("our ptr: %p\\n", mine->custom);
- /* output debug info */
- }
- int main(void)
- {
- CURL *curl;
- CURLcode res;
- struct data my_tracedata;
- curl = curl_easy_init();
- if(curl) {
- curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);
- curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &my_tracedata);
- /* the DEBUGFUNCTION has no effect until we enable VERBOSE */
- curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
- curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
- res = curl_easy_perform(curl);
- /* always cleanup */
- curl_easy_cleanup(curl);
- }
- return 0;
- }
- .fi
- .SH AVAILABILITY
- Added in curl 7.9.6
- .SH RETURN VALUE
- Returns CURLE_OK
- .SH SEE ALSO
- .BR CURLOPT_DEBUGFUNCTION (3),
- .BR CURLOPT_STDERR (3)
|