** Description changed:

+ [Impact]
+ 
+  * Lftp crashes on exit after transferring files. This affects duplicity
+ that uses lftp as a backend.
+ 
+ [Test Case]
+  * Run:
+ 
+  valgrind lftp -e 'get gnu/glibc/nss_db-2.2.tar.gz;exit' ftp.gnu.org
+ 
+  * The fixed package should not perform an invalid read.
+ 
+ [Where problems could occur]
+ 
+  * The change affects how the program cleans up internal structures thus
+ it could crash in different ways due to regressions introduced by the
+ fix.
+ 
+ [Original Bug Text]
+ 
  We are using duplicity 0.7.17 and Ubuntu 18.04 LTS.
  
  After upgrading these packages in Ubuntu:
  
  Upgrade: libc-bin:amd64 (2.27-3ubuntu1.2, 2.27-3ubuntu1.3)
  Upgrade: locales:amd64 (2.27-3ubuntu1.2, 2.27-3ubuntu1.3)
  Upgrade: multiarch-support:amd64 (2.27-3ubuntu1.2, 2.27-3ubuntu1.3)
- Upgrade: libc6-dev:amd64 (2.27-3ubuntu1.2, 2.27-3ubuntu1.3), 
+ Upgrade: libc6-dev:amd64 (2.27-3ubuntu1.2, 2.27-3ubuntu1.3),
  Upgrade: libc6:amd64 (2.27-3ubuntu1.2, 2.27-3ubuntu1.3)
  Upgrade: libc-dev-bin:amd64 (2.27-3ubuntu1.2, 2.27-3ubuntu1.3)
  
  the duplicity/lftp support stopped working. It worked for years just
  fine before that.
  
  Basic error message is:
  
  Giving up after 5 attempts. BackendException: Error running 'lftp -c
  "source /tmp/duplicity-gVCsqa-tempdir/mkstemp-serY3Q-1; ( cd etc_backup/
  && ls ) || ( mkdir -p etc_backup/ && cd etc_backup/ && ls )"': returned
  -11, with output:
  
  Error/debug output:
  
  Using archive dir: /root/.duplicity/etc_daily
  Using backup name: etc_daily
  GPG binary is gpg, version 2.2.4
  Import of duplicity.backends.acdclibackend Succeeded
  Import of duplicity.backends.azurebackend Succeeded
  Import of duplicity.backends.b2backend Succeeded
  Import of duplicity.backends.botobackend Succeeded
  Import of duplicity.backends.cfbackend Succeeded
  Import of duplicity.backends.dpbxbackend Failed: No module named dropbox
  Import of duplicity.backends.gdocsbackend Succeeded
  Import of duplicity.backends.giobackend Succeeded
  Import of duplicity.backends.hsibackend Succeeded
  Import of duplicity.backends.hubicbackend Succeeded
  Import of duplicity.backends.imapbackend Succeeded
  Import of duplicity.backends.lftpbackend Succeeded
  Import of duplicity.backends.localbackend Succeeded
  Import of duplicity.backends.mediafirebackend Succeeded
  Import of duplicity.backends.megabackend Succeeded
  Import of duplicity.backends.multibackend Succeeded
  Import of duplicity.backends.ncftpbackend Succeeded
  Import of duplicity.backends.onedrivebackend Succeeded
  Import of duplicity.backends.par2backend Succeeded
  Import of duplicity.backends.pydrivebackend Succeeded
  Import of duplicity.backends.rsyncbackend Succeeded
  Import of duplicity.backends.ssh_paramiko_backend Succeeded
  Import of duplicity.backends.ssh_pexpect_backend Succeeded
  Import of duplicity.backends.swiftbackend Succeeded
  Import of duplicity.backends.sxbackend Succeeded
  Import of duplicity.backends.tahoebackend Succeeded
  Import of duplicity.backends.webdavbackend Succeeded
  LFTP version is 4.8.1
  Using temporary directory /tmp/duplicity-_Mgype-tempdir
  Registering (mkstemp) temporary file 
/tmp/duplicity-_Mgype-tempdir/mkstemp-55iPLR-1
  SETTINGS:
  set ssl:verify-certificate true
  set ftp:ssl-allow false
  set http:use-propfind true
  set net:timeout 30
  set net:max-retries 5
  set ftp:passive-mode on
  debug
  open -u '<username_removed>,<password_removed>' 
ftp://hostname.your-storagebox.de
  
  Main action: remove-all-but-n-full
  Acquiring lockfile /root/.duplicity/etc_daily/lockfile
  
================================================================================
  duplicity 0.7.17 (February 26, 2018)
  Args: /usr/bin/duplicity remove-all-but-n-full 7 -v9 
