summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorPaul Groke <paul.groke@dynatrace.com>2020-12-10 17:38:14 +0100
committerDaniel Stenberg <daniel@haxx.se>2020-12-29 17:49:36 +0100
commit8324dc8b1a730445e7aa91f62d7f88b8376e4aee (patch)
treef4ef26e256e8887a5cc6adb34a3c504dcd5d449d /docs
parent68dde8e330a2580c1af3f34cc1971716948c307b (diff)
downloadcurl-8324dc8b1a730445e7aa91f62d7f88b8376e4aee.tar.gz
dns: extend CURLOPT_RESOLVE syntax for adding non-permanent entries
Extend the syntax of CURLOPT_RESOLVE strings: allow using a '+' prefix (similar to the existing '-' prefix for removing entries) to add DNS cache entries that will time out just like entries that are added by libcurl itself. Append " (non-permanent)" to info log message in case a non-permanent entry is added. Adjust relevant comments to reflect the new behavior. Adjust documentation. Extend unit1607 to test the new functionality. Closes #6294
Diffstat (limited to 'docs')
-rw-r--r--docs/cmdline-opts/resolve.d10
-rw-r--r--docs/libcurl/opts/CURLOPT_RESOLVE.319
2 files changed, 21 insertions, 8 deletions
diff --git a/docs/cmdline-opts/resolve.d b/docs/cmdline-opts/resolve.d
index 41f6a1bd5..ff10f28d9 100644
--- a/docs/cmdline-opts/resolve.d
+++ b/docs/cmdline-opts/resolve.d
@@ -1,5 +1,5 @@
Long: resolve
-Arg: <host:port:addr[,addr]...>
+Arg: <[+]host:port:addr[,addr]...>
Help: Resolve the host+port to this address
Added: 7.21.3
Category: connection
@@ -19,10 +19,18 @@ with a specific host and port will be used first.
The provided address set by this option will be used even if --ipv4 or --ipv6
is set to make curl use another IP version.
+By prefixing the host with a '+' you can make the entry time out after curl's
+default timeout (1 minute). Note that this will only make sense for long
+running parallel transfers with a lot of files. In such cases, if this option
+is used curl will try to resolve the host as it normally would once the
+timeout has expired.
+
Support for providing the IP address within [brackets] was added in 7.57.0.
Support for providing multiple IP addresses per entry was added in 7.59.0.
Support for resolving with wildcard was added in 7.64.0.
+Support for the '+' prefix was was added in 7.75.0.
+
This option can be used many times to add many host names to resolve.
diff --git a/docs/libcurl/opts/CURLOPT_RESOLVE.3 b/docs/libcurl/opts/CURLOPT_RESOLVE.3
index 64440e3b6..fe4732818 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVE.3
+++ b/docs/libcurl/opts/CURLOPT_RESOLVE.3
@@ -37,7 +37,7 @@ list of \fBstruct curl_slist\fP structs properly filled in. Use
to clean up an entire list.
Each single name resolve string should be written using the format
-HOST:PORT:ADDRESS[,ADDRESS]... where HOST is the name libcurl will try
+[+]HOST:PORT:ADDRESS[,ADDRESS]... where HOST is the name libcurl will try
to resolve, PORT is the port number of the service where libcurl wants
to connect to the HOST and ADDRESS is one or more numerical IP
addresses. If you specify multiple ip addresses they need to be
@@ -46,14 +46,16 @@ ADDRESS entries can of course be either IPv4 or IPv6 style addressing.
This option effectively pre-populates the DNS cache with entries for the
host+port pair so redirects and everything that operations against the
-HOST+PORT will instead use your provided ADDRESS. Addresses set with
-\fICURLOPT_RESOLVE(3)\fP will not time-out from the DNS cache like ordinary
-entries.
+HOST+PORT will instead use your provided ADDRESS.
-If the DNS cache already have an entry for the given host+port pair, then
+The optional leading "+" signifies whether the new entry should time-out or
+not. Entires added with "HOST:..." will never time-out whereas entries added
+with "+HOST:..." will time-out just like ordinary DNS cache entries.
+
+If the DNS cache already has an entry for the given host+port pair, then
this entry will be removed and a new entry will be created. This is because
-old entry may have have different addresses or be ordinary entries with
-time-outs.
+the old entry may have have different addresses or a different time-out
+setting.
The provided ADDRESS set by this option will be used even if
\fICURLOPT_IPRESOLVE(3)\fP is set to make libcurl use another IP version.
@@ -66,6 +68,9 @@ and port number must exactly match what was already added previously.
Support for providing the ADDRESS within [brackets] was added in 7.57.0.
Support for providing multiple IP addresses per entry was added in 7.59.0.
+
+Support for adding non-permanent entries by using the "+" prefix was added in
+7.75.0.
.SH DEFAULT
NULL
.SH PROTOCOLS