Simpler reproducer:
valgrind lftp -e 'get gnu/glibc/nss_db-2.2.tar.gz;exit' ftp.gnu.org
==9023== Memcheck, a memory error detector
==9023== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==9023== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
==9023== Command: lftp -e get\ gnu/glibc/nss_db-2.2.tar.gz;exit ftp.gnu.org
==9023==
==9024== .gnu.org' [Resolving host address...]
==9024== HEAP SUMMARY:
==9024== in use at exit: 209,311 bytes in 1,703 blocks
==9024== total heap usage: 4,136 allocs, 2,433 frees, 579,083 bytes allocated
==9024==
==9024== LEAK SUMMARY:
==9024== definitely lost: 0 bytes in 0 blocks
==9024== indirectly lost: 0 bytes in 0 blocks
==9024== possibly lost: 3,109 bytes in 41 blocks
==9024== still reachable: 206,202 bytes in 1,662 blocks
==9024== suppressed: 0 bytes in 0 blocks
==9024== Rerun with --leak-check=full to see details of leaked memory
==9024==
==9024== For counts of detected and suppressed errors, rerun with: -v
==9024== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
get: gnu/glibc/nss_db-2.2.tar.gz: /home/ubuntu/nss_db-2.2.tar.gz: file already
exists and xfer:clobber is unset
==9023== Invalid read of size 4
==9023== at 0x2184B0: AddXfer (RateLimit.cc:30)
==9023== by 0x2184B0: RateLimit::~RateLimit() (RateLimit.cc:63)
==9023== by 0x218B18: dispose (xmap.h:107)
==9023== by 0x218B18: xmap_p<RateLimit>::~xmap_p() (xmap.h:112)
==9023== by 0x6224160: __run_exit_handlers (exit.c:108)
==9023== by 0x6224259: exit (exit.c:139)
==9023== by 0x6202BFD: (below main) (libc-start.c:344)
==9023== Address 0x8072550 is 16 bytes inside a block of size 88 free'd
==9023== at 0x4C3323B: operator delete(void*) (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==9023== by 0x218B25: dispose (xmap.h:107)
==9023== by 0x218B25: xmap_p<RateLimit>::~xmap_p() (xmap.h:112)
==9023== by 0x6224160: __run_exit_handlers (exit.c:108)
==9023== by 0x6224259: exit (exit.c:139)
==9023== by 0x6202BFD: (below main) (libc-start.c:344)
==9023== Block was alloc'd at
==9023== at 0x4C3217F: operator new(unsigned long) (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==9023== by 0x218A09: RateLimit::init(RateLimit::level_e, char const*)
(RateLimit.cc:55)
==9023== by 0x218A2C: RateLimit (RateLimit.h:52)
==9023== by 0x218A2C: RateLimit::init(RateLimit::level_e, char const*)
(RateLimit.cc:55)
==9023== by 0x1ED1E2: Ftp::Do() (ftpclass.cc:2337)
==9023== by 0x1A97C4: SMTask::ScheduleThis() (SMTask.cc:209)
==9023== by 0x1A99D0: SMTask::Schedule() (SMTask.cc:248)
==9023== by 0x16614C: Job::WaitDone() (Job.cc:557)
==9023== by 0x15CBE3: main (lftp.cc:590)
==9023==
==9023== Invalid read of size 8
==9023== at 0x2184B5: AddXfer (RateLimit.cc:31)
==9023== by 0x2184B5: RateLimit::~RateLimit() (RateLimit.cc:63)
==9023== by 0x218B18: dispose (xmap.h:107)
==9023== by 0x218B18: xmap_p<RateLimit>::~xmap_p() (xmap.h:112)
==9023== by 0x6224160: __run_exit_handlers (exit.c:108)
==9023== by 0x6224259: exit (exit.c:139)
==9023== by 0x6202BFD: (below main) (libc-start.c:344)
==9023== Address 0x8072548 is 8 bytes inside a block of size 88 free'd
==9023== at 0x4C3323B: operator delete(void*) (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==9023== by 0x218B25: dispose (xmap.h:107)
==9023== by 0x218B25: xmap_p<RateLimit>::~xmap_p() (xmap.h:112)
==9023== by 0x6224160: __run_exit_handlers (exit.c:108)
==9023== by 0x6224259: exit (exit.c:139)
==9023== by 0x6202BFD: (below main) (libc-start.c:344)
==9023== Block was alloc'd at
==9023== at 0x4C3217F: operator new(unsigned long) (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==9023== by 0x218A09: RateLimit::init(RateLimit::level_e, char const*)
(RateLimit.cc:55)
==9023== by 0x218A2C: RateLimit (RateLimit.h:52)
==9023== by 0x218A2C: RateLimit::init(RateLimit::level_e, char const*)
(RateLimit.cc:55)
==9023== by 0x1ED1E2: Ftp::Do() (ftpclass.cc:2337)
==9023== by 0x1A97C4: SMTask::ScheduleThis() (SMTask.cc:209)
==9023== by 0x1A99D0: SMTask::Schedule() (SMTask.cc:248)
==9023== by 0x16614C: Job::WaitDone() (Job.cc:557)
==9023== by 0x15CBE3: main (lftp.cc:590)
==9023==
==9023==
==9023== HEAP SUMMARY:
==9023== in use at exit: 41,827 bytes in 845 blocks
==9023== total heap usage: 4,439 allocs, 3,594 frees, 1,067,188 bytes
allocated
==9023==
==9023== LEAK SUMMARY:
==9023== definitely lost: 144 bytes in 9 blocks
==9023== indirectly lost: 13 bytes in 1 blocks
==9023== possibly lost: 3,026 bytes in 39 blocks
==9023== still reachable: 38,644 bytes in 796 blocks
==9023== suppressed: 0 bytes in 0 blocks
==9023== Rerun with --leak-check=full to see details of leaked memory
==9023==
==9023== For counts of detected and suppressed errors, rerun with: -v
==9023== ERROR SUMMARY: 3 errors from 2 contexts (suppressed: 0 from 0)
Seems like one of the various core dumps on exit fixed in lftp later releases:
Version 4.8.4 - 2018-08-01
* fixed a security vulnerability with "file:" file names.
* fixed mirror --flat.
* http: extract links from <source> tags.
* fixed upload of zero-length files over ftps.
* fixed assert on "mput -d".
* fixed a core dump.
* avoid multiple backup files of DHT cache.
* translations updated (uk, zh_CN).
Version 4.8.3 - 2017-10-09
* fixed compilation with older C++ compilers.
* fixed 2 other core dumps on exit (incorrect order of deallocation).
Version 4.8.2 - 2017-09-25
* fixed compilation on FreeBSD and OS X.
* fixed a memory leak.
* fixed a core dump on exit.
I'm checking what could be backported for lftp.
** Changed in: glibc (Ubuntu)
Status: Confirmed => Invalid
** Changed in: glibc (Ubuntu Bionic)
Status: Confirmed => Invalid
** Package changed: duplicity (Ubuntu) => lftp (Ubuntu)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1902832
Title:
lftp support broken - exits with error_code -11 on Bionic
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1902832/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs