1*6236dae4SAndroid Build Coastguard Worker--- 2*6236dae4SAndroid Build Coastguard Workerc: Copyright (C) Daniel Stenberg, <[email protected]>, et al. 3*6236dae4SAndroid Build Coastguard WorkerSPDX-License-Identifier: curl 4*6236dae4SAndroid Build Coastguard WorkerTitle: curl_easy_getinfo 5*6236dae4SAndroid Build Coastguard WorkerSection: 3 6*6236dae4SAndroid Build Coastguard WorkerSource: libcurl 7*6236dae4SAndroid Build Coastguard WorkerSee-also: 8*6236dae4SAndroid Build Coastguard Worker - curl_easy_setopt (3) 9*6236dae4SAndroid Build Coastguard WorkerProtocol: 10*6236dae4SAndroid Build Coastguard Worker - All 11*6236dae4SAndroid Build Coastguard WorkerAdded-in: 7.4.1 12*6236dae4SAndroid Build Coastguard Worker--- 13*6236dae4SAndroid Build Coastguard Worker 14*6236dae4SAndroid Build Coastguard Worker# NAME 15*6236dae4SAndroid Build Coastguard Worker 16*6236dae4SAndroid Build Coastguard Workercurl_easy_getinfo - extract information from a curl handle 17*6236dae4SAndroid Build Coastguard Worker 18*6236dae4SAndroid Build Coastguard Worker# SYNOPSIS 19*6236dae4SAndroid Build Coastguard Worker 20*6236dae4SAndroid Build Coastguard Worker~~~c 21*6236dae4SAndroid Build Coastguard Worker#include <curl/curl.h> 22*6236dae4SAndroid Build Coastguard Worker 23*6236dae4SAndroid Build Coastguard WorkerCURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ... ); 24*6236dae4SAndroid Build Coastguard Worker~~~ 25*6236dae4SAndroid Build Coastguard Worker 26*6236dae4SAndroid Build Coastguard Worker# DESCRIPTION 27*6236dae4SAndroid Build Coastguard Worker 28*6236dae4SAndroid Build Coastguard WorkerGet the *info* kept in the *curl* handle. The third argument **MUST** be 29*6236dae4SAndroid Build Coastguard Workerpointing to the specific type of the used option which is documented in each 30*6236dae4SAndroid Build Coastguard Workerman page of the *info* option. The data is stored accordingly and can be 31*6236dae4SAndroid Build Coastguard Workerrelied upon only if this function returns CURLE_OK. Use this function after a 32*6236dae4SAndroid Build Coastguard Workerperformed transfer if you want to get transfer related data. 33*6236dae4SAndroid Build Coastguard Worker 34*6236dae4SAndroid Build Coastguard WorkerYou should not free the memory returned by this function unless it is 35*6236dae4SAndroid Build Coastguard Workerexplicitly mentioned below. 36*6236dae4SAndroid Build Coastguard Worker 37*6236dae4SAndroid Build Coastguard Worker# OPTIONS 38*6236dae4SAndroid Build Coastguard Worker 39*6236dae4SAndroid Build Coastguard WorkerThe following information can be extracted: 40*6236dae4SAndroid Build Coastguard Worker 41*6236dae4SAndroid Build Coastguard Worker## CURLINFO_ACTIVESOCKET 42*6236dae4SAndroid Build Coastguard Worker 43*6236dae4SAndroid Build Coastguard WorkerThe session's active socket. See CURLINFO_ACTIVESOCKET(3) 44*6236dae4SAndroid Build Coastguard Worker 45*6236dae4SAndroid Build Coastguard Worker## CURLINFO_APPCONNECT_TIME 46*6236dae4SAndroid Build Coastguard Worker 47*6236dae4SAndroid Build Coastguard WorkerThe time it took from the start until the SSL connect/handshake with the 48*6236dae4SAndroid Build Coastguard Workerremote host was completed as a double in number of seconds. (Added in 7.19.0) 49*6236dae4SAndroid Build Coastguard Worker 50*6236dae4SAndroid Build Coastguard Worker## CURLINFO_APPCONNECT_TIME_T 51*6236dae4SAndroid Build Coastguard Worker 52*6236dae4SAndroid Build Coastguard WorkerThe time it took from the start until the SSL connect/handshake with the 53*6236dae4SAndroid Build Coastguard Workerremote host was completed in number of microseconds. (Added in 7.60.0) See 54*6236dae4SAndroid Build Coastguard WorkerCURLINFO_APPCONNECT_TIME_T(3) 55*6236dae4SAndroid Build Coastguard Worker 56*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CAINFO 57*6236dae4SAndroid Build Coastguard Worker 58*6236dae4SAndroid Build Coastguard WorkerGet the default value for CURLOPT_CAINFO(3). See CURLINFO_CAINFO(3) 59*6236dae4SAndroid Build Coastguard Worker 60*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CAPATH 61*6236dae4SAndroid Build Coastguard Worker 62*6236dae4SAndroid Build Coastguard WorkerGet the default value for CURLOPT_CAPATH(3). See CURLINFO_CAPATH(3) 63*6236dae4SAndroid Build Coastguard Worker 64*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CERTINFO 65*6236dae4SAndroid Build Coastguard Worker 66*6236dae4SAndroid Build Coastguard WorkerCertificate chain. See CURLINFO_CERTINFO(3) 67*6236dae4SAndroid Build Coastguard Worker 68*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CONDITION_UNMET 69*6236dae4SAndroid Build Coastguard Worker 70*6236dae4SAndroid Build Coastguard WorkerWhether or not a time conditional was met or 304 HTTP response. 71*6236dae4SAndroid Build Coastguard WorkerSee CURLINFO_CONDITION_UNMET(3) 72*6236dae4SAndroid Build Coastguard Worker 73*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CONNECT_TIME 74*6236dae4SAndroid Build Coastguard Worker 75*6236dae4SAndroid Build Coastguard WorkerThe time it took from the start until the connect to the remote host (or 76*6236dae4SAndroid Build Coastguard Workerproxy) was completed. As a double. See CURLINFO_CONNECT_TIME(3) 77*6236dae4SAndroid Build Coastguard Worker 78*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CONNECT_TIME_T 79*6236dae4SAndroid Build Coastguard Worker 80*6236dae4SAndroid Build Coastguard WorkerThe time it took from the start until the connect to the remote host (or 81*6236dae4SAndroid Build Coastguard Workerproxy) was completed. In microseconds. See CURLINFO_CONNECT_TIME_T(3). 82*6236dae4SAndroid Build Coastguard Worker 83*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CONN_ID 84*6236dae4SAndroid Build Coastguard Worker 85*6236dae4SAndroid Build Coastguard WorkerThe ID of the last connection used by the transfer. (Added in 8.2.0) 86*6236dae4SAndroid Build Coastguard WorkerSee CURLINFO_CONN_ID(3) 87*6236dae4SAndroid Build Coastguard Worker 88*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CONTENT_LENGTH_DOWNLOAD 89*6236dae4SAndroid Build Coastguard Worker 90*6236dae4SAndroid Build Coastguard Worker(**Deprecated**) Content length from the Content-Length header. 91*6236dae4SAndroid Build Coastguard WorkerSee CURLINFO_CONTENT_LENGTH_DOWNLOAD(3) 92*6236dae4SAndroid Build Coastguard Worker 93*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CONTENT_LENGTH_DOWNLOAD_T 94*6236dae4SAndroid Build Coastguard Worker 95*6236dae4SAndroid Build Coastguard WorkerContent length from the Content-Length header. 96*6236dae4SAndroid Build Coastguard WorkerSee CURLINFO_CONTENT_LENGTH_DOWNLOAD_T(3) 97*6236dae4SAndroid Build Coastguard Worker 98*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CONTENT_LENGTH_UPLOAD 99*6236dae4SAndroid Build Coastguard Worker 100*6236dae4SAndroid Build Coastguard Worker(**Deprecated**) Upload size. See CURLINFO_CONTENT_LENGTH_UPLOAD(3) 101*6236dae4SAndroid Build Coastguard Worker 102*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CONTENT_LENGTH_UPLOAD_T 103*6236dae4SAndroid Build Coastguard Worker 104*6236dae4SAndroid Build Coastguard WorkerUpload size. See CURLINFO_CONTENT_LENGTH_UPLOAD_T(3) 105*6236dae4SAndroid Build Coastguard Worker 106*6236dae4SAndroid Build Coastguard Worker## CURLINFO_CONTENT_TYPE 107*6236dae4SAndroid Build Coastguard Worker 108*6236dae4SAndroid Build Coastguard WorkerContent type from the `Content-Type:` header. We recommend using 109*6236dae4SAndroid Build Coastguard Workercurl_easy_header(3) instead. See CURLINFO_CONTENT_TYPE(3) 110*6236dae4SAndroid Build Coastguard Worker 111*6236dae4SAndroid Build Coastguard Worker## CURLINFO_COOKIELIST 112*6236dae4SAndroid Build Coastguard Worker 113*6236dae4SAndroid Build Coastguard WorkerList of all known cookies. See CURLINFO_COOKIELIST(3) 114*6236dae4SAndroid Build Coastguard Worker 115*6236dae4SAndroid Build Coastguard Worker## CURLINFO_EARLYDATA_SENT_T 116*6236dae4SAndroid Build Coastguard Worker 117*6236dae4SAndroid Build Coastguard WorkerAmount of TLS early data sent (in number of bytes) when 118*6236dae4SAndroid Build Coastguard WorkerCURLSSLOPT_EARLYDATA is enabled. 119*6236dae4SAndroid Build Coastguard Worker 120*6236dae4SAndroid Build Coastguard Worker## CURLINFO_EFFECTIVE_METHOD 121*6236dae4SAndroid Build Coastguard Worker 122*6236dae4SAndroid Build Coastguard WorkerLast used HTTP method. See CURLINFO_EFFECTIVE_METHOD(3) 123*6236dae4SAndroid Build Coastguard Worker 124*6236dae4SAndroid Build Coastguard Worker## CURLINFO_EFFECTIVE_URL 125*6236dae4SAndroid Build Coastguard Worker 126*6236dae4SAndroid Build Coastguard WorkerLast used URL. See CURLINFO_EFFECTIVE_URL(3) 127*6236dae4SAndroid Build Coastguard Worker 128*6236dae4SAndroid Build Coastguard Worker## CURLINFO_FILETIME 129*6236dae4SAndroid Build Coastguard Worker 130*6236dae4SAndroid Build Coastguard WorkerRemote time of the retrieved document. See CURLINFO_FILETIME(3) 131*6236dae4SAndroid Build Coastguard Worker 132*6236dae4SAndroid Build Coastguard Worker## CURLINFO_FILETIME_T 133*6236dae4SAndroid Build Coastguard Worker 134*6236dae4SAndroid Build Coastguard WorkerRemote time of the retrieved document. See CURLINFO_FILETIME_T(3) 135*6236dae4SAndroid Build Coastguard Worker 136*6236dae4SAndroid Build Coastguard Worker## CURLINFO_FTP_ENTRY_PATH 137*6236dae4SAndroid Build Coastguard Worker 138*6236dae4SAndroid Build Coastguard WorkerThe entry path after logging in to an FTP server. See 139*6236dae4SAndroid Build Coastguard WorkerCURLINFO_FTP_ENTRY_PATH(3) 140*6236dae4SAndroid Build Coastguard Worker 141*6236dae4SAndroid Build Coastguard Worker## CURLINFO_HEADER_SIZE 142*6236dae4SAndroid Build Coastguard Worker 143*6236dae4SAndroid Build Coastguard WorkerNumber of bytes of all headers received. See CURLINFO_HEADER_SIZE(3) 144*6236dae4SAndroid Build Coastguard Worker 145*6236dae4SAndroid Build Coastguard Worker## CURLINFO_HTTPAUTH_AVAIL 146*6236dae4SAndroid Build Coastguard Worker 147*6236dae4SAndroid Build Coastguard WorkerAvailable HTTP authentication methods. See CURLINFO_HTTPAUTH_AVAIL(3) 148*6236dae4SAndroid Build Coastguard Worker 149*6236dae4SAndroid Build Coastguard Worker## CURLINFO_HTTP_CONNECTCODE 150*6236dae4SAndroid Build Coastguard Worker 151*6236dae4SAndroid Build Coastguard WorkerLast proxy CONNECT response code. See CURLINFO_HTTP_CONNECTCODE(3) 152*6236dae4SAndroid Build Coastguard Worker 153*6236dae4SAndroid Build Coastguard Worker## CURLINFO_HTTP_VERSION 154*6236dae4SAndroid Build Coastguard Worker 155*6236dae4SAndroid Build Coastguard WorkerThe http version used in the connection. See CURLINFO_HTTP_VERSION(3) 156*6236dae4SAndroid Build Coastguard Worker 157*6236dae4SAndroid Build Coastguard Worker## CURLINFO_LASTSOCKET 158*6236dae4SAndroid Build Coastguard Worker 159*6236dae4SAndroid Build Coastguard Worker(**Deprecated**) Last socket used. See CURLINFO_LASTSOCKET(3) 160*6236dae4SAndroid Build Coastguard Worker 161*6236dae4SAndroid Build Coastguard Worker## CURLINFO_LOCAL_IP 162*6236dae4SAndroid Build Coastguard Worker 163*6236dae4SAndroid Build Coastguard WorkerSource IP address of the last connection. See CURLINFO_LOCAL_IP(3) 164*6236dae4SAndroid Build Coastguard Worker 165*6236dae4SAndroid Build Coastguard Worker## CURLINFO_LOCAL_PORT 166*6236dae4SAndroid Build Coastguard Worker 167*6236dae4SAndroid Build Coastguard WorkerSource port number of the last connection. See CURLINFO_LOCAL_PORT(3) 168*6236dae4SAndroid Build Coastguard Worker 169*6236dae4SAndroid Build Coastguard Worker## CURLINFO_NAMELOOKUP_TIME 170*6236dae4SAndroid Build Coastguard Worker 171*6236dae4SAndroid Build Coastguard WorkerTime from start until name resolving completed as a double. See 172*6236dae4SAndroid Build Coastguard WorkerCURLINFO_NAMELOOKUP_TIME(3) 173*6236dae4SAndroid Build Coastguard Worker 174*6236dae4SAndroid Build Coastguard Worker## CURLINFO_NAMELOOKUP_TIME_T 175*6236dae4SAndroid Build Coastguard Worker 176*6236dae4SAndroid Build Coastguard WorkerTime from start until name resolving completed in number of microseconds. See 177*6236dae4SAndroid Build Coastguard WorkerCURLINFO_NAMELOOKUP_TIME_T(3) 178*6236dae4SAndroid Build Coastguard Worker 179*6236dae4SAndroid Build Coastguard Worker## CURLINFO_NUM_CONNECTS 180*6236dae4SAndroid Build Coastguard Worker 181*6236dae4SAndroid Build Coastguard WorkerNumber of new successful connections used for previous transfer. 182*6236dae4SAndroid Build Coastguard WorkerSee CURLINFO_NUM_CONNECTS(3) 183*6236dae4SAndroid Build Coastguard Worker 184*6236dae4SAndroid Build Coastguard Worker## CURLINFO_OS_ERRNO 185*6236dae4SAndroid Build Coastguard Worker 186*6236dae4SAndroid Build Coastguard WorkerThe errno from the last failure to connect. See CURLINFO_OS_ERRNO(3) 187*6236dae4SAndroid Build Coastguard Worker 188*6236dae4SAndroid Build Coastguard Worker## CURLINFO_POSTTRANSFER_TIME_T 189*6236dae4SAndroid Build Coastguard Worker 190*6236dae4SAndroid Build Coastguard WorkerThe time it took from the start until the last byte is sent by libcurl. 191*6236dae4SAndroid Build Coastguard WorkerIn microseconds. (Added in 8.10.0) See CURLINFO_POSTTRANSFER_TIME_T(3) 192*6236dae4SAndroid Build Coastguard Worker 193*6236dae4SAndroid Build Coastguard Worker## CURLINFO_PRETRANSFER_TIME 194*6236dae4SAndroid Build Coastguard Worker 195*6236dae4SAndroid Build Coastguard WorkerThe time it took from the start until the file transfer is just about to 196*6236dae4SAndroid Build Coastguard Workerbegin. This includes all pre-transfer commands and negotiations that are 197*6236dae4SAndroid Build Coastguard Workerspecific to the particular protocol(s) involved. See 198*6236dae4SAndroid Build Coastguard WorkerCURLINFO_PRETRANSFER_TIME(3) 199*6236dae4SAndroid Build Coastguard Worker 200*6236dae4SAndroid Build Coastguard Worker## CURLINFO_PRETRANSFER_TIME_T 201*6236dae4SAndroid Build Coastguard Worker 202*6236dae4SAndroid Build Coastguard WorkerThe time it took from the start until the file transfer is just about to 203*6236dae4SAndroid Build Coastguard Workerbegin. This includes all pre-transfer commands and negotiations that are 204*6236dae4SAndroid Build Coastguard Workerspecific to the particular protocol(s) involved. In microseconds. See 205*6236dae4SAndroid Build Coastguard WorkerCURLINFO_PRETRANSFER_TIME_T(3) 206*6236dae4SAndroid Build Coastguard Worker 207*6236dae4SAndroid Build Coastguard Worker## CURLINFO_PRIMARY_IP 208*6236dae4SAndroid Build Coastguard Worker 209*6236dae4SAndroid Build Coastguard WorkerDestination IP address of the last connection. See CURLINFO_PRIMARY_IP(3) 210*6236dae4SAndroid Build Coastguard Worker 211*6236dae4SAndroid Build Coastguard Worker## CURLINFO_PRIMARY_PORT 212*6236dae4SAndroid Build Coastguard Worker 213*6236dae4SAndroid Build Coastguard WorkerDestination port of the last connection. See CURLINFO_PRIMARY_PORT(3) 214*6236dae4SAndroid Build Coastguard Worker 215*6236dae4SAndroid Build Coastguard Worker## CURLINFO_PRIVATE 216*6236dae4SAndroid Build Coastguard Worker 217*6236dae4SAndroid Build Coastguard WorkerUser's private data pointer. See CURLINFO_PRIVATE(3) 218*6236dae4SAndroid Build Coastguard Worker 219*6236dae4SAndroid Build Coastguard Worker## CURLINFO_PROTOCOL 220*6236dae4SAndroid Build Coastguard Worker 221*6236dae4SAndroid Build Coastguard Worker(**Deprecated**) The protocol used for the connection. (Added in 7.52.0) See 222*6236dae4SAndroid Build Coastguard WorkerCURLINFO_PROTOCOL(3) 223*6236dae4SAndroid Build Coastguard Worker 224*6236dae4SAndroid Build Coastguard Worker## CURLINFO_PROXYAUTH_AVAIL 225*6236dae4SAndroid Build Coastguard Worker 226*6236dae4SAndroid Build Coastguard WorkerAvailable HTTP proxy authentication methods. See CURLINFO_PROXYAUTH_AVAIL(3) 227*6236dae4SAndroid Build Coastguard Worker 228*6236dae4SAndroid Build Coastguard Worker## CURLINFO_PROXY_ERROR 229*6236dae4SAndroid Build Coastguard Worker 230*6236dae4SAndroid Build Coastguard WorkerDetailed proxy error. See CURLINFO_PROXY_ERROR(3) 231*6236dae4SAndroid Build Coastguard Worker 232*6236dae4SAndroid Build Coastguard Worker## CURLINFO_PROXY_SSL_VERIFYRESULT 233*6236dae4SAndroid Build Coastguard Worker 234*6236dae4SAndroid Build Coastguard WorkerProxy certificate verification result. See CURLINFO_PROXY_SSL_VERIFYRESULT(3) 235*6236dae4SAndroid Build Coastguard Worker 236*6236dae4SAndroid Build Coastguard Worker## CURLINFO_QUEUE_TIME_T 237*6236dae4SAndroid Build Coastguard Worker 238*6236dae4SAndroid Build Coastguard WorkerThe time during which the transfer was held in a waiting queue before it could 239*6236dae4SAndroid Build Coastguard Workerstart for real in number of microseconds. (Added in 8.6.0) See 240*6236dae4SAndroid Build Coastguard WorkerCURLINFO_QUEUE_TIME_T(3) 241*6236dae4SAndroid Build Coastguard Worker 242*6236dae4SAndroid Build Coastguard Worker## CURLINFO_REDIRECT_COUNT 243*6236dae4SAndroid Build Coastguard Worker 244*6236dae4SAndroid Build Coastguard WorkerTotal number of redirects that were followed. See CURLINFO_REDIRECT_COUNT(3) 245*6236dae4SAndroid Build Coastguard Worker 246*6236dae4SAndroid Build Coastguard Worker## CURLINFO_REDIRECT_TIME 247*6236dae4SAndroid Build Coastguard Worker 248*6236dae4SAndroid Build Coastguard WorkerThe time it took for all redirection steps include name lookup, connect, 249*6236dae4SAndroid Build Coastguard Workerpretransfer and transfer before final transaction was started. So, this is 250*6236dae4SAndroid Build Coastguard Workerzero if no redirection took place. As a double. See CURLINFO_REDIRECT_TIME(3) 251*6236dae4SAndroid Build Coastguard Worker 252*6236dae4SAndroid Build Coastguard Worker## CURLINFO_REDIRECT_TIME_T 253*6236dae4SAndroid Build Coastguard Worker 254*6236dae4SAndroid Build Coastguard WorkerThe time it took for all redirection steps include name lookup, connect, 255*6236dae4SAndroid Build Coastguard Workerpretransfer and transfer before final transaction was started. So, this is 256*6236dae4SAndroid Build Coastguard Workerzero if no redirection took place. In number of microseconds. See 257*6236dae4SAndroid Build Coastguard WorkerCURLINFO_REDIRECT_TIME_T(3) 258*6236dae4SAndroid Build Coastguard Worker 259*6236dae4SAndroid Build Coastguard Worker## CURLINFO_REDIRECT_URL 260*6236dae4SAndroid Build Coastguard Worker 261*6236dae4SAndroid Build Coastguard WorkerURL a redirect would take you to, had you enabled redirects. See 262*6236dae4SAndroid Build Coastguard WorkerCURLINFO_REDIRECT_URL(3) 263*6236dae4SAndroid Build Coastguard Worker 264*6236dae4SAndroid Build Coastguard Worker## CURLINFO_REFERER 265*6236dae4SAndroid Build Coastguard Worker 266*6236dae4SAndroid Build Coastguard WorkerReferrer header. See CURLINFO_REFERER(3) 267*6236dae4SAndroid Build Coastguard Worker 268*6236dae4SAndroid Build Coastguard Worker## CURLINFO_REQUEST_SIZE 269*6236dae4SAndroid Build Coastguard Worker 270*6236dae4SAndroid Build Coastguard WorkerNumber of bytes sent in the issued HTTP requests. See CURLINFO_REQUEST_SIZE(3) 271*6236dae4SAndroid Build Coastguard Worker 272*6236dae4SAndroid Build Coastguard Worker## CURLINFO_RESPONSE_CODE 273*6236dae4SAndroid Build Coastguard Worker 274*6236dae4SAndroid Build Coastguard WorkerLast received response code. See CURLINFO_RESPONSE_CODE(3) 275*6236dae4SAndroid Build Coastguard Worker 276*6236dae4SAndroid Build Coastguard Worker## CURLINFO_RETRY_AFTER 277*6236dae4SAndroid Build Coastguard Worker 278*6236dae4SAndroid Build Coastguard WorkerThe value from the Retry-After header. See CURLINFO_RETRY_AFTER(3) 279*6236dae4SAndroid Build Coastguard Worker 280*6236dae4SAndroid Build Coastguard Worker## CURLINFO_RTSP_CLIENT_CSEQ 281*6236dae4SAndroid Build Coastguard Worker 282*6236dae4SAndroid Build Coastguard WorkerThe RTSP client CSeq that is expected next. See CURLINFO_RTSP_CLIENT_CSEQ(3) 283*6236dae4SAndroid Build Coastguard Worker 284*6236dae4SAndroid Build Coastguard Worker## CURLINFO_RTSP_CSEQ_RECV 285*6236dae4SAndroid Build Coastguard Worker 286*6236dae4SAndroid Build Coastguard WorkerRTSP CSeq last received. See CURLINFO_RTSP_CSEQ_RECV(3) 287*6236dae4SAndroid Build Coastguard Worker 288*6236dae4SAndroid Build Coastguard Worker## CURLINFO_RTSP_SERVER_CSEQ 289*6236dae4SAndroid Build Coastguard Worker 290*6236dae4SAndroid Build Coastguard WorkerThe RTSP server CSeq that is expected next. See CURLINFO_RTSP_SERVER_CSEQ(3) 291*6236dae4SAndroid Build Coastguard Worker 292*6236dae4SAndroid Build Coastguard Worker## CURLINFO_RTSP_SESSION_ID 293*6236dae4SAndroid Build Coastguard Worker 294*6236dae4SAndroid Build Coastguard WorkerRTSP session ID. See CURLINFO_RTSP_SESSION_ID(3) 295*6236dae4SAndroid Build Coastguard Worker 296*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SCHEME 297*6236dae4SAndroid Build Coastguard Worker 298*6236dae4SAndroid Build Coastguard WorkerThe scheme used for the connection. (Added in 7.52.0) See CURLINFO_SCHEME(3) 299*6236dae4SAndroid Build Coastguard Worker 300*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SIZE_DOWNLOAD 301*6236dae4SAndroid Build Coastguard Worker 302*6236dae4SAndroid Build Coastguard Worker(**Deprecated**) Number of bytes downloaded. See CURLINFO_SIZE_DOWNLOAD(3) 303*6236dae4SAndroid Build Coastguard Worker 304*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SIZE_DOWNLOAD_T 305*6236dae4SAndroid Build Coastguard Worker 306*6236dae4SAndroid Build Coastguard WorkerNumber of bytes downloaded. See CURLINFO_SIZE_DOWNLOAD_T(3) 307*6236dae4SAndroid Build Coastguard Worker 308*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SIZE_UPLOAD 309*6236dae4SAndroid Build Coastguard Worker 310*6236dae4SAndroid Build Coastguard Worker(**Deprecated**) Number of bytes uploaded. See CURLINFO_SIZE_UPLOAD(3) 311*6236dae4SAndroid Build Coastguard Worker 312*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SIZE_UPLOAD_T 313*6236dae4SAndroid Build Coastguard Worker 314*6236dae4SAndroid Build Coastguard WorkerNumber of bytes uploaded. See CURLINFO_SIZE_UPLOAD_T(3) 315*6236dae4SAndroid Build Coastguard Worker 316*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SPEED_DOWNLOAD 317*6236dae4SAndroid Build Coastguard Worker 318*6236dae4SAndroid Build Coastguard Worker(**Deprecated**) Average download speed. See CURLINFO_SPEED_DOWNLOAD(3) 319*6236dae4SAndroid Build Coastguard Worker 320*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SPEED_DOWNLOAD_T 321*6236dae4SAndroid Build Coastguard Worker 322*6236dae4SAndroid Build Coastguard WorkerAverage download speed. See CURLINFO_SPEED_DOWNLOAD_T(3) 323*6236dae4SAndroid Build Coastguard Worker 324*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SPEED_UPLOAD 325*6236dae4SAndroid Build Coastguard Worker 326*6236dae4SAndroid Build Coastguard Worker(**Deprecated**) Average upload speed. See CURLINFO_SPEED_UPLOAD(3) 327*6236dae4SAndroid Build Coastguard Worker 328*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SPEED_UPLOAD_T 329*6236dae4SAndroid Build Coastguard Worker 330*6236dae4SAndroid Build Coastguard WorkerAverage upload speed in number of bytes per second. See 331*6236dae4SAndroid Build Coastguard WorkerCURLINFO_SPEED_UPLOAD_T(3) 332*6236dae4SAndroid Build Coastguard Worker 333*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SSL_ENGINES 334*6236dae4SAndroid Build Coastguard Worker 335*6236dae4SAndroid Build Coastguard WorkerA list of OpenSSL crypto engines. See CURLINFO_SSL_ENGINES(3) 336*6236dae4SAndroid Build Coastguard Worker 337*6236dae4SAndroid Build Coastguard Worker## CURLINFO_SSL_VERIFYRESULT 338*6236dae4SAndroid Build Coastguard Worker 339*6236dae4SAndroid Build Coastguard WorkerCertificate verification result. See CURLINFO_SSL_VERIFYRESULT(3) 340*6236dae4SAndroid Build Coastguard Worker 341*6236dae4SAndroid Build Coastguard Worker## CURLINFO_STARTTRANSFER_TIME 342*6236dae4SAndroid Build Coastguard Worker 343*6236dae4SAndroid Build Coastguard WorkerThe time it took from the start until the first byte is received by libcurl. 344*6236dae4SAndroid Build Coastguard WorkerAs a double. See CURLINFO_STARTTRANSFER_TIME(3) 345*6236dae4SAndroid Build Coastguard Worker 346*6236dae4SAndroid Build Coastguard Worker## CURLINFO_STARTTRANSFER_TIME_T 347*6236dae4SAndroid Build Coastguard Worker 348*6236dae4SAndroid Build Coastguard WorkerThe time it took from the start until the first byte is received by libcurl. 349*6236dae4SAndroid Build Coastguard WorkerIn microseconds. See CURLINFO_STARTTRANSFER_TIME_T(3) 350*6236dae4SAndroid Build Coastguard Worker 351*6236dae4SAndroid Build Coastguard Worker## CURLINFO_TLS_SESSION 352*6236dae4SAndroid Build Coastguard Worker 353*6236dae4SAndroid Build Coastguard Worker(**Deprecated**) TLS session info that can be used for further processing. See 354*6236dae4SAndroid Build Coastguard WorkerCURLINFO_TLS_SESSION(3). Use CURLINFO_TLS_SSL_PTR(3) instead. 355*6236dae4SAndroid Build Coastguard Worker 356*6236dae4SAndroid Build Coastguard Worker## CURLINFO_TLS_SSL_PTR 357*6236dae4SAndroid Build Coastguard Worker 358*6236dae4SAndroid Build Coastguard WorkerTLS session info that can be used for further processing. See 359*6236dae4SAndroid Build Coastguard WorkerCURLINFO_TLS_SSL_PTR(3) 360*6236dae4SAndroid Build Coastguard Worker 361*6236dae4SAndroid Build Coastguard Worker## CURLINFO_TOTAL_TIME 362*6236dae4SAndroid Build Coastguard Worker 363*6236dae4SAndroid Build Coastguard WorkerTotal time of previous transfer. See CURLINFO_TOTAL_TIME(3) 364*6236dae4SAndroid Build Coastguard Worker 365*6236dae4SAndroid Build Coastguard Worker## CURLINFO_TOTAL_TIME_T 366*6236dae4SAndroid Build Coastguard Worker 367*6236dae4SAndroid Build Coastguard WorkerTotal time of previous transfer. See CURLINFO_TOTAL_TIME_T(3) 368*6236dae4SAndroid Build Coastguard Worker 369*6236dae4SAndroid Build Coastguard Worker## CURLINFO_USED_PROXY 370*6236dae4SAndroid Build Coastguard Worker 371*6236dae4SAndroid Build Coastguard WorkerWhether the proxy was used (Added in 8.7.0). See CURLINFO_USED_PROXY(3) 372*6236dae4SAndroid Build Coastguard Worker 373*6236dae4SAndroid Build Coastguard Worker## CURLINFO_XFER_ID 374*6236dae4SAndroid Build Coastguard Worker 375*6236dae4SAndroid Build Coastguard WorkerThe ID of the transfer. (Added in 8.2.0) See CURLINFO_XFER_ID(3) 376*6236dae4SAndroid Build Coastguard Worker 377*6236dae4SAndroid Build Coastguard Worker# TIMES 378*6236dae4SAndroid Build Coastguard Worker 379*6236dae4SAndroid Build Coastguard WorkerAn overview of the time values available from curl_easy_getinfo(3) 380*6236dae4SAndroid Build Coastguard Worker 381*6236dae4SAndroid Build Coastguard Worker curl_easy_perform() 382*6236dae4SAndroid Build Coastguard Worker | 383*6236dae4SAndroid Build Coastguard Worker |--QUEUE 384*6236dae4SAndroid Build Coastguard Worker |--|--NAMELOOKUP 385*6236dae4SAndroid Build Coastguard Worker |--|--|--CONNECT 386*6236dae4SAndroid Build Coastguard Worker |--|--|--|--APPCONNECT 387*6236dae4SAndroid Build Coastguard Worker |--|--|--|--|--PRETRANSFER 388*6236dae4SAndroid Build Coastguard Worker |--|--|--|--|--|--POSTTRANSFER 389*6236dae4SAndroid Build Coastguard Worker |--|--|--|--|--|--|--STARTTRANSFER 390*6236dae4SAndroid Build Coastguard Worker |--|--|--|--|--|--|--|--TOTAL 391*6236dae4SAndroid Build Coastguard Worker |--|--|--|--|--|--|--|--REDIRECT 392*6236dae4SAndroid Build Coastguard Worker 393*6236dae4SAndroid Build Coastguard Worker 394*6236dae4SAndroid Build Coastguard Worker CURLINFO_QUEUE_TIME_T(3), CURLINFO_NAMELOOKUP_TIME_T(3), 395*6236dae4SAndroid Build Coastguard Worker CURLINFO_CONNECT_TIME_T(3), CURLINFO_APPCONNECT_TIME_T(3), 396*6236dae4SAndroid Build Coastguard Worker CURLINFO_PRETRANSFER_TIME_T(3), CURLINFO_POSTTRANSFER_TIME_T(3), 397*6236dae4SAndroid Build Coastguard Worker CURLINFO_STARTTRANSFER_TIME_T(3), CURLINFO_TOTAL_TIME_T(3), 398*6236dae4SAndroid Build Coastguard Worker CURLINFO_REDIRECT_TIME_T(3) 399*6236dae4SAndroid Build Coastguard Worker 400*6236dae4SAndroid Build Coastguard Worker# %PROTOCOLS% 401*6236dae4SAndroid Build Coastguard Worker 402*6236dae4SAndroid Build Coastguard Worker# EXAMPLE 403*6236dae4SAndroid Build Coastguard Worker 404*6236dae4SAndroid Build Coastguard Worker~~~c 405*6236dae4SAndroid Build Coastguard Workerint main(void) 406*6236dae4SAndroid Build Coastguard Worker{ 407*6236dae4SAndroid Build Coastguard Worker CURL *curl = curl_easy_init(); 408*6236dae4SAndroid Build Coastguard Worker if(curl) { 409*6236dae4SAndroid Build Coastguard Worker CURLcode res; 410*6236dae4SAndroid Build Coastguard Worker curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); 411*6236dae4SAndroid Build Coastguard Worker res = curl_easy_perform(curl); 412*6236dae4SAndroid Build Coastguard Worker 413*6236dae4SAndroid Build Coastguard Worker if(CURLE_OK == res) { 414*6236dae4SAndroid Build Coastguard Worker char *ct; 415*6236dae4SAndroid Build Coastguard Worker /* ask for the content-type */ 416*6236dae4SAndroid Build Coastguard Worker res = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ct); 417*6236dae4SAndroid Build Coastguard Worker 418*6236dae4SAndroid Build Coastguard Worker if((CURLE_OK == res) && ct) 419*6236dae4SAndroid Build Coastguard Worker printf("We received Content-Type: %s\n", ct); 420*6236dae4SAndroid Build Coastguard Worker } 421*6236dae4SAndroid Build Coastguard Worker 422*6236dae4SAndroid Build Coastguard Worker /* always cleanup */ 423*6236dae4SAndroid Build Coastguard Worker curl_easy_cleanup(curl); 424*6236dae4SAndroid Build Coastguard Worker } 425*6236dae4SAndroid Build Coastguard Worker} 426*6236dae4SAndroid Build Coastguard Worker~~~ 427*6236dae4SAndroid Build Coastguard Worker 428*6236dae4SAndroid Build Coastguard Worker# %AVAILABILITY% 429*6236dae4SAndroid Build Coastguard Worker 430*6236dae4SAndroid Build Coastguard Worker# RETURN VALUE 431*6236dae4SAndroid Build Coastguard Worker 432*6236dae4SAndroid Build Coastguard WorkerIf the operation was successful, CURLE_OK is returned. Otherwise an 433*6236dae4SAndroid Build Coastguard Workerappropriate error code is returned. 434