Wput ends with buffer overflow when rate-limited
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
wput (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
This started up when I upgraded to Oneiric.
I'm fairly consistently finding that when using wput with --binary and --limit-rate for an ftp upload, the upload ends with a buffer overflow.
A sample recent run (host, username, and password obscured):
oloryn@fornost:~$ wput --binary --limit-rate=5K svnback2012-
name:<email address hidden>
--00:49:50-- `svnback2012-
=> ftp://bhbackup:
Connecting to 97.74.215.114:21... connected! encrypted!
Logging in as bhbackup ... Logged in!
Length: 8,092,575
100%[==
*** buffer overflow detected ***: wput terminated
======= Backtrace: =========
/lib/i386-
/lib/i386-
/lib/i386-
/lib/i386-
/lib/i386-
/lib/i386-
/lib/i386-
wput[0x8052a96]
wput[0x804dee5]
wput[0x804e588]
wput[0x805608d]
wput[0x804bbf0]
/lib/i386-
======= Memory map: ========
00110000-001ba000 r-xp 00000000 08:01 7920 /usr/lib/
001ba000-001bb000 ---p 000aa000 08:01 7920 /usr/lib/
001bb000-001bf000 r--p 000aa000 08:01 7920 /usr/lib/
001bf000-001c0000 rw-p 000ae000 08:01 7920 /usr/lib/
001c0000-00242000 r-xp 00000000 08:01 7182 /lib/i386-
00242000-00243000 r--p 00081000 08:01 7182 /lib/i386-
00243000-00245000 rw-p 00082000 08:01 7182 /lib/i386-
00245000-0024a000 r-xp 00000000 08:01 51705 /lib/i386-
0024a000-0024b000 r--p 00004000 08:01 51705 /lib/i386-
0024b000-0024c000 rw-p 00005000 08:01 51705 /lib/i386-
00264000-003da000 r-xp 00000000 08:01 51697 /lib/i386-
003da000-003dc000 r--p 00176000 08:01 51697 /lib/i386-
003dc000-003dd000 rw-p 00178000 08:01 51697 /lib/i386-
003dd000-003e0000 rw-p 00000000 00:00 0
0046d000-0048b000 r-xp 00000000 08:01 51694 /lib/i386-
0048b000-0048c000 r--p 0001d000 08:01 51694 /lib/i386-
0048c000-0048d000 rw-p 0001e000 08:01 51694 /lib/i386-
0057b000-0058b000 r-xp 00000000 08:01 7194 /usr/lib/
0058b000-0058c000 r--p 0000f000 08:01 7194 /usr/lib/
0058c000-0058d000 rw-p 00010000 08:01 7194 /usr/lib/
00831000-00844000 r-xp 00000000 08:01 51712 /lib/i386-
00844000-00845000 r--p 00012000 08:01 51712 /lib/i386-
00845000-00846000 rw-p 00013000 08:01 51712 /lib/i386-
00846000-00848000 rw-p 00000000 00:00 0
008bf000-008db000 r-xp 00000000 08:01 11212 /lib/i386-
008db000-008dc000 r--p 0001b000 08:01 11212 /lib/i386-
008dc000-008dd000 rw-p 0001c000 08:01 11212 /lib/i386-
00c95000-00c9e000 r-xp 00000000 08:01 7923 /usr/lib/
00c9e000-00c9f000 r--p 00008000 08:01 7923 /usr/lib/
00c9f000-00ca0000 rw-p 00009000 08:01 7923 /usr/lib/
00ddf000-00dea000 r-xp 00000000 08:01 51706 /lib/i386-
00dea000-00deb000 r--p 0000a000 08:01 51706 /lib/i386-
00deb000-00dec000 rw-p 0000b000 08:01 51706 /lib/i386-
00e0a000-00e0b000 r-xp 00000000 00:00 0 [vdso]
00e10000-00e13000 r-xp 00000000 08:01 7174 /lib/i386-
00e13000-00e14000 r--p 00002000 08:01 7174 /lib/i386-
00e14000-00e15000 rw-p 00003000 08:01 7174 /lib/i386-
00ea8000-00ebb000 r-xp 00000000 08:01 23393 /lib/i386-
00ebb000-00ebc000 r--p 00012000 08:01 23393 /lib/i386-
00ebc000-00ebd000 rw-p 00013000 08:01 23393 /lib/i386-
08048000-0805c000 r-xp 00000000 08:01 2247 /usr/bin/wput
0805c000-0805d000 r--p 00013000 08:01 2247 /usr/bin/wput
0805d000-0805e000 rw-p 00014000 08:01 2247 /usr/bin/wput
085f7000-08618000 rw-p 00000000 00:00 0 [heap]
b75c1000-b77c1000 r--p 00000000 08:01 1237 /usr/lib/
b77c1000-b77c4000 rw-p 00000000 00:00 0
b77c8000-b77c9000 rw-p 00000000 00:00 0
b77c9000-b77ca000 r--p 002a1000 08:01 1237 /usr/lib/
b77ca000-b77cb000 rw-p 00000000 00:00 0
bff7b000-bff9c000 rw-p 00000000 00:00 0 [stack]
Aborted
This may require a certain size of file being transferred to trigger it, and I'm not sure if --binary or --limit-rate is what triggers it. If I get time, I'll try to test that.
I use this for backups out of a ADSL line. Being able to rate-limit keeps the DSL line from being clogged.
I tried with your params, but can't reproduce it. /wiki.ubuntu. com/Backtrace) or run with --memory-debug (see doc/INSTALL) to further track down the problem.
You may try to get a backtrace (https:/