2
0
mirror of https://codeberg.org/kiss-community/repo synced 2024-08-19 20:56:58 +00:00
repo/core/curl/files/CURLOPT_WRITEDATA.3
2024-06-01 15:49:19 -05:00

43 lines
1.6 KiB
Groff

.\" generated by cd2nroff 0.1 from CURLOPT_WRITEDATA.md
.TH CURLOPT_WRITEDATA 3 "2024-06-01" libcurl
.SH NAME
CURLOPT_WRITEDATA \- pointer passed to the write callback
.SH SYNOPSIS
.nf
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_WRITEDATA, void *pointer);
.fi
.SH DESCRIPTION
A data \fIpointer\fP to pass to the write callback. If you use the
\fICURLOPT_WRITEFUNCTION(3)\fP option, this is the pointer you get in that
callback\(aqs fourth and last argument. If you do not use a write callback, you
must make \fIpointer\fP a \(aqFILE \fI\(aq (cast to \(aqvoid \fP\(aq) as libcurl passes this
to \fIfwrite(3)\fP when writing data.
The internal \fICURLOPT_WRITEFUNCTION(3)\fP writes the data to the FILE *
given with this option, or to stdout if this option has not been set.
If you are using libcurl as a Windows DLL, you \fBMUST\fP use a
\fICURLOPT_WRITEFUNCTION(3)\fP if you set this option or you might experience
crashes.
.SH DEFAULT
By default, this is a FILE * to stdout.
.SH PROTOCOLS
All
.SH EXAMPLE
A common technique is to use the write callback to store the incoming data
into a dynamically growing allocated buffer, and then this
\fICURLOPT_WRITEDATA(3)\fP is used to point to a struct or the buffer to store
data in. Like in the getinmemory example:
https://curl.se/libcurl/c/getinmemory.html
.SH AVAILABILITY
Available in all libcurl versions. This option was formerly known as
CURLOPT_FILE, the name \fICURLOPT_WRITEDATA(3)\fP was added in 7.9.7.
.SH RETURN VALUE
This returns CURLE_OK.
.SH SEE ALSO
.BR CURLOPT_HEADERDATA (3),
.BR CURLOPT_READDATA (3),
.BR CURLOPT_WRITEFUNCTION (3)