290 lines
		
	
	
		
			9.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			290 lines
		
	
	
		
			9.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| .SH FILES
 | |
| .I ~/.curlrc
 | |
| .RS
 | |
| Default config file, see --config for details.
 | |
| .SH ENVIRONMENT
 | |
| The environment variables can be specified in lower case or upper case. The
 | |
| lower case version has precedence. http_proxy is an exception as it is only
 | |
| available in lower case.
 | |
| 
 | |
| Using an environment variable to set the proxy has the same effect as using
 | |
| the --proxy option.
 | |
| 
 | |
| .IP "http_proxy [protocol://]<host>[:port]"
 | |
| Sets the proxy server to use for HTTP.
 | |
| .IP "HTTPS_PROXY [protocol://]<host>[:port]"
 | |
| Sets the proxy server to use for HTTPS.
 | |
| .IP "[url-protocol]_PROXY [protocol://]<host>[:port]"
 | |
| Sets the proxy server to use for [url-protocol], where the protocol is a
 | |
| protocol that curl supports and as specified in a URL. FTP, FTPS, POP3, IMAP,
 | |
| SMTP, LDAP, etc.
 | |
| .IP "ALL_PROXY [protocol://]<host>[:port]"
 | |
| Sets the proxy server to use if no protocol-specific proxy is set.
 | |
| .IP "NO_PROXY <comma-separated list of hosts/domains>"
 | |
| list of host names that should not go through any proxy. If set to an asterisk
 | |
| \&'*' only, it matches all hosts. Each name in this list is matched as either
 | |
| a domain name which contains the hostname, or the hostname itself.
 | |
| 
 | |
| This environment variable disables use of the proxy even when specified with
 | |
| the --proxy option. That is
 | |
| .B NO_PROXY=direct.example.com curl -x http://proxy.example.com
 | |
| .B http://direct.example.com
 | |
| accesses the target URL directly, and
 | |
| .B NO_PROXY=direct.example.com curl -x http://proxy.example.com
 | |
| .B http://somewhere.example.com
 | |
| accesses the target URL through the proxy.
 | |
| 
 | |
| The list of host names can also be include numerical IP addresses, and IPv6
 | |
| versions should then be given without enclosing brackets.
 | |
| 
 | |
| IPv6 numerical addresses are compared as strings, so they will only match if
 | |
| the representations are the same: "::1" is the same as "::0:1" but they do not
 | |
| match.
 | |
| .IP "CURL_SSL_BACKEND <TLS backend>"
 | |
| If curl was built with support for "MultiSSL", meaning that it has built-in
 | |
| support for more than one TLS backend, this environment variable can be set to
 | |
| the case insensitive name of the particular backend to use when curl is
 | |
| invoked. Setting a name that is not a built-in alternative will make curl
 | |
| stay with the default.
 | |
| 
 | |
| SSL backend names (case-insensitive): bearssl, gnutls, gskit, mbedtls,
 | |
| mesalink, nss, openssl, rustls, schannel, secure-transport, wolfssl
 | |
| .IP "QLOGDIR <directory name>"
 | |
| If curl was built with HTTP/3 support, setting this environment variable to a
 | |
| local directory will make curl produce qlogs in that directory, using file
 | |
| names named after the destination connection id (in hex). Do note that these
 | |
| files can become rather large. Works with both QUIC backends.
 | |
| .IP "SSLKEYLOGFILE <file name>"
 | |
| If you set this environment variable to a file name, curl will store TLS
 | |
| secrets from its connections in that file when invoked to enable you to
 | |
| analyze the TLS traffic in real time using network analyzing tools such as
 | |
| Wireshark. This works with the following TLS backends: OpenSSL, libressl,
 | |
| BoringSSL, GnuTLS, NSS and wolfSSL.
 | |
| .SH "PROXY PROTOCOL PREFIXES"
 | |
| The proxy string may be specified with a protocol:// prefix to specify
 | |
| alternative proxy protocols. (Added in 7.21.7)
 | |
| 
 | |
| If no protocol is specified in the proxy string or if the string does not match
 | |
| a supported one, the proxy will be treated as an HTTP proxy.
 | |
| 
 | |
| The supported proxy protocol prefixes are as follows:
 | |
| .IP "http://"
 | |
| Makes it use it as an HTTP proxy. The default if no scheme prefix is used.
 | |
| .IP "https://"
 | |
| Makes it treated as an **HTTPS** proxy.
 | |
| .IP "socks4://"
 | |
| Makes it the equivalent of --socks4
 | |
| .IP "socks4a://"
 | |
| Makes it the equivalent of --socks4a
 | |
