Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CURLOPT_INFILESIZE(3)	    Library Functions Manual	   CURLOPT_INFILESIZE(3)

NAME
     CURLOPT_INFILESIZE - size of the input file to send off

SYNOPSIS
     #include <curl/curl.h>

     CURLcode curl_easy_setopt(CURL *handle, CURLOPT_INFILESIZE, long filesize);

DESCRIPTION
     When  uploading  a  file  to a remote site, filesize should be used to tell
     libcurl what the expected size of the input file is.  This  value	must  be
     passed  as  a  long. See also CURLOPT_INFILESIZE_LARGE(3) for sending files
     larger than 2GB.

     For uploading using SCP,  this  option  or  CURLOPT_INFILESIZE_LARGE(3)  is
     mandatory.

     To unset this value again, set it to -1.

     Using  CURLOPT_UPLOAD(3)  to  an  HTTP/1.1 server and this value set to -1,
     makes libcurl do a chunked transfer-encoded upload.

     When sending emails using SMTP, this command can be used to specify the op-
     tional SIZE parameter for the MAIL FROM command.

     This option does not limit how much data libcurl actually sends, as that is
     controlled entirely by what the read  callback  returns,  but  telling  one
     value and sending a different amount may lead to errors.

DEFAULT
     Unset

PROTOCOLS
     This functionality affects all supported protocols

EXAMPLE
     #define FILE_SIZE 12345L

     int main(void)
     {
       CURL *curl = curl_easy_init();
       if(curl) {
	 CURLcode result;
	 long uploadsize = FILE_SIZE;

	 curl_easy_setopt(curl, CURLOPT_URL,
			  "ftp://example.com/destination.tar.gz");

	 curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);

	 curl_easy_setopt(curl, CURLOPT_INFILESIZE, uploadsize);

	 result = curl_easy_perform(curl);
	 curl_easy_cleanup(curl);
       }
     }

HISTORY
     SMTP support added in 7.23.0

AVAILABILITY
     Added in curl 7.1

RETURN VALUE
     curl_easy_setopt(3) returns a CURLcode indicating success or error.

     CURLE_OK (0) means everything was OK, non-zero means an error occurred, see
     libcurl-errors(3).

SEE ALSO
     CURLINFO_CONTENT_LENGTH_UPLOAD_T(3),    CURLOPT_INFILESIZE_LARGE(3),   CUR-
     LOPT_UPLOAD(3)

libcurl 			   2026-06-11		   CURLOPT_INFILESIZE(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=CURLOPT_INFILESIZE&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help