curl: add --parallel-immediate

Starting with this change when doing parallel transfers, without this
option set, curl will prefer to create new transfers multiplexed on an
existing connection rather than creating a brand new one.

--parallel-immediate can be set to tell curl to prefer to use new
connections rather than to wait and try to multiplex.

libcurl-wise, this means that curl will set CURLOPT_PIPEWAIT by default
on parallel transfers.

Suggested-by: Tom van der Woerdt
Closes #4500
This commit is contained in:
Daniel Stenberg 2019-10-17 10:05:53 +02:00
parent 8487734e8b
commit 215baa74f7
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
6 changed files with 22 additions and 1 deletions

View file

@ -321,6 +321,7 @@ static const struct LongShort aliases[]= {
{"z", "time-cond", ARG_STRING},
{"Z", "parallel", ARG_BOOL},
{"Zb", "parallel-max", ARG_STRING},
{"Zc", "parallel-immediate", ARG_BOOL},
{"#", "progress-bar", ARG_BOOL},
{"#m", "progress-meter", ARG_BOOL},
{":", "next", ARG_NONE},
@ -2154,6 +2155,9 @@ ParameterError getparameter(const char *flag, /* f or -long-flag */
(global->parallel_max < 1))
global->parallel_max = PARALLEL_DEFAULT;
break;
case 'c': /* --parallel-connect */
global->parallel_connect = toggle;
break;
}
break;
case 'z': /* time condition coming up */