Skip to contents

The functions curl_version() and curl_options() show the available features, protocols and options supported by the local version of libcurl.

You can use curl_options_table() to lookup the type for each option: most options take a string, number, or TRUE/FALSE value, but some options need a special enum/bitmask value: these are listed in the sections below.

Usage

curl_options(filter = "")

curl_options_table(filter = "")

curl_version()

Arguments

filter

string: only return options with string in name

Details

Several curl options take an enum or bitmask value, for which the libcurl manual pages give symbolic names. These constants are exported as R variables, so you can copy such values literally from the libcurl documentation:

h <- new_handle()
handle_setopt(h, http_version = CURL_HTTP_VERSION_1_1)
handle_setopt(h, httpauth = CURLAUTH_NEGOTIATE)

For bitmask options, each constant is a single distinct bit, so where the libcurl documentation combines flags with |, you can simply add them up:

handle_setopt(h, httpauth = CURLAUTH_BASIC + CURLAUTH_DIGEST)
handle_setopt(h, altsvc_ctrl = CURLALTSVC_H1 + CURLALTSVC_H2)

Note that a few wide bitmasks such as CURLAUTH_ANY exceed the range of R integers and are therefore stored as doubles, holding the exact same numeric value as their C counterparts.

The sections below list the supported options with their values, in the same order as the corresponding libcurl manual pages. As usual with handle_setopt(), the R option name is the CURLOPT_ constant, lowercase and without the prefix, e.g. CURLOPT_HTTPAUTH becomes httpauth.

CURLOPT_ALTSVC_CTRL

Bitmask to enable Alt-Svc support, see https://curl.se/libcurl/c/CURLOPT_ALTSVC_CTRL.html.

  • CURLALTSVC_H1: accept alternative services offered over HTTP/1.1

  • CURLALTSVC_H2: accept alternative services offered over HTTP/2

  • CURLALTSVC_H3: accept alternative services offered over HTTP/3

  • CURLALTSVC_READONLYFILE: do not write the alt-svc cache back to the file

CURLOPT_FOLLOWLOCATION

In addition to classic TRUE/FALSE, libcurl >= 8.13 supports these modes, see https://curl.se/libcurl/c/CURLOPT_FOLLOWLOCATION.html.

  • CURLFOLLOW_ALL: follow redirects (same as TRUE)

  • CURLFOLLOW_OBEYCODE: follow redirects, but do not use the custom method in the follow-up request when the HTTP code (301, 302, 303) instructs so

  • CURLFOLLOW_FIRSTONLY: only use the custom method in the first request, always reset it in the next

CURLOPT_FTP_CREATE_MISSING_DIRS

See https://curl.se/libcurl/c/CURLOPT_FTP_CREATE_MISSING_DIRS.html.

  • CURLFTP_CREATE_DIR_NONE: do not create missing directories

  • CURLFTP_CREATE_DIR: create a missing directory, fail if that does not work

  • CURLFTP_CREATE_DIR_RETRY: retry the CWD command again if the directory could not be created, in case it was created by a third party in the meantime

CURLOPT_FTP_FILEMETHOD

Select how to reach a file on an FTP(S) server, see https://curl.se/libcurl/c/CURLOPT_FTP_FILEMETHOD.html.

  • CURLFTPMETHOD_DEFAULT: let libcurl pick (same as MULTICWD)

  • CURLFTPMETHOD_MULTICWD: a CWD command for each path part

  • CURLFTPMETHOD_NOCWD: no CWD at all, use the full path in every command

  • CURLFTPMETHOD_SINGLECWD: one CWD with the full target directory

CURLOPT_FTP_SSL_CCC

Clear Command Channel mode, see https://curl.se/libcurl/c/CURLOPT_FTP_SSL_CCC.html.

  • CURLFTPSSL_CCC_NONE: do not attempt to shut down the SSL/TLS layer

  • CURLFTPSSL_CCC_PASSIVE: do not initiate the shutdown, wait for the server

  • CURLFTPSSL_CCC_ACTIVE: initiate the shutdown ourselves

CURLOPT_FTPSSLAUTH

Order in which to attempt TLS vs SSL when upgrading an FTP connection, see https://curl.se/libcurl/c/CURLOPT_FTPSSLAUTH.html.

  • CURLFTPAUTH_DEFAULT: let libcurl decide

  • CURLFTPAUTH_SSL: try AUTH SSL first

  • CURLFTPAUTH_TLS: try AUTH TLS first

