| .\" You can view this file with: |
| .\" nroff -man [file] |
| .\" $Id$ |
| .\" |
| .TH curl_easy_init 3 "5 March 2001" "libcurl 7.6.1" "libcurl Manual" |
| .SH NAME |
| curl_easy_getinfo - Extract information from a curl session (added in 7.4) |
| .SH SYNOPSIS |
| .B #include <curl/curl.h> |
| .sp |
| .BI "CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ... );" |
| .ad |
| .SH DESCRIPTION |
| Request internal information from the curl session with this function. The |
| third argument |
| .B MUST |
| be a pointer to a long, a pointer to a char * or a pointer to a double (as |
| this documentation describes further down). The data pointed-to will be |
| filled in accordingly and can be relied upon only if the function returns |
| CURLE_OK. This function is intended to get used *AFTER* a performed transfer, |
| all results from this function are undefined until the transfer is completed. |
| .SH AVAILABLE INFORMATION |
| These are informations that can be extracted: |
| .TP 0.8i |
| .B CURLINFO_EFFECTIVE_URL |
| Pass a pointer to a 'char *' to receive the last used effective URL. |
| .TP |
| .B CURLINFO_HTTP_CODE |
| Pass a pointer to a long to receive the last received HTTP code. |
| .TP |
| .B CURLINFO_FILETIME |
| Pass a pointer to a long to receive the remote time of the retrieved |
| document. If you get 0, it can be because of many reasons (unknown, the server |
| hides it or the server doesn't support the command that tells document time |
| etc) and the time of the document is unknown. (Added in 7.5) |
| .TP |
| .B CURLINFO_TOTAL_TIME |
| Pass a pointer to a double to receive the total transaction time in seconds |
| for the previous transfer. |
| .TP |
| .B CURLINFO_NAMELOOKUP_TIME |
| Pass a pointer to a double to receive the time, in seconds, it took from the |
| start until the name resolving was completed. |
| .TP |
| .B CURLINFO_CONNECT_TIME |
| Pass a pointer to a double to receive the time, in seconds, it took from the |
| start until the connect to the remote host (or proxy) was completed. |
| .TP |
| .B CURLINFO_PRETRANSFER_TIME |
| Pass a pointer to a double to receive the time, in seconds, it took from the |
| start until the file transfer is just about to begin. This includes all |
| pre-transfer commands and negotiations that are specific to the particular |
| protocol(s) involved. |
| .TP |
| .B CURLINFO_SIZE_UPLOAD |
| Pass a pointer to a double to receive the total amount of bytes that were |
| uploaded. |
| .TP |
| .B CURLINFO_SIZE_DOWNLOAD |
| Pass a pointer to a double to receive the total amount of bytes that were |
| downloaded. |
| .TP |
| .B CURLINFO_SPEED_DOWNLOAD |
| Pass a pointer to a double to receive the average download speed that curl |
| measured for the complete download. |
| .TP |
| .B CURLINFO_SPEED_UPLOAD |
| Pass a pointer to a double to receive the average upload speed that curl |
| measured for the complete upload. |
| .TP |
| .B CURLINFO_HEADER_SIZE |
| Pass a pointer to a long to receive the total size of all the headers |
| received. |
| .TP |
| .B CURLINFO_REQUEST_SIZE |
| Pass a pointer to a long to receive the total size of the issued |
| requests. This is so far only for HTTP requests. Note that this may be more |
| than one request if FOLLOWLOCATION is true. |
| .TP |
| .B CURLINFO_SSL_VERIFYRESULT |
| Pass a pointer to a long to receive the result of the certification |
| verification that was requested (using the CURLOPT_SSL_VERIFYPEER option to |
| curl_easy_setopt). (Added in 7.4.2) |
| .TP |
| .B CURLINFO_CONTENT_LENGTH_DOWNLOAD |
| Pass a pointer to a double to receive the content-length of the download. This |
| is the value read from the Content-Length: field. (Added in 7.6.1) |
| .TP |
| .B CURLINFO_CONTENT_LENGTH_UPLOAD |
| Pass a pointer to a double to receive the specified size of the upload. |
| (Added in 7.6.1) |
| .PP |
| |
| .SH RETURN VALUE |
| If the operation was successful, CURLE_OK is returned. Otherwise an |
| appropriate error code will be returned. |
| .SH "SEE ALSO" |
| .BR curl_easy_setopt "(3)" |
| .SH BUGS |
| Surely there are some, you tell me! |