summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2020-08-14 16:49:42 +0200
committerDaniel Stenberg <daniel@haxx.se>2020-08-14 16:51:22 +0200
commitac91c202aef8ad2aa5d12766ed998ee842e47567 (patch)
treebca3336a168b96c23eefaf69594487a91b7a09a4
parent974461443466bd334727a8c03ff41905ebaa4516 (diff)
downloadcurl-ac91c202aef8ad2aa5d12766ed998ee842e47567.tar.gz
docs: clarify MAX_SEND/RECV_SPEED functionality
... in particular what happens if the maximum speed limit is set to a value that's smaller than the transfer buffer size in use. Reported-by: Tomas Berger Fixes #5788
-rw-r--r--docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.312
-rw-r--r--docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.39
2 files changed, 17 insertions, 4 deletions
diff --git a/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.3 b/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.3
index e4ced8643..b47063842 100644
--- a/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2020, 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
@@ -28,12 +28,18 @@ CURLOPT_MAX_RECV_SPEED_LARGE \- rate limit data download speed
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAX_RECV_SPEED_LARGE,
- curl_off_t speed);
+ curl_off_t maxspeed);
.SH DESCRIPTION
-Pass a curl_off_t as parameter. If a download exceeds this \fIspeed\fP
+Pass a curl_off_t as parameter. If a download exceeds this \fImaxspeed\fP
(counted in bytes per second) the transfer will pause to keep the speed less
than or equal to the parameter value. Defaults to unlimited speed.
+This is not an exact science. libcurl attempts to keep the average speed below
+the given threshold over a period time.
+
+If you set \fImaxspeed\fP to a value lower than \fBCURLOPT_BUFFERSIZE(3)\fP,
+libcurl might download faster than the set limit initially.
+
This option doesn't affect transfer speeds done with FILE:// URLs.
.SH DEFAULT
0, disabled
diff --git a/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3 b/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3
index d9f5c8bf0..47b3f7cf8 100644
--- a/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2020, 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
@@ -35,6 +35,13 @@ this speed (counted in bytes per second) the transfer will pause to keep the
speed less than or equal to the parameter value. Defaults to unlimited
speed.
+This is not an exact science. libcurl attempts to keep the average speed below
+the given threshold over a period time.
+
+If you set \fImaxspeed\fP to a value lower than
+\fBCURLOPT_UPLOAD_BUFFERSIZE(3)\fP, libcurl might "shoot over" the limit on
+its first send and still send off a full buffer.
+
This option doesn't affect transfer speeds done with FILE:// URLs.
.SH DEFAULT
0, disabled