CURLOPT_GSSAPI_DELEGATION

See https://curl.se/libcurl/c/CURLOPT_GSSAPI_DELEGATION.html.

  • CURLGSSAPI_DELEGATION_NONE: no delegation (default)

  • CURLGSSAPI_DELEGATION_POLICY_FLAG: delegate if the OK-AS-DELEGATE flag is set in the service ticket

  • CURLGSSAPI_DELEGATION_FLAG: unconditionally allow delegation

CURLOPT_HEADEROPT

How to send custom headers to a proxy, see https://curl.se/libcurl/c/CURLOPT_HEADEROPT.html.

  • CURLHEADER_UNIFIED: the headers set with httpheader are also sent to the proxy

  • CURLHEADER_SEPARATE: only headers set with proxyheader are sent to the proxy

CURLOPT_HSTS_CTRL

Bitmask to enable HSTS (HTTP Strict Transport Security), see https://curl.se/libcurl/c/CURLOPT_HSTS_CTRL.html.

  • CURLHSTS_ENABLE: enable the in-memory HSTS cache

  • CURLHSTS_READONLYFILE: do not write the HSTS cache back to the file

CURLOPT_HTTP_VERSION

Preferred HTTP protocol version, see https://curl.se/libcurl/c/CURLOPT_HTTP_VERSION.html.

  • CURL_HTTP_VERSION_NONE: no preference, let libcurl choose (default)

  • CURL_HTTP_VERSION_1_0: enforce HTTP 1.0

  • CURL_HTTP_VERSION_1_1: enforce HTTP 1.1

  • CURL_HTTP_VERSION_2_0: attempt HTTP 2, fall back to HTTP 1.1 (CURL_HTTP_VERSION_2 is an alias)

  • CURL_HTTP_VERSION_2TLS: attempt HTTP 2 for HTTPS only, HTTP 1.1 otherwise

  • CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE: use HTTP 2 without HTTP/1.1 Upgrade

  • CURL_HTTP_VERSION_3: attempt HTTP 3, fall back to earlier versions

  • CURL_HTTP_VERSION_3ONLY: use HTTP 3 or fail

CURLOPT_HTTPAUTH

Bitmask of HTTP authentication methods libcurl may use, see https://curl.se/libcurl/c/CURLOPT_HTTPAUTH.html. The same values apply to proxyauth (CURLOPT_PROXYAUTH).

  • CURLAUTH_NONE: no authentication

  • CURLAUTH_BASIC: HTTP Basic authentication (default)

  • CURLAUTH_DIGEST: HTTP Digest authentication

  • CURLAUTH_DIGEST_IE: HTTP Digest authentication with an IE flavor

  • CURLAUTH_BEARER: HTTP Bearer token (OAuth 2.0) authentication

  • CURLAUTH_NEGOTIATE: HTTP Negotiate (SPNEGO) authentication (CURLAUTH_GSSAPI is an alias)

  • CURLAUTH_NTLM: HTTP NTLM authentication

  • CURLAUTH_AWS_SIGV4: HTTP AWS V4 signature authentication

  • CURLAUTH_ANY: all supported methods, libcurl picks the most secure

  • CURLAUTH_ANYSAFE: all supported methods except Basic

  • CURLAUTH_ONLY: modifier bit: use only the method set alongside it, e.g. CURLAUTH_ONLY + CURLAUTH_DIGEST

CURLOPT_IPRESOLVE

See https://curl.se/libcurl/c/CURLOPT_IPRESOLVE.html.

  • CURL_IPRESOLVE_WHATEVER: resolve to any IP version (default)

  • CURL_IPRESOLVE_V4: only use IPv4 addresses

  • CURL_IPRESOLVE_V6: only use IPv6 addresses

CURLOPT_MIME_OPTIONS

See https://curl.se/libcurl/c/CURLOPT_MIME_OPTIONS.html.

  • CURLMIMEOPT_FORMESCAPE: backslash-escape quotes and backslashes in multipart form field and file names

CURLOPT_NETRC

