Package: pigz
Version: 2.2.4-1
Severity: normal

Consider the following:

$ echo foo > foo
$ echo bar > bar
$ pigz -z foo
$ pigz -z bar
$ cat foo.zz bar.zz > foobar.zz
$ pigz -dc <foobar.zz
foo
bar
$

Note that decompressing the concatenation of two compressed files in
ZLIB format (-z option) gives the concatenation of the uncompressed
inputs.

The same thing works for GZIP format (without the -z option); this is
expected, as RFC 1952 says:

"A gzip file consists of a series of "members" (compressed data sets).
The format of each member is specified in the following section. The
members simply appear one after another in the file, with no
additional information before, between, or after them."
<http://tools.ietf.org/html/rfc1952#page-5>

However, for the ZLIB format, the relevant section of RFC 1950 has
"A zlib stream has the following structure:
[diagram omitted]
Any data which may appear after ADLER32 are not part of the zlib
stream."
<http://tools.ietf.org/html/rfc1950#page-4>

This suggests to me that the correct output for the last command above
should be:

$ pigz -dc <foobar.zz
foo
$

i.e. that pigz should ignore any trailing data after the first
ZLIB-compressed chunk.



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to