262 lines
		
	
	
		
			7.8 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			262 lines
		
	
	
		
			7.8 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .\" **************************************************************************
 | |
| .\" *                                  _   _ ____  _
 | |
| .\" *  Project                     ___| | | |  _ \| |
 | |
| .\" *                             / __| | | | |_) | |
 | |
| .\" *                            | (__| |_| |  _ <| |___
 | |
| .\" *                             \___|\___/|_| \_\_____|
 | |
| .\" *
 | |
| .\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
 | |
| .\" *
 | |
| .\" * This software is licensed as described in the file COPYING, which
 | |
| .\" * you should have received as part of this distribution. The terms
 | |
| .\" * are also available at http://curl.haxx.se/docs/copyright.html.
 | |
| .\" *
 | |
| .\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
 | |
| .\" * copies of the Software, and permit persons to whom the Software is
 | |
| .\" * furnished to do so, under the terms of the COPYING file.
 | |
| .\" *
 | |
| .\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
 | |
| .\" * KIND, either express or implied.
 | |
| .\" *
 | |
| .\" **************************************************************************
 | |
| .\"
 | |
| .TH curl_easy_getinfo 3 "11 Feb 2009" "libcurl 7.19.4" "libcurl Manual"
 | |
| .SH NAME
 | |
| curl_easy_getinfo - extract information from a curl handle
 | |
| .SH SYNOPSIS
 | |
| .B #include <curl/curl.h>
 | |
| 
 | |
| .B "CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ... );"
 | |
| 
 | |
| .SH DESCRIPTION
 | |
| Request internal information from the curl session with this function.  The
 | |
| third argument \fBMUST\fP be a pointer to a long, a pointer to a char *, a
 | |
| pointer to a struct curl_slist * 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.  Use
 | |
| this function AFTER a performed transfer if you want to get transfer related
 | |
| data.
 | |
| 
 | |
| You should not free the memory returned by this function unless it is
 | |
| explicitly mentioned below.
 | |
| .SH AVAILABLE INFORMATION
 | |
| The following information can be extracted:
 | |
| 
 | |
| .IP CURLINFO_EFFECTIVE_URL
 | |
| Last used URL.
 | |
| See \fICURLINFO_EFFECTIVE_URL(3)\fP
 | |
| 
 | |
| .IP CURLINFO_RESPONSE_CODE
 | |
| Last received response code.
 | |
| See \fICURLINFO_RESPONSE_CODE(3)\fP
 | |
| 
 | |
| .IP CURLINFO_HTTP_CONNECTCODE
 | |
| Last proxy CONNECT response code.
 | |
| See \fICURLINFO_HTTP_CONNECTCODE(3)\fP
 | |
| 
 | |
| .IP CURLINFO_FILETIME
 | |
| Remote time of the retrieved document.
 | |
| See \fICURLINFO_FILETIME(3)\fP
 | |
| 
 | |
| .IP CURLINFO_TOTAL_TIME
 | |
| Total time of previous transfer.
 | |
| See \fICURLINFO_TOTAL_TIME(3)\fP
 | |
| 
 | |
| .IP CURLINFO_NAMELOOKUP_TIME
 | |
| Time from start until name resolving completed.
 | |
| See \fICURLINFO_NAMELOOKUP_TIME(3)\fP
 | |
| 
 | |
| .IP CURLINFO_CONNECT_TIME
 | |
| Time from start until remote host or proxy completed.
 | |
| See \fICURLINFO_CONNECT_TIME(3)\fP
 | |
| 
 | |
| .IP CURLINFO_APPCONNECT_TIME
 | |
| Time from start until SSL/SSH handshake completed.
 | |
| See \fICURLINFO_APPCONNECT_TIME(3)\fP
 | |
| 
 | |
| .IP CURLINFO_PRETRANSFER_TIME
 | |
| Time from start until just before the transfer begins.
 | |
| See \fICURLINFO_PRETRANSFER_TIME(3)\fP
 | |
| 
 | |
| .IP CURLINFO_STARTTRANSFER_TIME
 | |
| Time from start until just when the first byte is received.
 | |
| See \fICURLINFO_STARTTRANSFER_TIME(3)\fP
 | |
| 
 | |
| .IP CURLINFO_REDIRECT_TIME
 | |
| Time taken for all redirect steps before the final transfer.
 | |
| See \fICURLINFO_REDIRECT_TIME(3)\fP
 | |
| 
 | |
| .IP CURLINFO_REDIRECT_COUNT
 | |