Whether to read credentials from the .netrc file, see https://curl.se/libcurl/c/CURLOPT_NETRC.html.

  • CURL_NETRC_IGNORED: ignore the netrc file (default)

  • CURL_NETRC_OPTIONAL: use the netrc file, but credentials in the URL take precedence

  • CURL_NETRC_REQUIRED: only use the netrc file, ignore credentials in the URL

CURLOPT_POSTREDIR

Bitmask of redirect codes after which a POST must remain a POST, see https://curl.se/libcurl/c/CURLOPT_POSTREDIR.html.

  • CURL_REDIR_POST_301: keep the POST method after a 301 redirect

  • CURL_REDIR_POST_302: keep the POST method after a 302 redirect

  • CURL_REDIR_POST_303: keep the POST method after a 303 redirect

  • CURL_REDIR_POST_ALL: all of the above

  • CURL_REDIR_GET_ALL: convert to GET on all redirects (default)

CURLOPT_PROXYTYPE

Type of the proxy set with proxy, see https://curl.se/libcurl/c/CURLOPT_PROXYTYPE.html.

  • CURLPROXY_HTTP: HTTP proxy (default)

  • CURLPROXY_HTTPS: HTTPS proxy using HTTP/1.x

  • CURLPROXY_HTTPS2: HTTPS proxy, attempt HTTP/2

  • CURLPROXY_HTTP_1_0: HTTP proxy, force HTTP 1.0

  • CURLPROXY_SOCKS4: SOCKS4 proxy

  • CURLPROXY_SOCKS4A: SOCKS4a proxy, proxy resolves the hostname

  • CURLPROXY_SOCKS5: SOCKS5 proxy

  • CURLPROXY_SOCKS5_HOSTNAME: SOCKS5 proxy, proxy resolves the hostname

CURLOPT_SOCKS5_AUTH

Bitmask of allowed methods for SOCKS5 proxy authentication, see https://curl.se/libcurl/c/CURLOPT_SOCKS5_AUTH.html: CURLAUTH_BASIC (username/password), CURLAUTH_GSSAPI and CURLAUTH_NONE.

CURLOPT_SSH_AUTH_TYPES

Bitmask of authentication types for SFTP/SCP connections, see https://curl.se/libcurl/c/CURLOPT_SSH_AUTH_TYPES.html.

  • CURLSSH_AUTH_PUBLICKEY: public/private key files

  • CURLSSH_AUTH_PASSWORD: password

  • CURLSSH_AUTH_HOST: host key files

  • CURLSSH_AUTH_KEYBOARD: keyboard interactive

  • CURLSSH_AUTH_AGENT: ssh-agent

  • CURLSSH_AUTH_GSSAPI: gssapi (kerberos, ...)

  • CURLSSH_AUTH_ANY: any method (default, CURLSSH_AUTH_DEFAULT is an alias)

  • CURLSSH_AUTH_NONE: no allowed methods

CURLOPT_SSL_OPTIONS

Bitmask of SSL behavior options, see https://curl.se/libcurl/c/CURLOPT_SSL_OPTIONS.html. The same values apply to proxy_ssl_options (CURLOPT_PROXY_SSL_OPTIONS).

  • CURLSSLOPT_ALLOW_BEAST: allow the BEAST SSL vulnerability for interoperability reasons

  • CURLSSLOPT_NO_REVOKE: disable certificate revocation checks (Schannel)

  • CURLSSLOPT_NO_PARTIALCHAIN: do not accept partial certificate chains

  • CURLSSLOPT_REVOKE_BEST_EFFORT: ignore revocation check failures due to missing/offline distribution points (Schannel)

  • CURLSSLOPT_NATIVE_CA: use the operating system's native CA store

  • CURLSSLOPT_AUTO_CLIENT_CERT: automatically locate and use a client certificate for authentication (Schannel)

CURLOPT_SSLVERSION

Preferred TLS/SSL version, see https://curl.se/libcurl/c/CURLOPT_SSLVERSION.html. The same values apply to proxy_sslversion (CURLOPT_PROXY_SSLVERSION).

  • CURL_SSLVERSION_DEFAULT: default, currently the minimum is TLS v1.0

  • CURL_SSLVERSION_TLSv1: TLS v1.0 or later

  • CURL_SSLVERSION_TLSv1_0: TLS v1.0 or later

  • CURL_SSLVERSION_TLSv1_1: TLS v1.1 or later

  • CURL_SSLVERSION_TLSv1_2: TLS v1.2 or later

  • CURL_SSLVERSION_TLSv1_3: TLS v1.3 or later

