Funny FTP-client crash

Normally I thought that the ftp-clients are rock-stable. Not so with Debian’s Lenny for ADM64 system:


swen@Augustus:~$ ftp ftp.sht-services.co.uk
Connected to ftp.sht-services.co.uk.
220-Matrix FTP server ready.
220-This is a private system - No anonymous login
220-IPv6 connections are also welcome on this server.
220 Please note: files for your website must be stored under the htdocs directory.
Name (ftp.sht-services.co.uk:swen): xxx
331 User xxx OK. Password required
Password:
230 OK. Current directory is /
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> !ls -l
*** glibc detected *** ftp: corrupted double-linked list: 0x0000000000637e80 ***
======= Backtrace: =========
/lib/libc.so.6[0x7fb5c91ff9a8]
/lib/libc.so.6[0x7fb5c91ffc70]
/lib/libc.so.6[0x7fb5c9202326]
/lib/libc.so.6(__libc_malloc+0x98)[0x7fb5c9203ad8]
/lib/libc.so.6(_obstack_begin+0x61)[0x7fb5c9206371]
ftp[0x40cc21]
/lib/libc.so.6(__libc_start_main+0xe6)[0x7fb5c91aa1a6]
ftp(fclose+0x189)[0x4025b9]
======= Memory map: ========
00400000-00412000 r-xp 00000000 08:01 1673998                            /usr/bin/netkit-ftp
00611000-00613000 rw-p 00011000 08:01 1673998                            /usr/bin/netkit-ftp
00613000-00642000 rw-p 00613000 00:00 0                                  [heap]
7fb5c3de9000-7fb5c3dff000 r-xp 00000000 08:01 1201875                    /lib/libgcc_s.so.1
7fb5c3dff000-7fb5c3fff000 ---p 00016000 08:01 1201875                    /lib/libgcc_s.so.1
7fb5c3fff000-7fb5c4000000 rw-p 00016000 08:01 1201875                    /lib/libgcc_s.so.1
7fb5c4000000-7fb5c4021000 rw-p 7fb5c4000000 00:00 0
7fb5c4021000-7fb5c8000000 ---p 7fb5c4021000 00:00 0
7fb5c8136000-7fb5c8146000 r-xp 00000000 08:01 1202227                    /lib/libresolv-2.7.so
7fb5c8146000-7fb5c8346000 ---p 00010000 08:01 1202227                    /lib/libresolv-2.7.so
7fb5c8346000-7fb5c8348000 rw-p 00010000 08:01 1202227                    /lib/libresolv-2.7.so
7fb5c8348000-7fb5c834a000 rw-p 7fb5c8348000 00:00 0
7fb5c834a000-7fb5c834e000 r-xp 00000000 08:01 1202198                    /lib/libnss_dns-2.7.so
7fb5c834e000-7fb5c854d000 ---p 00004000 08:01 1202198                    /lib/libnss_dns-2.7.so
7fb5c854d000-7fb5c854f000 rw-p 00003000 08:01 1202198                    /lib/libnss_dns-2.7.so
7fb5c854f000-7fb5c8551000 r-xp 00000000 08:01 1203104                    /lib/libnss_mdns4_minimal.so.2
7fb5c8551000-7fb5c8750000 ---p 00002000 08:01 1203104                    /lib/libnss_mdns4_minimal.so.2
7fb5c8750000-7fb5c8751000 rw-p 00001000 08:01 1203104                    /lib/libnss_mdns4_minimal.so.2
7fb5c8751000-7fb5c875a000 r-xp 00000000 08:01 1202229                    /lib/libnss_nis-2.7.so
7fb5c875a000-7fb5c895a000 ---p 00009000 08:01 1202229                    /lib/libnss_nis-2.7.so
7fb5c895a000-7fb5c895c000 rw-p 00009000 08:01 1202229                    /lib/libnss_nis-2.7.so
7fb5c895c000-7fb5c8971000 r-xp 00000000 08:01 1202206                    /lib/libnsl-2.7.so
7fb5c8971000-7fb5c8b70000 ---p 00015000 08:01 1202206                    /lib/libnsl-2.7.so
7fb5c8b70000-7fb5c8b72000 rw-p 00014000 08:01 1202206                    /lib/libnsl-2.7.so
7fb5c8b72000-7fb5c8b74000 rw-p 7fb5c8b72000 00:00 0
7fb5c8b74000-7fb5c8b7b000 r-xp 00000000 08:01 1202207                    /lib/libnss_compat-2.7.so
7fb5c8b7b000-7fb5c8d7a000 ---p 00007000 08:01 1202207                    /lib/libnss_compat-2.7.so
7fb5c8d7a000-7fb5c8d7c000 rw-p 00006000 08:01 1202207                    /lib/libnss_compat-2.7.so
7fb5c8d7c000-7fb5c8d86000 r-xp 00000000 08:01 1202233                    /lib/libnss_files-2.7.so
7fb5c8d86000-7fb5c8f86000 ---p 0000a000 08:01 1202233                    /lib/libnss_files-2.7.so
7fb5c8f86000-7fb5c8f88000 rw-p 0000a000 08:01 1202233                    /lib/libnss_files-2.7.so
7fb5c8f88000-7fb5c8f8a000 r-xp 00000000 08:01 1202208                    /lib/libdl-2.7.so
7fb5c8f8a000-7fb5c918a000 ---p 00002000 08:01 1202208                    /lib/libdl-2.7.so
7fb5c918a000-7fb5c918c000 rw-p 00002000 08:01 1202208                    /lib/libdl-2.7.so
7fb5c918c000-7fb5c92d6000 r-xp 00000000 08:01 1202225                    /lib/libc-2.7.so
7fb5c92d6000-7fb5c94d5000 ---p 0014a000 08:01 1202225                    /lib/libc-2.7.so
7fb5c94d5000-7fb5c94d8000 r--p 00149000 08:01 1202225                    /lib/libc-2.7.so
7fb5c94d8000-7fb5c94da000 rw-p 0014c000 08:01 1202225                    /lib/libc-2.7.so
7fb5c94da000-7fb5c94df000 rw-p 7fb5c94da000 00:00 0
7fb5c94df000-7fb5c951a000 r-xp 00000000 08:01 1201917                    /lib/libncurses.so.5.7
7fb5c951a000-7fb5c9719000 ---p 0003b000 08:01 1201917                    /lib/libncurses.so.5.7
7fb5c9719000-7fb5c971e000 rw-p 0003a000 08:01 1201917                    /lib/libncurses.so.5.7
7fb5c971e000-7fb5c9756000 r-xp 00000000 08:01 1202010                    /lib/libreadline.so.5.2
7fb5c9756000-7fb5c9955000 ---p 00038000 08:01 1202010                    /lib/libreadline.so.5.2
7fb5c9955000-7fb5c995d000 rw-p 00037000 08:01 1202010                    /lib/libreadline.so.5.2
7fb5c995d000-7fb5c995e000 rw-p 7fb5c995d000 00:00 0
7fb5c995e000-7fb5c997a000 r-xp 00000000 08:01 1202232                    /lib/ld-2.7.so
7fb5c9a14000-7fb5c9b4e000 r--p 00000000 08:01 1684842                    /usr/lib/locale/locale-archive
7fb5c9b4e000-7fb5c9b51000 rw-p 7fb5c9b4e000 00:00 0
7fb5c9b6b000-7fb5c9b72000 r--s 00000000 08:01 883020                     /usr/lib/gconv/gconv-modules.cache
7fb5c9b72000-7fb5c9b79000 rw-p 7fb5c9b72000 00:00 0
7fb5c9b79000-7fb5c9b7b000 rw-p 0001b000 08:01 1202232                    /lib/ld-2.7.so
7ffffffe9000-7fffffffe000 rw-p 7ffffffea000 00:00 0                      [stack]
7fffffffe000-7ffffffff000 r-xp 7fffffffe000 00:00 0                      [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
Aborted

Funny - isn’t it?

More interesting is that Debian has fix it for the i386-architecture ( http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=508378 ), but not for AMD64. I think i shall tell.