DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

CURLOPT_POSTFIELDSIZE(3)





CURLOPT_POSTFIELDSIZE(3curl_easy_setopt optionCURLOPT_POSTFIELDSIZE(3)



NAME

     CURLOPT_POSTFIELDSIZE - size of POST data pointed to


SYNOPSIS

     #include <curl/curl.h>

     CURLcode           curl_easy_setopt(CURL            *handle,
     CURLOPT_POSTFIELDSIZE, long size);


DESCRIPTION

     If you want to post data to the server without  having  lib-
     curl  do  a  strlen()  to measure the data size, this option
     must be used. When this option is used you  can  post  fully
     binary data, which otherwise is likely to fail. If this size
     is set to -1, the library will use strlen() to get the size.

     If      you      post      more      than      2GB,      use
     CURLOPT_POSTFIELDSIZE_LARGE(3).


DEFAULT

     -1


PROTOCOLS

     HTTP


EXAMPLE

     CURL *curl = curl_easy_init();
     if(curl) {
       const char *data = "data to send";

       curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");

       /* size of the POST data */
       curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (long) strlen(data));

       curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);

       curl_easy_perform(curl);
     }


AVAILABILITY

     Along with HTTP


RETURN VALUE

     Returns    CURLE_OK    if    HTTP    is    supported,    and
     CURLE_UNKNOWN_OPTION if not.


SEE ALSO

     CURLOPT_POSTFIELDS(3), CURLOPT_POSTFIELDSIZE_LARGE(3),

libcurl 7.58.0   Last change: February 03, 2016                 1


Man(1) output converted with man2html