Package: wget
Version: 1.10.2-2
Severity: normal

Steps to reproduce:
1) wget -t 1 -T 15 --cache=off -cxr http://www33.brinkster.com/pubjoe/

Expected results:
1) contents of the web site is downloaded recursively

Actual results:
1) wget segfaults:

$ wget -t 1 -T 15 --cache=off -cxr http://www33.brinkster.com/pubjoe/
--11:36:14--  http://www33.brinkster.com/pubjoe/
           => `www33.brinkster.com/pubjoe/index.html'
Resolving www33.brinkster.com... 65.182.100.65
Connecting to www33.brinkster.com|65.182.100.65|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1,464 (1.4K) [text/html]

100%[=============================================================================================================================>]
 1,464         --.--K/s

11:36:15 (29.93 MB/s) - `www33.brinkster.com/pubjoe/index.html' saved 
[1464/1464]

Loading robots.txt; please ignore errors.
--11:36:15--  http://www33.brinkster.com/robots.txt
           => `www33.brinkster.com/robots.txt'
Reusing existing connection to www33.brinkster.com:80.
HTTP request sent, awaiting response... 404 Not Found
11:36:15 ERROR 404: Not Found.

--11:36:15--  http://www33.brinkster.com/pubjoe/lesson01
           => `www33.brinkster.com/pubjoe/lesson01'
Segmentation fault (core dumped)


More info:
1) gdb is not too useful here:

$ gdb -c core
GNU gdb 6.4.90-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
(no debugging symbols found)
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
Core was generated by `wget -t 1 -T 15 --cache=off -cxr 
http://www33.brinkster.com/pubjoe/'.
Program terminated with signal 11, Segmentation fault.
#0  0xb7d35ec8 in ?? ()
(gdb) bt
#0  0xb7d35ec8 in ?? ()
(gdb) x/5i $eip
0xb7d35ec8:     Cannot access memory at address 0xb7d35ec8
(gdb)

2) If I recompile wget with debugging symbols using

script -c "DEB_BUILD_OPTIONS='nostrip debug noopt' fakeroot apt-get --build 
source wget" build.log

then wget does not segfault anymore and correctly downloads contents of the web 
site.

3) see the attached wget.strace.gz for a full strace of the crash in
   case the web site is changed after this bug has been reported.

Attachment: wget.strace.gz
Description: Binary data

Reply via email to