Your message dated Wed, 19 Mar 2008 14:47:31 +0000
with message-id <[EMAIL PROTECTED]>
and subject line Bug#456259: fixed in wget 1.11-1
has caused the Debian Bug report #456259,
regarding wget: aborts with no message when http server returns negative size
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [EMAIL PROTECTED]
immediately.)
--
456259: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=456259
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: wget
Version: 1.10.2-2
Severity: normal
Tags: patch
Note the negative length returned by my http server here.
The file's larger than 2GiB and I'm sure there's a server bug there.
But wget could easily handle it more gracefully - all the code for doing so is
there.
First, though, here's how it handles the negative size at the moment:
(gdb) r http://bobthe/Company/Engineering/Software/VirtualSMUImages/copper-1.zip
Starting program: /tmp/wget-1.10.2/src/wget
http://bobthe/Company/Engineering/Software/VirtualSMUImages/copper-1.zip
[Thread debugging using libthread_db enabled]
[New Thread 47666932903152 (LWP 31249)]
--17:00:40--
http://bobthe/Company/Engineering/Software/VirtualSMUImages/copper-1.zip
=> `copper-1.zip'
Resolving bobthe... 10.2.1.7
Connecting to bobthe|10.2.1.7|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: -1,449,214,731 [application/zip]
[ <=> ] 0
--.--K/s
Program received signal SIGABRT, Aborted.
[Switching to Thread 47666932903152 (LWP 31249)]
0x00002b5a5256c07b in raise () from /lib/libc.so.6
(gdb) bt
#0 0x00002b5a5256c07b in raise () from /lib/libc.so.6
#1 0x00002b5a5256d84e in abort () from /lib/libc.so.6
#2 0x0000000000415e5a in http_loop (u=0x5430c0, newloc=0x7fff58c48d88,
local_file=0x7fff58c48d80, referer=<value optimized out>, dt=0x7fff58c48ee8,
proxy=0x0) at http.c:2456
#3 0x000000000041e2e5 in retrieve_url (origurl=0x543000 "h"...,
file=0x7fff58c48ee0, newloc=0x7fff58c48ed8, refurl=0x0, dt=0x7fff58c48ee8) at
retr.c:667
#4 0x000000000041a65d in main (argc=2, argv=0x7fff58c48ff8) at main.c:943
(gdb)
This is the code that's abort()ing:
else if (hstat.res == 0) /* No read error */
{
if (hstat.contlen == -1) /* We don't know how much we were supposed
to get, so assume we succeeded. */
{
...
}
else if (hstat.len < hstat.contlen) /* meaning we lost the
connection too soon */
{
...
}
else
/* Getting here would mean reading more data than
requested with content-length, which we never do. */
abort ();
My patch treats negatives lengths like out-of-range integers.
I was expecting this to cause the download to fail with a nice error message.
It actually treated the length as unknown and continued.
That seems like useful behavior, though a warning might be a useful addition.
Still, a minimal patch is always less controversial when hacking another's code.
-- System Information:
Debian Release: 4.0
APT prefers stable
APT policy: (500, 'stable'), (50, 'unstable')
Architecture: amd64 (x86_64)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-4-amd64
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL
set to en_US.UTF-8)
Versions of packages wget depends on:
ii libc6 2.3.6.ds1-13etch2 GNU C Library: Shared libraries
ii libssl0.9.8 0.9.8c-4etch1 SSL shared libraries
wget recommends no packages.
-- no debconf information
--- http.c.orig 2007-12-13 16:57:24.000000000 -0800
+++ http.c 2007-12-13 16:58:44.000000000 -0800
@@ -1601,7 +1601,7 @@
wgint parsed;
errno = 0;
parsed = str_to_wgint (hdrval, NULL, 10);
- if (parsed == WGINT_MAX && errno == ERANGE)
+ if ((parsed == WGINT_MAX && errno == ERANGE) || parsed < 0)
/* Out of range.
#### If Content-Length is out of range, it most likely
means that the file is larger than 2G and that we're
--- End Message ---
--- Begin Message ---
Source: wget
Source-Version: 1.11-1
We believe that the bug you reported is fixed in the latest version of
wget, which is due to be installed in the Debian FTP archive:
wget_1.11-1.diff.gz
to pool/main/w/wget/wget_1.11-1.diff.gz
wget_1.11-1.dsc
to pool/main/w/wget/wget_1.11-1.dsc
wget_1.11-1_amd64.deb
to pool/main/w/wget/wget_1.11-1_amd64.deb
wget_1.11.orig.tar.gz
to pool/main/w/wget/wget_1.11.orig.tar.gz
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Noèl Köthe <[EMAIL PROTECTED]> (supplier of updated wget package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.7
Date: Wed, 19 Mar 2008 14:20:22 +0100
Source: wget
Binary: wget
Architecture: source amd64
Version: 1.11-1
Distribution: unstable
Urgency: low
Maintainer: Noèl Köthe <[EMAIL PROTECTED]>
Changed-By: Noèl Köthe <[EMAIL PROTECTED]>
Description:
wget - retrieves files from the web
Closes: 203241 378691 407571 412586 441738 456259 471499
Changes:
wget (1.11-1) unstable; urgency=low
.
* new upstream release fixes
- http server returns negative size (closes: #456259)
- documented feature --ignore-case is now there;)
(closes: #471499 #434700)
- Content-Disposition header (closes: #203241)
- many FTP 220 responses at once (closes: #407571)
- seg fault on amd64 (closes: #412586)
- outdated experimantal version (closes: #441738)
- HTTP and --contine (closes: #378691)
* corrected wget-de.po-spelling-correction
* no TODO file anymore, removed from debian/docs
* updated Standards-Version to 3.7.3
* updated debian/copyright to GPL v3
Files:
b570d6bd7ad76162958637875a3b1da5 601 web important wget_1.11-1.dsc
b0a4d178672df06435fcbded07cfc054 1444738 web important wget_1.11.orig.tar.gz
b992d5f477fbcb3dc55d41bfa7172c28 15991 web important wget_1.11-1.diff.gz
d7f05f2bbc7c6f9e9573cac51445a9b8 579460 web important wget_1.11-1_amd64.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFH4SSb9/DnDzB9Vu0RAmzUAJ0dY/f5EYoWfLgw4dIS09nNlC12bACeMMMf
gxb4AlV1KE21z3MciEdC3gg=
=AmLQ
-----END PGP SIGNATURE-----
--- End Message ---