curl_easy_perform - Perform a file transfer


SYNOPSIS

       #include <curl/curl.h>

       CURLcode curl_easy_perform(CURL *handle);


DESCRIPTION

       This  function  is  called  after  the  init  and  all the
       curl_easy_setopt() calls are made, and  will  perform  the
       transfer  as  described in the options.  It must be called
       with the same handle as input as the  curl_easy_init  call
       returned.

       libcurl  version  7.7  or  later  (for  older versions see
       below): You can do any amount of calls  to  curl_easy_per-
       form()  while  using  the  same  handle.  If you intend to
       transfer more than one file, you are even encouraged to do
       so.  libcurl  will then attempt to re-use the same connec-
       tion for the following transfers, thus making  the  opera-
       tions  faster,  less  CPU  intense  and using less network
       resources.  Just  note  that  you   will   have   to   use
       curl_easy_setopt  between  the  invokes to set options for
       the following curl_easy_perform.

       You must never call this function simultaneously from  two
       places  using  the  same  handle.  Let the function return
       first before invoking it another time. If you want  paral-
       lel transfers, you must use several curl handles.

       Before  libcurl  version 7.7: You are only allowed to call
       this function once using the same handle. If you  want  to
       do  repeated  calls,  you  must call curl_easy_cleanup and
       curl_easy_init again first.


RETURN VALUE

       0  means  everything  was  ok,  non-zero  means  an  error
       occurred  as  <curl/curl.h> defines. If the CURLOPT_ERROR-
       BUFFER was set with curl_easy_setopt there will be a read-
       able  error  message  in the error buffer when non-zero is
       returned.


SEE ALSO

       curl_easy_init(3), curl_easy_setopt(3),


BUGS

       Surely there are some, you tell me!






Man(1) output converted with man2html