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

FreeBSD Manual Pages

  
 
  

home | help
curl_easy_getinfo(3)		libcurl	Manual		  curl_easy_getinfo(3)

NAME
       curl_easy_getinfo - extract information from a curl handle

SYNOPSIS
       #include	<curl/curl.h>

       CURLcode	curl_easy_getinfo(CURL *curl, CURLINFO info, ... );

DESCRIPTION
       Request	internal information from the curl session with	this function.
       The third argument MUST 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 re-
       turns 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.

AVAILABLE INFORMATION
       The following information can be	extracted:

       CURLINFO_EFFECTIVE_METHOD
	      Last used	HTTP method.  See CURLINFO_EFFECTIVE_METHOD(3)

       CURLINFO_EFFECTIVE_URL
	      Last used	URL.  See CURLINFO_EFFECTIVE_URL(3)

       CURLINFO_RESPONSE_CODE
	      Last received response code.  See	CURLINFO_RESPONSE_CODE(3)

       CURLINFO_HTTP_CONNECTCODE
	      Last proxy CONNECT response  code.   See	CURLINFO_HTTP_CONNECT-
	      CODE(3)

       CURLINFO_HTTP_VERSION
	      The http version used in the connection.	See CURLINFO_HTTP_VER-
	      SION(3)

       CURLINFO_FILETIME
	      Remote time of the retrieved document. See CURLINFO_FILETIME(3)

       CURLINFO_FILETIME_T
	      Remote  time  of	the  retrieved	document.  See	CURLINFO_FILE-
	      TIME_T(3)

       CURLINFO_TOTAL_TIME
	      Total time of previous transfer.	See CURLINFO_TOTAL_TIME(3)

       CURLINFO_TOTAL_TIME_T
	      Total time of previous transfer.	See CURLINFO_TOTAL_TIME_T(3)

       CURLINFO_NAMELOOKUP_TIME
	      Time   from   start   until   name   resolving  completed.   See
	      CURLINFO_NAMELOOKUP_TIME(3)

       CURLINFO_NAMELOOKUP_TIME_T
	      Time  from  start	  until	  name	 resolving   completed.	   See
	      CURLINFO_NAMELOOKUP_TIME_T(3)

       CURLINFO_CONNECT_TIME
	      Time  from  start	 until	remote	host  or proxy completed.  See
	      CURLINFO_CONNECT_TIME(3)

       CURLINFO_CONNECT_TIME_T
	      Time from	start until  remote  host  or  proxy  completed.   See
	      CURLINFO_CONNECT_TIME_T(3)

       CURLINFO_APPCONNECT_TIME
	      Time   from   start  until  SSL/SSH  handshake  completed.   See
	      CURLINFO_APPCONNECT_TIME(3)

       CURLINFO_APPCONNECT_TIME_T
	      Time  from  start	 until	SSL/SSH	 handshake   completed.	   See
	      CURLINFO_APPCONNECT_TIME_T(3)

       CURLINFO_PRETRANSFER_TIME
	      Time  from  start	 until	just  before the transfer begins.  See
	      CURLINFO_PRETRANSFER_TIME(3)

       CURLINFO_PRETRANSFER_TIME_T
	      Time from	start until just  before  the  transfer	 begins.   See
	      CURLINFO_PRETRANSFER_TIME_T(3)

       CURLINFO_STARTTRANSFER_TIME
	      Time from	start until just when the first	byte is	received.  See
	      CURLINFO_STARTTRANSFER_TIME(3)

       CURLINFO_STARTTRANSFER_TIME_T
	      Time from	start until just when the first	byte is	received.  See
	      CURLINFO_STARTTRANSFER_TIME_T(3)

       CURLINFO_REDIRECT_TIME
	      Time  taken  for	all  redirect steps before the final transfer.
	      See CURLINFO_REDIRECT_TIME(3)

       CURLINFO_REDIRECT_TIME_T
	      Time taken for all redirect steps	 before	 the  final  transfer.
	      See CURLINFO_REDIRECT_TIME_T(3)

       CURLINFO_REDIRECT_COUNT
	      Total  number of redirects that were followed.  See CURLINFO_RE-
	      DIRECT_COUNT(3)

       CURLINFO_REDIRECT_URL
	      URL a redirect would take	you to,	 had  you  enabled  redirects.
	      See CURLINFO_REDIRECT_URL(3)

       CURLINFO_SIZE_UPLOAD
	      (Deprecated)  Number  of	bytes uploaded.	 See CURLINFO_SIZE_UP-
	      LOAD(3)

       CURLINFO_SIZE_UPLOAD_T
	      Number of	bytes uploaded.	 See CURLINFO_SIZE_UPLOAD_T(3)

       CURLINFO_SIZE_DOWNLOAD
	      (Deprecated)    Number	 of	bytes	  downloaded.	   See
	      CURLINFO_SIZE_DOWNLOAD(3)

       CURLINFO_SIZE_DOWNLOAD_T
	      Number of	bytes downloaded.  See CURLINFO_SIZE_DOWNLOAD_T(3)

       CURLINFO_SPEED_DOWNLOAD
	      (Deprecated)  Average  download speed.  See CURLINFO_SPEED_DOWN-
	      LOAD(3)

       CURLINFO_SPEED_DOWNLOAD_T
	      Average download speed.  See CURLINFO_SPEED_DOWNLOAD_T(3)

       CURLINFO_SPEED_UPLOAD
	      (Deprecated) Average upload speed.  See CURLINFO_SPEED_UPLOAD(3)

       CURLINFO_SPEED_UPLOAD_T
	      Average upload speed.  See CURLINFO_SPEED_UPLOAD_T(3)

       CURLINFO_HEADER_SIZE
	      Number   of   bytes    of	   all	  headers    received.	   See
	      CURLINFO_HEADER_SIZE(3)

       CURLINFO_REQUEST_SIZE
	      Number   of  bytes  sent	in  the	 issued	 HTTP  requests.   See
	      CURLINFO_REQUEST_SIZE(3)

       CURLINFO_SSL_VERIFYRESULT
	      Certificate  verification	 result.   See	CURLINFO_SSL_VERIFYRE-
	      SULT(3)

       CURLINFO_PROXY_SSL_VERIFYRESULT
	      Proxy	  certificate	   verification	     result.	   See
	      CURLINFO_PROXY_SSL_VERIFYRESULT(3)

       CURLINFO_SSL_ENGINES
	      A	list of	OpenSSL	crypto engines.	 See CURLINFO_SSL_ENGINES(3)

       CURLINFO_CONTENT_LENGTH_DOWNLOAD
	      (Deprecated) Content length from the Content-Length header.  See
	      CURLINFO_CONTENT_LENGTH_DOWNLOAD(3)

       CURLINFO_CONTENT_LENGTH_DOWNLOAD_T
	      Content	 length	  from	 the   Content-Length	header.	   See
	      CURLINFO_CONTENT_LENGTH_DOWNLOAD_T(3)

       CURLINFO_CONTENT_LENGTH_UPLOAD
	      (Deprecated) Upload size.	See CURLINFO_CONTENT_LENGTH_UPLOAD(3)

       CURLINFO_CONTENT_LENGTH_UPLOAD_T
	      Upload size.  See	CURLINFO_CONTENT_LENGTH_UPLOAD_T(3)

       CURLINFO_CONTENT_TYPE
	      Content type from	the Content-Type  header.   See	 CURLINFO_CON-
	      TENT_TYPE(3)

       CURLINFO_RETRY_AFTER
	      The   value   from   the	 from  the  Retry-After	 header.   See
	      CURLINFO_RETRY_AFTER(3)

       CURLINFO_PRIVATE
	      User's private data pointer.  See	CURLINFO_PRIVATE(3)

       CURLINFO_HTTPAUTH_AVAIL
	      Available	     HTTP      authentication	   methods.	   See
	      CURLINFO_HTTPAUTH_AVAIL(3)

       CURLINFO_PROXYAUTH_AVAIL
	      Available	HTTP proxy authentication methods.  See	CURLINFO_PROX-
	      YAUTH_AVAIL(3)

       CURLINFO_OS_ERRNO
	      The errno	from the last failure to connect.  See CURLINFO_OS_ER-
	      RNO(3)

       CURLINFO_NUM_CONNECTS
	      Number of	new successful connections used	for previous transfer.
	      See CURLINFO_NUM_CONNECTS(3)

       CURLINFO_PRIMARY_IP
	      IP address of the	last connection.  See CURLINFO_PRIMARY_IP(3)

       CURLINFO_PRIMARY_PORT
	      Port of the last connection.  See	CURLINFO_PRIMARY_PORT(3)

       CURLINFO_LOCAL_IP
	      Local-end	IP  address  of	 last  connection.   See  CURLINFO_LO-
	      CAL_IP(3)

       CURLINFO_LOCAL_PORT
	      Local-end	port of	last connection.  See CURLINFO_LOCAL_PORT(3)

       CURLINFO_COOKIELIST
	      List of all known	cookies.  See CURLINFO_COOKIELIST(3)

       CURLINFO_LASTSOCKET
	      Last socket used.	 See CURLINFO_LASTSOCKET(3)

       CURLINFO_ACTIVESOCKET
	      The session's active socket.  See	CURLINFO_ACTIVESOCKET(3)

       CURLINFO_FTP_ENTRY_PATH
	      The  entry  path	after  logging	in  to	an  FTP	 server.   See
	      CURLINFO_FTP_ENTRY_PATH(3)

       CURLINFO_CERTINFO
	      Certificate chain.  See CURLINFO_CERTINFO(3)

       CURLINFO_TLS_SSL_PTR
	      TLS session info that can	be used	for further  processing.   See
	      CURLINFO_TLS_SSL_PTR(3)

       CURLINFO_TLS_SESSION
	      TLS  session  info that can be used for further processing.  See
	      CURLINFO_TLS_SESSION(3).	    Deprecated	     option,	   use
	      CURLINFO_TLS_SSL_PTR(3) instead!

       CURLINFO_CONDITION_UNMET
	      Whether  or not a	time conditional was met or 304	HTTP response.
	      See CURLINFO_CONDITION_UNMET(3)

       CURLINFO_RTSP_SESSION_ID
	      RTSP session ID.	See CURLINFO_RTSP_SESSION_ID(3)

       CURLINFO_RTSP_CLIENT_CSEQ
	      RTSP    CSeq    that     will	next	 be	used.	   See
	      CURLINFO_RTSP_CLIENT_CSEQ(3)

       CURLINFO_RTSP_SERVER_CSEQ
	      RTSP     CSeq    that    will    next    be    expected.	   See
	      CURLINFO_RTSP_SERVER_CSEQ(3)

       CURLINFO_RTSP_CSEQ_RECV
	      RTSP CSeq	last received.	See CURLINFO_RTSP_CSEQ_RECV(3)

       CURLINFO_PROTOCOL
	      The protocol used	for the	 connection.  (Added  in  7.52.0)  See
	      CURLINFO_PROTOCOL(3)

       CURLINFO_SCHEME
	      The  scheme  used	 for  the  connection.	(Added	in 7.52.0) See
	      CURLINFO_SCHEME(3)

