Debian bug report 338681 by Jan Kunder: make curl better detect and report bad

limit-rate units: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=338681 Now
curl will return error if a bad unit is used.
This commit is contained in:
Daniel Stenberg 2005-11-13 11:06:48 +00:00
parent c2862742ab
commit adf462fe05
3 changed files with 19 additions and 2 deletions

View File

@ -9,6 +9,11 @@
Daniel (13 November 2005) Daniel (13 November 2005)
- Debian bug report 338681 by Jan Kunder: make curl better detect and report
bad limit-rate units:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=338681 Now curl will return
error if a bad unit is used.
- Thanks to this nice summary of poll() implementations: - Thanks to this nice summary of poll() implementations:
http://www.greenend.org.uk/rjk/2001/06/poll.html and further tests by Eugene http://www.greenend.org.uk/rjk/2001/06/poll.html and further tests by Eugene
Kotlyarov, we now know that cygwin's poll returns only POLLHUP on remote Kotlyarov, we now know that cygwin's poll returns only POLLHUP on remote

View File

@ -18,6 +18,7 @@ This release includes the following changes:
This release includes the following bugfixes: This release includes the following bugfixes:
o curl outputs error on bad --limit-rate units
o fixed libcurl's use of poll() on cygwin o fixed libcurl's use of poll() on cygwin
o the GnuTLS code didn't support client certificates o the GnuTLS code didn't support client certificates
o TFTP over IPv6 works o TFTP over IPv6 works
@ -48,6 +49,6 @@ advice from friends like these:
Dave Dribin, Bradford Bruce, Temprimus, Ofer, Dima Barsky, Amol Pattekar, Jaz Dave Dribin, Bradford Bruce, Temprimus, Ofer, Dima Barsky, Amol Pattekar, Jaz
Fresh, tommink[at]post.pl, Gisle Vanem, Nis Jorgensen, Vilmos Nebehaj, Fresh, tommink[at]post.pl, Gisle Vanem, Nis Jorgensen, Vilmos Nebehaj,
Dmitry Bartsevich, David Lang, Eugene Kotlyarov Dmitry Bartsevich, David Lang, Eugene Kotlyarov, Jan Kunder
Thanks! (and sorry if I forgot to mention someone) Thanks! (and sorry if I forgot to mention someone)

View File

@ -1497,7 +1497,11 @@ static ParameterError getparameter(char *flag, /* f or -long-flag */
/* We support G, M, K too */ /* We support G, M, K too */
char *unit; char *unit;
curl_off_t value = curlx_strtoofft(nextarg, &unit, 0); curl_off_t value = curlx_strtoofft(nextarg, &unit, 0);
switch(nextarg[strlen(nextarg)-1]) {
if(strlen(unit) != 1)
unit="w"; /* unsupported */
switch(*unit) {
case 'G': case 'G':
case 'g': case 'g':
value *= 1024*1024*1024; value *= 1024*1024*1024;
@ -1510,6 +1514,13 @@ static ParameterError getparameter(char *flag, /* f or -long-flag */
case 'k': case 'k':
value *= 1024; value *= 1024;
break; break;
case 'b':
case 'B':
/* for plain bytes, leave as-is */
break;
default:
warnf(config, "unsupported rate unit. Use G, M, K or B!\n");
return PARAM_BAD_USE;
} }
config->recvpersecond = value; config->recvpersecond = value;
config->sendpersecond = value; config->sendpersecond = value;