| .IP "socks5://"
 | |
| Makes it the equivalent of --socks5
 | |
| .IP "socks5h://"
 | |
| Makes it the equivalent of --socks5-hostname
 | |
| .SH EXIT CODES
 | |
| There are a bunch of different error codes and their corresponding error
 | |
| messages that may appear under error conditions. At the time of this writing,
 | |
| the exit codes are:
 | |
| .IP 1
 | |
| Unsupported protocol. This build of curl has no support for this protocol.
 | |
| .IP 2
 | |
| Failed to initialize.
 | |
| .IP 3
 | |
| URL malformed. The syntax was not correct.
 | |
| .IP 4
 | |
| A feature or option that was needed to perform the desired request was not
 | |
| enabled or was explicitly disabled at build-time. To make curl able to do
 | |
| this, you probably need another build of libcurl!
 | |
| .IP 5
 | |
| Could not resolve proxy. The given proxy host could not be resolved.
 | |
| .IP 6
 | |
| Could not resolve host. The given remote host could not be resolved.
 | |
| .IP 7
 | |
| Failed to connect to host.
 | |
| .IP 8
 | |
| Weird server reply. The server sent data curl could not parse.
 | |
| .IP 9
 | |
| FTP access denied. The server denied login or denied access to the particular
 | |
| resource or directory you wanted to reach. Most often you tried to change to a
 | |
| directory that does not exist on the server.
 | |
| .IP 10
 | |
| FTP accept failed. While waiting for the server to connect back when an active
 | |
| FTP session is used, an error code was sent over the control connection or
 | |
| similar.
 | |
| .IP 11
 | |
| FTP weird PASS reply. Curl could not parse the reply sent to the PASS request.
 | |
| .IP 12
 | |
| During an active FTP session while waiting for the server to connect back to
 | |
| curl, the timeout expired.
 | |
| .IP 13
 | |
| FTP weird PASV reply, Curl could not parse the reply sent to the PASV request.
 | |
| .IP 14
 | |
| FTP weird 227 format. Curl could not parse the 227-line the server sent.
 | |
| .IP 15
 | |
| FTP cannot use host. Could not resolve the host IP we got in the 227-line.
 | |
| .IP 16
 | |
| HTTP/2 error. A problem was detected in the HTTP2 framing layer. This is
 | |
| somewhat generic and can be one out of several problems, see the error message
 | |
| for details.
 | |
| .IP 17
 | |
| FTP could not set binary. Could not change transfer method to binary.
 | |
| .IP 18
 | |
| Partial file. Only a part of the file was transferred.
 | |
| .IP 19
 | |
| FTP could not download/access the given file, the RETR (or similar) command
 | |
| failed.
 | |
| .IP 21
 | |
| FTP quote error. A quote command returned error from the server.
 | |
| .IP 22
 | |
| HTTP page not retrieved. The requested url was not found or returned another
 | |
| error with the HTTP error code being 400 or above. This return code only
 | |
| appears if --fail is used.
 | |
| .IP 23
 | |
| Write error. Curl could not write data to a local filesystem or similar.
 | |
| .IP 25
 | |
| FTP could not STOR file. The server denied the STOR operation, used for FTP
 | |
| uploading.
 | |
| .IP 26
 | |
| Read error. Various reading problems.
 | |
| .IP 27
 | |
| Out of memory. A memory allocation request failed.
 | |
| .IP 28
 | |
| Operation timeout. The specified time-out period was reached according to the
 | |
| conditions.
 | |
| .IP 30
 | |
| FTP PORT failed. The PORT command failed. Not all FTP servers support the PORT
 | |
| command, try doing a transfer using PASV instead!
 | |
| .IP 31
 | |
| FTP could not use REST. The REST command failed. This command is used for
 | |
| resumed FTP transfers.
 | |
| .IP 33
 | |
| HTTP range error. The range "command" did not work.
 | |
| .IP 34
 | |
| HTTP post error. Internal post-request generation error.
 | |
| .IP 35
 | |
| SSL connect error. The SSL handshaking failed.
 | |
| .IP 36
 | |
| Bad download resume. Could not continue an earlier aborted download.
 | |
| .IP 37
 | |
| FILE could not read file. Failed to open the file. Permissions?
 | |
| .IP 38
 | |
| LDAP cannot bind. LDAP bind operation failed.
 | |
| .IP 39
 | |
| LDAP search failed.
 | |
| .IP 41
 | |
| Function not found. A required LDAP function was not found.
 | |
| .IP 42
 | |
| Aborted by callback. An application told curl to abort the operation.
 | |
| .IP 43
 | |