| Total number of redirects that were followed.
 | |
| See \fICURLINFO_REDIRECT_COUNT(3)\fP
 | |
| 
 | |
| .IP CURLINFO_REDIRECT_URL
 | |
| URL a redirect would take you to, had you enabled redirects.
 | |
| See \fICURLINFO_REDIRECT_URL(3)\fP
 | |
| 
 | |
| .IP CURLINFO_SIZE_UPLOAD
 | |
| Number of bytes uploaded.
 | |
| See \fICURLINFO_SIZE_UPLOAD(3)\fP
 | |
| 
 | |
| .IP CURLINFO_SIZE_DOWNLOAD
 | |
| Number of bytes downloaded.
 | |
| See \fICURLINFO_SIZE_DOWNLOAD(3)\fP
 | |
| 
 | |
| .IP CURLINFO_SPEED_DOWNLOAD
 | |
| Average download speed.
 | |
| See \fICURLINFO_SPEED_DOWNLOAD(3)\fP
 | |
| 
 | |
| .IP CURLINFO_SPEED_UPLOAD
 | |
| Average upload speed.
 | |
| See \fICURLINFO_SPEED_UPLOAD(3)\fP
 | |
| 
 | |
| .IP CURLINFO_HEADER_SIZE
 | |
| Number of bytes of all headers received.
 | |
| See \fICURLINFO_HEADER_SIZE(3)\fP
 | |
| 
 | |
| .IP CURLINFO_REQUEST_SIZE
 | |
| Number of bytes sent in the issued HTTP requests.
 | |
| See \fICURLINFO_REQUEST_SIZE(3)\fP
 | |
| 
 | |
| .IP CURLINFO_SSL_VERIFYRESULT
 | |
| Certificate verification result.
 | |
| See \fICURLINFO_SSL_VERIFYRESULT(3)\fP
 | |
| 
 | |
| .IP CURLINFO_SSL_ENGINES
 | |
| A list of OpenSSL crypto engines.
 | |
| See \fICURLINFO_SSL_ENGINES(3)\fP
 | |
| 
 | |
| .IP CURLINFO_CONTENT_LENGTH_DOWNLOAD
 | |
| Content length from the Content-Length header.
 | |
| See \fICURLINFO_CONTENT_LENGTH_DOWNLOAD(3)\fP
 | |
| 
 | |
| .IP CURLINFO_CONTENT_LENGTH_UPLOAD
 | |
| Upload size.
 | |
| See \fICURLINFO_CONTENT_LENGTH_UPLOAD(3)\fP
 | |
| 
 | |
| .IP CURLINFO_CONTENT_TYPE
 | |
| Content type from the Content-Type header.
 | |
| See \fICURLINFO_CONTENT_TYPE(3)\fP
 | |
| 
 | |
| .IP CURLINFO_PRIVATE
 | |
| User's private data pointer.
 | |
| See \fICURLINFO_PRIVATE(3)\fP
 | |
| 
 | |
| .IP CURLINFO_HTTPAUTH_AVAIL
 | |
| Available HTTP authentication methods.
 | |
| See \fICURLINFO_HTTPAUTH_AVAIL(3)\fP
 | |
| 
 | |
| .IP CURLINFO_PROXYAUTH_AVAIL
 | |
| Available HTTP proxy authentication methods.
 | |
| See \fICURLINFO_PROXYAUTH_AVAIL(3)\fP
 | |
| 
 | |
| .IP CURLINFO_OS_ERRNO
 | |
| The errno from the last failure to connect.
 | |
| See \fICURLINFO_OS_ERRNO(3)\fP
 | |
| 
 | |
| .IP CURLINFO_NUM_CONNECTS
 | |
| Number of new successful connections used for previous transfer.
 | |
| See \fICURLINFO_NUM_CONNECTS(3)\fP
 | |
| 
 | |
| .IP CURLINFO_PRIMARY_IP
 | |
| IP address of the last connection.
 | |
| See \fICURLINFO_PRIMARY_IP(3)\fP
 | |
| 
 | |
| .IP CURLINFO_PRIMARY_PORT
 | |
| Port of the last connection.
 | |
| See \fICURLINFO_PRIMARY_PORT(3)\fP
 | |
| 
 | |
| .IP CURLINFO_LOCAL_IP
 | |
| Local-end IP address of last connection.
 | |
| See \fICURLINFO_LOCAL_IP(3)\fP
 | |
| 
 | |