The maximum TLS version can be set by adding one of these to the value above, e.g. CURL_SSLVERSION_TLSv1_1 + CURL_SSLVERSION_MAX_TLSv1_2:

  • CURL_SSLVERSION_MAX_DEFAULT: the highest supported TLS version (CURL_SSLVERSION_MAX_NONE has the same effect)

  • CURL_SSLVERSION_MAX_TLSv1_0: at most TLS v1.0

  • CURL_SSLVERSION_MAX_TLSv1_1: at most TLS v1.1

  • CURL_SSLVERSION_MAX_TLSv1_2: at most TLS v1.2

  • CURL_SSLVERSION_MAX_TLSv1_3: at most TLS v1.3

CURLOPT_TIMECONDITION

How to compare the timevalue timestamp, see https://curl.se/libcurl/c/CURLOPT_TIMECONDITION.html.

  • CURL_TIMECOND_NONE: no time condition (default)

  • CURL_TIMECOND_IFMODSINCE: only transfer if modified since timevalue

  • CURL_TIMECOND_IFUNMODSINCE: only transfer if not modified since timevalue

  • CURL_TIMECOND_LASTMOD: (FTP only)

CURLOPT_USE_SSL

Request TLS upgrade for FTP, SMTP, POP3 and IMAP transfers, see https://curl.se/libcurl/c/CURLOPT_USE_SSL.html.

  • CURLUSESSL_NONE: do not attempt to use SSL (default)

  • CURLUSESSL_TRY: try SSL, proceed as normal otherwise

  • CURLUSESSL_CONTROL: require SSL for the control connection, or fail

  • CURLUSESSL_ALL: require SSL for all communication, or fail

CURLOPT_WS_OPTIONS

Bitmask with websocket behavior options, see https://curl.se/libcurl/c/CURLOPT_WS_OPTIONS.html.

  • CURLWS_RAW_MODE: deliver raw websocket traffic to the write callback

  • CURLWS_NOAUTOPONG: disable the automatic reply to PING frames (libcurl >= 8.14)

Other symbols

The sections above cover the option values supported by handle_setopt(). Use curl_symbols() was previously used to lookup the value of any symbol from the libcurl symbol table, along with the libcurl version in which it was introduced, deprecated, or removed.

See also

Examples

