summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/perl/cpan/Compress-Raw-Zlib/examples/filtinf
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/usr.bin/perl/cpan/Compress-Raw-Zlib/examples/filtinf')
-rw-r--r--gnu/usr.bin/perl/cpan/Compress-Raw-Zlib/examples/filtinf29
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/usr.bin/perl/cpan/Compress-Raw-Zlib/examples/filtinf b/gnu/usr.bin/perl/cpan/Compress-Raw-Zlib/examples/filtinf
new file mode 100644
index 00000000000..0662c142bcf
--- /dev/null
+++ b/gnu/usr.bin/perl/cpan/Compress-Raw-Zlib/examples/filtinf
@@ -0,0 +1,29 @@
+#!/usr/local/bin/perl
+
+use Compress::Raw::Zlib ;
+
+use strict ;
+use warnings ;
+
+binmode STDIN;
+binmode STDOUT;
+
+my $x = new Compress::Raw::Zlib::Inflate
+ or die "Cannot create a inflation stream\n" ;
+
+my $input = '' ;
+my $output = '' ;
+my $status ;
+
+while (read(STDIN, $input, 4096))
+{
+ $status = $x->inflate($input, $output) ;
+
+ 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 ;