Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 203729 - net-ftp/lftp-3.6.1 du command causes segfault
Summary: net-ftp/lftp-3.6.1 du command causes segfault
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Daniel Black (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-12-30 00:35 UTC by Michał Kiedrowicz
Modified: 2008-01-21 20:19 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
patch from Alexander V. Lukyanov (diff,552 bytes, patch)
2008-01-03 09:41 UTC, Michał Kiedrowicz
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Kiedrowicz 2007-12-30 00:35:38 UTC
du command causes lftp segfault when it tries to print size of file/dir with long pathname.

Reproducible: Always

Steps to Reproduce:
1. create file (not empty) with long name, say bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
2. share it on ftp server
3. try 'du bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb' in lftp
4. lftp segfaults (checked on remote serwer and localhost)
5. it also happens if path is very long e.g. bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/bbbbbbbbbb

Actual Results:  
gdb bt full

#0  0x000000327e476c10 in strlen () from /lib/libc.so.6
No symbol table info available.
#1  0x000000327e445e10 in vfprintf () from /lib/libc.so.6
No symbol table info available.
#2  0x000000327e4697fa in vsnprintf () from /lib/libc.so.6
No symbol table info available.
#3  0x00002b9562760c17 in Buffer::vFormat (this=0x6139d0, f=0x2b956251ebc8 "%s\t%s\n", v=0x7fff485e1eb0)
    at buffer.cc:158
	tmp = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fff485e1f90, reg_save_area = 0x7fff485e1ed0}}
	res = <value optimized out>
	size = 1649535944
#4  0x00002b9562760cdc in Buffer::Format (this=0x9, f=0x2b956251ebc8 "%s\t%s\n") at buffer.cc:147
	v = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fff485e1f90, reg_save_area = 0x7fff485e1ed0}}
#5  0x00002b9562514bc0 in FinderJob_Du::print_size (this=0x6694e0, n_blocks=<value optimized out>, 
    string=0x687d90 'b' <repeats 64 times>) at FindJobDu.cc:177
	buffer = "\n\000\000\000\000\000\000\0008zf\000\000\000\000\000\001\000\000\000\000\000\000\000\024\000\000\000\000\000\000\000=É\r\215\000\000\000\000L\216\000~2\000\000\000\002\000\000\000\000\000\000\000\234SNb\225+\000\000Zìm\020\000\000\000\000L\216\000~=\000\000\000$74\002\000\000\000\000\000 ^Hÿ\177\000\000h!^Hÿ\177\000\000ø[Nb\225+", '\0' <repeats 18 times>, "ØPLb\225+\000\000rþNb\225+\000\000p³Nb\225+\000\000H\201Nb\225+\000\000\000\000\000\000\001\000\000\000\216\001\000\000\001\000\000\0008tsb\225+\000\0000TLb\225+\000\000 !^Hÿ\177\000\000P!^Hÿ\177\000\000"...
#6  0x00002b9562514d1b in FinderJob_Du::ProcessFile (this=0x6694e0, d=<value optimized out>, fi=0x688170)
    at FindJobDu.cc:141
	add = <value optimized out>
#7  0x00002b95625133c1 in FinderJob::Do (this=0x6694e0) at FindJob.cc:144
	m = 1
	pres = <value optimized out>
	j = <value optimized out>
#8  0x00002b956274c46e in SMTask::Schedule () at SMTask.cc:226
	scan = (SMTask *) 0x6694e0
	timer_timeout = <value optimized out>
	res = 0
#9  0x00002b95624fc9b2 in Job::WaitDone (this=0x6136d0) at Job.cc:522
No locals.
#10 0x0000000000405be8 in main (argc=1, argv=0x7fff485e2418) at lftp.cc:466
	home = <value optimized out>
	exit_code = <value optimized out>
#11 0x000000327e41e1f4 in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#12 0x0000000000405239 in _start ()
No symbol table info available.



Portage 2.1.4_rc9 (default-linux/amd64/2007.0, gcc-4.2.2, glibc-2.7-r1, 2.6.23-tuxonice-r4 x86_64)
=================================================================
System uname: 2.6.23-tuxonice-r4 x86_64 Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz
Timestamp of tree: Wed, 12 Dec 2007 17:16:01 +0000
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.1.3
dev-lang/python:     2.5.1-r4
sys-apps/baselayout: 1.12.10-r5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r2
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php4/ext-active/ /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php4/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php4/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=nocona -O2 -pipe -ggdb"
DISTDIR="/usr/portage.distfiles"
FEATURES="distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms splitdebug strict test unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://gentoo.prz.rzeszow.pl ftp://gentoo.po.opole.pl ftp://pandemonium.tiscali.de/pub/gentoo/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/"
LANG="pl_PL.UTF-8"
LC_ALL="pl_PL.UTF-8"
LINGUAS="pl"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise /usr/portage/local/layman/custom-kernels /usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X aac alsa amd64 apache2 bash-completion berkdb bitmap-fonts cairo cdr cli cracklib crypt cups dbus dri dvd dvdr dvdread encode flac gdbm gif gnutls gpm gstreamer gtk hal iconv java jpeg kdeenablefinal kdehiddenvisibility lcms logrotate mad midi mmx mp3 mpeg mudflap musepack mysql ncurses nls nptl nptlonly nsplugin ogg opengl openmp oss pam pcre pdf perl php png postgres python quicktime readline sasl sdl session slang spell spl sse sse2 ssl svg tcpd test threads truetype truetype-fonts type1-fonts unicode vim-syntax vorbis xcomposite xml xorg xvid zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="pl" USERLAND="GNU" VIDEO_CARDS="i810 i830 i915 vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Michał Kiedrowicz 2008-01-03 09:41:22 UTC
Created attachment 139942 [details, diff]
patch from Alexander V. Lukyanov
Comment 2 Raúl Porcel (RETIRED) gentoo-dev 2008-01-21 20:19:01 UTC
Fixed in -r1, thanks