# Available options
curl_options()
#>       abstract_unix_socket           accepttimeout_ms 
#>                      10264                        212 
#>            accept_encoding              address_scope 
#>                      10102                        171 
#>                     altsvc                altsvc_ctrl 
#>                      10287                        286 
#>                     append                autoreferer 
#>                         50                         58 
#>                  aws_sigv4                 buffersize 
#>                      10305                         98 
#>                     cainfo                cainfo_blob 
#>                      10065                      40309 
#>                     capath           ca_cache_timeout 
#>                      10097                        321 
#>                   certinfo         chunk_bgn_function 
#>                        172                      20198 
#>                 chunk_data         chunk_end_function 
#>                      10201                      20199 
#>            closesocketdata        closesocketfunction 
#>                      10209                      20208 
#>             connecttimeout          connecttimeout_ms 
#>                         78                        156 
#>               connect_only                 connect_to 
#>                        141                      10243 
#> conv_from_network_function    conv_from_utf8_function 
#>                      20142                      20144 
#>   conv_to_network_function                     cookie 
#>                      20143                      10022 
#>                 cookiefile                  cookiejar 
#>                      10031                      10082 
#>                 cookielist              cookiesession 
#>                      10135                         96 
#>             copypostfields                       crlf 
#>                      10165                         27 
#>                    crlfile                      curlu 
#>                      10169                      10282 
#>              customrequest                  debugdata 
#>                      10036                      10095 
#>              debugfunction           default_protocol 
#>                      20094                      10238 
#>                dirlistonly   disallow_username_in_url 
#>                         48                        278 
#>          dns_cache_timeout              dns_interface 
#>                         92                      10221 
#>              dns_local_ip4              dns_local_ip6 
#>                      10222                      10223 
#>                dns_servers      dns_shuffle_addresses 
#>                      10211                        275 
#>       dns_use_global_cache         doh_ssl_verifyhost 
#>                         91                        307 
#>         doh_ssl_verifypeer       doh_ssl_verifystatus 
#>                        306                        308 
#>                    doh_url                  egdsocket 
#>                      10279                      10077 
#>                errorbuffer      expect_100_timeout_ms 
#>                      10010                        227 
#>                failonerror                   filetime 
#>                         45                         69 
#>               fnmatch_data           fnmatch_function 
#>                      10202                      20200 
#>             followlocation               forbid_reuse 
#>                         52                         75 
#>              fresh_connect                    ftpport 
#>                         74                      10017 
#>                 ftpsslauth                ftp_account 
#>                        129                      10134 
#>    ftp_alternative_to_user    ftp_create_missing_dirs 
#>                      10147                        110 
#>             ftp_filemethod           ftp_skip_pasv_ip 
#>                        138                        137 
#>                ftp_ssl_ccc               ftp_use_eprt 
#>                        154                        106 
#>               ftp_use_epsv               ftp_use_pret 
#>                         85                        188 
#>          gssapi_delegation  happy_eyeballs_timeout_ms 
#>                        210                        271 
#>            haproxyprotocol          haproxy_client_ip 
#>                        274                      10323 
#>                     header                 headerdata 
#>                         42                      10029 
#>             headerfunction                  headeropt 
#>                      20079                        229 
#>                       hsts               hstsreaddata 
#>                      10300                      10302 
#>           hstsreadfunction              hstswritedata 
#>                      20301                      10304 
#>          hstswritefunction                  hsts_ctrl 
#>                      20303                        299 
#>             http09_allowed             http200aliases 
#>                        285                      10104 
#>                   httpauth                    httpget 
#>                        107                         80 
#>                 httpheader                   httppost 
#>                      10023                      10024 
#>            httpproxytunnel      http_content_decoding 
#>                         61                        158 
#>     http_transfer_decoding               http_version 
#>                        157                         84 
#>      ignore_content_length                 infilesize 
#>                        136                         14 
#>           infilesize_large                  interface 
#>                      30115                      10062 
#>             interleavedata         interleavefunction 
#>                      10195                      20196 
#>                  ioctldata              ioctlfunction 
#>                      10131                      20130 
#>                  ipresolve                 issuercert 
#>                        113                      10170 
#>            issuercert_blob      keep_sending_on_error 
#>                      40295                        245 
#>                  keypasswd                   krblevel 
#>                      10026                      10063 
#>                  localport             localportrange 
#>                        139                        140 
#>              login_options            low_speed_limit 
#>                      10224                         19 
#>             low_speed_time                  mail_auth 
#>                         20                      10217 
#>                  mail_from                  mail_rcpt 
#>                      10186                      10187 
#>       mail_rcpt_allowfails                maxage_conn 
#>                        290                        288 
#>                maxconnects                maxfilesize 
#>                         71                        114 
#>          maxfilesize_large           maxlifetime_conn 
#>                      30117                        314 
#>                  maxredirs       max_recv_speed_large 
#>                         68                      30146 
#>       max_send_speed_large                   mimepost 
#>                      30145                      10269 
#>               mime_options                      netrc 
#>                        315                         51 
#>                 netrc_file        new_directory_perms 
#>                      10118                        160 
#>             new_file_perms                     nobody 
#>                        159                         44 
#>                 noprogress                    noproxy 
#>                         43                      10177 
#>                   nosignal             opensocketdata 
#>                         99                      10164 
#>         opensocketfunction                   password 
#>                      20163                      10174 
#>                 path_as_is            pinnedpublickey 
#>                        234                      10230 
#>                   pipewait                       port 
#>                        237                          3 
#>                       post                 postfields 
#>                         47                      10015 
#>              postfieldsize        postfieldsize_large 
#>                         60                      30120 
#>                  postquote                  postredir 
#>                      10039                        161 
#>                   prequote                 prereqdata 
#>                      10093                      10313 
#>             prereqfunction                  pre_proxy 
#>                      20312                      10262 
#>                    private           progressfunction 
#>                      10103                      20056 
#>                  protocols              protocols_str 
#>                        181                      10318 
#>                      proxy                  proxyauth 
#>                      10004                        111 
#>                proxyheader              proxypassword 
#>                      10228                      10176 
#>                  proxyport                  proxytype 
#>                         59                        101 
#>              proxyusername               proxyuserpwd 
#>                      10175                      10006 
#>               proxy_cainfo          proxy_cainfo_blob 
#>                      10246                      40310 
#>               proxy_capath              proxy_crlfile 
#>                      10247                      10260 
#>           proxy_issuercert      proxy_issuercert_blob 
#>                      10296                      40297 
#>            proxy_keypasswd      proxy_pinnedpublickey 
#>                      10258                      10263 
#>         proxy_service_name              proxy_sslcert 
#>                      10235                      10254 
#>          proxy_sslcerttype         proxy_sslcert_blob 
#>                      10255                      40293 
#>               proxy_sslkey           proxy_sslkeytype 
#>                      10256                      10257 
#>          proxy_sslkey_blob           proxy_sslversion 
#>                      40294                        250 
#>      proxy_ssl_cipher_list          proxy_ssl_options 
#>                      10259                        261 
#>       proxy_ssl_verifyhost       proxy_ssl_verifypeer 
#>                        249                        248 
#>        proxy_tls13_ciphers     proxy_tlsauth_password 
#>                      10277                      10252 
#>         proxy_tlsauth_type     proxy_tlsauth_username 
#>                      10253                      10251 
#>        proxy_transfer_mode                        put 
#>                        166                         54 
#>                 quick_exit                      quote 
#>                        322                      10028 
#>                random_file                      range 
#>                      10076                      10007 
#>                   readdata               readfunction 
#>                      10009                      20012 
#>            redir_protocols        redir_protocols_str 
#>                        182                      10319 
#>                    referer             request_target 
#>                      10016                      10266 
#>                    resolve        resolver_start_data 
#>                      10203                      10273 
#>    resolver_start_function                resume_from 
#>                      20272                         21 
#>          resume_from_large           rtsp_client_cseq 
#>                      30116                        193 
#>               rtsp_request           rtsp_server_cseq 
#>                        189                        194 
#>            rtsp_session_id            rtsp_stream_uri 
#>                      10190                      10191 
#>             rtsp_transport               sasl_authzid 
#>                      10192                      10289 
#>                    sasl_ir                   seekdata 
#>                        218                      10168 
#>               seekfunction    server_response_timeout 
#>                      20167                        112 
#>               service_name                      share 
#>                      10236                      10100 
#>                sockoptdata            sockoptfunction 
#>                      10149                      20148 
#>                socks5_auth          socks5_gssapi_nec 
#>                        267                        180 
#>      socks5_gssapi_service             ssh_auth_types 
#>                      10179                        151 
#>            ssh_compression            ssh_hostkeydata 
#>                        268                      10317 
#>        ssh_hostkeyfunction    ssh_host_public_key_md5 
#>                      20316                      10162 
#> ssh_host_public_key_sha256                ssh_keydata 
#>                      10311                      10185 
#>            ssh_keyfunction             ssh_knownhosts 
#>                      20184                      10183 
#>        ssh_private_keyfile         ssh_public_keyfile 
#>                      10153                      10152 
#>                    sslcert                sslcerttype 
#>                      10025                      10086 
#>               sslcert_blob                  sslengine 
#>                      40291                      10089 
#>          sslengine_default                     sslkey 
#>                         90                      10087 
#>                 sslkeytype                sslkey_blob 
#>                      10088                      40292 
#>                 sslversion            ssl_cipher_list 
#>                         32                      10083 
#>               ssl_ctx_data           ssl_ctx_function 
#>                      10109                      20108 
#>              ssl_ec_curves            ssl_enable_alpn 
#>                      10298                        226 
#>             ssl_enable_npn             ssl_falsestart 
#>                        225                        233 
#>                ssl_options        ssl_sessionid_cache 
#>                        216                        150 
#>             ssl_verifyhost             ssl_verifypeer 
#>                         81                         64 
#>           ssl_verifystatus                     stderr 
#>                        232                      10037 
#>             stream_depends           stream_depends_e 
#>                      10240                      10241 
#>              stream_weight   suppress_connect_headers 
#>                        239                        265 
#>               tcp_fastopen              tcp_keepalive 
#>                        244                        213 
#>               tcp_keepidle              tcp_keepintvl 
#>                        214                        215 
#>                tcp_nodelay              telnetoptions 
#>                        121                      10070 
#>               tftp_blksize            tftp_no_options 
#>                        178                        242 
#>              timecondition                    timeout 
#>                         33                         13 
#>                 timeout_ms                  timevalue 
#>                        155                         34 
#>            timevalue_large              tls13_ciphers 
#>                      30270                      10276 
#>           tlsauth_password               tlsauth_type 
#>                      10205                      10206 
#>           tlsauth_username                trailerdata 
#>                      10204                      10284 
#>            trailerfunction               transfertext 
#>                      20283                         53 
#>          transfer_encoding           unix_socket_path 
#>                        207                      10231 
#>          unrestricted_auth         upkeep_interval_ms 
#>                        105                        281 
#>                     upload          upload_buffersize 
#>                         46                        280 
#>                        url                  useragent 
#>                      10002                      10018 
#>                   username                    userpwd 
#>                      10173                      10005 
#>                    use_ssl                    verbose 
#>                        119                         41 
#>              wildcardmatch                  writedata 
#>                        197                      10001 
#>              writefunction                 ws_options 
#>                      20011                        320 
#>               xferinfodata           xferinfofunction 
#>                      10057                      20219 
#>             xoauth2_bearer 
#>                      10220 