TIMES
       An overview of the six time values available from curl_easy_getinfo()

       curl_easy_perform()
	   |
	   |--NAMELOOKUP
	   |--|--CONNECT
	   |--|--|--APPCONNECT
	   |--|--|--|--PRETRANSFER
	   |--|--|--|--|--STARTTRANSFER
	   |--|--|--|--|--|--TOTAL
	   |--|--|--|--|--|--REDIRECT

       NAMELOOKUP
	      CURLINFO_NAMELOOKUP_TIME	and  CURLINFO_NAMELOOKUP_TIME_T.   The
	      time  it	took  from the start until the name resolving was com-
	      pleted.

       CONNECT
	      CURLINFO_CONNECT_TIME and	CURLINFO_CONNECT_TIME_T.  The time  it
	      took  from  the  start  until the	connect	to the remote host (or
	      proxy) was completed.

       APPCONNECT
	      CURLINFO_APPCONNECT_TIME	and  CURLINFO_APPCONNECT_TIME_T.   The
	      time it took from	the start until	the SSL	connect/handshake with
	      the remote host was completed. (Added in 7.19.0) The  latter  is
	      the integer version (measuring microseconds).  (Added in 7.60.0)

       PRETRANSFER
	      CURLINFO_PRETRANSFER_TIME	 and CURLINFO_PRETRANSFER_TIME_T.  The
	      time it took from	the start until	 the  file  transfer  is  just
	      about  to	begin. This includes all pre-transfer commands and ne-
	      gotiations that are specific to the particular  protocol(s)  in-
	      volved.

       STARTTRANSFER
	      CURLINFO_STARTTRANSFER_TIME  and	CURLINFO_STARTTRANSFER_TIME_T.
	      The time it took from the	start until the	first byte is received
	      by libcurl.

       TOTAL  CURLINFO_TOTAL_TIME  and	CURLINFO_TOTAL_TIME_T.	 Total time of
	      the previous request.

       REDIRECT
	      CURLINFO_REDIRECT_TIME and CURLINFO_REDIRECT_TIME_T.   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.

RETURN VALUE
       If the operation	was successful,	CURLE_OK is returned. Otherwise	an ap-
       propriate error code will be returned.

SEE ALSO
       curl_easy_setopt(3)

libcurl	7.72.0			 July 13, 2020		  curl_easy_getinfo(3)

NAME | SYNOPSIS | DESCRIPTION | AVAILABLE INFORMATION | TIMES | RETURN VALUE | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=curl_easy_getinfo&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help