--archive-dir=/root/.duplicity --force --name etc_daily --no-encryption 
ftp://<username_removed>@<hostname_removed>.your-storagebox.de/etc_full
  Linux <hostname_removed> 4.15.0-122-generic #124-Ubuntu SMP Thu Oct 15 
13:03:05 UTC 2020 x86_64 x86_64
  /usr/bin/python2 2.7.17 (default, Sep 30 2020, 13:38:04)
  [GCC 7.5.0]
  
================================================================================
  CMD: lftp -c "source /tmp/duplicity-_Mgype-tempdir/mkstemp-55iPLR-1; ( cd 
etc_full/ && ls ) || ( mkdir -p etc_full/ && cd etc_full/ && ls )"
  Reading results of 'lftp -c "source 
/tmp/duplicity-_Mgype-tempdir/mkstemp-55iPLR-1; ( cd etc_full/ && ls ) || ( 
mkdir -p etc_full/ && cd etc_full/ && ls )"'
  Backtrace of previous error: Traceback (innermost last):
-   File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 369, in 
inner_retry
-     return fn(self, *args)
-   File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 578, in 
list
-     return [tobytes(x) for x in self.backend._list()]
-   File "/usr/lib/python2.7/dist-packages/duplicity/backends/lftpbackend.py", 
line 181, in _list
-     _, l, e = self.subprocess_popen(commandline)
-   File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 499, in 
subprocess_popen
-     (logstr, result, stdout + '
+   File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 369, in 
inner_retry
+     return fn(self, *args)
+   File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 578, in 
list
+     return [tobytes(x) for x in self.backend._list()]
+   File "/usr/lib/python2.7/dist-packages/duplicity/backends/lftpbackend.py", 
line 181, in _list
+     _, l, e = self.subprocess_popen(commandline)
+   File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 499, in 
subprocess_popen
+     (logstr, result, stdout + '
  ' + stderr))
-  BackendException: Error running 'lftp -c "source 
/tmp/duplicity-_Mgype-tempdir/mkstemp-55iPLR-1; ( cd etc_full/ && ls ) || ( 
mkdir -p etc_full/ && cd etc_full/ && ls )"': returned -11, with output:
+  BackendException: Error running 'lftp -c "source 
/tmp/duplicity-_Mgype-tempdir/mkstemp-55iPLR-1; ( cd etc_full/ && ls ) || ( 
mkdir -p etc_full/ && cd etc_full/ && ls )"': returned -11, with output:
  -rw-r--r--   1 u234538-sub2 u234538    885032 Oct 28 00:00 
duplicity-full-signatures.20201028T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    885113 Oct 29 00:00 
duplicity-full-signatures.20201029T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886172 Oct 30 00:00 
duplicity-full-signatures.20201030T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886175 Oct 31 00:00 
duplicity-full-signatures.20201031T000002Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886163 Nov  1 00:00 
duplicity-full-signatures.20201101T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886173 Nov  2 00:00 
duplicity-full-signatures.20201102T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886625 Nov  3 00:00 
duplicity-full-signatures.20201103T000002Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       481 Oct 28 00:00 
duplicity-full.20201028T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64187446 Oct 28 00:00 
duplicity-full.20201028T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       480 Oct 29 00:00 
duplicity-full.20201029T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64189301 Oct 29 00:00 
duplicity-full.20201029T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       480 Oct 30 00:00 
duplicity-full.20201030T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64198883 Oct 30 00:00 
duplicity-full.20201030T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       479 Oct 31 00:00 
duplicity-full.20201031T000002Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64198893 Oct 31 00:00 
duplicity-full.20201031T000002Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       482 Nov  1 00:00 
duplicity-full.20201101T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64198890 Nov  1 00:00 
duplicity-full.20201101T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       479 Nov  2 00:00 
duplicity-full.20201102T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64198894 Nov  2 00:00 
duplicity-full.20201102T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       481 Nov  3 00:00 
duplicity-full.20201103T000002Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64203538 Nov  3 00:00 
duplicity-full.20201103T000002Z.vol1.difftar.gpg
  
  ---- Resolving host address...
  ---- 2 addresses found: 202:4f8:b23:3000::16, 146.202.112.16
  ---- Connecting to <hostname_removed> (202:4f8:b23:3000::16) port 21
  <--- 220 ProFTPD Server (Backup) [202:4f8:b23:3000::16]
  ---> FEAT
  <--- 211-Features:
  <---  AUTH TLS
  <---  CCC
  <---  CLNT
  <---  EPRT
  <---  EPSV
  <---  HOST
  <---  LANG 
ko-KR.UTF-8;ko-KR;es-ES.UTF-8;es-ES;bg-BG.UTF-8;bg-BG;it-IT.UTF-8;it-IT;zh-CN.UTF-8;zh-CN;ja-JP.UTF-8;ja-JP;zh-TW.UTF-8;zh-TW;ru-RU.UTF-8;ru-RU;fr-FR.UTF-8;fr-FR;en-US.UTF-8;en-US*
  <---  MDTM
  <---  MFF modify;UNIX.group;UNIX.mode;
  <---  MFMT
  <---  MLST 
modify*;perm*;size*;type*;unique*;UNIX.group*;UNIX.groupname*;UNIX.mode*;UNIX.owner*;UNIX.ownername*;
  <---  PBSZ
  <---  PROT
  <---  REST STREAM
  <---  SIZE
  <---  SSCN
  <---  TVFS
  <---  UTF8
  <--- 211 End
  ---> CLNT lftp/4.8.1
  <--- 200 OK
  ---> LANG
  <--- 200 Using default language en_US
  ---> OPTS UTF8 ON
  <--- 200 UTF8 set to on
  ---> HOST <hostname_removed>
  <--- 504 <hostname_removed>: Unknown hostname provided
  ---> OPTS MLST modify;perm;size;type;UNIX.group;UNIX.mode;UNIX.owner
  <--- 200 MLST OPTS modify;perm;size;type;UNIX.group;UNIX.mode;
  ---> USER <username_removed>
  <--- 331 Password required for <username_removed>
  ---> PASS <password_removed>
  <--- 230 User <username_removed> logged in
  ---> PWD
  <--- 257 "/" is the current directory
  ---- CWD path to be sent is `/etc_full'
  ---> CWD /etc_full
  <--- 250 CWD command successful
  ---> EPSV
  <--- 229 Entering Extended Passive Mode (|||54612|)
  ---- Connecting data socket to (202:4f8:b23:3000::16) port 54612
  ---- Data connection established
  ---> LIST
  <--- 150 Opening ASCII mode data connection for file list
  ---- Got EOF on data connection
  ---- Closing data socket
  <--- 226 Transfer complete
  ---> QUIT
  <--- 221 Goodbye.
  ---- Closing control socket
  
- 
  Attempt 1 failed. BackendException: Error running 'lftp -c "source 
/tmp/duplicity-_Mgype-tempdir/mkstemp-55iPLR-1; ( cd etc_full/ && ls ) || ( 
mkdir -p etc_full/ && cd etc_full/ && ls )"': returned -11, with output:
  -rw-r--r--   1 u234538-sub2 u234538    885032 Oct 28 00:00 
duplicity-full-signatures.20201028T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    885113 Oct 29 00:00 
duplicity-full-signatures.20201029T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886172 Oct 30 00:00 
duplicity-full-signatures.20201030T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886175 Oct 31 00:00 
duplicity-full-signatures.20201031T000002Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886163 Nov  1 00:00 
duplicity-full-signatures.20201101T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886173 Nov  2 00:00 
duplicity-full-signatures.20201102T000001Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538    886625 Nov  3 00:00 
duplicity-full-signatures.20201103T000002Z.sigtar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       481 Oct 28 00:00 
duplicity-full.20201028T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64187446 Oct 28 00:00 
duplicity-full.20201028T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       480 Oct 29 00:00 
duplicity-full.20201029T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64189301 Oct 29 00:00 
duplicity-full.20201029T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       480 Oct 30 00:00 
duplicity-full.20201030T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64198883 Oct 30 00:00 
duplicity-full.20201030T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       479 Oct 31 00:00 
duplicity-full.20201031T000002Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64198893 Oct 31 00:00 
duplicity-full.20201031T000002Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       482 Nov  1 00:00 
duplicity-full.20201101T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64198890 Nov  1 00:00 
duplicity-full.20201101T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       479 Nov  2 00:00 
duplicity-full.20201102T000001Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64198894 Nov  2 00:00 
duplicity-full.20201102T000001Z.vol1.difftar.gpg
  -rw-r--r--   1 u234538-sub2 u234538       481 Nov  3 00:00 
duplicity-full.20201103T000002Z.manifest.gpg
  -rw-r--r--   1 u234538-sub2 u234538  64203538 Nov  3 00:00 
duplicity-full.20201103T000002Z.vol1.difftar.gpg
  
- 
  Using
  
- Duplicity 0.7.17 
+ Duplicity 0.7.17
  Python 2.7.17
  Ubuntu 18.04 LTS.

-- 
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:
  duplicity's 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
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to