Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

CURLOPT_XFERINFODATA (3)

Name

CURLOPT_XFERINFODATA - pointer passed to the progress callback

Synopsis

#include <curl/curl.h>

CURLcode curl_easy_setopt(CURL *handle, CURLOPT_XFERINFODATA, void *pointer);

Description

CURLOPT_XFERINFODATA(3)    curl_easy_setopt options    CURLOPT_XFERINFODATA(3)



NAME
       CURLOPT_XFERINFODATA - pointer passed to the progress callback

SYNOPSIS
       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_XFERINFODATA, void *pointer);

DESCRIPTION
       Pass  a  pointer  that  will  be untouched by libcurl and passed as the
       first argument in the progress callback set with  CURLOPT_XFERINFOFUNC-
       TION(3).

       This is an alias for CURLOPT_PROGRESSDATA(3).

DEFAULT
       The default value of this parameter is NULL.

PROTOCOLS
       All

EXAMPLE
        struct progress {
          char *private;
          size_t size;
        };

        static size_t progress_callback(void *clientp,
                                        curl_off_t dltotal,
                                        curl_off_t dlnow,
                                        curl_off_t ultotal,
                                        curl_off_t ulnow)
        {
          struct memory *progress = (struct progress *)userp;

          /* use the values */

          return 0; /* all is good */
        }

        struct progress data;

        /* pass struct to callback  */
        curl_easy_setopt(curl_handle, CURLOPT_XFERINFODATA, &data);

        curl_easy_setopt(curl_handle, CURLOPT_XFERINFOFUNCTION, progress_callback);

AVAILABILITY
       Added in 7.32.0

RETURN VALUE
       Returns CURLE_OK


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | web/curl         |
       +---------------+------------------+
       |Stability      | Uncommitted      |
       +---------------+------------------+

SEE ALSO
       CURLOPT_XFERINFOFUNCTION(3), CURLOPT_VERBOSE(3),



NOTES
       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source       was       downloaded      from       https://curl.se/down-
       load/curl-7.83.1.tar.bz2.

       Further information about this software can be found on the open source
       community website at http://curl.haxx.se/.



libcurl 7.83.1                 November 26, 2021       CURLOPT_XFERINFODATA(3)