Skip to content

Commit

Permalink
libcurl/getinfo.md: add missing options
Browse files Browse the repository at this point in the history
Closes #390
  • Loading branch information
bagder committed Dec 28, 2023
1 parent 6fec195 commit 1cb398c
Showing 1 changed file with 73 additions and 60 deletions.
133 changes: 73 additions & 60 deletions libcurl/getinfo.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,63 +33,76 @@ If you want to extract the local port number that was used in that connection:

## Available information

| Getinfo option | Type | Description |
|------------------------------------|-----------------------|-------------------------------------------------------------------------------|
| `CURLINFO_ACTIVESOCKET` | `curl_socket_t` | The session's active socket |
| `CURLINFO_APPCONNECT_TIME` | `double` | Time from start until SSL/SSH handshake completed |
| `CURLINFO_APPCONNECT_TIME_T` | `curl_off_t` | Time from start until SSL/SSH handshake completed (in microseconds) |
| `CURLINFO_CERTINFO` | `struct curl_slist *` | Certificate chain |
| `CURLINFO_CONDITION_UNMET` | `long` | Whether or not a time conditional was met |
| `CURLINFO_CONNECT_TIME` | `double` | Time from start until remote host or proxy completed |
| `CURLINFO_CONNECT_TIME_T` | `curl_off_t` | Time from start until remote host or proxy completed (in microseconds) |
| `CURLINFO_CONTENT_LENGTH_DOWNLOAD` | `double` | Content length from the Content-Length header |
| `CURLINFO_CONTENT_LENGTH_UPLOAD` | `double` | Upload size |
| `CURLINFO_CONTENT_TYPE` | `char *` | Content type from the Content-Type header |
| `CURLINFO_COOKIELIST` | `struct curl_slist *` | List of all known cookies |
| `CURLINFO_EFFECTIVE_METHOD` | `char *` | Last used HTTP request method |
| `CURLINFO_EFFECTIVE_URL` | `char *` | Last used URL |
| `CURLINFO_FILETIME` | `long` | Remote time of the retrieved document |
| `CURLINFO_FTP_ENTRY_PATH` | `char *` | The entry path after logging in to an FTP server |
| `CURLINFO_HEADER_SIZE` | `long` | Number of bytes of all headers received |
| `CURLINFO_HTTP_CONNECTCODE` | `long` | Last proxy CONNECT response code |
| `CURLINFO_HTTP_VERSION` | `long` | The HTTP version used in the connection |
| `CURLINFO_HTTPAUTH_AVAIL` | `long` | Available HTTP authentication methods (bitmask) |
| `CURLINFO_LASTSOCKET` | `long` | Last socket used |
| `CURLINFO_LOCAL_IP` | `char *` | Local-end IP address of last connection |
| `CURLINFO_LOCAL_PORT` | `long` | Local-end port of last connection |
| `CURLINFO_NAMELOOKUP_TIME` | `double` | Time from start until name resolving completed |
| `CURLINFO_NAMELOOKUP_TIME_T` | `curl_off_t` | Time from start until name resolving completed (in microseconds) |
| `CURLINFO_NUM_CONNECTS` | `long` | Number of new successful connections used for previous transfer |
| `CURLINFO_OS_ERRNO` | `long` | The errno from the last failure to connect |
| `CURLINFO_PRETRANSFER_TIME` | `double` | Time from start until just before the transfer begins |
| `CURLINFO_PRETRANSFER_TIME_T` | `curl_off_t` | Time from start until just before the transfer begins (in microseconds) |
| `CURLINFO_PRIMARY_IP` | `char *` | IP address of the last connection |
| `CURLINFO_PRIMARY_PORT` | `long` | Port of the last connection |
| `CURLINFO_PRIVATE` | `char *` | User's private data pointer |
| `CURLINFO_PROTOCOL` | `long` | The protocol used for the connection |
| `CURLINFO_PROXY_ERROR` | `long` | Detailed (SOCKS) proxy error if `CURLE_PROXY` was returned from the transfer |
| `CURLINFO_PROXY_SSL_VERIFYRESULT` | `long` | Proxy certificate verification result |
| `CURLINFO_PROXYAUTH_AVAIL` | `long` | Available HTTP proxy authentication methods |
| `CURLINFO_REDIRECT_COUNT` | `long` | Total number of redirects that were followed |
| `CURLINFO_REDIRECT_TIME` | `double` | Time taken for all redirect steps before the final transfer |
| `CURLINFO_REDIRECT_TIME_T` | `curl_off_t` | Time taken for all redirect steps before the final transfer (in microseconds) |
| `CURLINFO_REDIRECT_URL` | `char *` | URL a redirect would take you to, had you enabled redirects |
| `CURLINFO_REQUEST_SIZE` | `long` | Number of bytes sent in the issued HTTP requests |
| `CURLINFO_RESPONSE_CODE` | `long` | Last received response code |
| `CURLINFO_RETRY_AFTER` | `curl_off_t` | The value from the response `Retry-After:` header |
| `CURLINFO_RTSP_CLIENT_CSEQ` | `long` | RTSP next expected client CSeq |
| `CURLINFO_RTSP_CSEQ_RECV` | `long` | RTSP last received |
| `CURLINFO_RTSP_SERVER_CSEQ` | `long` | RTSP next expected server CSeq |
| `CURLINFO_RTSP_SESSION_ID` | `char *` | RTSP session ID |
| `CURLINFO_SCHEME` | `char *` | The scheme used for the connection |
| `CURLINFO_SIZE_DOWNLOAD` | `double` | Number of bytes downloaded |
| `CURLINFO_SIZE_UPLOAD` | `double` | Number of bytes uploaded |
| `CURLINFO_SPEED_DOWNLOAD` | `double` | Average download speed |
| `CURLINFO_SPEED_UPLOAD` | `double` | Average upload speed |
| `CURLINFO_SSL_ENGINES` | `struct curl_slist *` | A list of OpenSSL crypto engines |
| `CURLINFO_SSL_VERIFYRESULT` | `long` | Certificate verification result |
| `CURLINFO_STARTTRANSFER_TIME` | `double` | Time from start until just when the first byte is received |
| `CURLINFO_STARTTRANSFER_TIME_T` | `curl_off_t` | Time from start until just when the first byte is received (in microseconds) |
| `CURLINFO_TLS_SSL_PTR` | `struct curl_slist *` | TLS session info that can be used for further processing |
| `CURLINFO_TOTAL_TIME` | `double` | Total time of previous transfer |
| `CURLINFO_TOTAL_TIME_T` | `curl_off_t` | Total time of previous transfer (in microseconds) |
| Getinfo option | Type | Description |
|--------------------------------------|-----------------------|-------------------------------------------------------------------------------|
| `CURLINFO_ACTIVESOCKET` | `curl_socket_t` | The session's active socket |
| `CURLINFO_APPCONNECT_TIME` | `double` | Time from start until SSL/SSH handshake completed |
| `CURLINFO_APPCONNECT_TIME_T` | `curl_off_t` | Time from start until SSL/SSH handshake completed (in microseconds) |
| `CURLINFO_CAINFO` | `char *` | Path to the default CA file libcurl is built to use |
| `CURLINFO_CAPATH` | `char *` | Path to the CA directory libcurl is built to use |
| `CURLINFO_CERTINFO` | `struct curl_slist *` | Certificate chain |
| `CURLINFO_CONDITION_UNMET` | `long` | Whether or not a time conditional was met |
| `CURLINFO_CONNECT_TIME` | `double` | Time from start until remote host or proxy completed |
| `CURLINFO_CONNECT_TIME_T` | `curl_off_t` | Time from start until remote host or proxy completed (in microseconds) |
| `CURLINFO_CONN_ID` | `curl_off_t` | Numerical id of the current connection (meant for callbacks) |
| `CURLINFO_CONTENT_LENGTH_DOWNLOAD` | `double` | Content length from the Content-Length header |
| `CURLINFO_CONTENT_LENGTH_DOWNLOAD_T` | `curl_off_t` | Content length from the Content-Length header |
| `CURLINFO_CONTENT_LENGTH_UPLOAD` | `double` | Upload size |
| `CURLINFO_CONTENT_LENGTH_UPLOAD_T` | `curl_off_t` | Upload size |
| `CURLINFO_CONTENT_TYPE` | `char *` | Content type from the Content-Type header |
| `CURLINFO_COOKIELIST` | `struct curl_slist *` | List of all known cookies |
| `CURLINFO_EFFECTIVE_METHOD` | `char *` | Last used HTTP request method |
| `CURLINFO_EFFECTIVE_URL` | `char *` | Last used URL |
| `CURLINFO_FILETIME` | `long` | Remote time of the retrieved document |
| `CURLINFO_FILETIME_T` | `curl_off_t` | Remote time of the retrieved document |
| `CURLINFO_FTP_ENTRY_PATH` | `char *` | The entry path after logging in to an FTP server |
| `CURLINFO_HEADER_SIZE` | `long` | Number of bytes of all headers received |
| `CURLINFO_HTTP_CONNECTCODE` | `long` | Last proxy CONNECT response code |
| `CURLINFO_HTTP_VERSION` | `long` | The HTTP version used in the connection |
| `CURLINFO_HTTPAUTH_AVAIL` | `long` | Available HTTP authentication methods (bitmask) |
| `CURLINFO_LASTSOCKET` | `long` | Last socket used |
| `CURLINFO_LOCAL_IP` | `char *` | Local-end IP address of last connection |
| `CURLINFO_LOCAL_PORT` | `long` | Local-end port of last connection |
| `CURLINFO_NAMELOOKUP_TIME` | `double` | Time from start until name resolving completed |
| `CURLINFO_NAMELOOKUP_TIME_T` | `curl_off_t` | Time from start until name resolving completed (in microseconds) |
| `CURLINFO_NUM_CONNECTS` | `long` | Number of new successful connections used for previous transfer |
| `CURLINFO_OS_ERRNO` | `long` | The errno from the last failure to connect |
| `CURLINFO_PRETRANSFER_TIME` | `double` | Time from start until just before the transfer begins |
| `CURLINFO_PRETRANSFER_TIME_T` | `curl_off_t` | Time from start until just before the transfer begins (in microseconds) |
| `CURLINFO_PRIMARY_IP` | `char *` | IP address of the last connection |
| `CURLINFO_PRIMARY_PORT` | `long` | Port of the last connection |
| `CURLINFO_PRIVATE` | `char *` | User's private data pointer |
| `CURLINFO_PROTOCOL` | `long` | The protocol used for the connection |
| `CURLINFO_PROXY_ERROR` | `long` | Detailed (SOCKS) proxy error if `CURLE_PROXY` was returned from the transfer |
| `CURLINFO_PROXY_SSL_VERIFYRESULT` | `long` | Proxy certificate verification result |
| `CURLINFO_PROXYAUTH_AVAIL` | `long` | Available HTTP proxy authentication methods |
| `CURLINFO_QUEUE_TIME_T` | `curl_off_t` | Time in microseconds this transfer was held in queue waiting to start |
| `CURLINFO_REDIRECT_COUNT` | `long` | Total number of redirects that were followed |
| `CURLINFO_REDIRECT_TIME` | `double` | Time taken for all redirect steps before the final transfer |
| `CURLINFO_REDIRECT_TIME_T` | `curl_off_t` | Time taken for all redirect steps before the final transfer (in microseconds) |
| `CURLINFO_REDIRECT_URL` | `char *` | URL a redirect would take you to, had you enabled redirects |
| `CURLINFO_REFERER` | `char *` | The used request `Referer:` header |
| `CURLINFO_REQUEST_SIZE` | `long` | Number of bytes sent in the issued HTTP requests |
| `CURLINFO_RESPONSE_CODE` | `long` | Last received response code |
| `CURLINFO_RETRY_AFTER` | `curl_off_t` | The value from the response `Retry-After:` header |
| `CURLINFO_RTSP_CLIENT_CSEQ` | `long` | RTSP next expected client CSeq |
| `CURLINFO_RTSP_CSEQ_RECV` | `long` | RTSP last received |
| `CURLINFO_RTSP_SERVER_CSEQ` | `long` | RTSP next expected server CSeq |
| `CURLINFO_RTSP_SESSION_ID` | `char *` | RTSP session ID |
| `CURLINFO_SCHEME` | `char *` | The scheme used for the connection |
| `CURLINFO_SIZE_DOWNLOAD` | `double` | Number of bytes downloaded |
| `CURLINFO_SIZE_DOWNLOAD_T` | `curl_off_t` | Number of bytes downloaded |
| `CURLINFO_SIZE_UPLOAD` | `double` | Number of bytes uploaded |
| `CURLINFO_SIZE_UPLOAD_T` | `curl_off_t` | Number of bytes uploaded |
| `CURLINFO_SPEED_DOWNLOAD` | `double` | Average download speed |
| `CURLINFO_SPEED_DOWNLOAD_T` | `curl_off_t` | Average download speed |
| `CURLINFO_SPEED_UPLOAD` | `double` | Average upload speed |
| `CURLINFO_SPEED_UPLOAD_T` | `curl_off_t` | Average upload speed |
| `CURLINFO_SSL_ENGINES` | `struct curl_slist *` | A list of OpenSSL crypto engines |
| `CURLINFO_SSL_VERIFYRESULT` | `long` | Certificate verification result |
| `CURLINFO_STARTTRANSFER_TIME` | `double` | Time from start until just when the first byte is received |
| `CURLINFO_STARTTRANSFER_TIME_T` | `curl_off_t` | Time from start until just when the first byte is received (in microseconds) |
| `CURLINFO_TLS_SSL_PTR` | `struct curl_slist *` | TLS session info that can be used for further processing |
| `CURLINFO_TOTAL_TIME` | `double` | Total time of previous transfer |
| `CURLINFO_TOTAL_TIME_T` | `curl_off_t` | Total time of previous transfer (in microseconds) |
| `CURLINFO_XFER_ID` | `curl_off_t` | Numerical id of the current transfer (meant for callbacks) |

0 comments on commit 1cb398c

Please sign in to comment.