# List proxy options
curl_options("proxy")
#>        haproxyprotocol      haproxy_client_ip        httpproxytunnel 
#>                    274                  10323                     61 
#>                noproxy              pre_proxy                  proxy 
#>                  10177                  10262                  10004 
#>              proxyauth            proxyheader          proxypassword 
#>                    111                  10228                  10176 
#>              proxyport              proxytype          proxyusername 
#>                     59                    101                  10175 
#>           proxyuserpwd           proxy_cainfo      proxy_cainfo_blob 
#>                  10006                  10246                  40310 
#>           proxy_capath          proxy_crlfile       proxy_issuercert 
#>                  10247                  10260                  10296 
#>  proxy_issuercert_blob        proxy_keypasswd  proxy_pinnedpublickey 
#>                  40297                  10258                  10263 
#>     proxy_service_name          proxy_sslcert      proxy_sslcerttype 
#>                  10235                  10254                  10255 
#>     proxy_sslcert_blob           proxy_sslkey       proxy_sslkeytype 
#>                  40293                  10256                  10257 
#>      proxy_sslkey_blob       proxy_sslversion  proxy_ssl_cipher_list 
#>                  40294                    250                  10259 
#>      proxy_ssl_options   proxy_ssl_verifyhost   proxy_ssl_verifypeer 
#>                    261                    249                    248 
#>    proxy_tls13_ciphers proxy_tlsauth_password     proxy_tlsauth_type 
#>                  10277                  10252                  10253 
#> proxy_tlsauth_username    proxy_transfer_mode 
#>                  10251                    166 
# Curl/ssl version info
curl_version()
#> $version
#> [1] "8.5.0"
#> 
#> $headers
#> [1] "8.5.0"
#> 
#> $ssl_version
#> [1] "OpenSSL/3.0.13"
#> 
#> $libz_version
#> [1] "1.3"
#> 
#> $libssh_version
#> [1] "libssh/0.10.6/openssl/zlib"
#> 
#> $libidn_version
#> [1] "2.3.7"
#> 
#> $host
#> [1] "x86_64-pc-linux-gnu"
#> 
#> $protocols
#>  [1] "dict"    "file"    "ftp"     "ftps"    "gopher"  "gophers" "http"   
#>  [8] "https"   "imap"    "imaps"   "ldap"    "ldaps"   "mqtt"    "pop3"   
#> [15] "pop3s"   "rtmp"    "rtmpe"   "rtmps"   "rtmpt"   "rtmpte"  "rtmpts" 
#> [22] "rtsp"    "scp"     "sftp"    "smb"     "smbs"    "smtp"    "smtps"  
#> [29] "telnet"  "tftp"   
#> 
#> $ipv6
#> [1] TRUE
#> 
#> $http2
#> [1] TRUE
#> 
#> $idn
#> [1] TRUE
#> 
#> $url_parser
#> [1] TRUE
#> 
# Set options using symbolic constants
h <- new_handle()
handle_setopt(h, http_version = CURL_HTTP_VERSION_1_1)
handle_setopt(h, httpauth = CURLAUTH_BASIC + CURLAUTH_DIGEST)