| Internal error. A function was called with a bad parameter.
 | |
| .IP 45
 | |
| Interface error. A specified outgoing interface could not be used.
 | |
| .IP 47
 | |
| Too many redirects. When following redirects, curl hit the maximum amount.
 | |
| .IP 48
 | |
| Unknown option specified to libcurl. This indicates that you passed a weird
 | |
| option to curl that was passed on to libcurl and rejected. Read up in the
 | |
| manual!
 | |
| .IP 49
 | |
| Malformed telnet option.
 | |
| .IP 51
 | |
| The peer's SSL certificate or SSH MD5 fingerprint was not OK.
 | |
| .IP 52
 | |
| The server did not reply anything, which here is considered an error.
 | |
| .IP 53
 | |
| SSL crypto engine not found.
 | |
| .IP 54
 | |
| Cannot set SSL crypto engine as default.
 | |
| .IP 55
 | |
| Failed sending network data.
 | |
| .IP 56
 | |
| Failure in receiving network data.
 | |
| .IP 58
 | |
| Problem with the local certificate.
 | |
| .IP 59
 | |
| Could not use specified SSL cipher.
 | |
| .IP 60
 | |
| Peer certificate cannot be authenticated with known CA certificates.
 | |
| .IP 61
 | |
| Unrecognized transfer encoding.
 | |
| .IP 62
 | |
| Invalid LDAP URL.
 | |
| .IP 63
 | |
| Maximum file size exceeded.
 | |
| .IP 64
 | |
| Requested FTP SSL level failed.
 | |
| .IP 65
 | |
| Sending the data requires a rewind that failed.
 | |
| .IP 66
 | |
| Failed to initialise SSL Engine.
 | |
| .IP 67
 | |
| The user name, password, or similar was not accepted and curl failed to log in.
 | |
| .IP 68
 | |
| File not found on TFTP server.
 | |
| .IP 69
 | |
| Permission problem on TFTP server.
 | |
| .IP 70
 | |
| Out of disk space on TFTP server.
 | |
| .IP 71
 | |
| Illegal TFTP operation.
 | |
| .IP 72
 | |
| Unknown TFTP transfer ID.
 | |
| .IP 73
 | |
| File already exists (TFTP).
 | |
| .IP 74
 | |
| No such user (TFTP).
 | |
| .IP 75
 | |
| Character conversion failed.
 | |
| .IP 76
 | |
| Character conversion functions required.
 | |
| .IP 77
 | |
| Problem reading the SSL CA cert (path? access rights?).
 | |
| .IP 78
 | |
| The resource referenced in the URL does not exist.
 | |
| .IP 79
 | |
| An unspecified error occurred during the SSH session.
 | |
| .IP 80
 | |
| Failed to shut down the SSL connection.
 | |
| .IP 82
 | |
| Could not load CRL file, missing or wrong format (added in 7.19.0).
 | |
| .IP 83
 | |
| Issuer check failed (added in 7.19.0).
 | |
| .IP 84
 | |
| The FTP PRET command failed.
 | |
| .IP 85
 | |
| Mismatch of RTSP CSeq numbers.
 | |
| .IP 86
 | |
| Mismatch of RTSP Session Identifiers.
 | |
| .IP 87
 | |
| Unable to parse FTP file list.
 | |
| .IP 88
 | |
| FTP chunk callback reported error.
 | |
| .IP 89
 | |
| No connection available, the session will be queued.
 | |
| .IP 90
 | |
| SSL public key does not matched pinned public key.
 | |
| .IP 91
 | |
| Invalid SSL certificate status.
 | |
| .IP 92
 | |
| Stream error in HTTP/2 framing layer.
 | |
| .IP 93
 | |
| An API function was called from inside a callback.
 | |
| .IP 94
 | |
| An authentication function returned an error.
 | |
| .IP 95
 | |
| A problem was detected in the HTTP/3 layer. This is somewhat generic and can
 | |
| be one out of several problems, see the error message for details.
 | |
| .IP 96
 | |
| QUIC connection error. This error may be caused by an SSL library error. QUIC
 | |
| is the protocol used for HTTP/3 transfers.
 | |
| .IP XX
 | |
| More error codes will appear here in future releases. The existing ones
 | |
| are meant to never change.
 | |
| .SH AUTHORS / CONTRIBUTORS
 | |
| Daniel Stenberg is the main author, but the whole list of contributors is
 | |
| found in the separate THANKS file.
 | |
| .SH WWW
 | |
| https://curl.se
 | |
| .SH "SEE ALSO"
 | |
| .BR ftp (1),
 | |
| .BR wget (1)
 |