diff options
Diffstat (limited to 'zlibcat')
-rwxr-xr-x | zlibcat | 24 |
1 files changed, 24 insertions, 0 deletions
@@ -0,0 +1,24 @@ +#!/usr/bin/perl -w + +use strict; +use Compress::Zlib; + + +for my $file (@ARGV) { + my $x = inflateInit() or die "Cannot create a inflation stream\n" ; + + my $input = ''; + + my ($output, $status); + open(FH, "<$file") or die ("Cannot open $file: $!\n"); + while (read(FH, $input, 4096)) + { + ($output, $status) = $x->inflate(\$input); + + print $output if $status == Z_OK or $status == Z_STREAM_END ; + + last if $status != Z_OK ; + } + + die "inflation failed\n" unless $status == Z_STREAM_END ; +}; |