mirror of
https://github.com/curl/curl.git
synced 2025-09-14 08:02:44 +03:00
docs/cmdline: change to .md for cmdline docs
- switch all invidual files documenting command line options into .md, as the documentation is now markdown-looking. - made the parser treat 4-space indents as quotes - switch to building the curl.1 manpage using the "mainpage.idx" file, which lists the files to include to generate it, instead of using the previous page-footer/headers. Also, those files are now also .md ones, using the same format. I gave them underscore prefixes to make them sort separately: _NAME.md, _SYNOPSIS.md, _DESCRIPTION.md, _URL.md, _GLOBBING.md, _VARIABLES.md, _OUTPUT.md, _PROTOCOLS.md, _PROGRESS.md, _VERSION.md, _OPTIONS.md, _FILES.md, _ENVIRONMENT.md, _PROXYPREFIX.md, _EXITCODES.md, _BUGS.md, _AUTHORS.md, _WWW.md, _SEEALSO.md - updated test cases accordingly Closes #12751
This commit is contained in:
parent
dfe34d2559
commit
2494b8dd51
52
.github/scripts/cleancmd.pl
vendored
Executable file
52
.github/scripts/cleancmd.pl
vendored
Executable file
|
@ -0,0 +1,52 @@
|
||||||
|
#!/usr/bin/perl
|
||||||
|
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: curl
|
||||||
|
#
|
||||||
|
# Input: a cmdline docs markdown, it gets modfied *in place*
|
||||||
|
#
|
||||||
|
# The main purpose is to strip off the leading meta-data part, but also to
|
||||||
|
# clean up whatever else the spell checker might have a problem with that we
|
||||||
|
# still deem is fine.
|
||||||
|
|
||||||
|
my $header = 1;
|
||||||
|
while(1) {
|
||||||
|
# set this if the markdown has no meta-data header to skip
|
||||||
|
if($ARGV[0] eq "--no-header") {
|
||||||
|
shift @ARGV;
|
||||||
|
$header = 0;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
last;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
my $f = $ARGV[0];
|
||||||
|
|
||||||
|
open(F, "<$f") or die;
|
||||||
|
|
||||||
|
my $ignore = $header;
|
||||||
|
my $sepcount = 0;
|
||||||
|
my @out;
|
||||||
|
while(<F>) {
|
||||||
|
if(/^---/ && $header) {
|
||||||
|
if(++$sepcount == 2) {
|
||||||
|
$ignore = 0;
|
||||||
|
}
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
next if($ignore);
|
||||||
|
|
||||||
|
# strip out all long command line options
|
||||||
|
$_ =~ s/--[a-z0-9-]+//g;
|
||||||
|
|
||||||
|
# strip out https URLs, we don't want them spellchecked
|
||||||
|
$_ =~ s!https://[a-z0-9\#_/.-]+!!gi;
|
||||||
|
|
||||||
|
push @out, $_;
|
||||||
|
}
|
||||||
|
close(F);
|
||||||
|
|
||||||
|
open(O, ">$f") or die;
|
||||||
|
print O @out;
|
||||||
|
close(O);
|
2
.github/scripts/spellcheck.words
vendored
2
.github/scripts/spellcheck.words
vendored
|
@ -50,6 +50,7 @@ backend
|
||||||
backends
|
backends
|
||||||
backoff
|
backoff
|
||||||
backticks
|
backticks
|
||||||
|
balancers
|
||||||
Baratov
|
Baratov
|
||||||
basename
|
basename
|
||||||
bashrc
|
bashrc
|
||||||
|
@ -445,6 +446,7 @@ Makefile
|
||||||
makefiles
|
makefiles
|
||||||
malloc
|
malloc
|
||||||
mallocs
|
mallocs
|
||||||
|
manpage
|
||||||
maprintf
|
maprintf
|
||||||
Marek
|
Marek
|
||||||
Mavrogiannopoulos
|
Mavrogiannopoulos
|
||||||
|
|
5
.github/workflows/linkcheck.yml
vendored
5
.github/workflows/linkcheck.yml
vendored
|
@ -31,6 +31,11 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
name: checkout
|
||||||
|
|
||||||
|
- name: trim the cmdline docs markdown files
|
||||||
|
run: find docs/cmdline-opts -name "*.md" ! -name "_*" ! -name MANPAGE.md | xargs -n1 ./.github/scripts/cleancmd.pl
|
||||||
|
|
||||||
- uses: gaurav-nelson/github-action-markdown-link-check@v1
|
- uses: gaurav-nelson/github-action-markdown-link-check@v1
|
||||||
with:
|
with:
|
||||||
use-quiet-mode: 'yes'
|
use-quiet-mode: 'yes'
|
||||||
|
|
6
.github/workflows/spellcheck.yml
vendored
6
.github/workflows/spellcheck.yml
vendored
|
@ -57,6 +57,12 @@ jobs:
|
||||||
perl -pi -e 's/\-\-[\a-z0-9-]*//ig' docs/curl.md
|
perl -pi -e 's/\-\-[\a-z0-9-]*//ig' docs/curl.md
|
||||||
perl -pi -e 's!https://[a-z0-9%/.-]*!!ig' docs/curl.md
|
perl -pi -e 's!https://[a-z0-9%/.-]*!!ig' docs/curl.md
|
||||||
|
|
||||||
|
- name: trim the cmdline docs markdown files
|
||||||
|
run: find docs/cmdline-opts -name "*.md" ! -name "_*" ! -name MANPAGE.md | xargs -n1 ./.github/scripts/cleancmd.pl
|
||||||
|
|
||||||
|
- name: trim the cmdline docs markdown _*.md files
|
||||||
|
run: find docs/cmdline-opts -name "_*.md" | xargs -n1 ./.github/scripts/cleancmd.pl --no-header
|
||||||
|
|
||||||
- name: setup the custom wordlist
|
- name: setup the custom wordlist
|
||||||
run: grep -v '^#' .github/scripts/spellcheck.words > wordlist.txt
|
run: grep -v '^#' .github/scripts/spellcheck.words > wordlist.txt
|
||||||
|
|
||||||
|
|
|
@ -9,24 +9,38 @@
|
||||||
This is the curl man page generator. It generates a single nroff man page
|
This is the curl man page generator. It generates a single nroff man page
|
||||||
output from the set of sources files in this directory.
|
output from the set of sources files in this directory.
|
||||||
|
|
||||||
There is one source file for each supported command line option. The output
|
The `mainpage.idx` file lists all files that are rendered in that order to
|
||||||
gets `page-header` prepended and `page-footer` appended. The format is
|
produce the output. The magic `%options` keyword inserts all command line
|
||||||
described below.
|
options documented.
|
||||||
|
|
||||||
|
The `%options` documentation is created with one source file for each
|
||||||
|
supported command line option.
|
||||||
|
|
||||||
|
The documentation file format is described below. It is meant to look similar
|
||||||
|
to markdown which is why it uses `.md` file extensions.
|
||||||
|
|
||||||
## Option files
|
## Option files
|
||||||
|
|
||||||
Each command line option is described in a file named `<long name>.d`, where
|
Each command line option is described in a file named `<long name>.d`, where
|
||||||
option name is written without any prefixing dashes. Like the file name for
|
option name is written without any prefixing dashes. Like the file name for
|
||||||
the -v, --verbose option is named `verbose.d`.
|
the `-v, --verbose` option is named `verbose.d`.
|
||||||
|
|
||||||
Each file has a set of meta-data and a body of text.
|
Each file has a set of meta-data in the top of the file, followed by a body of
|
||||||
|
text.
|
||||||
|
|
||||||
|
The documentation files that do not document options have no meta-data part.
|
||||||
|
|
||||||
|
A line that starts with `<!--` is a comment. It should also end with `-->`.
|
||||||
|
|
||||||
### Meta-data
|
### Meta-data
|
||||||
|
|
||||||
|
--- (start of meta-data)
|
||||||
Added: (version number in which this was added)
|
Added: (version number in which this was added)
|
||||||
Arg: (the argument the option takes)
|
Arg: (the argument the option takes)
|
||||||
c: (copyright line)
|
c: (copyright line)
|
||||||
Example: (example command line, without "curl" and can use `$URL`)
|
Example:
|
||||||
|
- (an example command line, without "curl" and can use `$URL`)
|
||||||
|
- (another example)
|
||||||
Experimental: yes (if so)
|
Experimental: yes (if so)
|
||||||
Help: (short text for the --help output for this option)
|
Help: (short text for the --help output for this option)
|
||||||
Long: (long form name, without dashes)
|
Long: (long form name, without dashes)
|
||||||
|
@ -36,7 +50,9 @@ Each file has a set of meta-data and a body of text.
|
||||||
Protocols: (space separated list for which protocols this option works)
|
Protocols: (space separated list for which protocols this option works)
|
||||||
Requires: (space separated list of features this requires, no dashes)
|
Requires: (space separated list of features this requires, no dashes)
|
||||||
Scope: global (if the option is global)
|
Scope: global (if the option is global)
|
||||||
See-also: (space separated list of related options, no dashes)
|
See-also:
|
||||||
|
- (a related option, no dashes)
|
||||||
|
- (another related option, no dashes)
|
||||||
Short: (single letter, without dash)
|
Short: (single letter, without dash)
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Tags: (space separated list)
|
Tags: (space separated list)
|
||||||
|
@ -54,7 +70,7 @@ Text written within `*asterisks*` is shown using italics. Text within two
|
||||||
Text that is prefixed with a space is treated like an "example" and gets
|
Text that is prefixed with a space is treated like an "example" and gets
|
||||||
output in monospace.
|
output in monospace.
|
||||||
|
|
||||||
Within the body, describe a lite of items like this:
|
Within the body, describe a list of items like this:
|
||||||
|
|
||||||
## item 1
|
## item 1
|
||||||
description
|
description
|
||||||
|
@ -67,12 +83,20 @@ explicitly with an empty "header":
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
||||||
## Header and footer
|
### Headers
|
||||||
|
|
||||||
`page-header` is the file that is output before the generated options output
|
The `#` header can be used by non-option files and it produces produces a
|
||||||
for the master man page.
|
`.SH` output.
|
||||||
|
|
||||||
`page-footer` is appended after all the individual options.
|
If the `#` header is used for a command line option file, that header is
|
||||||
|
simply ignored in the generated output. It can still serve a purpose in the
|
||||||
|
source file as it helps the user identify what option the file is for.
|
||||||
|
|
||||||
|
### Variables
|
||||||
|
|
||||||
|
There are three different "variables" that can be used when creating the
|
||||||
|
output. They need to be written within backticks in the source file (to escape
|
||||||
|
getting spellchecked by CI jobs): `%DATE`, `%VERSION` and `%GLOBALS`.
|
||||||
|
|
||||||
## Generate
|
## Generate
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,7 @@ MANPAGE = $(top_builddir)/docs/curl.1
|
||||||
|
|
||||||
include Makefile.inc
|
include Makefile.inc
|
||||||
|
|
||||||
EXTRA_DIST = $(DPAGES) MANPAGE.md gen.pl $(OTHERPAGES) CMakeLists.txt
|
EXTRA_DIST = $(DPAGES) MANPAGE.md gen.pl $(SUPPORT) CMakeLists.txt mainpage.idx
|
||||||
|
|
||||||
GEN = $(GN_$(V))
|
GEN = $(GN_$(V))
|
||||||
GN_0 = @echo " GENERATE" $@;
|
GN_0 = @echo " GENERATE" $@;
|
||||||
|
@ -37,5 +37,5 @@ GN_ = $(GN_0)
|
||||||
|
|
||||||
all: $(MANPAGE)
|
all: $(MANPAGE)
|
||||||
|
|
||||||
$(MANPAGE): $(DPAGES) $(OTHERPAGES) Makefile.inc gen.pl
|
$(MANPAGE): $(DPAGES) $(SUPPORT) mainpage.idx Makefile.inc gen.pl
|
||||||
$(GEN)(rm -f $(MANPAGE) && cd $(srcdir) && @PERL@ ./gen.pl mainpage $(DPAGES) > $(builddir)/manpage.tmp && mv $(builddir)/manpage.tmp $(MANPAGE))
|
$(GEN)(rm -f $(MANPAGE) && cd $(srcdir) && @PERL@ ./gen.pl mainpage $(DPAGES) > $(builddir)/manpage.tmp && mv $(builddir)/manpage.tmp $(MANPAGE))
|
||||||
|
|
|
@ -23,264 +23,283 @@
|
||||||
###########################################################################
|
###########################################################################
|
||||||
# Shared between Makefile.am and CMakeLists.txt
|
# Shared between Makefile.am and CMakeLists.txt
|
||||||
|
|
||||||
DPAGES = \
|
SUPPORT = \
|
||||||
abstract-unix-socket.d \
|
_AUTHORS.md \
|
||||||
alt-svc.d \
|
_BUGS.md \
|
||||||
anyauth.d \
|
_DESCRIPTION.md \
|
||||||
append.d \
|
_ENVIRONMENT.md \
|
||||||
aws-sigv4.d \
|
_EXITCODES.md \
|
||||||
basic.d \
|
_FILES.md \
|
||||||
ca-native.d \
|
_GLOBBING.md \
|
||||||
cacert.d \
|
_NAME.md \
|
||||||
capath.d \
|
_OPTIONS.md \
|
||||||
cert-status.d \
|
_OUTPUT.md \
|
||||||
cert-type.d \
|
_PROGRESS.md \
|
||||||
cert.d \
|
_PROTOCOLS.md \
|
||||||
ciphers.d \
|
_PROXYPREFIX.md \
|
||||||
compressed-ssh.d \
|
_SEEALSO.md \
|
||||||
compressed.d \
|
_SYNOPSIS.md \
|
||||||
config.d \
|
_URL.md \
|
||||||
connect-timeout.d \
|
_VARIABLES.md \
|
||||||
connect-to.d \
|
_VERSION.md \
|
||||||
continue-at.d \
|
_WWW.md
|
||||||
cookie-jar.d \
|
|
||||||
cookie.d \
|
|
||||||
create-dirs.d \
|
|
||||||
create-file-mode.d \
|
|
||||||
crlf.d \
|
|
||||||
crlfile.d \
|
|
||||||
curves.d \
|
|
||||||
data-ascii.d \
|
|
||||||
data-binary.d \
|
|
||||||
data-raw.d \
|
|
||||||
data-urlencode.d \
|
|
||||||
data.d \
|
|
||||||
delegation.d \
|
|
||||||
digest.d \
|
|
||||||
disable-eprt.d \
|
|
||||||
disable-epsv.d \
|
|
||||||
disable.d \
|
|
||||||
disallow-username-in-url.d \
|
|
||||||
dns-interface.d \
|
|
||||||
dns-ipv4-addr.d \
|
|
||||||
dns-ipv6-addr.d \
|
|
||||||
dns-servers.d \
|
|
||||||
doh-cert-status.d \
|
|
||||||
doh-insecure.d \
|
|
||||||
doh-url.d \
|
|
||||||
dump-header.d \
|
|
||||||
egd-file.d \
|
|
||||||
engine.d \
|
|
||||||
etag-compare.d \
|
|
||||||
etag-save.d \
|
|
||||||
expect100-timeout.d \
|
|
||||||
fail-early.d \
|
|
||||||
fail-with-body.d \
|
|
||||||
fail.d \
|
|
||||||
false-start.d \
|
|
||||||
form-escape.d \
|
|
||||||
form-string.d \
|
|
||||||
form.d \
|
|
||||||
ftp-account.d \
|
|
||||||
ftp-alternative-to-user.d \
|
|
||||||
ftp-create-dirs.d \
|
|
||||||
ftp-method.d \
|
|
||||||
ftp-pasv.d \
|
|
||||||
ftp-port.d \
|
|
||||||
ftp-pret.d \
|
|
||||||
ftp-skip-pasv-ip.d \
|
|
||||||
ftp-ssl-ccc-mode.d \
|
|
||||||
ftp-ssl-ccc.d \
|
|
||||||
ftp-ssl-control.d \
|
|
||||||
get.d \
|
|
||||||
globoff.d \
|
|
||||||
happy-eyeballs-timeout-ms.d \
|
|
||||||
haproxy-protocol.d \
|
|
||||||
haproxy-clientip.d \
|
|
||||||
head.d \
|
|
||||||
header.d \
|
|
||||||
help.d \
|
|
||||||
hostpubmd5.d \
|
|
||||||
hostpubsha256.d \
|
|
||||||
hsts.d \
|
|
||||||
http0.9.d \
|
|
||||||
http1.0.d \
|
|
||||||
http1.1.d \
|
|
||||||
http2-prior-knowledge.d \
|
|
||||||
http2.d \
|
|
||||||
http3.d \
|
|
||||||
http3-only.d \
|
|
||||||
ignore-content-length.d \
|
|
||||||
include.d \
|
|
||||||
insecure.d \
|
|
||||||
interface.d \
|
|
||||||
ipfs-gateway.d \
|
|
||||||
ipv4.d \
|
|
||||||
ipv6.d \
|
|
||||||
json.d \
|
|
||||||
junk-session-cookies.d \
|
|
||||||
keepalive-time.d \
|
|
||||||
key-type.d \
|
|
||||||
key.d \
|
|
||||||
krb.d \
|
|
||||||
libcurl.d \
|
|
||||||
limit-rate.d \
|
|
||||||
list-only.d \
|
|
||||||
local-port.d \
|
|
||||||
location-trusted.d \
|
|
||||||
location.d \
|
|
||||||
login-options.d \
|
|
||||||
mail-auth.d \
|
|
||||||
mail-from.d \
|
|
||||||
mail-rcpt-allowfails.d \
|
|
||||||
mail-rcpt.d \
|
|
||||||
manual.d \
|
|
||||||
max-filesize.d \
|
|
||||||
max-redirs.d \
|
|
||||||
max-time.d \
|
|
||||||
metalink.d \
|
|
||||||
negotiate.d \
|
|
||||||
netrc-file.d \
|
|
||||||
netrc-optional.d \
|
|
||||||
netrc.d \
|
|
||||||
next.d \
|
|
||||||
no-alpn.d \
|
|
||||||
no-buffer.d \
|
|
||||||
no-clobber.d \
|
|
||||||
no-keepalive.d \
|
|
||||||
no-npn.d \
|
|
||||||
no-progress-meter.d \
|
|
||||||
no-sessionid.d \
|
|
||||||
noproxy.d \
|
|
||||||
ntlm-wb.d \
|
|
||||||
ntlm.d \
|
|
||||||
oauth2-bearer.d \
|
|
||||||
output-dir.d \
|
|
||||||
output.d \
|
|
||||||
parallel-immediate.d \
|
|
||||||
parallel-max.d \
|
|
||||||
parallel.d \
|
|
||||||
pass.d \
|
|
||||||
path-as-is.d \
|
|
||||||
pinnedpubkey.d \
|
|
||||||
post301.d \
|
|
||||||
post302.d \
|
|
||||||
post303.d \
|
|
||||||
preproxy.d \
|
|
||||||
progress-bar.d \
|
|
||||||
proto-default.d \
|
|
||||||
proto-redir.d \
|
|
||||||
proto.d \
|
|
||||||
proxy-anyauth.d \
|
|
||||||
proxy-basic.d \
|
|
||||||
proxy-ca-native.d \
|
|
||||||
proxy-cacert.d \
|
|
||||||
proxy-capath.d \
|
|
||||||
proxy-cert-type.d \
|
|
||||||
proxy-cert.d \
|
|
||||||
proxy-ciphers.d \
|
|
||||||
proxy-crlfile.d \
|
|
||||||
proxy-digest.d \
|
|
||||||
proxy-header.d \
|
|
||||||
proxy-http2.d \
|
|
||||||
proxy-insecure.d \
|
|
||||||
proxy-key-type.d \
|
|
||||||
proxy-key.d \
|
|
||||||
proxy-negotiate.d \
|
|
||||||
proxy-ntlm.d \
|
|
||||||
proxy-pass.d \
|
|
||||||
proxy-pinnedpubkey.d \
|
|
||||||
proxy-service-name.d \
|
|
||||||
proxy-ssl-allow-beast.d \
|
|
||||||
proxy-ssl-auto-client-cert.d \
|
|
||||||
proxy-tls13-ciphers.d \
|
|
||||||
proxy-tlsauthtype.d \
|
|
||||||
proxy-tlspassword.d \
|
|
||||||
proxy-tlsuser.d \
|
|
||||||
proxy-tlsv1.d \
|
|
||||||
proxy-user.d \
|
|
||||||
proxy.d \
|
|
||||||
proxy1.0.d \
|
|
||||||
proxytunnel.d \
|
|
||||||
pubkey.d \
|
|
||||||
quote.d \
|
|
||||||
random-file.d \
|
|
||||||
range.d \
|
|
||||||
rate.d \
|
|
||||||
raw.d \
|
|
||||||
referer.d \
|
|
||||||
remote-header-name.d \
|
|
||||||
remote-name-all.d \
|
|
||||||
remote-name.d \
|
|
||||||
remote-time.d \
|
|
||||||
remove-on-error.d \
|
|
||||||
request-target.d \
|
|
||||||
request.d \
|
|
||||||
resolve.d \
|
|
||||||
retry-all-errors.d \
|
|
||||||
retry-connrefused.d \
|
|
||||||
retry-delay.d \
|
|
||||||
retry-max-time.d \
|
|
||||||
retry.d \
|
|
||||||
sasl-authzid.d \
|
|
||||||
sasl-ir.d \
|
|
||||||
service-name.d \
|
|
||||||
show-error.d \
|
|
||||||
silent.d \
|
|
||||||
socks4.d \
|
|
||||||
socks4a.d \
|
|
||||||
socks5-basic.d \
|
|
||||||
socks5-gssapi-nec.d \
|
|
||||||
socks5-gssapi-service.d \
|
|
||||||
socks5-gssapi.d \
|
|
||||||
socks5-hostname.d \
|
|
||||||
socks5.d \
|
|
||||||
speed-limit.d \
|
|
||||||
speed-time.d \
|
|
||||||
ssl-allow-beast.d \
|
|
||||||
ssl-auto-client-cert.d \
|
|
||||||
ssl-no-revoke.d \
|
|
||||||
ssl-reqd.d \
|
|
||||||
ssl-revoke-best-effort.d \
|
|
||||||
ssl.d \
|
|
||||||
sslv2.d \
|
|
||||||
sslv3.d \
|
|
||||||
stderr.d \
|
|
||||||
styled-output.d \
|
|
||||||
suppress-connect-headers.d \
|
|
||||||
tcp-fastopen.d \
|
|
||||||
tcp-nodelay.d \
|
|
||||||
telnet-option.d \
|
|
||||||
tftp-blksize.d \
|
|
||||||
tftp-no-options.d \
|
|
||||||
time-cond.d \
|
|
||||||
tls-max.d \
|
|
||||||
tls13-ciphers.d \
|
|
||||||
tlsauthtype.d \
|
|
||||||
tlspassword.d \
|
|
||||||
tlsuser.d \
|
|
||||||
tlsv1.0.d \
|
|
||||||
tlsv1.1.d \
|
|
||||||
tlsv1.2.d \
|
|
||||||
tlsv1.3.d \
|
|
||||||
tlsv1.d \
|
|
||||||
tr-encoding.d \
|
|
||||||
trace-ascii.d \
|
|
||||||
trace-config.d \
|
|
||||||
trace-ids.d \
|
|
||||||
trace-time.d \
|
|
||||||
trace.d \
|
|
||||||
unix-socket.d \
|
|
||||||
upload-file.d \
|
|
||||||
url.d \
|
|
||||||
url-query.d \
|
|
||||||
use-ascii.d \
|
|
||||||
user-agent.d \
|
|
||||||
user.d \
|
|
||||||
variable.d \
|
|
||||||
verbose.d \
|
|
||||||
version.d \
|
|
||||||
write-out.d \
|
|
||||||
xattr.d
|
|
||||||
|
|
||||||
OTHERPAGES = page-footer page-header
|
DPAGES = \
|
||||||
|
abstract-unix-socket.md \
|
||||||
|
alt-svc.md \
|
||||||
|
anyauth.md \
|
||||||
|
append.md \
|
||||||
|
aws-sigv4.md \
|
||||||
|
basic.md \
|
||||||
|
ca-native.md \
|
||||||
|
cacert.md \
|
||||||
|
capath.md \
|
||||||
|
cert-status.md \
|
||||||
|
cert-type.md \
|
||||||
|
cert.md \
|
||||||
|
ciphers.md \
|
||||||
|
compressed-ssh.md \
|
||||||
|
compressed.md \
|
||||||
|
config.md \
|
||||||
|
connect-timeout.md \
|
||||||
|
connect-to.md \
|
||||||
|
continue-at.md \
|
||||||
|
cookie-jar.md \
|
||||||
|
cookie.md \
|
||||||
|
create-dirs.md \
|
||||||
|
create-file-mode.md \
|
||||||
|
crlf.md \
|
||||||
|
crlfile.md \
|
||||||
|
curves.md \
|
||||||
|
data-ascii.md \
|
||||||
|
data-binary.md \
|
||||||
|
data-raw.md \
|
||||||
|
data-urlencode.md \
|
||||||
|
data.md \
|
||||||
|
delegation.md \
|
||||||
|
digest.md \
|
||||||
|
disable-eprt.md \
|
||||||
|
disable-epsv.md \
|
||||||
|
disable.md \
|
||||||
|
disallow-username-in-url.md \
|
||||||
|
dns-interface.md \
|
||||||
|
dns-ipv4-addr.md \
|
||||||
|
dns-ipv6-addr.md \
|
||||||
|
dns-servers.md \
|
||||||
|
doh-cert-status.md \
|
||||||
|
doh-insecure.md \
|
||||||
|
doh-url.md \
|
||||||
|
dump-header.md \
|
||||||
|
egd-file.md \
|
||||||
|
engine.md \
|
||||||
|
etag-compare.md \
|
||||||
|
etag-save.md \
|
||||||
|
expect100-timeout.md \
|
||||||
|
fail-early.md \
|
||||||
|
fail-with-body.md \
|
||||||
|
fail.md \
|
||||||
|
false-start.md \
|
||||||
|
form-escape.md \
|
||||||
|
form-string.md \
|
||||||
|
form.md \
|
||||||
|
ftp-account.md \
|
||||||
|
ftp-alternative-to-user.md \
|
||||||
|
ftp-create-dirs.md \
|
||||||
|
ftp-method.md \
|
||||||
|
ftp-pasv.md \
|
||||||
|
ftp-port.md \
|
||||||
|
ftp-pret.md \
|
||||||
|
ftp-skip-pasv-ip.md \
|
||||||
|
ftp-ssl-ccc-mode.md \
|
||||||
|
ftp-ssl-ccc.md \
|
||||||
|
ftp-ssl-control.md \
|
||||||
|
get.md \
|
||||||
|
globoff.md \
|
||||||
|
happy-eyeballs-timeout-ms.md \
|
||||||
|
haproxy-protocol.md \
|
||||||
|
haproxy-clientip.md \
|
||||||
|
head.md \
|
||||||
|
header.md \
|
||||||
|
help.md \
|
||||||
|
hostpubmd5.md \
|
||||||
|
hostpubsha256.md \
|
||||||
|
hsts.md \
|
||||||
|
http0.9.md \
|
||||||
|
http1.0.md \
|
||||||
|
http1.1.md \
|
||||||
|
http2-prior-knowledge.md \
|
||||||
|
http2.md \
|
||||||
|
http3.md \
|
||||||
|
http3-only.md \
|
||||||
|
ignore-content-length.md \
|
||||||
|
include.md \
|
||||||
|
insecure.md \
|
||||||
|
interface.md \
|
||||||
|
ipfs-gateway.md \
|
||||||
|
ipv4.md \
|
||||||
|
ipv6.md \
|
||||||
|
json.md \
|
||||||
|
junk-session-cookies.md \
|
||||||
|
keepalive-time.md \
|
||||||
|
key-type.md \
|
||||||
|
key.md \
|
||||||
|
krb.md \
|
||||||
|
libcurl.md \
|
||||||
|
limit-rate.md \
|
||||||
|
list-only.md \
|
||||||
|
local-port.md \
|
||||||
|
location-trusted.md \
|
||||||
|
location.md \
|
||||||
|
login-options.md \
|
||||||
|
mail-auth.md \
|
||||||
|
mail-from.md \
|
||||||
|
mail-rcpt-allowfails.md \
|
||||||
|
mail-rcpt.md \
|
||||||
|
manual.md \
|
||||||
|
max-filesize.md \
|
||||||
|
max-redirs.md \
|
||||||
|
max-time.md \
|
||||||
|
metalink.md \
|
||||||
|
negotiate.md \
|
||||||
|
netrc-file.md \
|
||||||
|
netrc-optional.md \
|
||||||
|
netrc.md \
|
||||||
|
next.md \
|
||||||
|
no-alpn.md \
|
||||||
|
no-buffer.md \
|
||||||
|
no-clobber.md \
|
||||||
|
no-keepalive.md \
|
||||||
|
no-npn.md \
|
||||||
|
no-progress-meter.md \
|
||||||
|
no-sessionid.md \
|
||||||
|
noproxy.md \
|
||||||
|
ntlm-wb.md \
|
||||||
|
ntlm.md \
|
||||||
|
oauth2-bearer.md \
|
||||||
|
output-dir.md \
|
||||||
|
output.md \
|
||||||
|
parallel-immediate.md \
|
||||||
|
parallel-max.md \
|
||||||
|
parallel.md \
|
||||||
|
pass.md \
|
||||||
|
path-as-is.md \
|
||||||
|
pinnedpubkey.md \
|
||||||
|
post301.md \
|
||||||
|
post302.md \
|
||||||
|
post303.md \
|
||||||
|
preproxy.md \
|
||||||
|
progress-bar.md \
|
||||||
|
proto-default.md \
|
||||||
|
proto-redir.md \
|
||||||
|
proto.md \
|
||||||
|
proxy-anyauth.md \
|
||||||
|
proxy-basic.md \
|
||||||
|
proxy-ca-native.md \
|
||||||
|
proxy-cacert.md \
|
||||||
|
proxy-capath.md \
|
||||||
|
proxy-cert-type.md \
|
||||||
|
proxy-cert.md \
|
||||||
|
proxy-ciphers.md \
|
||||||
|
proxy-crlfile.md \
|
||||||
|
proxy-digest.md \
|
||||||
|
proxy-header.md \
|
||||||
|
proxy-http2.md \
|
||||||
|
proxy-insecure.md \
|
||||||
|
proxy-key-type.md \
|
||||||
|
proxy-key.md \
|
||||||
|
proxy-negotiate.md \
|
||||||
|
proxy-ntlm.md \
|
||||||
|
proxy-pass.md \
|
||||||
|
proxy-pinnedpubkey.md \
|
||||||
|
proxy-service-name.md \
|
||||||
|
proxy-ssl-allow-beast.md \
|
||||||
|
proxy-ssl-auto-client-cert.md \
|
||||||
|
proxy-tls13-ciphers.md \
|
||||||
|
proxy-tlsauthtype.md \
|
||||||
|
proxy-tlspassword.md \
|
||||||
|
proxy-tlsuser.md \
|
||||||
|
proxy-tlsv1.md \
|
||||||
|
proxy-user.md \
|
||||||
|
proxy.md \
|
||||||
|
proxy1.0.md \
|
||||||
|
proxytunnel.md \
|
||||||
|
pubkey.md \
|
||||||
|
quote.md \
|
||||||
|
random-file.md \
|
||||||
|
range.md \
|
||||||
|
rate.md \
|
||||||
|
raw.md \
|
||||||
|
referer.md \
|
||||||
|
remote-header-name.md \
|
||||||
|
remote-name-all.md \
|
||||||
|
remote-name.md \
|
||||||
|
remote-time.md \
|
||||||
|
remove-on-error.md \
|
||||||
|
request-target.md \
|
||||||
|
request.md \
|
||||||
|
resolve.md \
|
||||||
|
retry-all-errors.md \
|
||||||
|
retry-connrefused.md \
|
||||||
|
retry-delay.md \
|
||||||
|
retry-max-time.md \
|
||||||
|
retry.md \
|
||||||
|
sasl-authzid.md \
|
||||||
|
sasl-ir.md \
|
||||||
|
service-name.md \
|
||||||
|
show-error.md \
|
||||||
|
silent.md \
|
||||||
|
socks4.md \
|
||||||
|
socks4a.md \
|
||||||
|
socks5-basic.md \
|
||||||
|
socks5-gssapi-nec.md \
|
||||||
|
socks5-gssapi-service.md \
|
||||||
|
socks5-gssapi.md \
|
||||||
|
socks5-hostname.md \
|
||||||
|
socks5.md \
|
||||||
|
speed-limit.md \
|
||||||
|
speed-time.md \
|
||||||
|
ssl-allow-beast.md \
|
||||||
|
ssl-auto-client-cert.md \
|
||||||
|
ssl-no-revoke.md \
|
||||||
|
ssl-reqd.md \
|
||||||
|
ssl-revoke-best-effort.md \
|
||||||
|
ssl.md \
|
||||||
|
sslv2.md \
|
||||||
|
sslv3.md \
|
||||||
|
stderr.md \
|
||||||
|
styled-output.md \
|
||||||
|
suppress-connect-headers.md \
|
||||||
|
tcp-fastopen.md \
|
||||||
|
tcp-nodelay.md \
|
||||||
|
telnet-option.md \
|
||||||
|
tftp-blksize.md \
|
||||||
|
tftp-no-options.md \
|
||||||
|
time-cond.md \
|
||||||
|
tls-max.md \
|
||||||
|
tls13-ciphers.md \
|
||||||
|
tlsauthtype.md \
|
||||||
|
tlspassword.md \
|
||||||
|
tlsuser.md \
|
||||||
|
tlsv1.0.md \
|
||||||
|
tlsv1.1.md \
|
||||||
|
tlsv1.2.md \
|
||||||
|
tlsv1.3.md \
|
||||||
|
tlsv1.md \
|
||||||
|
tr-encoding.md \
|
||||||
|
trace-ascii.md \
|
||||||
|
trace-config.md \
|
||||||
|
trace-ids.md \
|
||||||
|
trace-time.md \
|
||||||
|
trace.md \
|
||||||
|
unix-socket.md \
|
||||||
|
upload-file.md \
|
||||||
|
url.md \
|
||||||
|
url-query.md \
|
||||||
|
use-ascii.md \
|
||||||
|
user-agent.md \
|
||||||
|
user.md \
|
||||||
|
variable.md \
|
||||||
|
verbose.md \
|
||||||
|
version.md \
|
||||||
|
write-out.md \
|
||||||
|
xattr.md
|
||||||
|
|
5
docs/cmdline-opts/_AUTHORS.md
Normal file
5
docs/cmdline-opts/_AUTHORS.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# AUTHORS
|
||||||
|
Daniel Stenberg is the main author, but the whole list of contributors is
|
||||||
|
found in the separate THANKS file.
|
5
docs/cmdline-opts/_BUGS.md
Normal file
5
docs/cmdline-opts/_BUGS.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# BUGS
|
||||||
|
If you experience any problems with curl, submit an issue in the project's bug
|
||||||
|
tracker on GitHub: https://github.com/curl/curl/issues
|
11
docs/cmdline-opts/_DESCRIPTION.md
Normal file
11
docs/cmdline-opts/_DESCRIPTION.md
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# DESCRIPTION
|
||||||
|
|
||||||
|
**curl** is a tool for transferring data from or to a server using URLs. It
|
||||||
|
supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS,
|
||||||
|
IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP,
|
||||||
|
SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS.
|
||||||
|
|
||||||
|
curl is powered by libcurl for all transfer-related features. See
|
||||||
|
*libcurl(3)* for details.
|
114
docs/cmdline-opts/_ENVIRONMENT.md
Normal file
114
docs/cmdline-opts/_ENVIRONMENT.md
Normal file
|
@ -0,0 +1,114 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
## `http_proxy` [protocol://]<host>[:port]
|
||||||
|
Sets the proxy server to use for HTTP.
|
||||||
|
|
||||||
|
## `HTTPS_PROXY` [protocol://]<host>[:port]
|
||||||
|
Sets the proxy server to use for HTTPS.
|
||||||
|
|
||||||
|
## `[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.
|
||||||
|
|
||||||
|
## `ALL_PROXY` [protocol://]<host>[:port]
|
||||||
|
Sets the proxy server to use if no protocol-specific proxy is set.
|
||||||
|
|
||||||
|
## `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
|
||||||
|
|
||||||
|
NO_PROXY=direct.example.com curl -x http://proxy.example.com
|
||||||
|
http://direct.example.com
|
||||||
|
|
||||||
|
accesses the target URL directly, and
|
||||||
|
|
||||||
|
NO_PROXY=direct.example.com curl -x http://proxy.example.com
|
||||||
|
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.
|
||||||
|
|
||||||
|
IP addresses can be specified using CIDR notation: an appended slash and
|
||||||
|
number specifies the number of "network bits" out of the address to use in the
|
||||||
|
comparison (added in 7.86.0). For example "192.168.0.0/16" would match all
|
||||||
|
addresses starting with "192.168".
|
||||||
|
|
||||||
|
## `APPDATA` <dir>
|
||||||
|
On Windows, this variable is used when trying to find the home directory. If
|
||||||
|
the primary home variable are all unset.
|
||||||
|
|
||||||
|
## `COLUMNS` <terminal width>
|
||||||
|
If set, the specified number of characters is used as the terminal width when
|
||||||
|
the alternative progress-bar is shown. If not set, curl tries to figure it out
|
||||||
|
using other ways.
|
||||||
|
|
||||||
|
## `CURL_CA_BUNDLE` <file>
|
||||||
|
If set, it is used as the --cacert value. This environment variable is ignored
|
||||||
|
if Schannel is used as the TLS backend.
|
||||||
|
|
||||||
|
## `CURL_HOME` <dir>
|
||||||
|
If set, is the first variable curl checks when trying to find its home
|
||||||
|
directory. If not set, it continues to check *XDG_CONFIG_HOME*
|
||||||
|
|
||||||
|
## `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 makes curl stay
|
||||||
|
with the default.
|
||||||
|
|
||||||
|
SSL backend names (case-insensitive): **bearssl**, **gnutls**, **mbedtls**,
|
||||||
|
**openssl**, **rustls**, **schannel**, **secure-transport**, **wolfssl**
|
||||||
|
|
||||||
|
## `HOME` <dir>
|
||||||
|
If set, this is used to find the home directory when that is needed. Like when
|
||||||
|
looking for the default .curlrc. *CURL_HOME* and *XDG_CONFIG_HOME*
|
||||||
|
have preference.
|
||||||
|
|
||||||
|
## `QLOGDIR` <directory name>
|
||||||
|
If curl was built with HTTP/3 support, setting this environment variable to a
|
||||||
|
local directory makes 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 the ngtcp2 and quiche QUIC backends.
|
||||||
|
|
||||||
|
## `SHELL`
|
||||||
|
Used on VMS when trying to detect if using a **DCL** or a **unix** shell.
|
||||||
|
|
||||||
|
## `SSL_CERT_DIR` <dir>
|
||||||
|
If set, it is used as the --capath value. This environment variable is ignored
|
||||||
|
if Schannel is used as the TLS backend.
|
||||||
|
|
||||||
|
## `SSL_CERT_FILE` <path>
|
||||||
|
If set, it is used as the --cacert value. This environment variable is ignored
|
||||||
|
if Schannel is used as the TLS backend.
|
||||||
|
|
||||||
|
## `SSLKEYLOGFILE` <file name>
|
||||||
|
If you set this environment variable to a file name, curl stores 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
|
||||||
|
and wolfSSL.
|
||||||
|
|
||||||
|
## `USERPROFILE` <dir>
|
||||||
|
On Windows, this variable is used when trying to find the home directory. If
|
||||||
|
the other, primary, variable are all unset. If set, curl uses the path
|
||||||
|
**"$USERPROFILE\Application Data"**.
|
||||||
|
|
||||||
|
## `XDG_CONFIG_HOME` <dir>
|
||||||
|
If *CURL_HOME* is not set, this variable is checked when looking for a
|
||||||
|
default .curlrc file.
|
201
docs/cmdline-opts/_EXITCODES.md
Normal file
201
docs/cmdline-opts/_EXITCODES.md
Normal file
|
@ -0,0 +1,201 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# 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:
|
||||||
|
## 0
|
||||||
|
Success. The operation completed successfully according to the instructions.
|
||||||
|
## 1
|
||||||
|
Unsupported protocol. This build of curl has no support for this protocol.
|
||||||
|
## 2
|
||||||
|
Failed to initialize.
|
||||||
|
## 3
|
||||||
|
URL malformed. The syntax was not correct.
|
||||||
|
## 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.
|
||||||
|
## 5
|
||||||
|
Could not resolve proxy. The given proxy host could not be resolved.
|
||||||
|
## 6
|
||||||
|
Could not resolve host. The given remote host could not be resolved.
|
||||||
|
## 7
|
||||||
|
Failed to connect to host.
|
||||||
|
## 8
|
||||||
|
Weird server reply. The server sent data curl could not parse.
|
||||||
|
## 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.
|
||||||
|
## 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.
|
||||||
|
## 11
|
||||||
|
FTP weird PASS reply. Curl could not parse the reply sent to the PASS request.
|
||||||
|
## 12
|
||||||
|
During an active FTP session while waiting for the server to connect back to
|
||||||
|
curl, the timeout expired.
|
||||||
|
## 13
|
||||||
|
FTP weird PASV reply, Curl could not parse the reply sent to the PASV request.
|
||||||
|
## 14
|
||||||
|
FTP weird 227 format. Curl could not parse the 227-line the server sent.
|
||||||
|
## 15
|
||||||
|
FTP cannot use host. Could not resolve the host IP we got in the 227-line.
|
||||||
|
## 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.
|
||||||
|
## 17
|
||||||
|
FTP could not set binary. Could not change transfer method to binary.
|
||||||
|
## 18
|
||||||
|
Partial file. Only a part of the file was transferred.
|
||||||
|
## 19
|
||||||
|
FTP could not download/access the given file, the RETR (or similar) command
|
||||||
|
failed.
|
||||||
|
## 21
|
||||||
|
FTP quote error. A quote command returned error from the server.
|
||||||
|
## 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.
|
||||||
|
## 23
|
||||||
|
Write error. Curl could not write data to a local filesystem or similar.
|
||||||
|
## 25
|
||||||
|
Failed starting the upload. For FTP, the server typically denied the STOR
|
||||||
|
command.
|
||||||
|
## 26
|
||||||
|
Read error. Various reading problems.
|
||||||
|
## 27
|
||||||
|
Out of memory. A memory allocation request failed.
|
||||||
|
## 28
|
||||||
|
Operation timeout. The specified time-out period was reached according to the
|
||||||
|
conditions.
|
||||||
|
## 30
|
||||||
|
FTP PORT failed. The PORT command failed. Not all FTP servers support the PORT
|
||||||
|
command, try doing a transfer using PASV instead.
|
||||||
|
## 31
|
||||||
|
FTP could not use REST. The REST command failed. This command is used for
|
||||||
|
resumed FTP transfers.
|
||||||
|
## 33
|
||||||
|
HTTP range error. The range "command" did not work.
|
||||||
|
## 34
|
||||||
|
HTTP post error. Internal post-request generation error.
|
||||||
|
## 35
|
||||||
|
SSL connect error. The SSL handshaking failed.
|
||||||
|
## 36
|
||||||
|
Bad download resume. Could not continue an earlier aborted download.
|
||||||
|
## 37
|
||||||
|
FILE could not read file. Failed to open the file. Permissions?
|
||||||
|
## 38
|
||||||
|
LDAP cannot bind. LDAP bind operation failed.
|
||||||
|
## 39
|
||||||
|
LDAP search failed.
|
||||||
|
## 41
|
||||||
|
Function not found. A required LDAP function was not found.
|
||||||
|
## 42
|
||||||
|
Aborted by callback. An application told curl to abort the operation.
|
||||||
|
## 43
|
||||||
|
Internal error. A function was called with a bad parameter.
|
||||||
|
## 45
|
||||||
|
Interface error. A specified outgoing interface could not be used.
|
||||||
|
## 47
|
||||||
|
Too many redirects. When following redirects, curl hit the maximum amount.
|
||||||
|
## 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!
|
||||||
|
## 49
|
||||||
|
Malformed telnet option.
|
||||||
|
## 52
|
||||||
|
The server did not reply anything, which here is considered an error.
|
||||||
|
## 53
|
||||||
|
SSL crypto engine not found.
|
||||||
|
## 54
|
||||||
|
Cannot set SSL crypto engine as default.
|
||||||
|
## 55
|
||||||
|
Failed sending network data.
|
||||||
|
## 56
|
||||||
|
Failure in receiving network data.
|
||||||
|
## 58
|
||||||
|
Problem with the local certificate.
|
||||||
|
## 59
|
||||||
|
Could not use specified SSL cipher.
|
||||||
|
## 60
|
||||||
|
Peer certificate cannot be authenticated with known CA certificates.
|
||||||
|
## 61
|
||||||
|
Unrecognized transfer encoding.
|
||||||
|
## 63
|
||||||
|
Maximum file size exceeded.
|
||||||
|
## 64
|
||||||
|
Requested FTP SSL level failed.
|
||||||
|
## 65
|
||||||
|
Sending the data requires a rewind that failed.
|
||||||
|
## 66
|
||||||
|
Failed to initialize SSL Engine.
|
||||||
|
## 67
|
||||||
|
The user name, password, or similar was not accepted and curl failed to log in.
|
||||||
|
## 68
|
||||||
|
File not found on TFTP server.
|
||||||
|
## 69
|
||||||
|
Permission problem on TFTP server.
|
||||||
|
## 70
|
||||||
|
Out of disk space on TFTP server.
|
||||||
|
## 71
|
||||||
|
Illegal TFTP operation.
|
||||||
|
## 72
|
||||||
|
Unknown TFTP transfer ID.
|
||||||
|
## 73
|
||||||
|
File already exists (TFTP).
|
||||||
|
## 74
|
||||||
|
No such user (TFTP).
|
||||||
|
## 77
|
||||||
|
Problem reading the SSL CA cert (path? access rights?).
|
||||||
|
## 78
|
||||||
|
The resource referenced in the URL does not exist.
|
||||||
|
## 79
|
||||||
|
An unspecified error occurred during the SSH session.
|
||||||
|
## 80
|
||||||
|
Failed to shut down the SSL connection.
|
||||||
|
## 82
|
||||||
|
Could not load CRL file, missing or wrong format (added in 7.19.0).
|
||||||
|
## 83
|
||||||
|
Issuer check failed (added in 7.19.0).
|
||||||
|
## 84
|
||||||
|
The FTP PRET command failed.
|
||||||
|
## 85
|
||||||
|
Mismatch of RTSP CSeq numbers.
|
||||||
|
## 86
|
||||||
|
Mismatch of RTSP Session Identifiers.
|
||||||
|
## 87
|
||||||
|
Unable to parse FTP file list.
|
||||||
|
## 88
|
||||||
|
FTP chunk callback reported error.
|
||||||
|
## 89
|
||||||
|
No connection available, the session is queued.
|
||||||
|
## 90
|
||||||
|
SSL public key does not matched pinned public key.
|
||||||
|
## 91
|
||||||
|
Invalid SSL certificate status.
|
||||||
|
## 92
|
||||||
|
Stream error in HTTP/2 framing layer.
|
||||||
|
## 93
|
||||||
|
An API function was called from inside a callback.
|
||||||
|
## 94
|
||||||
|
An authentication function returned an error.
|
||||||
|
## 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.
|
||||||
|
## 96
|
||||||
|
QUIC connection error. This error may be caused by an SSL library error. QUIC
|
||||||
|
is the protocol used for HTTP/3 transfers.
|
||||||
|
## 97
|
||||||
|
Proxy handshake error.
|
||||||
|
## 98
|
||||||
|
A client-side certificate is required to complete the TLS handshake.
|
||||||
|
## 99
|
||||||
|
Poll or select returned fatal error.
|
||||||
|
## XX
|
||||||
|
More error codes might appear here in future releases. The existing ones are
|
||||||
|
meant to never change.
|
6
docs/cmdline-opts/_FILES.md
Normal file
6
docs/cmdline-opts/_FILES.md
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# FILES
|
||||||
|
*~/.curlrc*
|
||||||
|
|
||||||
|
Default config file, see --config for details.
|
40
docs/cmdline-opts/_GLOBBING.md
Normal file
40
docs/cmdline-opts/_GLOBBING.md
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# GLOBBING
|
||||||
|
You can specify multiple URLs or parts of URLs by writing lists within braces
|
||||||
|
or ranges within brackets. We call this "globbing".
|
||||||
|
|
||||||
|
Provide a list with three different names like this:
|
||||||
|
|
||||||
|
"http://site.{one,two,three}.com"
|
||||||
|
|
||||||
|
or you can get sequences of alphanumeric series by using [] as in:
|
||||||
|
|
||||||
|
"ftp://ftp.example.com/file[1-100].txt"
|
||||||
|
|
||||||
|
And with leading zeroes:
|
||||||
|
|
||||||
|
"ftp://ftp.example.com/file[001-100].txt"
|
||||||
|
|
||||||
|
Or with letters through the alphabet:
|
||||||
|
|
||||||
|
"ftp://ftp.example.com/file[a-z].txt"
|
||||||
|
|
||||||
|
Nested sequences are not supported, but you can use several ones next to each
|
||||||
|
other:
|
||||||
|
|
||||||
|
"http://example.com/archive[1996-1999]/vol[1-4]/part{a,b,c}.html"
|
||||||
|
|
||||||
|
You can specify a step counter for the ranges to get every Nth number or
|
||||||
|
letter:
|
||||||
|
|
||||||
|
"http://example.com/file[1-100:10].txt"
|
||||||
|
|
||||||
|
"http://example.com/file[a-z:2].txt"
|
||||||
|
|
||||||
|
When using [] or {} sequences when invoked from a command line prompt, you
|
||||||
|
probably have to put the full URL within double quotes to avoid the shell from
|
||||||
|
interfering with it. This also goes for other characters treated special, like
|
||||||
|
for example '&', '?' and '*'.
|
||||||
|
|
||||||
|
Switch off globbing with --globoff.
|
4
docs/cmdline-opts/_NAME.md
Normal file
4
docs/cmdline-opts/_NAME.md
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# NAME
|
||||||
|
curl - transfer a URL
|
26
docs/cmdline-opts/_OPTIONS.md
Normal file
26
docs/cmdline-opts/_OPTIONS.md
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# OPTIONS
|
||||||
|
Options start with one or two dashes. Many of the options require an
|
||||||
|
additional value next to them. If provided text does not start with a dash, it
|
||||||
|
is presumed to be and treated as a URL.
|
||||||
|
|
||||||
|
The short "single-dash" form of the options, -d for example, may be used with
|
||||||
|
or without a space between it and its value, although a space is a recommended
|
||||||
|
separator. The long "double-dash" form, --data for example, requires a space
|
||||||
|
between it and its value.
|
||||||
|
|
||||||
|
Short version options that do not need any additional values can be used
|
||||||
|
immediately next to each other, like for example you can specify all the
|
||||||
|
options *-O*, *-L* and *-v* at once as *-OLv*.
|
||||||
|
|
||||||
|
In general, all boolean options are enabled with --**option** and yet again
|
||||||
|
disabled with --**no-**option. That is, you use the same option name but
|
||||||
|
prefix it with "no-". However, in this list we mostly only list and show the
|
||||||
|
*--option* version of them.
|
||||||
|
|
||||||
|
When --next is used, it resets the parser state and you start again with a
|
||||||
|
clean option state, except for the options that are "global". Global options
|
||||||
|
retain their values and meaning even after --next.
|
||||||
|
|
||||||
|
The following options are global: `%GLOBALS`.
|
11
docs/cmdline-opts/_OUTPUT.md
Normal file
11
docs/cmdline-opts/_OUTPUT.md
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# OUTPUT
|
||||||
|
If not told otherwise, curl writes the received data to stdout. It can be
|
||||||
|
instructed to instead save that data into a local file, using the --output or
|
||||||
|
--remote-name options. If curl is given multiple URLs to transfer on the
|
||||||
|
command line, it similarly needs multiple options for where to save them.
|
||||||
|
|
||||||
|
curl does not parse or otherwise "understand" the content it gets or writes as
|
||||||
|
output. It does no encoding or decoding, unless explicitly asked to with
|
||||||
|
dedicated command line options.
|
25
docs/cmdline-opts/_PROGRESS.md
Normal file
25
docs/cmdline-opts/_PROGRESS.md
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# "PROGRESS METER"
|
||||||
|
|
||||||
|
curl normally displays a progress meter during operations, indicating the
|
||||||
|
amount of transferred data, transfer speeds and estimated time left, etc. The
|
||||||
|
progress meter displays the transfer rate in bytes per second. The suffixes
|
||||||
|
(k, M, G, T, P) are 1024 based. For example 1k is 1024 bytes. 1M is 1048576
|
||||||
|
bytes.
|
||||||
|
|
||||||
|
curl displays this data to the terminal by default, so if you invoke curl to
|
||||||
|
do an operation and it is about to write data to the terminal, it *disables*
|
||||||
|
the progress meter as otherwise it would mess up the output mixing progress
|
||||||
|
meter and response data.
|
||||||
|
|
||||||
|
If you want a progress meter for HTTP POST or PUT requests, you need to
|
||||||
|
redirect the response output to a file, using shell redirect (>), --output or
|
||||||
|
similar.
|
||||||
|
|
||||||
|
This does not apply to FTP upload as that operation does not spit out any
|
||||||
|
response data to the terminal.
|
||||||
|
|
||||||
|
If you prefer a progress "bar" instead of the regular meter, --progress-bar is
|
||||||
|
your friend. You can also disable the progress meter completely with the
|
||||||
|
--silent option.
|
51
docs/cmdline-opts/_PROTOCOLS.md
Normal file
51
docs/cmdline-opts/_PROTOCOLS.md
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# PROTOCOLS
|
||||||
|
curl supports numerous protocols, or put in URL terms: schemes. Your
|
||||||
|
particular build may not support them all.
|
||||||
|
## DICT
|
||||||
|
Lets you lookup words using online dictionaries.
|
||||||
|
## FILE
|
||||||
|
Read or write local files. curl does not support accessing file:// URL
|
||||||
|
remotely, but when running on Microsoft Windows using the native UNC approach
|
||||||
|
works.
|
||||||
|
## FTP(S)
|
||||||
|
curl supports the File Transfer Protocol with a lot of tweaks and levers. With
|
||||||
|
or without using TLS.
|
||||||
|
## GOPHER(S)
|
||||||
|
Retrieve files.
|
||||||
|
## HTTP(S)
|
||||||
|
curl supports HTTP with numerous options and variations. It can speak HTTP
|
||||||
|
version 0.9, 1.0, 1.1, 2 and 3 depending on build options and the correct
|
||||||
|
command line options.
|
||||||
|
## IMAP(S)
|
||||||
|
Using the mail reading protocol, curl can "download" emails for you. With or
|
||||||
|
without using TLS.
|
||||||
|
## LDAP(S)
|
||||||
|
curl can do directory lookups for you, with or without TLS.
|
||||||
|
## MQTT
|
||||||
|
curl supports MQTT version 3. Downloading over MQTT equals "subscribe" to a
|
||||||
|
topic while uploading/posting equals "publish" on a topic. MQTT over TLS is
|
||||||
|
not supported (yet).
|
||||||
|
## POP3(S)
|
||||||
|
Downloading from a pop3 server means getting a mail. With or without using
|
||||||
|
TLS.
|
||||||
|
## RTMP(S)
|
||||||
|
The **Realtime Messaging Protocol** is primarily used to serve streaming media
|
||||||
|
and curl can download it.
|
||||||
|
## RTSP
|
||||||
|
curl supports RTSP 1.0 downloads.
|
||||||
|
## SCP
|
||||||
|
curl supports SSH version 2 scp transfers.
|
||||||
|
## SFTP
|
||||||
|
curl supports SFTP (draft 5) done over SSH version 2.
|
||||||
|
## SMB(S)
|
||||||
|
curl supports SMB version 1 for upload and download.
|
||||||
|
## SMTP(S)
|
||||||
|
Uploading contents to an SMTP server means sending an email. With or without
|
||||||
|
TLS.
|
||||||
|
## TELNET
|
||||||
|
Telling curl to fetch a telnet URL starts an interactive session where it
|
||||||
|
sends what it reads on stdin and outputs what the server sends it.
|
||||||
|
## TFTP
|
||||||
|
curl can do TFTP downloads and uploads.
|
22
docs/cmdline-opts/_PROXYPREFIX.md
Normal file
22
docs/cmdline-opts/_PROXYPREFIX.md
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# 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 is treated as an HTTP proxy.
|
||||||
|
|
||||||
|
The supported proxy protocol prefixes are as follows:
|
||||||
|
## http://
|
||||||
|
Makes it use it as an HTTP proxy. The default if no scheme prefix is used.
|
||||||
|
## https://
|
||||||
|
Makes it treated as an **HTTPS** proxy.
|
||||||
|
## socks4://
|
||||||
|
Makes it the equivalent of --socks4
|
||||||
|
## socks4a://
|
||||||
|
Makes it the equivalent of --socks4a
|
||||||
|
## socks5://
|
||||||
|
Makes it the equivalent of --socks5
|
||||||
|
## socks5h://
|
||||||
|
Makes it the equivalent of --socks5-hostname
|
5
docs/cmdline-opts/_SEEALSO.md
Normal file
5
docs/cmdline-opts/_SEEALSO.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# SEE ALSO
|
||||||
|
|
||||||
|
**ftp (1)**, **wget (1)**
|
5
docs/cmdline-opts/_SYNOPSIS.md
Normal file
5
docs/cmdline-opts/_SYNOPSIS.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# SYNOPSIS
|
||||||
|
|
||||||
|
**curl [options / URLs]**
|
28
docs/cmdline-opts/_URL.md
Normal file
28
docs/cmdline-opts/_URL.md
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# URL
|
||||||
|
The URL syntax is protocol-dependent. You find a detailed description in
|
||||||
|
RFC 3986.
|
||||||
|
|
||||||
|
If you provide a URL without a leading **protocol://** scheme, curl guesses
|
||||||
|
what protocol you want. It then defaults to HTTP but assumes others based on
|
||||||
|
often-used host name prefixes. For example, for host names starting with
|
||||||
|
"ftp." curl assumes you want FTP.
|
||||||
|
|
||||||
|
You can specify any amount of URLs on the command line. They are fetched in a
|
||||||
|
sequential manner in the specified order unless you use --parallel. You can
|
||||||
|
specify command line options and URLs mixed and in any order on the command
|
||||||
|
line.
|
||||||
|
|
||||||
|
curl attempts to reuse connections when doing multiple transfers, so that
|
||||||
|
getting many files from the same server do not use multiple connects and setup
|
||||||
|
handshakes. This improves speed. Connection reuse can only be done for URLs
|
||||||
|
specified for a single command line invocation and cannot be performed between
|
||||||
|
separate curl runs.
|
||||||
|
|
||||||
|
Provide an IPv6 zone id in the URL with an escaped percentage sign. Like in
|
||||||
|
|
||||||
|
"http://[fe80::3%25eth0]/"
|
||||||
|
|
||||||
|
Everything provided on the command line that is not a command line option or
|
||||||
|
its argument, curl assumes is a URL and treats it as such.
|
44
docs/cmdline-opts/_VARIABLES.md
Normal file
44
docs/cmdline-opts/_VARIABLES.md
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# VARIABLES
|
||||||
|
curl supports command line variables (added in 8.3.0). Set variables with
|
||||||
|
--variable name=content or --variable name@file (where "file" can be stdin if
|
||||||
|
set to a single dash (-)).
|
||||||
|
|
||||||
|
Variable contents can expanded in option parameters using "{{name}}" (without
|
||||||
|
the quotes) if the option name is prefixed with "--expand-". This gets the
|
||||||
|
contents of the variable "name" inserted, or a blank if the name does not
|
||||||
|
exist as a variable. Insert "{{" verbatim in the string by prefixing it with a
|
||||||
|
backslash, like "\{{".
|
||||||
|
|
||||||
|
You an access and expand environment variables by first importing them. You
|
||||||
|
can select to either require the environment variable to be set or you can
|
||||||
|
provide a default value in case it is not already set. Plain --variable %name
|
||||||
|
imports the variable called 'name' but exits with an error if that environment
|
||||||
|
variable is not already set. To provide a default value if it is not set, use
|
||||||
|
--variable %name=content or --variable %name@content.
|
||||||
|
|
||||||
|
Example. Get the USER environment variable into the URL, fail if USER is not
|
||||||
|
set:
|
||||||
|
|
||||||
|
--variable '%USER'
|
||||||
|
--expand-url = "https://example.com/api/{{USER}}/method"
|
||||||
|
|
||||||
|
When expanding variables, curl supports a set of functions that can make the
|
||||||
|
variable contents more convenient to use. It can trim leading and trailing
|
||||||
|
white space with *trim*, it can output the contents as a JSON quoted string
|
||||||
|
with *json*, URL encode the string with *url* or base64 encode it with
|
||||||
|
*b64*. You apply function to a variable expansion, add them colon separated to
|
||||||
|
the right side of the variable. Variable content holding null bytes that are
|
||||||
|
not encoded when expanded cause error.
|
||||||
|
|
||||||
|
Example: get the contents of a file called $HOME/.secret into a variable
|
||||||
|
called "fix". Make sure that the content is trimmed and percent-encoded sent
|
||||||
|
as POST data:
|
||||||
|
|
||||||
|
--variable %HOME
|
||||||
|
--expand-variable fix@{{HOME}}/.secret
|
||||||
|
--expand-data "{{fix:trim:url}}"
|
||||||
|
https://example.com/
|
||||||
|
|
||||||
|
Command line variables and expansions were added in in 8.3.0.
|
15
docs/cmdline-opts/_VERSION.md
Normal file
15
docs/cmdline-opts/_VERSION.md
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# VERSION
|
||||||
|
|
||||||
|
This man page describes curl %VERSION. If you use a later version, chances are
|
||||||
|
this man page does not fully document it. If you use an earlier version, this
|
||||||
|
document tries to include version information about which specific version
|
||||||
|
that introduced changes.
|
||||||
|
|
||||||
|
You can always learn which the latest curl version is by running
|
||||||
|
|
||||||
|
curl https://curl.se/info
|
||||||
|
|
||||||
|
The online version of this man page is always showing the latest incarnation:
|
||||||
|
https://curl.se/docs/manpage.html
|
4
docs/cmdline-opts/_WWW.md
Normal file
4
docs/cmdline-opts/_WWW.md
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
|
||||||
|
<!-- SPDX-License-Identifier: curl -->
|
||||||
|
# WWW
|
||||||
|
https://curl.se
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: abstract-unix-socket
|
Long: abstract-unix-socket
|
||||||
|
@ -6,10 +7,15 @@ Help: Connect via abstract Unix domain socket
|
||||||
Added: 7.53.0
|
Added: 7.53.0
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Category: connection
|
Category: connection
|
||||||
See-also: unix-socket
|
|
||||||
Example: --abstract-unix-socket socketpath $URL
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- unix-socket
|
||||||
|
Example:
|
||||||
|
- --abstract-unix-socket socketpath $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--abstract-unix-socket`
|
||||||
|
|
||||||
Connect through an abstract Unix domain socket, instead of using the network.
|
Connect through an abstract Unix domain socket, instead of using the network.
|
||||||
Note: netstat shows the path of an abstract socket prefixed with '@', however
|
Note: netstat shows the path of an abstract socket prefixed with '@', however
|
||||||
the <path> argument should not have this leading character.
|
the <path> argument should not have this leading character.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: alt-svc
|
Long: alt-svc
|
||||||
|
@ -6,10 +7,16 @@ Protocols: HTTPS
|
||||||
Help: Enable alt-svc with this cache file
|
Help: Enable alt-svc with this cache file
|
||||||
Added: 7.64.1
|
Added: 7.64.1
|
||||||
Category: http
|
Category: http
|
||||||
See-also: resolve connect-to
|
|
||||||
Example: --alt-svc svc.txt $URL
|
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- resolve
|
||||||
|
- connect-to
|
||||||
|
Example:
|
||||||
|
- --alt-svc svc.txt $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--alt-svc`
|
||||||
|
|
||||||
This option enables the alt-svc parser in curl. If the file name points to an
|
This option enables the alt-svc parser in curl. If the file name points to an
|
||||||
existing alt-svc cache file, that gets used. After a completed transfer, the
|
existing alt-svc cache file, that gets used. After a completed transfer, the
|
||||||
cache is saved to the file name again if it has been modified.
|
cache is saved to the file name again if it has been modified.
|
|
@ -1,14 +1,22 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: anyauth
|
Long: anyauth
|
||||||
Help: Pick any authentication method
|
Help: Pick any authentication method
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
See-also: proxy-anyauth basic digest
|
|
||||||
Category: http proxy auth
|
Category: http proxy auth
|
||||||
Example: --anyauth --user me:pwd $URL
|
|
||||||
Added: 7.10.6
|
Added: 7.10.6
|
||||||
Multi: mutex
|
Multi: mutex
|
||||||
|
See-also:
|
||||||
|
- proxy-anyauth
|
||||||
|
- basic
|
||||||
|
- digest
|
||||||
|
Example:
|
||||||
|
- --anyauth --user me:pwd $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--anyauth`
|
||||||
|
|
||||||
Tells curl to figure out authentication method by itself, and use the most
|
Tells curl to figure out authentication method by itself, and use the most
|
||||||
secure one the remote site claims to support. This is done by first doing a
|
secure one the remote site claims to support. This is done by first doing a
|
||||||
request and checking the response-headers, thus possibly inducing an extra
|
request and checking the response-headers, thus possibly inducing an extra
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Short: a
|
Short: a
|
||||||
|
@ -5,11 +6,17 @@ Long: append
|
||||||
Help: Append to target file when uploading
|
Help: Append to target file when uploading
|
||||||
Protocols: FTP SFTP
|
Protocols: FTP SFTP
|
||||||
Category: ftp sftp
|
Category: ftp sftp
|
||||||
See-also: range continue-at
|
|
||||||
Example: --upload-file local --append ftp://example.com/
|
|
||||||
Added: 4.8
|
Added: 4.8
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- range
|
||||||
|
- continue-at
|
||||||
|
Example:
|
||||||
|
- --upload-file local --append ftp://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--append`
|
||||||
|
|
||||||
When used in an upload, this option makes curl append to the target file
|
When used in an upload, this option makes curl append to the target file
|
||||||
instead of overwriting it. If the remote file does not exist, it is
|
instead of overwriting it. If the remote file does not exist, it is
|
||||||
created. Note that this flag is ignored by some SFTP servers (including
|
created. Note that this flag is ignored by some SFTP servers (including
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: aws-sigv4
|
Long: aws-sigv4
|
||||||
|
@ -6,10 +7,16 @@ Arg: <provider1[:provider2[:region[:service]]]>
|
||||||
Help: Use AWS V4 signature authentication
|
Help: Use AWS V4 signature authentication
|
||||||
Category: auth http
|
Category: auth http
|
||||||
Added: 7.75.0
|
Added: 7.75.0
|
||||||
See-also: basic user
|
|
||||||
Example: --aws-sigv4 "aws:amz:us-east-2:es" --user "key:secret" $URL
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- basic
|
||||||
|
- user
|
||||||
|
Example:
|
||||||
|
- --aws-sigv4 "aws:amz:us-east-2:es" --user "key:secret" $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--aws-sigv4`
|
||||||
|
|
||||||
Use AWS V4 signature authentication in the transfer.
|
Use AWS V4 signature authentication in the transfer.
|
||||||
|
|
||||||
The provider argument is a string that is used by the algorithm when creating
|
The provider argument is a string that is used by the algorithm when creating
|
|
@ -1,14 +1,20 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: basic
|
Long: basic
|
||||||
Help: Use HTTP Basic Authentication
|
Help: Use HTTP Basic Authentication
|
||||||
See-also: proxy-basic
|
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Category: auth
|
Category: auth
|
||||||
Example: -u name:password --basic $URL
|
|
||||||
Added: 7.10.6
|
Added: 7.10.6
|
||||||
Multi: mutex
|
Multi: mutex
|
||||||
|
See-also:
|
||||||
|
- proxy-basic
|
||||||
|
Example:
|
||||||
|
- -u name:password --basic $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--basic`
|
||||||
|
|
||||||
Tells curl to use HTTP Basic authentication with the remote host. This is the
|
Tells curl to use HTTP Basic authentication with the remote host. This is the
|
||||||
default and this option is usually pointless, unless you use it to override a
|
default and this option is usually pointless, unless you use it to override a
|
||||||
previously set option that sets a different authentication method (such as
|
previously set option that sets a different authentication method (such as
|
|
@ -1,14 +1,22 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ca-native
|
Long: ca-native
|
||||||
Help: Use CA certificates from the native OS
|
Help: Use CA certificates from the native OS
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
Category: tls
|
Category: tls
|
||||||
See-also: cacert capath insecure
|
|
||||||
Example: --ca-native $URL
|
|
||||||
Added: 8.2.0
|
Added: 8.2.0
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- cacert
|
||||||
|
- capath
|
||||||
|
- insecure
|
||||||
|
Example:
|
||||||
|
- --ca-native $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ca-native`
|
||||||
|
|
||||||
Tells curl to use the CA store from the native operating system to verify the
|
Tells curl to use the CA store from the native operating system to verify the
|
||||||
peer. By default, curl otherwise uses a CA store provided in a single file or
|
peer. By default, curl otherwise uses a CA store provided in a single file or
|
||||||
directory, but when using this option it interfaces the operating system's
|
directory, but when using this option it interfaces the operating system's
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: cacert
|
Long: cacert
|
||||||
|
@ -5,11 +6,17 @@ Arg: <file>
|
||||||
Help: CA certificate to verify peer against
|
Help: CA certificate to verify peer against
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
Category: tls
|
Category: tls
|
||||||
See-also: capath insecure
|
|
||||||
Example: --cacert CA-file.txt $URL
|
|
||||||
Added: 7.5
|
Added: 7.5
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- capath
|
||||||
|
- insecure
|
||||||
|
Example:
|
||||||
|
- --cacert CA-file.txt $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--cacert`
|
||||||
|
|
||||||
Tells curl to use the specified certificate file to verify the peer. The file
|
Tells curl to use the specified certificate file to verify the peer. The file
|
||||||
may contain multiple CA certificates. The certificate(s) must be in PEM
|
may contain multiple CA certificates. The certificate(s) must be in PEM
|
||||||
format. Normally curl is built to use a default file for this, so this option
|
format. Normally curl is built to use a default file for this, so this option
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: capath
|
Long: capath
|
||||||
|
@ -5,11 +6,17 @@ Arg: <dir>
|
||||||
Help: CA directory to verify peer against
|
Help: CA directory to verify peer against
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
Category: tls
|
Category: tls
|
||||||
See-also: cacert insecure
|
|
||||||
Example: --capath /local/directory $URL
|
|
||||||
Added: 7.9.8
|
Added: 7.9.8
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- cacert
|
||||||
|
- insecure
|
||||||
|
Example:
|
||||||
|
- --capath /local/directory $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--capath`
|
||||||
|
|
||||||
Tells curl to use the specified certificate directory to verify the
|
Tells curl to use the specified certificate directory to verify the
|
||||||
peer. Multiple paths can be provided by separating them with ":" (e.g.
|
peer. Multiple paths can be provided by separating them with ":" (e.g.
|
||||||
"path1:path2:path3"). The certificates must be in PEM format, and if curl is
|
"path1:path2:path3"). The certificates must be in PEM format, and if curl is
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: cert-status
|
Long: cert-status
|
||||||
|
@ -5,10 +6,15 @@ Protocols: TLS
|
||||||
Added: 7.41.0
|
Added: 7.41.0
|
||||||
Help: Verify the status of the server cert via OCSP-staple
|
Help: Verify the status of the server cert via OCSP-staple
|
||||||
Category: tls
|
Category: tls
|
||||||
See-also: pinnedpubkey
|
|
||||||
Example: --cert-status $URL
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- pinnedpubkey
|
||||||
|
Example:
|
||||||
|
- --cert-status $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--cert-status`
|
||||||
|
|
||||||
Tells curl to verify the status of the server certificate by using the
|
Tells curl to verify the status of the server certificate by using the
|
||||||
Certificate Status Request (aka. OCSP stapling) TLS extension.
|
Certificate Status Request (aka. OCSP stapling) TLS extension.
|
||||||
|
|
|
@ -1,15 +1,23 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: cert-type
|
Long: cert-type
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
Arg: <type>
|
Arg: <type>
|
||||||
Help: Certificate type (DER/PEM/ENG/P12)
|
Help: Certificate type (DER/PEM/ENG/P12)
|
||||||
See-also: cert key key-type
|
|
||||||
Category: tls
|
Category: tls
|
||||||
Example: --cert-type PEM --cert file $URL
|
|
||||||
Added: 7.9.3
|
Added: 7.9.3
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- cert
|
||||||
|
- key
|
||||||
|
- key-type
|
||||||
|
Example:
|
||||||
|
- --cert-type PEM --cert file $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--cert-type`
|
||||||
|
|
||||||
Tells curl what type the provided client certificate is using. PEM, DER, ENG
|
Tells curl what type the provided client certificate is using. PEM, DER, ENG
|
||||||
and P12 are recognized types.
|
and P12 are recognized types.
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Short: E
|
Short: E
|
||||||
|
@ -5,12 +6,19 @@ Long: cert
|
||||||
Arg: <certificate[:password]>
|
Arg: <certificate[:password]>
|
||||||
Help: Client certificate file and password
|
Help: Client certificate file and password
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
See-also: cert-type key key-type
|
|
||||||
Category: tls
|
Category: tls
|
||||||
Example: --cert certfile --key keyfile $URL
|
|
||||||
Added: 5.0
|
Added: 5.0
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- cert-type
|
||||||
|
- key
|
||||||
|
- key-type
|
||||||
|
Example:
|
||||||
|
- --cert certfile --key keyfile $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--cert`
|
||||||
|
|
||||||
Tells curl to use the specified client certificate file when getting a file
|
Tells curl to use the specified client certificate file when getting a file
|
||||||
with HTTPS, FTPS or another SSL-based protocol. The certificate must be in
|
with HTTPS, FTPS or another SSL-based protocol. The certificate must be in
|
||||||
PKCS#12 format if using Secure Transport, or PEM format if using any other
|
PKCS#12 format if using Secure Transport, or PEM format if using any other
|
||||||
|
@ -19,10 +27,10 @@ the terminal. Note that this option assumes a certificate file that is the
|
||||||
private key and the client certificate concatenated. See --cert and --key to
|
private key and the client certificate concatenated. See --cert and --key to
|
||||||
specify them independently.
|
specify them independently.
|
||||||
|
|
||||||
In the <certificate> portion of the argument, you must escape the character ":"
|
In the <certificate> portion of the argument, you must escape the character
|
||||||
as "\\:" so that it is not recognized as the password delimiter. Similarly, you
|
":" as "\:" so that it is not recognized as the password delimiter. Similarly,
|
||||||
must escape the character "\\" as "\\\\" so that it is not recognized as an
|
you must escape the double quote character as \" so that it is not recognized
|
||||||
escape character.
|
as an escape character.
|
||||||
|
|
||||||
If curl is built against OpenSSL library, and the engine pkcs11 is available,
|
If curl is built against OpenSSL library, and the engine pkcs11 is available,
|
||||||
then a PKCS#11 URI (RFC 7512) can be used to specify a certificate located in
|
then a PKCS#11 URI (RFC 7512) can be used to specify a certificate located in
|
||||||
|
@ -37,13 +45,12 @@ system or user keychain, or the path to a PKCS#12-encoded certificate and
|
||||||
private key. If you want to use a file from the current directory, please
|
private key. If you want to use a file from the current directory, please
|
||||||
precede it with "./" prefix, in order to avoid confusion with a nickname.
|
precede it with "./" prefix, in order to avoid confusion with a nickname.
|
||||||
|
|
||||||
(Schannel only) Client certificates must be specified by a path
|
(Schannel only) Client certificates must be specified by a path expression to
|
||||||
expression to a certificate store. (Loading *PFX* is not supported; you can
|
a certificate store. (Loading *PFX* is not supported; you can import it to a
|
||||||
import it to a store first). You can use
|
store first). You can use "<store location>\<store name>\<thumbprint>" to
|
||||||
"<store location>\\<store name>\\<thumbprint>" to refer to a certificate
|
refer to a certificate in the system certificates store, for example,
|
||||||
in the system certificates store, for example,
|
*"CurrentUser\MY\934a7ac6f8a5d579285a74fa61e19f23ddfe8d7a"*. Thumbprint is
|
||||||
*"CurrentUser\\MY\\934a7ac6f8a5d579285a74fa61e19f23ddfe8d7a"*. Thumbprint is
|
|
||||||
usually a SHA-1 hex string which you can see in certificate details. Following
|
usually a SHA-1 hex string which you can see in certificate details. Following
|
||||||
store locations are supported: *CurrentUser*, *LocalMachine*, *CurrentService*,
|
store locations are supported: *CurrentUser*, *LocalMachine*,
|
||||||
*Services*, *CurrentUserGroupPolicy*, *LocalMachineGroupPolicy* and
|
*CurrentService*, *Services*, *CurrentUserGroupPolicy*,
|
||||||
*LocalMachineEnterprise*.
|
*LocalMachineGroupPolicy* and *LocalMachineEnterprise*.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ciphers
|
Long: ciphers
|
||||||
|
@ -5,11 +6,18 @@ Arg: <list of ciphers>
|
||||||
Help: SSL ciphers to use
|
Help: SSL ciphers to use
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
Category: tls
|
Category: tls
|
||||||
See-also: tlsv1.3 tls13-ciphers proxy-ciphers
|
|
||||||
Example: --ciphers ECDHE-ECDSA-AES256-CCM8 $URL
|
|
||||||
Added: 7.9
|
Added: 7.9
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- tlsv1.3
|
||||||
|
- tls13-ciphers
|
||||||
|
- proxy-ciphers
|
||||||
|
Example:
|
||||||
|
- --ciphers ECDHE-ECDSA-AES256-CCM8 $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ciphers`
|
||||||
|
|
||||||
Specifies which ciphers to use in the connection. The list of ciphers must
|
Specifies which ciphers to use in the connection. The list of ciphers must
|
||||||
specify valid ciphers. Read up on SSL cipher list details on this URL:
|
specify valid ciphers. Read up on SSL cipher list details on this URL:
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: compressed-ssh
|
Long: compressed-ssh
|
||||||
|
@ -5,9 +6,14 @@ Help: Enable SSH compression
|
||||||
Protocols: SCP SFTP
|
Protocols: SCP SFTP
|
||||||
Added: 7.56.0
|
Added: 7.56.0
|
||||||
Category: scp ssh
|
Category: scp ssh
|
||||||
See-also: compressed
|
|
||||||
Example: --compressed-ssh sftp://example.com/
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- compressed
|
||||||
|
Example:
|
||||||
|
- --compressed-ssh sftp://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--compressed-ssh`
|
||||||
|
|
||||||
Enables built-in SSH compression.
|
Enables built-in SSH compression.
|
||||||
This is a request, not an order; the server may or may not do it.
|
This is a request, not an order; the server may or may not do it.
|
|
@ -1,14 +1,20 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: compressed
|
Long: compressed
|
||||||
Help: Request compressed response
|
Help: Request compressed response
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Category: http
|
Category: http
|
||||||
Example: --compressed $URL
|
|
||||||
See-also: compressed-ssh
|
|
||||||
Added: 7.10
|
Added: 7.10
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- compressed-ssh
|
||||||
|
Example:
|
||||||
|
- --compressed $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--compressed`
|
||||||
|
|
||||||
Request a compressed response using one of the algorithms curl supports, and
|
Request a compressed response using one of the algorithms curl supports, and
|
||||||
automatically decompress the content.
|
automatically decompress the content.
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: config
|
Long: config
|
||||||
|
@ -5,11 +6,16 @@ Arg: <file>
|
||||||
Help: Read config from a file
|
Help: Read config from a file
|
||||||
Short: K
|
Short: K
|
||||||
Category: curl
|
Category: curl
|
||||||
Example: --config file.txt $URL
|
|
||||||
Added: 4.10
|
Added: 4.10
|
||||||
See-also: disable
|
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- disable
|
||||||
|
Example:
|
||||||
|
- --config file.txt $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--config`
|
||||||
|
|
||||||
Specify a text file to read curl arguments from. The command line arguments
|
Specify a text file to read curl arguments from. The command line arguments
|
||||||
found in the text file are used as if they were provided on the command
|
found in the text file are used as if they were provided on the command
|
||||||
line.
|
line.
|
||||||
|
@ -22,9 +28,9 @@ is specified with one or two dashes, there can be no colon or equals character
|
||||||
between the option and its parameter.
|
between the option and its parameter.
|
||||||
|
|
||||||
If the parameter contains whitespace or starts with a colon (:) or equals sign
|
If the parameter contains whitespace or starts with a colon (:) or equals sign
|
||||||
(=), it must be specified enclosed within double quotes (\&"). Within double
|
(=), it must be specified enclosed within double quotes ("). Within double
|
||||||
quotes the following escape sequences are available: \\\\, \\", \\t, \\n, \\r
|
quotes the following escape sequences are available: \\, \", \t, \n, \r and
|
||||||
and \\v. A backslash preceding any other letter is ignored.
|
\v. A backslash preceding any other letter is ignored.
|
||||||
|
|
||||||
If the first non-blank column of a config line is a '#' character, that line
|
If the first non-blank column of a config line is a '#' character, that line
|
||||||
is treated as a comment.
|
is treated as a comment.
|
||||||
|
@ -62,11 +68,11 @@ config file is checked for in the following places in this order:
|
||||||
|
|
||||||
3) **"$HOME/.curlrc"**
|
3) **"$HOME/.curlrc"**
|
||||||
|
|
||||||
4) Windows: **"%USERPROFILE%\\.curlrc"**
|
4) Windows: **"%USERPROFILE%\.curlrc"**
|
||||||
|
|
||||||
5) Windows: **"%APPDATA%\\.curlrc"**
|
5) Windows: **"%APPDATA%\.curlrc"**
|
||||||
|
|
||||||
6) Windows: **"%USERPROFILE%\\Application Data\\.curlrc"**
|
6) Windows: **"%USERPROFILE%\Application Data\.curlrc"**
|
||||||
|
|
||||||
7) Non-Windows: use getpwuid to find the home directory
|
7) Non-Windows: use getpwuid to find the home directory
|
||||||
|
|
|
@ -1,15 +1,21 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: connect-timeout
|
Long: connect-timeout
|
||||||
Arg: <fractional seconds>
|
Arg: <fractional seconds>
|
||||||
Help: Maximum time allowed for connection
|
Help: Maximum time allowed for connection
|
||||||
See-also: max-time
|
|
||||||
Category: connection
|
Category: connection
|
||||||
Example: --connect-timeout 20 $URL
|
|
||||||
Example: --connect-timeout 3.14 $URL
|
|
||||||
Added: 7.7
|
Added: 7.7
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- max-time
|
||||||
|
Example:
|
||||||
|
- --connect-timeout 20 $URL
|
||||||
|
- --connect-timeout 3.14 $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--connect-timeout`
|
||||||
|
|
||||||
Maximum time in seconds that you allow curl's connection to take. This only
|
Maximum time in seconds that you allow curl's connection to take. This only
|
||||||
limits the connection phase, so if curl connects within the given period it
|
limits the connection phase, so if curl connects within the given period it
|
||||||
continues - if not it exits.
|
continues - if not it exits.
|
|
@ -1,23 +0,0 @@
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
|
||||||
SPDX-License-Identifier: curl
|
|
||||||
Long: connect-to
|
|
||||||
Arg: <HOST1:PORT1:HOST2:PORT2>
|
|
||||||
Help: Connect to host
|
|
||||||
Added: 7.49.0
|
|
||||||
See-also: resolve header
|
|
||||||
Category: connection
|
|
||||||
Example: --connect-to example.com:443:example.net:8443 $URL
|
|
||||||
Multi: append
|
|
||||||
---
|
|
||||||
For a request to the given HOST1:PORT1 pair, connect to HOST2:PORT2 instead.
|
|
||||||
This option is suitable to direct requests at a specific server, e.g. at a
|
|
||||||
specific cluster node in a cluster of servers. This option is only used to
|
|
||||||
establish the network connection. It does NOT affect the hostname/port that is
|
|
||||||
used for TLS/SSL (e.g. SNI, certificate verification) or for the application
|
|
||||||
protocols. "HOST1" and "PORT1" may be the empty string, meaning "any
|
|
||||||
host/port". "HOST2" and "PORT2" may also be the empty string, meaning "use the
|
|
||||||
request's original host/port".
|
|
||||||
|
|
||||||
A "host" specified to this option is compared as a string, so it needs to
|
|
||||||
match the name used in request URL. It can be either numerical such as
|
|
||||||
"127.0.0.1" or the full host name such as "example.org".
|
|
30
docs/cmdline-opts/connect-to.md
Normal file
30
docs/cmdline-opts/connect-to.md
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
---
|
||||||
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
|
SPDX-License-Identifier: curl
|
||||||
|
Long: connect-to
|
||||||
|
Arg: <HOST1:PORT1:HOST2:PORT2>
|
||||||
|
Help: Connect to host
|
||||||
|
Added: 7.49.0
|
||||||
|
Category: connection
|
||||||
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- resolve
|
||||||
|
- header
|
||||||
|
Example:
|
||||||
|
- --connect-to example.com:443:example.net:8443 $URL
|
||||||
|
---
|
||||||
|
|
||||||
|
# `--connect-to`
|
||||||
|
|
||||||
|
For a request to the given `HOST1:PORT1` pair, connect to `HOST2:PORT2`
|
||||||
|
instead. This option is suitable to direct requests at a specific server,
|
||||||
|
e.g. at a specific cluster node in a cluster of servers. This option is only
|
||||||
|
used to establish the network connection. It does NOT affect the hostname/port
|
||||||
|
that is used for TLS/SSL (e.g. SNI, certificate verification) or for the
|
||||||
|
application protocols. `HOST1` and `PORT1` may be the empty string, meaning
|
||||||
|
"any host/port". `HOST2` and `PORT2` may also be the empty string, meaning
|
||||||
|
"use the request's original host/port".
|
||||||
|
|
||||||
|
A hostname specified to this option is compared as a string, so it needs to
|
||||||
|
match the name used in request URL. It can be either numerical such as
|
||||||
|
`127.0.0.1` or the full host name such as `example.org`.
|
|
@ -1,16 +1,22 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Short: C
|
Short: C
|
||||||
Long: continue-at
|
Long: continue-at
|
||||||
Arg: <offset>
|
Arg: <offset>
|
||||||
Help: Resumed transfer offset
|
Help: Resumed transfer offset
|
||||||
See-also: range
|
|
||||||
Category: connection
|
Category: connection
|
||||||
Example: -C - $URL
|
|
||||||
Example: -C 400 $URL
|
|
||||||
Added: 4.8
|
Added: 4.8
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- range
|
||||||
|
Example:
|
||||||
|
- -C - $URL
|
||||||
|
- -C 400 $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--continue-at`
|
||||||
|
|
||||||
Continue/Resume a previous file transfer at the given offset. The given offset
|
Continue/Resume a previous file transfer at the given offset. The given offset
|
||||||
is the exact number of bytes that are skipped, counting from the beginning
|
is the exact number of bytes that are skipped, counting from the beginning
|
||||||
of the source file before it is transferred to the destination. If used with
|
of the source file before it is transferred to the destination. If used with
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Short: c
|
Short: c
|
||||||
|
@ -6,12 +7,17 @@ Arg: <filename>
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Help: Write cookies to <filename> after operation
|
Help: Write cookies to <filename> after operation
|
||||||
Category: http
|
Category: http
|
||||||
Example: -c store-here.txt $URL
|
|
||||||
Example: -c store-here.txt -b read-these $URL
|
|
||||||
Added: 7.9
|
Added: 7.9
|
||||||
See-also: cookie
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- cookie
|
||||||
|
Example:
|
||||||
|
- -c store-here.txt $URL
|
||||||
|
- -c store-here.txt -b read-these $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--cookie-jar`
|
||||||
|
|
||||||
Specify to which file you want curl to write all cookies after a completed
|
Specify to which file you want curl to write all cookies after a completed
|
||||||
operation. Curl writes all cookies from its in-memory cookie storage to the
|
operation. Curl writes all cookies from its in-memory cookie storage to the
|
||||||
given file at the end of operations. If no cookies are known, no data is
|
given file at the end of operations. If no cookies are known, no data is
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Short: b
|
Short: b
|
||||||
|
@ -6,13 +7,19 @@ Arg: <data|filename>
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Help: Send cookies from string/file
|
Help: Send cookies from string/file
|
||||||
Category: http
|
Category: http
|
||||||
Example: -b "" $URL
|
|
||||||
Example: -b cookiefile $URL
|
|
||||||
Example: -b cookiefile -c cookiefile $URL
|
|
||||||
See-also: cookie-jar junk-session-cookies
|
|
||||||
Added: 4.9
|
Added: 4.9
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- cookie-jar
|
||||||
|
- junk-session-cookies
|
||||||
|
Example:
|
||||||
|
- -b "" $URL
|
||||||
|
- -b cookiefile $URL
|
||||||
|
- -b cookiefile -c cookiefile $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--cookie`
|
||||||
|
|
||||||
Pass the data to the HTTP server in the Cookie header. It is supposedly the
|
Pass the data to the HTTP server in the Cookie header. It is supposedly the
|
||||||
data previously received from the server in a "Set-Cookie:" line. The data
|
data previously received from the server in a "Set-Cookie:" line. The data
|
||||||
should be in the format "NAME1=VALUE1; NAME2=VALUE2". This makes curl use the
|
should be in the format "NAME1=VALUE1; NAME2=VALUE2". This makes curl use the
|
|
@ -1,13 +1,20 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: create-dirs
|
Long: create-dirs
|
||||||
Help: Create necessary local directory hierarchy
|
Help: Create necessary local directory hierarchy
|
||||||
Category: curl
|
Category: curl
|
||||||
Example: --create-dirs --output local/dir/file $URL
|
|
||||||
Added: 7.10.3
|
Added: 7.10.3
|
||||||
See-also: ftp-create-dirs output-dir
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- ftp-create-dirs
|
||||||
|
- output-dir
|
||||||
|
Example:
|
||||||
|
- --create-dirs --output local/dir/file $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--create-dirs`
|
||||||
|
|
||||||
When used in conjunction with the --output option, curl creates the necessary
|
When used in conjunction with the --output option, curl creates the necessary
|
||||||
local directory hierarchy as needed. This option creates the directories
|
local directory hierarchy as needed. This option creates the directories
|
||||||
mentioned with the --output option combined with the path possibly set with
|
mentioned with the --output option combined with the path possibly set with
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: create-file-mode
|
Long: create-file-mode
|
||||||
|
@ -5,11 +6,16 @@ Arg: <mode>
|
||||||
Help: File mode for created files
|
Help: File mode for created files
|
||||||
Protocols: SFTP SCP FILE
|
Protocols: SFTP SCP FILE
|
||||||
Category: sftp scp file upload
|
Category: sftp scp file upload
|
||||||
See-also: ftp-create-dirs
|
|
||||||
Added: 7.75.0
|
Added: 7.75.0
|
||||||
Example: --create-file-mode 0777 -T localfile sftp://example.com/new
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- ftp-create-dirs
|
||||||
|
Example:
|
||||||
|
- --create-file-mode 0777 -T localfile sftp://example.com/new
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--create-file-mode`
|
||||||
|
|
||||||
When curl is used to create files remotely using one of the supported
|
When curl is used to create files remotely using one of the supported
|
||||||
protocols, this option allows the user to set which 'mode' to set on the file
|
protocols, this option allows the user to set which 'mode' to set on the file
|
||||||
at creation time, instead of the default 0644.
|
at creation time, instead of the default 0644.
|
|
@ -1,14 +1,20 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: crlf
|
Long: crlf
|
||||||
Help: Convert LF to CRLF in upload
|
Help: Convert LF to CRLF in upload
|
||||||
Protocols: FTP SMTP
|
Protocols: FTP SMTP
|
||||||
Category: ftp smtp
|
Category: ftp smtp
|
||||||
Example: --crlf -T file ftp://example.com/
|
|
||||||
Added: 5.7
|
Added: 5.7
|
||||||
See-also: use-ascii
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- use-ascii
|
||||||
|
Example:
|
||||||
|
- --crlf -T file ftp://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--crlf`
|
||||||
|
|
||||||
Convert line feeds to carriage return plus line feeds in upload. Useful for
|
Convert line feeds to carriage return plus line feeds in upload. Useful for
|
||||||
**MVS (OS/390)**.
|
**MVS (OS/390)**.
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: crlfile
|
Long: crlfile
|
||||||
|
@ -6,9 +7,15 @@ Protocols: TLS
|
||||||
Help: Use this CRL list
|
Help: Use this CRL list
|
||||||
Added: 7.19.7
|
Added: 7.19.7
|
||||||
Category: tls
|
Category: tls
|
||||||
Example: --crlfile rejects.txt $URL
|
|
||||||
See-also: cacert capath
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- cacert
|
||||||
|
- capath
|
||||||
|
Example:
|
||||||
|
- --crlfile rejects.txt $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--crlfile`
|
||||||
|
|
||||||
Provide a file using PEM format with a Certificate Revocation List that may
|
Provide a file using PEM format with a Certificate Revocation List that may
|
||||||
specify peer certificates that are to be considered revoked.
|
specify peer certificates that are to be considered revoked.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: curves
|
Long: curves
|
||||||
|
@ -6,14 +7,19 @@ Help: (EC) TLS key exchange algorithm(s) to request
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
Added: 7.73.0
|
Added: 7.73.0
|
||||||
Category: tls
|
Category: tls
|
||||||
Example: --curves X25519 $URL
|
|
||||||
See-also: ciphers
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- ciphers
|
||||||
|
Example:
|
||||||
|
- --curves X25519 $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--curves`
|
||||||
|
|
||||||
Tells curl to request specific curves to use during SSL session establishment
|
Tells curl to request specific curves to use during SSL session establishment
|
||||||
according to RFC 8422, 5.1. Multiple algorithms can be provided by separating
|
according to RFC 8422, 5.1. Multiple algorithms can be provided by separating
|
||||||
them with ":" (e.g. "X25519:P-521"). The parameter is available identically
|
them with `:` (e.g. `X25519:P-521`). The parameter is available identically in
|
||||||
in the "openssl s_client/s_server" utilities.
|
the OpenSSL `s_client` and `s_server` utilities.
|
||||||
|
|
||||||
--curves allows a OpenSSL powered curl to make SSL-connections with exactly
|
--curves allows a OpenSSL powered curl to make SSL-connections with exactly
|
||||||
the (EC) curve requested by the client, avoiding nontransparent client/server
|
the (EC) curve requested by the client, avoiding nontransparent client/server
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: data-ascii
|
Long: data-ascii
|
||||||
|
@ -5,9 +6,16 @@ Arg: <data>
|
||||||
Help: HTTP POST ASCII data
|
Help: HTTP POST ASCII data
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Category: http post upload
|
Category: http post upload
|
||||||
Example: --data-ascii @file $URL
|
|
||||||
Added: 7.2
|
Added: 7.2
|
||||||
See-also: data-binary data-raw data-urlencode
|
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- data-binary
|
||||||
|
- data-raw
|
||||||
|
- data-urlencode
|
||||||
|
Example:
|
||||||
|
- --data-ascii @file $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--data-ascii`
|
||||||
|
|
||||||
This is just an alias for --data.
|
This is just an alias for --data.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: data-binary
|
Long: data-binary
|
||||||
|
@ -5,11 +6,16 @@ Arg: <data>
|
||||||
Help: HTTP POST binary data
|
Help: HTTP POST binary data
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Category: http post upload
|
Category: http post upload
|
||||||
Example: --data-binary @filename $URL
|
|
||||||
Added: 7.2
|
Added: 7.2
|
||||||
See-also: data-ascii
|
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- data-ascii
|
||||||
|
Example:
|
||||||
|
- --data-binary @filename $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--data-binary`
|
||||||
|
|
||||||
This posts data exactly as specified with no extra processing whatsoever.
|
This posts data exactly as specified with no extra processing whatsoever.
|
||||||
|
|
||||||
If you start the data with the letter @, the rest should be a filename. Data
|
If you start the data with the letter @, the rest should be a filename. Data
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: data-raw
|
Long: data-raw
|
||||||
|
@ -5,11 +6,16 @@ Arg: <data>
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Help: HTTP POST data, '@' allowed
|
Help: HTTP POST data, '@' allowed
|
||||||
Added: 7.43.0
|
Added: 7.43.0
|
||||||
See-also: data
|
|
||||||
Category: http post upload
|
Category: http post upload
|
||||||
Example: --data-raw "hello" $URL
|
|
||||||
Example: --data-raw "@at@at@" $URL
|
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- data
|
||||||
|
Example:
|
||||||
|
- --data-raw "hello" $URL
|
||||||
|
- --data-raw "@at@at@" $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--data-raw`
|
||||||
|
|
||||||
This posts data similarly to --data but without the special
|
This posts data similarly to --data but without the special
|
||||||
interpretation of the @ character.
|
interpretation of the @ character.
|
|
@ -1,18 +1,25 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: data-urlencode
|
Long: data-urlencode
|
||||||
Arg: <data>
|
Arg: <data>
|
||||||
Help: HTTP POST data URL encoded
|
Help: HTTP POST data URL encoded
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
See-also: data data-raw
|
|
||||||
Added: 7.18.0
|
Added: 7.18.0
|
||||||
Category: http post upload
|
Category: http post upload
|
||||||
Example: --data-urlencode name=val $URL
|
|
||||||
Example: --data-urlencode =encodethis $URL
|
|
||||||
Example: --data-urlencode name@file $URL
|
|
||||||
Example: --data-urlencode @fileonly $URL
|
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- data
|
||||||
|
- data-raw
|
||||||
|
Example:
|
||||||
|
- --data-urlencode name=val $URL
|
||||||
|
- --data-urlencode =encodethis $URL
|
||||||
|
- --data-urlencode name@file $URL
|
||||||
|
- --data-urlencode @fileonly $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--data-urlencode`
|
||||||
|
|
||||||
This posts data, similar to the other --data options with the exception
|
This posts data, similar to the other --data options with the exception
|
||||||
that this performs URL-encoding.
|
that this performs URL-encoding.
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: data
|
Long: data
|
||||||
|
@ -5,15 +6,22 @@ Short: d
|
||||||
Arg: <data>
|
Arg: <data>
|
||||||
Help: HTTP POST data
|
Help: HTTP POST data
|
||||||
Protocols: HTTP MQTT
|
Protocols: HTTP MQTT
|
||||||
See-also: data-binary data-urlencode data-raw
|
|
||||||
Mutexed: form head upload-file
|
Mutexed: form head upload-file
|
||||||
Category: important http post upload
|
Category: important http post upload
|
||||||
Example: -d "name=curl" $URL
|
|
||||||
Example: -d "name=curl" -d "tool=cmdline" $URL
|
|
||||||
Example: -d @filename $URL
|
|
||||||
Added: 4.0
|
Added: 4.0
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- data-binary
|
||||||
|
- data-urlencode
|
||||||
|
- data-raw
|
||||||
|
Example:
|
||||||
|
- -d "name=curl" $URL
|
||||||
|
- -d "name=curl" -d "tool=cmdline" $URL
|
||||||
|
- -d @filename $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--data`
|
||||||
|
|
||||||
Sends the specified data in a POST request to the HTTP server, in the same way
|
Sends the specified data in a POST request to the HTTP server, in the same way
|
||||||
that a browser does when a user has filled in an HTML form and presses the
|
that a browser does when a user has filled in an HTML form and presses the
|
||||||
submit button. This makes curl pass the data to the server using the
|
submit button. This makes curl pass the data to the server using the
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: delegation
|
Long: delegation
|
||||||
|
@ -5,11 +6,17 @@ Arg: <LEVEL>
|
||||||
Help: GSS-API delegation permission
|
Help: GSS-API delegation permission
|
||||||
Protocols: GSS/kerberos
|
Protocols: GSS/kerberos
|
||||||
Category: auth
|
Category: auth
|
||||||
Example: --delegation "none" $URL
|
|
||||||
Added: 7.22.0
|
Added: 7.22.0
|
||||||
See-also: insecure ssl
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- insecure
|
||||||
|
- ssl
|
||||||
|
Example:
|
||||||
|
- --delegation "none" $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--delegation`
|
||||||
|
|
||||||
Set LEVEL to tell the server what it is allowed to delegate when it
|
Set LEVEL to tell the server what it is allowed to delegate when it
|
||||||
comes to user credentials.
|
comes to user credentials.
|
||||||
|
|
|
@ -1,15 +1,23 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: digest
|
Long: digest
|
||||||
Help: Use HTTP Digest Authentication
|
Help: Use HTTP Digest Authentication
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Mutexed: basic ntlm negotiate
|
Mutexed: basic ntlm negotiate
|
||||||
See-also: user proxy-digest anyauth
|
|
||||||
Category: proxy auth http
|
Category: proxy auth http
|
||||||
Example: -u name:password --digest $URL
|
|
||||||
Added: 7.10.6
|
Added: 7.10.6
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- user
|
||||||
|
- proxy-digest
|
||||||
|
- anyauth
|
||||||
|
Example:
|
||||||
|
- -u name:password --digest $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--digest`
|
||||||
|
|
||||||
Enables HTTP Digest authentication. This is an authentication scheme that
|
Enables HTTP Digest authentication. This is an authentication scheme that
|
||||||
prevents the password from being sent over the wire in clear text. Use this in
|
prevents the password from being sent over the wire in clear text. Use this in
|
||||||
combination with the normal --user option to set user name and password.
|
combination with the normal --user option to set user name and password.
|
|
@ -1,14 +1,21 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: disable-eprt
|
Long: disable-eprt
|
||||||
Help: Inhibit using EPRT or LPRT
|
Help: Inhibit using EPRT or LPRT
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Category: ftp
|
Category: ftp
|
||||||
Example: --disable-eprt ftp://example.com/
|
|
||||||
Added: 7.10.5
|
Added: 7.10.5
|
||||||
See-also: disable-epsv ftp-port
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- disable-epsv
|
||||||
|
- ftp-port
|
||||||
|
Example:
|
||||||
|
- --disable-eprt ftp://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--disable-eprt`
|
||||||
|
|
||||||
Tell curl to disable the use of the EPRT and LPRT commands when doing active
|
Tell curl to disable the use of the EPRT and LPRT commands when doing active
|
||||||
FTP transfers. Curl normally first attempts to use EPRT before using PORT, but
|
FTP transfers. Curl normally first attempts to use EPRT before using PORT, but
|
||||||
with this option, it uses PORT right away. EPRT is an extension to the
|
with this option, it uses PORT right away. EPRT is an extension to the
|
|
@ -1,14 +1,21 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: disable-epsv
|
Long: disable-epsv
|
||||||
Help: Inhibit using EPSV
|
Help: Inhibit using EPSV
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Category: ftp
|
Category: ftp
|
||||||
Example: --disable-epsv ftp://example.com/
|
|
||||||
Added: 7.9.2
|
Added: 7.9.2
|
||||||
See-also: disable-eprt ftp-port
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- disable-eprt
|
||||||
|
- ftp-port
|
||||||
|
Example:
|
||||||
|
- --disable-epsv ftp://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--disable-epsv`
|
||||||
|
|
||||||
Tell curl to disable the use of the EPSV command when doing passive FTP
|
Tell curl to disable the use of the EPSV command when doing passive FTP
|
||||||
transfers. Curl normally first attempts to use EPSV before PASV, but with this
|
transfers. Curl normally first attempts to use EPSV before PASV, but with this
|
||||||
option, it does not try EPSV.
|
option, it does not try EPSV.
|
|
@ -1,14 +1,20 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: disable
|
Long: disable
|
||||||
Short: q
|
Short: q
|
||||||
Help: Disable .curlrc
|
Help: Disable .curlrc
|
||||||
Category: curl
|
Category: curl
|
||||||
Example: -q $URL
|
|
||||||
Added: 5.0
|
Added: 5.0
|
||||||
See-also: config
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- config
|
||||||
|
Example:
|
||||||
|
- -q $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--disable`
|
||||||
|
|
||||||
If used as the **first** parameter on the command line, the *curlrc* config
|
If used as the **first** parameter on the command line, the *curlrc* config
|
||||||
file is not read or used. See the --config for details on the default config
|
file is not read or used. See the --config for details on the default config
|
||||||
file search path.
|
file search path.
|
|
@ -1,12 +1,18 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: disallow-username-in-url
|
Long: disallow-username-in-url
|
||||||
Help: Disallow username in URL
|
Help: Disallow username in URL
|
||||||
Added: 7.61.0
|
Added: 7.61.0
|
||||||
See-also: proto
|
|
||||||
Category: curl
|
Category: curl
|
||||||
Example: --disallow-username-in-url $URL
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- proto
|
||||||
|
Example:
|
||||||
|
- --disallow-username-in-url $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--disallow-username-in-url`
|
||||||
|
|
||||||
This tells curl to exit if passed a URL containing a username. This is probably
|
This tells curl to exit if passed a URL containing a username. This is probably
|
||||||
most useful when the URL is being provided at runtime or similar.
|
most useful when the URL is being provided at runtime or similar.
|
|
@ -1,16 +1,23 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: dns-interface
|
Long: dns-interface
|
||||||
Arg: <interface>
|
Arg: <interface>
|
||||||
Help: Interface to use for DNS requests
|
Help: Interface to use for DNS requests
|
||||||
Protocols: DNS
|
Protocols: DNS
|
||||||
See-also: dns-ipv4-addr dns-ipv6-addr
|
|
||||||
Added: 7.33.0
|
Added: 7.33.0
|
||||||
Requires: c-ares
|
Requires: c-ares
|
||||||
Category: dns
|
Category: dns
|
||||||
Example: --dns-interface eth0 $URL
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- dns-ipv4-addr
|
||||||
|
- dns-ipv6-addr
|
||||||
|
Example:
|
||||||
|
- --dns-interface eth0 $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--dns-interface`
|
||||||
|
|
||||||
Tell curl to send outgoing DNS requests through <interface>. This option is a
|
Tell curl to send outgoing DNS requests through <interface>. This option is a
|
||||||
counterpart to --interface (which does not affect DNS). The supplied string
|
counterpart to --interface (which does not affect DNS). The supplied string
|
||||||
must be an interface name (not an address).
|
must be an interface name (not an address).
|
|
@ -1,16 +1,23 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: dns-ipv4-addr
|
Long: dns-ipv4-addr
|
||||||
Arg: <address>
|
Arg: <address>
|
||||||
Help: IPv4 address to use for DNS requests
|
Help: IPv4 address to use for DNS requests
|
||||||
Protocols: DNS
|
Protocols: DNS
|
||||||
See-also: dns-interface dns-ipv6-addr
|
|
||||||
Added: 7.33.0
|
Added: 7.33.0
|
||||||
Requires: c-ares
|
Requires: c-ares
|
||||||
Category: dns
|
Category: dns
|
||||||
Example: --dns-ipv4-addr 10.1.2.3 $URL
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- dns-interface
|
||||||
|
- dns-ipv6-addr
|
||||||
|
Example:
|
||||||
|
- --dns-ipv4-addr 10.1.2.3 $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--dns-ipv4-addr`
|
||||||
|
|
||||||
Tell curl to bind to a specific IP address when making IPv4 DNS requests, so
|
Tell curl to bind to a specific IP address when making IPv4 DNS requests, so
|
||||||
that the DNS requests originate from this address. The argument should be a
|
that the DNS requests originate from this address. The argument should be a
|
||||||
single IPv4 address.
|
single IPv4 address.
|
|
@ -1,16 +1,23 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: dns-ipv6-addr
|
Long: dns-ipv6-addr
|
||||||
Arg: <address>
|
Arg: <address>
|
||||||
Help: IPv6 address to use for DNS requests
|
Help: IPv6 address to use for DNS requests
|
||||||
Protocols: DNS
|
Protocols: DNS
|
||||||
See-also: dns-interface dns-ipv4-addr
|
|
||||||
Added: 7.33.0
|
Added: 7.33.0
|
||||||
Requires: c-ares
|
Requires: c-ares
|
||||||
Category: dns
|
Category: dns
|
||||||
Example: --dns-ipv6-addr 2a04:4e42::561 $URL
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- dns-interface
|
||||||
|
- dns-ipv4-addr
|
||||||
|
Example:
|
||||||
|
- --dns-ipv6-addr 2a04:4e42::561 $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--dns-ipv6-addr`
|
||||||
|
|
||||||
Tell curl to bind to a specific IP address when making IPv6 DNS requests, so
|
Tell curl to bind to a specific IP address when making IPv6 DNS requests, so
|
||||||
that the DNS requests originate from this address. The argument should be a
|
that the DNS requests originate from this address. The argument should be a
|
||||||
single IPv6 address.
|
single IPv6 address.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: dns-servers
|
Long: dns-servers
|
||||||
|
@ -7,10 +8,16 @@ Protocols: DNS
|
||||||
Requires: c-ares
|
Requires: c-ares
|
||||||
Added: 7.33.0
|
Added: 7.33.0
|
||||||
Category: dns
|
Category: dns
|
||||||
Example: --dns-servers 192.168.0.1,192.168.0.2 $URL
|
|
||||||
See-also: dns-interface dns-ipv4-addr
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- dns-interface
|
||||||
|
- dns-ipv4-addr
|
||||||
|
Example:
|
||||||
|
- --dns-servers 192.168.0.1,192.168.0.2 $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--dns-servers`
|
||||||
|
|
||||||
Set the list of DNS servers to be used instead of the system default.
|
Set the list of DNS servers to be used instead of the system default.
|
||||||
The list of IP addresses should be separated with commas. Port numbers
|
The list of IP addresses should be separated with commas. Port numbers
|
||||||
may also optionally be given as *:<port-number>* after each IP
|
may also optionally be given as *:<port-number>* after each IP
|
|
@ -1,11 +1,17 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: doh-cert-status
|
Long: doh-cert-status
|
||||||
Help: Verify the status of the DoH server cert via OCSP-staple
|
Help: Verify the status of the DoH server cert via OCSP-staple
|
||||||
Added: 7.76.0
|
Added: 7.76.0
|
||||||
Category: dns tls
|
Category: dns tls
|
||||||
Example: --doh-cert-status --doh-url https://doh.example $URL
|
|
||||||
See-also: doh-insecure
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- doh-insecure
|
||||||
|
Example:
|
||||||
|
- --doh-cert-status --doh-url https://doh.example $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--doh-cert-status`
|
||||||
|
|
||||||
Same as --cert-status but used for DoH (DNS-over-HTTPS).
|
Same as --cert-status but used for DoH (DNS-over-HTTPS).
|
|
@ -1,11 +1,17 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: doh-insecure
|
Long: doh-insecure
|
||||||
Help: Allow insecure DoH server connections
|
Help: Allow insecure DoH server connections
|
||||||
Added: 7.76.0
|
Added: 7.76.0
|
||||||
Category: dns tls
|
Category: dns tls
|
||||||
Example: --doh-insecure --doh-url https://doh.example $URL
|
|
||||||
See-also: doh-url
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- doh-url
|
||||||
|
Example:
|
||||||
|
- --doh-insecure --doh-url https://doh.example $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--doh-insecure`
|
||||||
|
|
||||||
Same as --insecure but used for DoH (DNS-over-HTTPS).
|
Same as --insecure but used for DoH (DNS-over-HTTPS).
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: doh-url
|
Long: doh-url
|
||||||
|
@ -5,10 +6,15 @@ Arg: <URL>
|
||||||
Help: Resolve host names over DoH
|
Help: Resolve host names over DoH
|
||||||
Added: 7.62.0
|
Added: 7.62.0
|
||||||
Category: dns
|
Category: dns
|
||||||
Example: --doh-url https://doh.example $URL
|
|
||||||
See-also: doh-insecure
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- doh-insecure
|
||||||
|
Example:
|
||||||
|
- --doh-url https://doh.example $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--doh-url`
|
||||||
|
|
||||||
Specifies which DNS-over-HTTPS (DoH) server to use to resolve hostnames,
|
Specifies which DNS-over-HTTPS (DoH) server to use to resolve hostnames,
|
||||||
instead of using the default name resolver mechanism. The URL must be HTTPS.
|
instead of using the default name resolver mechanism. The URL must be HTTPS.
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: dump-header
|
Long: dump-header
|
||||||
|
@ -5,12 +6,17 @@ Short: D
|
||||||
Arg: <filename>
|
Arg: <filename>
|
||||||
Help: Write the received headers to <filename>
|
Help: Write the received headers to <filename>
|
||||||
Protocols: HTTP FTP
|
Protocols: HTTP FTP
|
||||||
See-also: output
|
|
||||||
Category: http ftp
|
Category: http ftp
|
||||||
Example: --dump-header store.txt $URL
|
|
||||||
Added: 5.7
|
Added: 5.7
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- output
|
||||||
|
Example:
|
||||||
|
- --dump-header store.txt $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--dump-header`
|
||||||
|
|
||||||
Write the received protocol headers to the specified file. If no headers are
|
Write the received protocol headers to the specified file. If no headers are
|
||||||
received, the use of this option creates an empty file.
|
received, the use of this option creates an empty file.
|
||||||
|
|
|
@ -1,15 +1,21 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: egd-file
|
Long: egd-file
|
||||||
Arg: <file>
|
Arg: <file>
|
||||||
Help: EGD socket path for random data
|
Help: EGD socket path for random data
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
See-also: random-file
|
|
||||||
Category: tls
|
Category: tls
|
||||||
Example: --egd-file /random/here $URL
|
|
||||||
Added: 7.7
|
Added: 7.7
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- random-file
|
||||||
|
Example:
|
||||||
|
- --egd-file /random/here $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--egd-file`
|
||||||
|
|
||||||
Deprecated option (added in 7.84.0). Prior to that it only had an effect on
|
Deprecated option (added in 7.84.0). Prior to that it only had an effect on
|
||||||
curl if built to use old versions of OpenSSL.
|
curl if built to use old versions of OpenSSL.
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: engine
|
Long: engine
|
||||||
|
@ -5,11 +6,17 @@ Arg: <name>
|
||||||
Help: Crypto engine to use
|
Help: Crypto engine to use
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
Category: tls
|
Category: tls
|
||||||
Example: --engine flavor $URL
|
|
||||||
Added: 7.9.3
|
Added: 7.9.3
|
||||||
See-also: ciphers curves
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- ciphers
|
||||||
|
- curves
|
||||||
|
Example:
|
||||||
|
- --engine flavor $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--engine`
|
||||||
|
|
||||||
Select the OpenSSL crypto engine to use for cipher operations. Use --engine
|
Select the OpenSSL crypto engine to use for cipher operations. Use --engine
|
||||||
list to print a list of build-time supported engines. Note that not all (and
|
list to print a list of build-time supported engines. Note that not all (and
|
||||||
possibly none) of the engines may be available at runtime.
|
possibly none) of the engines may be available at runtime.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: etag-compare
|
Long: etag-compare
|
||||||
|
@ -6,10 +7,16 @@ Help: Pass an ETag from a file as a custom header
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Added: 7.68.0
|
Added: 7.68.0
|
||||||
Category: http
|
Category: http
|
||||||
Example: --etag-compare etag.txt $URL
|
|
||||||
See-also: etag-save time-cond
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- etag-save
|
||||||
|
- time-cond
|
||||||
|
Example:
|
||||||
|
- --etag-compare etag.txt $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--etag-compare`
|
||||||
|
|
||||||
This option makes a conditional HTTP request for the specific ETag read
|
This option makes a conditional HTTP request for the specific ETag read
|
||||||
from the given file by sending a custom If-None-Match header using the
|
from the given file by sending a custom If-None-Match header using the
|
||||||
stored ETag.
|
stored ETag.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: etag-save
|
Long: etag-save
|
||||||
|
@ -6,10 +7,15 @@ Help: Parse ETag from a request and save it to a file
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Added: 7.68.0
|
Added: 7.68.0
|
||||||
Category: http
|
Category: http
|
||||||
Example: --etag-save storetag.txt $URL
|
|
||||||
See-also: etag-compare
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- etag-compare
|
||||||
|
Example:
|
||||||
|
- --etag-save storetag.txt $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--etag-save`
|
||||||
|
|
||||||
This option saves an HTTP ETag to the specified file. An ETag is a
|
This option saves an HTTP ETag to the specified file. An ETag is a
|
||||||
caching related header, usually returned in a response.
|
caching related header, usually returned in a response.
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: expect100-timeout
|
Long: expect100-timeout
|
||||||
|
@ -5,11 +6,16 @@ Arg: <seconds>
|
||||||
Help: How long to wait for 100-continue
|
Help: How long to wait for 100-continue
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Added: 7.47.0
|
Added: 7.47.0
|
||||||
See-also: connect-timeout
|
|
||||||
Category: http
|
Category: http
|
||||||
Example: --expect100-timeout 2.5 -T file $URL
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- connect-timeout
|
||||||
|
Example:
|
||||||
|
- --expect100-timeout 2.5 -T file $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--expect100-timeout`
|
||||||
|
|
||||||
Maximum time in seconds that you allow curl to wait for a 100-continue
|
Maximum time in seconds that you allow curl to wait for a 100-continue
|
||||||
response when curl emits an Expects: 100-continue header in its request. By
|
response when curl emits an Expects: 100-continue header in its request. By
|
||||||
default curl waits one second. This option accepts decimal values! When
|
default curl waits one second. This option accepts decimal values! When
|
|
@ -1,14 +1,21 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: fail-early
|
Long: fail-early
|
||||||
Help: Fail on first transfer error, do not continue
|
Help: Fail on first transfer error, do not continue
|
||||||
Added: 7.52.0
|
Added: 7.52.0
|
||||||
Category: curl
|
Category: curl
|
||||||
Example: --fail-early $URL https://two.example
|
|
||||||
See-also: fail fail-with-body
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
Scope: global
|
Scope: global
|
||||||
|
See-also:
|
||||||
|
- fail
|
||||||
|
- fail-with-body
|
||||||
|
Example:
|
||||||
|
- --fail-early $URL https://two.example
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--fail-early`
|
||||||
|
|
||||||
Fail and exit on the first detected transfer error.
|
Fail and exit on the first detected transfer error.
|
||||||
|
|
||||||
When curl is used to do multiple transfers on the command line, it attempts to
|
When curl is used to do multiple transfers on the command line, it attempts to
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: fail-with-body
|
Long: fail-with-body
|
||||||
|
@ -5,11 +6,17 @@ Protocols: HTTP
|
||||||
Help: Fail on HTTP errors but save the body
|
Help: Fail on HTTP errors but save the body
|
||||||
Category: http output
|
Category: http output
|
||||||
Added: 7.76.0
|
Added: 7.76.0
|
||||||
See-also: fail fail-early
|
|
||||||
Mutexed: fail
|
Mutexed: fail
|
||||||
Example: --fail-with-body $URL
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- fail
|
||||||
|
- fail-early
|
||||||
|
Example:
|
||||||
|
- --fail-with-body $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--fail-with-body`
|
||||||
|
|
||||||
Return an error on server errors where the HTTP response code is 400 or
|
Return an error on server errors where the HTTP response code is 400 or
|
||||||
greater). In normal cases when an HTTP server fails to deliver a document, it
|
greater). In normal cases when an HTTP server fails to deliver a document, it
|
||||||
returns an HTML document stating so (which often also describes why and
|
returns an HTML document stating so (which often also describes why and
|
|
@ -1,16 +1,23 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: fail
|
Long: fail
|
||||||
Short: f
|
Short: f
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Help: Fail fast with no output on HTTP errors
|
Help: Fail fast with no output on HTTP errors
|
||||||
See-also: fail-with-body fail-early
|
|
||||||
Category: important http
|
Category: important http
|
||||||
Example: --fail $URL
|
|
||||||
Mutexed: fail-with-body
|
Mutexed: fail-with-body
|
||||||
Added: 4.0
|
Added: 4.0
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- fail-with-body
|
||||||
|
- fail-early
|
||||||
|
Example:
|
||||||
|
- --fail $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--fail`
|
||||||
|
|
||||||
Fail fast with no output at all on server errors. This is useful to enable
|
Fail fast with no output at all on server errors. This is useful to enable
|
||||||
scripts and users to better deal with failed attempts. In normal cases when an
|
scripts and users to better deal with failed attempts. In normal cases when an
|
||||||
HTTP server fails to deliver a document, it returns an HTML document stating
|
HTTP server fails to deliver a document, it returns an HTML document stating
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: false-start
|
Long: false-start
|
||||||
|
@ -5,10 +6,15 @@ Help: Enable TLS False Start
|
||||||
Protocols: TLS
|
Protocols: TLS
|
||||||
Added: 7.42.0
|
Added: 7.42.0
|
||||||
Category: tls
|
Category: tls
|
||||||
Example: --false-start $URL
|
|
||||||
See-also: tcp-fastopen
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- tcp-fastopen
|
||||||
|
Example:
|
||||||
|
- --false-start $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--false-start`
|
||||||
|
|
||||||
Tells curl to use false start during the TLS handshake. False start is a mode
|
Tells curl to use false start during the TLS handshake. False start is a mode
|
||||||
where a TLS client starts sending application data before verifying the
|
where a TLS client starts sending application data before verifying the
|
||||||
server's Finished message, thus saving a round trip when performing a full
|
server's Finished message, thus saving a round trip when performing a full
|
|
@ -1,13 +1,19 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: form-escape
|
Long: form-escape
|
||||||
Help: Escape multipart form field/file names using backslash
|
Help: Escape multipart form field/file names using backslash
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
See-also: form
|
|
||||||
Added: 7.81.0
|
Added: 7.81.0
|
||||||
Category: http upload
|
Category: http upload
|
||||||
Example: --form-escape -F 'field\\name=curl' -F 'file=@load"this' $URL
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- form
|
||||||
|
Example:
|
||||||
|
- --form-escape -F 'field\name=curl' -F 'file=@load"this' $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--form-escape`
|
||||||
|
|
||||||
Tells curl to pass on names of multipart form fields and files using
|
Tells curl to pass on names of multipart form fields and files using
|
||||||
backslash-escaping instead of percent-encoding.
|
backslash-escaping instead of percent-encoding.
|
|
@ -1,15 +1,21 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: form-string
|
Long: form-string
|
||||||
Help: Specify multipart MIME data
|
Help: Specify multipart MIME data
|
||||||
Protocols: HTTP SMTP IMAP
|
Protocols: HTTP SMTP IMAP
|
||||||
Arg: <name=string>
|
Arg: <name=string>
|
||||||
See-also: form
|
|
||||||
Category: http upload
|
Category: http upload
|
||||||
Example: --form-string "data" $URL
|
|
||||||
Added: 7.13.2
|
Added: 7.13.2
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- form
|
||||||
|
Example:
|
||||||
|
- --form-string "data" $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--form-string`
|
||||||
|
|
||||||
Similar to --form except that the value string for the named parameter is used
|
Similar to --form except that the value string for the named parameter is used
|
||||||
literally. Leading '@' and '<' characters, and the ';type=' string in
|
literally. Leading '@' and '<' characters, and the ';type=' string in
|
||||||
the value have no special meaning. Use this in preference to --form if
|
the value have no special meaning. Use this in preference to --form if
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: form
|
Long: form
|
||||||
|
@ -7,11 +8,18 @@ Help: Specify multipart MIME data
|
||||||
Protocols: HTTP SMTP IMAP
|
Protocols: HTTP SMTP IMAP
|
||||||
Mutexed: data head upload-file
|
Mutexed: data head upload-file
|
||||||
Category: http upload
|
Category: http upload
|
||||||
Example: --form "name=curl" --form "file=@loadthis" $URL
|
|
||||||
Added: 5.0
|
Added: 5.0
|
||||||
See-also: data form-string form-escape
|
|
||||||
Multi: append
|
Multi: append
|
||||||
|
See-also:
|
||||||
|
- data
|
||||||
|
- form-string
|
||||||
|
- form-escape
|
||||||
|
Example:
|
||||||
|
- --form "name=curl" --form "file=@loadthis" $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--form`
|
||||||
|
|
||||||
For HTTP protocol family, this lets curl emulate a filled-in form in which a
|
For HTTP protocol family, this lets curl emulate a filled-in form in which a
|
||||||
user has pressed the submit button. This causes curl to POST data using the
|
user has pressed the submit button. This causes curl to POST data using the
|
||||||
Content-Type multipart/form-data according to RFC 2388.
|
Content-Type multipart/form-data according to RFC 2388.
|
||||||
|
@ -64,7 +72,7 @@ filename=, like this:
|
||||||
|
|
||||||
If filename/path contains ',' or ';', it must be quoted by double-quotes like:
|
If filename/path contains ',' or ';', it must be quoted by double-quotes like:
|
||||||
|
|
||||||
curl -F "file=@\\"local,file\\";filename=\\"name;in;post\\"" example.com
|
curl -F "file=@\"local,file\";filename=\"name;in;post\"" example.com
|
||||||
|
|
||||||
or
|
or
|
||||||
|
|
||||||
|
@ -80,7 +88,7 @@ leading/trailing spaces or leading double quotes:
|
||||||
|
|
||||||
You can add custom headers to the field by setting headers=, like
|
You can add custom headers to the field by setting headers=, like
|
||||||
|
|
||||||
curl -F "submit=OK;headers=\\"X-submit-type: OK\\"" example.com
|
curl -F "submit=OK;headers=\"X-submit-type: OK\"" example.com
|
||||||
|
|
||||||
or
|
or
|
||||||
|
|
||||||
|
@ -113,9 +121,9 @@ Example: the following command sends an SMTP mime email consisting in an
|
||||||
inline part in two alternative formats: plain text and HTML. It attaches a
|
inline part in two alternative formats: plain text and HTML. It attaches a
|
||||||
text file:
|
text file:
|
||||||
|
|
||||||
curl -F '=(;type=multipart/alternative' \\
|
curl -F '=(;type=multipart/alternative' \
|
||||||
-F '=plain text message' \\
|
-F '=plain text message' \
|
||||||
-F '= <body>HTML message</body>;type=text/html' \\
|
-F '= <body>HTML message</body>;type=text/html' \
|
||||||
-F '=)' -F '=@textfile.txt' ... smtp://example.com
|
-F '=)' -F '=@textfile.txt' ... smtp://example.com
|
||||||
|
|
||||||
Data can be encoded for transfer using encoder=. Available encodings are
|
Data can be encoded for transfer using encoder=. Available encodings are
|
||||||
|
@ -128,7 +136,7 @@ characters.
|
||||||
Example: send multipart mail with a quoted-printable text message and a
|
Example: send multipart mail with a quoted-printable text message and a
|
||||||
base64 attached file:
|
base64 attached file:
|
||||||
|
|
||||||
curl -F '=text message;encoder=quoted-printable' \\
|
curl -F '=text message;encoder=quoted-printable' \
|
||||||
-F '=@localfile;encoder=base64' ... smtp://example.com
|
-F '=@localfile;encoder=base64' ... smtp://example.com
|
||||||
|
|
||||||
See further examples and details in the MANUAL.
|
See further examples and details in the MANUAL.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-account
|
Long: ftp-account
|
||||||
|
@ -6,9 +7,14 @@ Help: Account data string
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Added: 7.13.0
|
Added: 7.13.0
|
||||||
Category: ftp auth
|
Category: ftp auth
|
||||||
Example: --ftp-account "mr.robot" ftp://example.com/
|
|
||||||
See-also: user
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- user
|
||||||
|
Example:
|
||||||
|
- --ftp-account "mr.robot" ftp://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-account`
|
||||||
|
|
||||||
When an FTP server asks for "account data" after user name and password has
|
When an FTP server asks for "account data" after user name and password has
|
||||||
been provided, this data is sent off using the ACCT command.
|
been provided, this data is sent off using the ACCT command.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-alternative-to-user
|
Long: ftp-alternative-to-user
|
||||||
|
@ -6,10 +7,16 @@ Help: String to replace USER [name]
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Added: 7.15.5
|
Added: 7.15.5
|
||||||
Category: ftp
|
Category: ftp
|
||||||
Example: --ftp-alternative-to-user "U53r" ftp://example.com
|
|
||||||
See-also: ftp-account user
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- ftp-account
|
||||||
|
- user
|
||||||
|
Example:
|
||||||
|
- --ftp-alternative-to-user "U53r" ftp://example.com
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-alternative-to-user`
|
||||||
|
|
||||||
If authenticating with the USER and PASS commands fails, send this command.
|
If authenticating with the USER and PASS commands fails, send this command.
|
||||||
When connecting to Tumbleweed's Secure Transport server over FTPS using a
|
When connecting to Tumbleweed's Secure Transport server over FTPS using a
|
||||||
client certificate, using "SITE AUTH" tells the server to retrieve the
|
client certificate, using "SITE AUTH" tells the server to retrieve the
|
|
@ -1,14 +1,20 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-create-dirs
|
Long: ftp-create-dirs
|
||||||
Protocols: FTP SFTP
|
Protocols: FTP SFTP
|
||||||
Help: Create the remote dirs if not present
|
Help: Create the remote dirs if not present
|
||||||
See-also: create-dirs
|
|
||||||
Category: ftp sftp curl
|
Category: ftp sftp curl
|
||||||
Example: --ftp-create-dirs -T file ftp://example.com/remote/path/file
|
|
||||||
Added: 7.10.7
|
Added: 7.10.7
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- create-dirs
|
||||||
|
Example:
|
||||||
|
- --ftp-create-dirs -T file ftp://example.com/remote/path/file
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-create-dirs`
|
||||||
|
|
||||||
When an FTP or SFTP URL/operation uses a path that does not currently exist on
|
When an FTP or SFTP URL/operation uses a path that does not currently exist on
|
||||||
the server, the standard behavior of curl is to fail. Using this option, curl
|
the server, the standard behavior of curl is to fail. Using this option, curl
|
||||||
instead attempts to create missing directories.
|
instead attempts to create missing directories.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-method
|
Long: ftp-method
|
||||||
|
@ -6,12 +7,17 @@ Help: Control CWD usage
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Added: 7.15.1
|
Added: 7.15.1
|
||||||
Category: ftp
|
Category: ftp
|
||||||
Example: --ftp-method multicwd ftp://example.com/dir1/dir2/file
|
|
||||||
Example: --ftp-method nocwd ftp://example.com/dir1/dir2/file
|
|
||||||
Example: --ftp-method singlecwd ftp://example.com/dir1/dir2/file
|
|
||||||
See-also: list-only
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- list-only
|
||||||
|
Example:
|
||||||
|
- --ftp-method multicwd ftp://example.com/dir1/dir2/file
|
||||||
|
- --ftp-method nocwd ftp://example.com/dir1/dir2/file
|
||||||
|
- --ftp-method singlecwd ftp://example.com/dir1/dir2/file
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-method`
|
||||||
|
|
||||||
Control what method curl should use to reach a file on an FTP(S)
|
Control what method curl should use to reach a file on an FTP(S)
|
||||||
server. The method argument should be one of the following alternatives:
|
server. The method argument should be one of the following alternatives:
|
||||||
|
|
|
@ -1,14 +1,20 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-pasv
|
Long: ftp-pasv
|
||||||
Help: Use PASV/EPSV instead of PORT
|
Help: Use PASV/EPSV instead of PORT
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Added: 7.11.0
|
Added: 7.11.0
|
||||||
See-also: disable-epsv
|
|
||||||
Category: ftp
|
Category: ftp
|
||||||
Example: --ftp-pasv ftp://example.com/
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- disable-epsv
|
||||||
|
Example:
|
||||||
|
- --ftp-pasv ftp://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-pasv`
|
||||||
|
|
||||||
Use passive mode for the data connection. Passive is the internal default
|
Use passive mode for the data connection. Passive is the internal default
|
||||||
behavior, but using this option can be used to override a previous --ftp-port
|
behavior, but using this option can be used to override a previous --ftp-port
|
||||||
option.
|
option.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-port
|
Long: ftp-port
|
||||||
|
@ -5,14 +6,20 @@ Arg: <address>
|
||||||
Help: Use PORT instead of PASV
|
Help: Use PORT instead of PASV
|
||||||
Short: P
|
Short: P
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
See-also: ftp-pasv disable-eprt
|
|
||||||
Category: ftp
|
Category: ftp
|
||||||
Example: -P - ftp:/example.com
|
|
||||||
Example: -P eth0 ftp:/example.com
|
|
||||||
Example: -P 192.168.0.2 ftp:/example.com
|
|
||||||
Added: 4.0
|
Added: 4.0
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- ftp-pasv
|
||||||
|
- disable-eprt
|
||||||
|
Example:
|
||||||
|
- -P - ftp:/example.com
|
||||||
|
- -P eth0 ftp:/example.com
|
||||||
|
- -P 192.168.0.2 ftp:/example.com
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-port`
|
||||||
|
|
||||||
Reverses the default initiator/listener roles when connecting with FTP. This
|
Reverses the default initiator/listener roles when connecting with FTP. This
|
||||||
option makes curl use active mode. curl then tells the server to connect back
|
option makes curl use active mode. curl then tells the server to connect back
|
||||||
to the client's specified address and port, while passive mode asks the server
|
to the client's specified address and port, while passive mode asks the server
|
||||||
|
@ -37,7 +44,7 @@ connection. This is the recommended choice.
|
||||||
Disable the use of PORT with --ftp-pasv. Disable the attempt to use the EPRT
|
Disable the use of PORT with --ftp-pasv. Disable the attempt to use the EPRT
|
||||||
command instead of PORT by using --disable-eprt. EPRT is really PORT++.
|
command instead of PORT by using --disable-eprt. EPRT is really PORT++.
|
||||||
|
|
||||||
You can also append ":[start]-[end]\&" to the right of the address, to tell
|
You can also append ":[start]-[end]" to the right of the address, to tell
|
||||||
curl what TCP port range to use. That means you specify a port range, from a
|
curl what TCP port range to use. That means you specify a port range, from a
|
||||||
lower to a higher number. A single number works as well, but do note that it
|
lower to a higher number. A single number works as well, but do note that it
|
||||||
increases the risk of failure since the port may not be available.
|
increases the risk of failure since the port may not be available.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-pret
|
Long: ftp-pret
|
||||||
|
@ -5,10 +6,16 @@ Help: Send PRET before PASV
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Added: 7.20.0
|
Added: 7.20.0
|
||||||
Category: ftp
|
Category: ftp
|
||||||
Example: --ftp-pret ftp://example.com/
|
|
||||||
See-also: ftp-port ftp-pasv
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- ftp-port
|
||||||
|
- ftp-pasv
|
||||||
|
Example:
|
||||||
|
- --ftp-pret ftp://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-pret`
|
||||||
|
|
||||||
Tell curl to send a PRET command before PASV (and EPSV). Certain FTP servers,
|
Tell curl to send a PRET command before PASV (and EPSV). Certain FTP servers,
|
||||||
mainly drftpd, require this non-standard command for directory listings as
|
mainly drftpd, require this non-standard command for directory listings as
|
||||||
well as up and downloads in PASV mode.
|
well as up and downloads in PASV mode.
|
|
@ -1,14 +1,20 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-skip-pasv-ip
|
Long: ftp-skip-pasv-ip
|
||||||
Help: Skip the IP address for PASV
|
Help: Skip the IP address for PASV
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Added: 7.14.2
|
Added: 7.14.2
|
||||||
See-also: ftp-pasv
|
|
||||||
Category: ftp
|
Category: ftp
|
||||||
Example: --ftp-skip-pasv-ip ftp://example.com/
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- ftp-pasv
|
||||||
|
Example:
|
||||||
|
- --ftp-skip-pasv-ip ftp://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-skip-pasv-ip`
|
||||||
|
|
||||||
Tell curl to not use the IP address the server suggests in its response to
|
Tell curl to not use the IP address the server suggests in its response to
|
||||||
curl's PASV command when curl connects the data connection. Instead curl
|
curl's PASV command when curl connects the data connection. Instead curl
|
||||||
reuses the same IP address it already uses for the control connection.
|
reuses the same IP address it already uses for the control connection.
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-ssl-ccc-mode
|
Long: ftp-ssl-ccc-mode
|
||||||
|
@ -5,11 +6,16 @@ Arg: <active/passive>
|
||||||
Help: Set CCC mode
|
Help: Set CCC mode
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Added: 7.16.2
|
Added: 7.16.2
|
||||||
See-also: ftp-ssl-ccc
|
|
||||||
Category: ftp tls
|
Category: ftp tls
|
||||||
Example: --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- ftp-ssl-ccc
|
||||||
|
Example:
|
||||||
|
- --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-ssl-ccc-mode`
|
||||||
|
|
||||||
Sets the CCC mode. The passive mode does not initiate the shutdown, but
|
Sets the CCC mode. The passive mode does not initiate the shutdown, but
|
||||||
instead waits for the server to do it, and does not reply to the shutdown from
|
instead waits for the server to do it, and does not reply to the shutdown from
|
||||||
the server. The active mode initiates the shutdown and waits for a reply from
|
the server. The active mode initiates the shutdown and waits for a reply from
|
|
@ -1,14 +1,21 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-ssl-ccc
|
Long: ftp-ssl-ccc
|
||||||
Help: Send CCC after authenticating
|
Help: Send CCC after authenticating
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
See-also: ssl ftp-ssl-ccc-mode
|
|
||||||
Added: 7.16.1
|
Added: 7.16.1
|
||||||
Category: ftp tls
|
Category: ftp tls
|
||||||
Example: --ftp-ssl-ccc ftps://example.com/
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- ssl
|
||||||
|
- ftp-ssl-ccc-mode
|
||||||
|
Example:
|
||||||
|
- --ftp-ssl-ccc ftps://example.com/
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-ssl-ccc`
|
||||||
|
|
||||||
Use CCC (Clear Command Channel) Shuts down the SSL/TLS layer after
|
Use CCC (Clear Command Channel) Shuts down the SSL/TLS layer after
|
||||||
authenticating. The rest of the control channel communication is be
|
authenticating. The rest of the control channel communication is be
|
||||||
unencrypted. This allows NAT routers to follow the FTP transaction. The
|
unencrypted. This allows NAT routers to follow the FTP transaction. The
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: ftp-ssl-control
|
Long: ftp-ssl-control
|
||||||
|
@ -5,10 +6,15 @@ Help: Require SSL/TLS for FTP login, clear for transfer
|
||||||
Protocols: FTP
|
Protocols: FTP
|
||||||
Added: 7.16.0
|
Added: 7.16.0
|
||||||
Category: ftp tls
|
Category: ftp tls
|
||||||
Example: --ftp-ssl-control ftp://example.com
|
|
||||||
See-also: ssl
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- ssl
|
||||||
|
Example:
|
||||||
|
- --ftp-ssl-control ftp://example.com
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--ftp-ssl-control`
|
||||||
|
|
||||||
Require SSL/TLS for the FTP login, clear for transfer. Allows secure
|
Require SSL/TLS for the FTP login, clear for transfer. Allows secure
|
||||||
authentication, but non-encrypted data transfers for efficiency. Fails the
|
authentication, but non-encrypted data transfers for efficiency. Fails the
|
||||||
transfer if the server does not support SSL/TLS.
|
transfer if the server does not support SSL/TLS.
|
|
@ -90,52 +90,8 @@ sub printdesc {
|
||||||
my @desc = @_;
|
my @desc = @_;
|
||||||
my $exam = 0;
|
my $exam = 0;
|
||||||
for my $d (@desc) {
|
for my $d (@desc) {
|
||||||
if($d =~ /\(Added in ([0-9.]+)\)/i) {
|
|
||||||
my $ver = $1;
|
|
||||||
if(too_old($ver)) {
|
|
||||||
$d =~ s/ *\(Added in $ver\)//gi;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if($d !~ /^.\\"/) {
|
|
||||||
# **bold**
|
|
||||||
$d =~ s/\*\*(.*?)\*\*/\\fB$1\\fP/g;
|
|
||||||
# *italics*
|
|
||||||
$d =~ s/\*(.*?)\*/\\fI$1\\fP/g;
|
|
||||||
}
|
|
||||||
if(!$exam && ($d =~ /^ /)) {
|
|
||||||
# start of example
|
|
||||||
$exam = 1;
|
|
||||||
print ".nf\n"; # no-fill
|
|
||||||
}
|
|
||||||
elsif($exam && ($d !~ /^ /)) {
|
|
||||||
# end of example
|
|
||||||
$exam = 0;
|
|
||||||
print ".fi\n"; # fill-in
|
|
||||||
}
|
|
||||||
# skip lines starting with space (examples)
|
|
||||||
if($d =~ /^[^ ]/ && $d =~ /--/) {
|
|
||||||
# scan for options in longest-names first order
|
|
||||||
for my $k (sort {length($b) <=> length($a)} keys %optlong) {
|
|
||||||
# --tlsv1 is complicated since --tlsv1.2 etc are also
|
|
||||||
# acceptable options!
|
|
||||||
if(($k eq "tlsv1") && ($d =~ /--tlsv1\.[0-9]\\f/)) {
|
|
||||||
next;
|
|
||||||
}
|
|
||||||
my $l = manpageify($k);
|
|
||||||
$d =~ s/\-\-$k([^a-z0-9-])/$l$1/g;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
# quote minuses in the output
|
|
||||||
$d =~ s/([^\\])-/$1\\-/g;
|
|
||||||
# replace single quotes
|
|
||||||
$d =~ s/\'/\\(aq/g;
|
|
||||||
# handle double quotes first on the line
|
|
||||||
$d =~ s/^(\s*)\"/$1\\(dq/;
|
|
||||||
print $d;
|
print $d;
|
||||||
}
|
}
|
||||||
if($exam) {
|
|
||||||
print ".fi\n"; # fill-in
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
sub seealso {
|
sub seealso {
|
||||||
|
@ -200,9 +156,173 @@ sub added {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub render {
|
||||||
|
my ($fh, $f, $line) = @_;
|
||||||
|
my @desc;
|
||||||
|
my $tablemode = 0;
|
||||||
|
my $header = 0;
|
||||||
|
# if $top is TRUE, it means a top-level page and not a command line option
|
||||||
|
my $top = ($line == 1);
|
||||||
|
my $quote;
|
||||||
|
$start = 0;
|
||||||
|
|
||||||
|
while(<$fh>) {
|
||||||
|
my $d = $_;
|
||||||
|
$line++;
|
||||||
|
if($d =~ /^\.(SH|BR|IP|B)/) {
|
||||||
|
print STDERR "$f:$line:1:ERROR: nroff instruction in input: \".$1\"\n";
|
||||||
|
return 4;
|
||||||
|
}
|
||||||
|
if(/^ *<!--/) {
|
||||||
|
# skip comments
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
if((!$start) && ($_ =~ /^[\r\n]*\z/)) {
|
||||||
|
# skip leading blank lines
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
$start = 1;
|
||||||
|
if(/^# (.*)/) {
|
||||||
|
$header = 1;
|
||||||
|
if($top != 1) {
|
||||||
|
# ignored for command line options
|
||||||
|
$blankline++;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
push @desc, ".SH $1\n";
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
elsif(/^###/) {
|
||||||
|
print STDERR "$f:$line:1:ERROR: ### header is not supported\n";
|
||||||
|
exit 3;
|
||||||
|
}
|
||||||
|
elsif(/^## (.*)/) {
|
||||||
|
my $word = $1;
|
||||||
|
# if there are enclosing quotes, remove them first
|
||||||
|
$word =~ s/[\"\'](.*)[\"\']\z/$1/;
|
||||||
|
|
||||||
|
# remove backticks from headers
|
||||||
|
$words =~ s/\`//g;
|
||||||
|
|
||||||
|
# if there is a space, it needs quotes
|
||||||
|
if($word =~ / /) {
|
||||||
|
$word = "\"$word\"";
|
||||||
|
}
|
||||||
|
if($top == 1) {
|
||||||
|
push @desc, ".IP $word\n";
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if(!$tablemode) {
|
||||||
|
push @desc, ".RS\n";
|
||||||
|
$tablemode = 1;
|
||||||
|
}
|
||||||
|
push @desc, ".IP \\fB$word\\fP\n";
|
||||||
|
}
|
||||||
|
$header = 1;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
elsif(/^##/) {
|
||||||
|
if($top == 1) {
|
||||||
|
print STDERR "$f:$line:1:ERROR: ## empty header top-level mode\n";
|
||||||
|
exit 3;
|
||||||
|
}
|
||||||
|
if($tablemode) {
|
||||||
|
# end of table
|
||||||
|
push @desc, ".RE\n.IP\n";
|
||||||
|
$tablmode = 0;
|
||||||
|
}
|
||||||
|
$header = 1;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
elsif(/^\.(IP|RS|RE)/) {
|
||||||
|
my ($cmd) = ($1);
|
||||||
|
print STDERR "$f:$line:1:ERROR: $cmd detected, use ##-style\n";
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
elsif(/^[ \t]*\n/) {
|
||||||
|
# count and ignore blank lines
|
||||||
|
$blankline++;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
elsif($d =~ /^ (.*)/) {
|
||||||
|
my $word = $1;
|
||||||
|
if(!$quote) {
|
||||||
|
push @desc, ".nf\n";
|
||||||
|
}
|
||||||
|
$quote = 1;
|
||||||
|
$d = "$word\n";
|
||||||
|
}
|
||||||
|
elsif($quote && ($d !~ /^ (.*)/)) {
|
||||||
|
# end of quote
|
||||||
|
push @desc, ".fi\n";
|
||||||
|
$quote = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
$d =~ s/`%DATE`/$date/g;
|
||||||
|
$d =~ s/`%VERSION`/$version/g;
|
||||||
|
$d =~ s/`%GLOBALS`/$globals/g;
|
||||||
|
|
||||||
|
# convert single backslahes to doubles
|
||||||
|
$d =~ s/\\/\\\\/g;
|
||||||
|
|
||||||
|
# convert backticks to double quotes
|
||||||
|
$d =~ s/\`/\"/g;
|
||||||
|
|
||||||
|
if(!$quote && $d =~ /--/) {
|
||||||
|
# scan for options in longest-names first order
|
||||||
|
for my $k (sort {length($b) <=> length($a)} keys %optlong) {
|
||||||
|
# --tlsv1 is complicated since --tlsv1.2 etc are also
|
||||||
|
# acceptable options!
|
||||||
|
if(($k eq "tlsv1") && ($d =~ /--tlsv1\.[0-9]\\f/)) {
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
my $l = manpageify($k);
|
||||||
|
$d =~ s/\-\-$k([^a-z0-9-])/$l$1/g;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if($d =~ /\(Added in ([0-9.]+)\)/i) {
|
||||||
|
my $ver = $1;
|
||||||
|
if(too_old($ver)) {
|
||||||
|
$d =~ s/ *\(Added in $ver\)//gi;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!$quote && ($d =~ /^(.*) /)) {
|
||||||
|
printf STDERR "$f:$line:%d:ERROR: 2 spaces detected\n",
|
||||||
|
length($1);
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
# quote minuses in the output
|
||||||
|
$d =~ s/([^\\])-/$1\\-/g;
|
||||||
|
# replace single quotes
|
||||||
|
$d =~ s/\'/\\(aq/g;
|
||||||
|
# handle double quotes or periods first on the line
|
||||||
|
$d =~ s/^([\.\"])/\\&$1/;
|
||||||
|
# **bold**
|
||||||
|
$d =~ s/\*\*(\S.*?)\*\*/\\fB$1\\fP/g;
|
||||||
|
# *italics*
|
||||||
|
$d =~ s/\*(\S.*?)\*/\\fI$1\\fP/g;
|
||||||
|
|
||||||
|
# trim trailing spaces
|
||||||
|
$d =~ s/[ \t]+\z//;
|
||||||
|
push @desc, "\n" if($blankline && !$header);
|
||||||
|
$blankline = 0;
|
||||||
|
push @desc, $d;
|
||||||
|
$header = 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
if($tablemode) {
|
||||||
|
# end of table
|
||||||
|
push @desc, ".RE\n.IP\n";
|
||||||
|
}
|
||||||
|
return @desc;
|
||||||
|
}
|
||||||
|
|
||||||
sub single {
|
sub single {
|
||||||
my ($f, $standalone)=@_;
|
my ($f, $standalone)=@_;
|
||||||
open(F, "<:crlf", "$f") ||
|
my $fh;
|
||||||
|
open($fh, "<:crlf", "$f") ||
|
||||||
return 1;
|
return 1;
|
||||||
my $short;
|
my $short;
|
||||||
my $long;
|
my $long;
|
||||||
|
@ -213,7 +333,7 @@ sub single {
|
||||||
my $mutexed;
|
my $mutexed;
|
||||||
my $requires;
|
my $requires;
|
||||||
my $category;
|
my $category;
|
||||||
my $seealso;
|
my @seealso;
|
||||||
my $copyright;
|
my $copyright;
|
||||||
my $spdx;
|
my $spdx;
|
||||||
my @examples; # there can be more than one
|
my @examples; # there can be more than one
|
||||||
|
@ -223,8 +343,19 @@ sub single {
|
||||||
my $multi;
|
my $multi;
|
||||||
my $scope;
|
my $scope;
|
||||||
my $experimental;
|
my $experimental;
|
||||||
while(<F>) {
|
my $start;
|
||||||
|
my $list; # identifies the list, 1 example, 2 see-also
|
||||||
|
while(<$fh>) {
|
||||||
$line++;
|
$line++;
|
||||||
|
if(/^ *<!--/) {
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
if(!$start) {
|
||||||
|
if(/^---/) {
|
||||||
|
$start = 1;
|
||||||
|
}
|
||||||
|
next;
|
||||||
|
}
|
||||||
if(/^Short: *(.)/i) {
|
if(/^Short: *(.)/i) {
|
||||||
$short=$1;
|
$short=$1;
|
||||||
}
|
}
|
||||||
|
@ -249,12 +380,18 @@ sub single {
|
||||||
elsif(/^Protocols: *(.*)/i) {
|
elsif(/^Protocols: *(.*)/i) {
|
||||||
$protocols=$1;
|
$protocols=$1;
|
||||||
}
|
}
|
||||||
elsif(/^See-also: *(.*)/i) {
|
elsif(/^See-also: +(.+)/i) {
|
||||||
if($seealso) {
|
if($seealso) {
|
||||||
print STDERR "ERROR: duplicated See-also in $f\n";
|
print STDERR "ERROR: duplicated See-also in $f\n";
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
$seealso=$1;
|
push @seealso, $1;
|
||||||
|
}
|
||||||
|
elsif(/^See-also:/i) {
|
||||||
|
$list=2;
|
||||||
|
}
|
||||||
|
elsif(/^ *- (.*)/i && ($list == 2)) {
|
||||||
|
push @seealso, $1;
|
||||||
}
|
}
|
||||||
elsif(/^Requires: *(.*)/i) {
|
elsif(/^Requires: *(.*)/i) {
|
||||||
$requires=$1;
|
$requires=$1;
|
||||||
|
@ -262,7 +399,14 @@ sub single {
|
||||||
elsif(/^Category: *(.*)/i) {
|
elsif(/^Category: *(.*)/i) {
|
||||||
$category=$1;
|
$category=$1;
|
||||||
}
|
}
|
||||||
elsif(/^Example: *(.*)/i) {
|
elsif(/^Example: +(.+)/i) {
|
||||||
|
push @examples, $1;
|
||||||
|
}
|
||||||
|
elsif(/^Example:/i) {
|
||||||
|
# '1' is the example list
|
||||||
|
$list = 1;
|
||||||
|
}
|
||||||
|
elsif(/^ *- (.*)/i && ($list == 1)) {
|
||||||
push @examples, $1;
|
push @examples, $1;
|
||||||
}
|
}
|
||||||
elsif(/^Multi: *(.*)/i) {
|
elsif(/^Multi: *(.*)/i) {
|
||||||
|
@ -284,6 +428,7 @@ sub single {
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
elsif(/^---/) {
|
elsif(/^---/) {
|
||||||
|
$start++;
|
||||||
if(!$long) {
|
if(!$long) {
|
||||||
print STDERR "ERROR: no 'Long:' in $f\n";
|
print STDERR "ERROR: no 'Long:' in $f\n";
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -300,7 +445,7 @@ sub single {
|
||||||
print STDERR "$f:$line:1:ERROR: no 'Added:' version present\n";
|
print STDERR "$f:$line:1:ERROR: no 'Added:' version present\n";
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
if(!$seealso) {
|
if(!$seealso[0]) {
|
||||||
print STDERR "$f:$line:1:ERROR: no 'See-also:' field present\n";
|
print STDERR "$f:$line:1:ERROR: no 'See-also:' field present\n";
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
|
@ -316,42 +461,17 @@ sub single {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
chomp;
|
chomp;
|
||||||
print STDERR "WARN: unrecognized line in $f, ignoring:\n:'$_';"
|
print STDERR "$f:$line:1:WARN: unrecognized line in $f, ignoring:\n:'$_';"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
my @desc;
|
|
||||||
my $tablemode = 0;
|
if($start < 2) {
|
||||||
while(<F>) {
|
print STDERR "$f:1:1:ERROR: no proper meta-data header\n";
|
||||||
$line++;
|
return 2;
|
||||||
$dline++;
|
|
||||||
if(($dline == 1) && ($_ =~ /^[\r\n]*\z/)) {
|
|
||||||
print STDERR "$f:$line:1:ERROR: unnecessary leading blank line\n";
|
|
||||||
return 3;
|
|
||||||
}
|
}
|
||||||
if(/^## (.*)/) {
|
|
||||||
if(!$tablemode) {
|
my @desc = render($fh, $f, $line);
|
||||||
push @desc, ".RS\n";
|
close($fh);
|
||||||
$tablemode = 1;
|
|
||||||
}
|
|
||||||
push @desc, ".IP \"\\fB$1\\fP\"\n";
|
|
||||||
next;
|
|
||||||
}
|
|
||||||
elsif(/^##/) {
|
|
||||||
if($tablemode) {
|
|
||||||
# end of table
|
|
||||||
push @desc, ".RE\n.IP\n";
|
|
||||||
$tablmode = 0;
|
|
||||||
}
|
|
||||||
next;
|
|
||||||
}
|
|
||||||
elsif(/^\.(IP|RS|RE)/) {
|
|
||||||
my ($cmd) = ($1);
|
|
||||||
print STDERR "$f:$line:1:ERROR: $cmd detected, use ##-style\n";
|
|
||||||
return 3;
|
|
||||||
}
|
|
||||||
push @desc, $_;
|
|
||||||
}
|
|
||||||
close(F);
|
|
||||||
if($tablemode) {
|
if($tablemode) {
|
||||||
# end of table
|
# end of table
|
||||||
push @desc, ".RE\n.IP\n";
|
push @desc, ".RE\n.IP\n";
|
||||||
|
@ -442,17 +562,16 @@ sub single {
|
||||||
printdesc(@extra);
|
printdesc(@extra);
|
||||||
|
|
||||||
my @foot;
|
my @foot;
|
||||||
if($seealso) {
|
|
||||||
my @m=split(/ /, $seealso);
|
|
||||||
my $mstr;
|
my $mstr;
|
||||||
my $and = 0;
|
my $and = 0;
|
||||||
my $num = scalar(@m);
|
my $num = scalar(@seealso);
|
||||||
if($num > 2) {
|
if($num > 2) {
|
||||||
# use commas up to this point
|
# use commas up to this point
|
||||||
$and = $num - 1;
|
$and = $num - 1;
|
||||||
}
|
}
|
||||||
my $i = 0;
|
my $i = 0;
|
||||||
for my $k (@m) {
|
for my $k (@seealso) {
|
||||||
if(!$helplong{$k}) {
|
if(!$helplong{$k}) {
|
||||||
print STDERR "$f:$line:1:WARN: see-also a non-existing option: $k\n";
|
print STDERR "$f:$line:1:WARN: see-also a non-existing option: $k\n";
|
||||||
}
|
}
|
||||||
|
@ -465,7 +584,6 @@ sub single {
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
push @foot, seealso($standalone, $mstr);
|
push @foot, seealso($standalone, $mstr);
|
||||||
}
|
|
||||||
|
|
||||||
if($requires) {
|
if($requires) {
|
||||||
my $l = manpageify($long);
|
my $l = manpageify($long);
|
||||||
|
@ -491,8 +609,10 @@ sub single {
|
||||||
print "\nExample$s:\n.nf\n";
|
print "\nExample$s:\n.nf\n";
|
||||||
foreach my $e (@examples) {
|
foreach my $e (@examples) {
|
||||||
$e =~ s!\$URL!https://example.com!g;
|
$e =~ s!\$URL!https://example.com!g;
|
||||||
$e =~ s/-/\\-/g;
|
#$e =~ s/-/\\-/g;
|
||||||
$e =~ s/\'/\\(aq/g;
|
#$e =~ s/\'/\\(aq/g;
|
||||||
|
# convert single backslahes to doubles
|
||||||
|
$e =~ s/\\/\\\\/g;
|
||||||
print " curl $e\n";
|
print " curl $e\n";
|
||||||
}
|
}
|
||||||
print ".fi\n";
|
print ".fi\n";
|
||||||
|
@ -518,7 +638,14 @@ sub getshortlong {
|
||||||
my $arg;
|
my $arg;
|
||||||
my $protocols;
|
my $protocols;
|
||||||
my $category;
|
my $category;
|
||||||
|
my $start = 0;
|
||||||
while(<F>) {
|
while(<F>) {
|
||||||
|
if(!$start) {
|
||||||
|
if(/^---/) {
|
||||||
|
$start = 1;
|
||||||
|
}
|
||||||
|
next;
|
||||||
|
}
|
||||||
if(/^Short: (.)/i) {
|
if(/^Short: (.)/i) {
|
||||||
$short=$1;
|
$short=$1;
|
||||||
}
|
}
|
||||||
|
@ -563,15 +690,10 @@ sub indexoptions {
|
||||||
|
|
||||||
sub header {
|
sub header {
|
||||||
my ($f)=@_;
|
my ($f)=@_;
|
||||||
open(F, "<:crlf", "$f");
|
my $fh;
|
||||||
my @d;
|
open($fh, "<:crlf", "$f");
|
||||||
while(<F>) {
|
my @d = render($fh, $f, 1);
|
||||||
s/%DATE/$date/g;
|
close($fh);
|
||||||
s/%VERSION/$version/g;
|
|
||||||
s/%GLOBALS/$globals/g;
|
|
||||||
push @d, $_;
|
|
||||||
}
|
|
||||||
close(F);
|
|
||||||
printdesc(@d);
|
printdesc(@d);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -687,7 +809,17 @@ sub listglobals {
|
||||||
open(F, "<:crlf", "$f") ||
|
open(F, "<:crlf", "$f") ||
|
||||||
next;
|
next;
|
||||||
my $long;
|
my $long;
|
||||||
|
my $start = 0;
|
||||||
while(<F>) {
|
while(<F>) {
|
||||||
|
if(/^---/) {
|
||||||
|
if(!$start) {
|
||||||
|
$start = 1;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
last;
|
||||||
|
}
|
||||||
|
}
|
||||||
if(/^Long: *(.*)/i) {
|
if(/^Long: *(.*)/i) {
|
||||||
$long=$1;
|
$long=$1;
|
||||||
}
|
}
|
||||||
|
@ -695,9 +827,6 @@ sub listglobals {
|
||||||
push @globalopts, $long;
|
push @globalopts, $long;
|
||||||
last;
|
last;
|
||||||
}
|
}
|
||||||
elsif(/^---/) {
|
|
||||||
last;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
close(F);
|
close(F);
|
||||||
}
|
}
|
||||||
|
@ -721,17 +850,60 @@ sub sortnames {
|
||||||
sub mainpage {
|
sub mainpage {
|
||||||
my (@files) = @_;
|
my (@files) = @_;
|
||||||
my $ret;
|
my $ret;
|
||||||
# show the page header
|
my $fh;
|
||||||
header("page-header");
|
open($fh, "<:crlf", "mainpage.idx") ||
|
||||||
|
return 1;
|
||||||
|
|
||||||
|
print <<HEADER
|
||||||
|
.\\" **************************************************************************
|
||||||
|
.\\" * _ _ ____ _
|
||||||
|
.\\" * Project ___| | | | _ \\| |
|
||||||
|
.\\" * / __| | | | |_) | |
|
||||||
|
.\\" * | (__| |_| | _ <| |___
|
||||||
|
.\\" * \\___|\\___/|_| \\_\\_____|
|
||||||
|
.\\" *
|
||||||
|
.\\" * Copyright (C) Daniel Stenberg, <daniel\@haxx.se>, et al.
|
||||||
|
.\\" *
|
||||||
|
.\\" * This software is licensed as described in the file COPYING, which
|
||||||
|
.\\" * you should have received as part of this distribution. The terms
|
||||||
|
.\\" * are also available at https://curl.se/docs/copyright.html.
|
||||||
|
.\\" *
|
||||||
|
.\\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||||
|
.\\" * copies of the Software, and permit persons to whom the Software is
|
||||||
|
.\\" * furnished to do so, under the terms of the COPYING file.
|
||||||
|
.\\" *
|
||||||
|
.\\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||||
|
.\\" * KIND, either express or implied.
|
||||||
|
.\\" *
|
||||||
|
.\\" * SPDX-License-Identifier: curl
|
||||||
|
.\\" *
|
||||||
|
.\\" **************************************************************************
|
||||||
|
.\\"
|
||||||
|
.\\" DO NOT EDIT. Generated by the curl project gen.pl man page generator.
|
||||||
|
.\\"
|
||||||
|
.TH curl 1 "$date" "curl $version" "curl Manual"
|
||||||
|
HEADER
|
||||||
|
;
|
||||||
|
|
||||||
|
while(<$fh>) {
|
||||||
|
my $f = $_;
|
||||||
|
chomp $f;
|
||||||
|
if($f =~ /^#/) {
|
||||||
|
# stardard comment
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
if(/^%options/) {
|
||||||
# output docs for all options
|
# output docs for all options
|
||||||
foreach my $f (sort sortnames @files) {
|
foreach my $f (sort sortnames @files) {
|
||||||
$ret += single($f, 0);
|
$ret += single($f, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!$ret) {
|
|
||||||
header("page-footer");
|
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
# render the file
|
||||||
|
header($f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
close($fh);
|
||||||
exit $ret if($ret);
|
exit $ret if($ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: get
|
Long: get
|
||||||
|
@ -5,13 +6,19 @@ Short: G
|
||||||
Help: Put the post data in the URL and use GET
|
Help: Put the post data in the URL and use GET
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Category: http upload
|
Category: http upload
|
||||||
Example: --get $URL
|
|
||||||
Example: --get -d "tool=curl" -d "age=old" $URL
|
|
||||||
Example: --get -I -d "tool=curl" $URL
|
|
||||||
Added: 7.8.1
|
Added: 7.8.1
|
||||||
See-also: data request
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- data
|
||||||
|
- request
|
||||||
|
Example:
|
||||||
|
- --get $URL
|
||||||
|
- --get -d "tool=curl" -d "age=old" $URL
|
||||||
|
- --get -I -d "tool=curl" $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--get`
|
||||||
|
|
||||||
When used, this option makes all data specified with --data, --data-binary
|
When used, this option makes all data specified with --data, --data-binary
|
||||||
or --data-urlencode to be used in an HTTP GET request instead of the POST
|
or --data-urlencode to be used in an HTTP GET request instead of the POST
|
||||||
request that otherwise would be used. The data is appended to the URL
|
request that otherwise would be used. The data is appended to the URL
|
|
@ -1,14 +1,21 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: globoff
|
Long: globoff
|
||||||
Short: g
|
Short: g
|
||||||
Help: Disable URL sequences and ranges using {} and []
|
Help: Disable URL sequences and ranges using {} and []
|
||||||
Category: curl
|
Category: curl
|
||||||
Example: -g "https://example.com/{[]}}}}"
|
|
||||||
Added: 7.6
|
Added: 7.6
|
||||||
See-also: config disable
|
|
||||||
Multi: boolean
|
Multi: boolean
|
||||||
|
See-also:
|
||||||
|
- config
|
||||||
|
- disable
|
||||||
|
Example:
|
||||||
|
- -g "https://example.com/{[]}}}}"
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--globoff`
|
||||||
|
|
||||||
This option switches off the "URL globbing parser". When you set this option,
|
This option switches off the "URL globbing parser". When you set this option,
|
||||||
you can specify URLs that contain the letters {}[] without having curl itself
|
you can specify URLs that contain the letters {}[] without having curl itself
|
||||||
interpret them. Note that these letters are not normal legal URL contents but
|
interpret them. Note that these letters are not normal legal URL contents but
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: happy-eyeballs-timeout-ms
|
Long: happy-eyeballs-timeout-ms
|
||||||
|
@ -5,10 +6,16 @@ Arg: <milliseconds>
|
||||||
Help: Time for IPv6 before trying IPv4
|
Help: Time for IPv6 before trying IPv4
|
||||||
Added: 7.59.0
|
Added: 7.59.0
|
||||||
Category: connection
|
Category: connection
|
||||||
Example: --happy-eyeballs-timeout-ms 500 $URL
|
|
||||||
See-also: max-time connect-timeout
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- max-time
|
||||||
|
- connect-timeout
|
||||||
|
Example:
|
||||||
|
- --happy-eyeballs-timeout-ms 500 $URL
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--happy-eyeballs-timeout-ms`
|
||||||
|
|
||||||
Happy Eyeballs is an algorithm that attempts to connect to both IPv4 and IPv6
|
Happy Eyeballs is an algorithm that attempts to connect to both IPv4 and IPv6
|
||||||
addresses for dual-stack hosts, giving IPv6 a head-start of the specified
|
addresses for dual-stack hosts, giving IPv6 a head-start of the specified
|
||||||
number of milliseconds. If the IPv6 address cannot be connected to within that
|
number of milliseconds. If the IPv6 address cannot be connected to within that
|
|
@ -1,3 +1,4 @@
|
||||||
|
---
|
||||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
SPDX-License-Identifier: curl
|
SPDX-License-Identifier: curl
|
||||||
Long: haproxy-clientip
|
Long: haproxy-clientip
|
||||||
|
@ -6,10 +7,15 @@ Help: Sets client IP in HAProxy PROXY protocol v1 header
|
||||||
Protocols: HTTP
|
Protocols: HTTP
|
||||||
Added: 8.2.0
|
Added: 8.2.0
|
||||||
Category: http proxy
|
Category: http proxy
|
||||||
Example: --haproxy-clientip $IP
|
|
||||||
See-also: proxy
|
|
||||||
Multi: single
|
Multi: single
|
||||||
|
See-also:
|
||||||
|
- proxy
|
||||||
|
Example:
|
||||||
|
- --haproxy-clientip $IP
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# `--haproxy-clientip`
|
||||||
|
|
||||||
Sets a client IP in HAProxy PROXY protocol v1 header at the beginning of the
|
Sets a client IP in HAProxy PROXY protocol v1 header at the beginning of the
|
||||||
connection.
|
connection.
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user