Package: libarchive-tools
Version: 3.4.3-2+b1
Severity: minor
File: /usr/bin/bsdtar

Sometimes, apparently when dictionary size is too big, bsdtar says it doesn't recognize the archive format of lzipped tar:

$ dd if=/dev/zero of=zero bs=1048576 count=129 status=none
$ bsdtar cf zero.tar zero
$ lzip -s 144M < zero.tar > zero.tar.lz
$ bsdtar tf zero.tar.lz
bsdtar: Error opening archive: Unrecognized archive format

But it clearly does support lzip-compressed archives:

$ lzip -s 128M < zero.tar > zero.tar.lz
$ bsdtar tf zero.tar.lz
zero
$ Looks like libarchive supports only a subset of lzip with dictionary size not exceeding 128MiB and due to the way the automatic selection works it can't tell what format it is if it cannot handle it. But lzip allows dictionary size to go up to 512MiB and from the user's point of view, lzip with a small dictionary and lzip with a big dictionary aren't different formats.

I'm not sure if the partial support is intentional in the first place, but even if it is, the recognition and error message could be improved. I would like to note that, e.g., RAR support is also partial, but it generally recognizes RAR files as such and gives more adequate error messages about unsupported features.

-k

-- System Information:
Debian Release: bookworm/sid
  APT prefers testing
  APT policy: (900, 'testing'), (700, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.10.0-7-amd64 (SMP w/4 CPU threads)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)

Versions of packages libarchive-tools depends on:
ii  libarchive13  3.4.3-2+b1
ii  libc6         2.33-1

libarchive-tools recommends no packages.

libarchive-tools suggests no packages.

-- no debconf information

Reply via email to