1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-21 15:48:49 -05:00

Jaz Fresh pointed out that if you used "-r [number]" as was wrongly described

in the man page, curl would send an invalid HTTP Range: header. The correct
way would be to use "-r [number]-" or even "-r -[number]". Starting now,
curl will warn if this is discovered, and automatically append a dash to the
range before passing it to libcurl.
This commit is contained in:
Daniel Stenberg 2005-10-27 12:05:36 +00:00
parent 33dc28b905
commit 9d152a77fd
4 changed files with 29 additions and 4 deletions

View File

@ -8,6 +8,13 @@
Daniel (27 October 2005)
- Jaz Fresh pointed out that if you used "-r [number]" as was wrongly described
in the man page, curl would send an invalid HTTP Range: header. The correct
way would be to use "-r [number]-" or even "-r -[number]". Starting now,
curl will warn if this is discovered, and automatically append a dash to the
range before passing it to libcurl.
Daniel (25 October 2005) Daniel (25 October 2005)
- Amol Pattekar reported a bug with great detail and a fine example in bug - Amol Pattekar reported a bug with great detail and a fine example in bug
#1326306 (http://curl.haxx.se/bug/view.cgi?id=1326306). When using the multi #1326306 (http://curl.haxx.se/bug/view.cgi?id=1326306). When using the multi

View File

@ -15,6 +15,7 @@ This release includes the following changes:
This release includes the following bugfixes: This release includes the following bugfixes:
o -r [num] would produce an invalid HTTP Range: header
o multi interface with multi IP hosts could leak socket descriptors o multi interface with multi IP hosts could leak socket descriptors
o the GnuTLS code didn't handle rehandshakes o the GnuTLS code didn't handle rehandshakes
o re-use of a dead FTP connection o re-use of a dead FTP connection
@ -32,6 +33,7 @@ Other curl-related news since the previous public release:
This release would not have looked like this without help, code, reports and This release would not have looked like this without help, code, reports and
advice from friends like these: advice from friends like these:
Dave Dribin, Bradford Bruce, Temprimus Dave Dribin, Bradford Bruce, Temprimus, Ofer, Dima Barsky, Amol Pattekar, Jaz
Fresh
Thanks! (and sorry if I forgot to mention someone) Thanks! (and sorry if I forgot to mention someone)

View File

@ -770,7 +770,7 @@ specifies the second 500 bytes
.B -500 .B -500
specifies the last 500 bytes specifies the last 500 bytes
.TP .TP
.B 9500 .B 9500-
specifies the bytes from offset 9500 and forward specifies the bytes from offset 9500 and forward
.TP .TP
.B 0-0,-1 .B 0-0,-1

View File

@ -2097,8 +2097,24 @@ static ParameterError getparameter(char *flag, /* f or -long-flag */
return err; return err;
break; break;
case 'r': case 'r':
/* byte range requested */ /* Specifying a range WITHOUT A DASH will create an illegal HTTP range
GetStr(&config->range, nextarg); (and won't actually be range by definition). The man page previously
claimed that to be a good way, why this code is added to work-around
it. */
if(!strchr(nextarg, '-')) {
char buffer[32];
curl_off_t off;
warnf(config,
"A specfied range MUST include at least one dash (-). "
"Appending one for you!\n");
off = curlx_strtoofft(nextarg, NULL, 10);
snprintf(buffer, sizeof(buffer), CURL_FORMAT_OFF_T "-", off);
GetStr(&config->range, buffer);
}
else
/* byte range requested */
GetStr(&config->range, nextarg);
break; break;
case 'R': case 'R':
/* use remote file's time */ /* use remote file's time */