| .IP CURLINFO_LOCAL_PORT
 | |
| Local-end port of last connection.
 | |
| See \fICURLINFO_LOCAL_PORT(3)\fP
 | |
| 
 | |
| .IP CURLINFO_COOKIELIST
 | |
| List of all known cookies.
 | |
| See \fICURLINFO_COOKIELIST(3)\fP
 | |
| 
 | |
| .IP CURLINFO_LASTSOCKET
 | |
| Last socket used.
 | |
| See \fICURLINFO_LASTSOCKET(3)\fP
 | |
| 
 | |
| .IP CURLINFO_ACTIVESOCKET
 | |
| The session's active socket.
 | |
| See \fICURLINFO_ACTIVESOCKET(3)\fP
 | |
| 
 | |
| .IP CURLINFO_FTP_ENTRY_PATH
 | |
| The entry path after logging in to an FTP server.
 | |
| See \fICURLINFO_FTP_ENTRY_PATH(3)\fP
 | |
| 
 | |
| .IP CURLINFO_CERTINFO
 | |
| Certificate chain.
 | |
| See \fICURLINFO_CERTINFO(3)\fP
 | |
| 
 | |
| .IP CURLINFO_TLS_SESSION
 | |
| TLS session info that can be used for further processing.
 | |
| See \fICURLINFO_TLS_SESSION(3)\fP
 | |
| 
 | |
| .IP CURLINFO_CONDITION_UNMET
 | |
| Whether or not a time conditional was met.
 | |
| See \fICURLINFO_CONDITION_UNMET(3)\fP
 | |
| 
 | |
| .IP CURLINFO_RTSP_SESSION_ID
 | |
| RTSP session ID.
 | |
| See \fICURLINFO_RTSP_SESSION_ID(3)\fP
 | |
| 
 | |
| .IP CURLINFO_RTSP_CLIENT_CSEQ
 | |
| RTSP CSeq that will next be used.
 | |
| See \fICURLINFO_RTSP_CLIENT_CSEQ(3)\fP
 | |
| 
 | |
| .IP CURLINFO_RTSP_SERVER_CSEQ
 | |
| RTSP CSeq that will next be expected.
 | |
| See \fICURLINFO_RTSP_SERVER_CSEQ(3)\fP
 | |
| 
 | |
| .IP CURLINFO_RTSP_CSEQ_RECV
 | |
| RTSP CSeq last received.
 | |
| See \fICURLINFO_RTSP_CSEQ_RECV(3)\fP
 | |
| 
 | |
| .SH TIMES
 | |
| .nf
 | |
| An overview of the six time values available from curl_easy_getinfo()
 | |
| 
 | |
| curl_easy_perform()
 | |
|     |
 | |
|     |--NAMELOOKUP
 | |
|     |--|--CONNECT
 | |
|     |--|--|--APPCONNECT
 | |
|     |--|--|--|--PRETRANSFER
 | |
|     |--|--|--|--|--STARTTRANSFER
 | |
|     |--|--|--|--|--|--TOTAL
 | |
|     |--|--|--|--|--|--REDIRECT
 | |
| .fi
 | |
| .IP NAMELOOKUP
 | |
| \fICURLINFO_NAMELOOKUP_TIME\fP. The time it took from the start until the name
 | |
| resolving was completed.
 | |
| .IP CONNECT
 | |
| \fICURLINFO_CONNECT_TIME\fP. The time it took from the start until the connect
 | |
| to the remote host (or proxy) was completed.
 | |
| .IP APPCONNECT
 | |
| \fICURLINFO_APPCONNECT_TIME\fP. The time it took from the start until the SSL
 | |
| connect/handshake with the remote host was completed. (Added in in 7.19.0)
 | |
| .IP PRETRANSFER
 | |
| \fICURLINFO_PRETRANSFER_TIME\fP. The time 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.
 | |
| .IP STARTTRANSFER
 | |
| \fICURLINFO_STARTTRANSFER_TIME\fP. The time it took from the start until the
 | |
| first byte is received by libcurl.
 | |
| .IP TOTAL
 | |
| \fICURLINFO_TOTAL_TIME\fP. Total time of the previous request.
 | |
| .IP REDIRECT
 | |
| \fICURLINFO_REDIRECT_TIME\fP. The time it took for all redirection steps
 | |
| include name lookup, connect, pretransfer and transfer before final
 | |
| transaction was started. So, this is zero if no redirection took place.
 | |
| .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)"
 | 
