Add the original source packages to maemo, source lenny
[dh-make-perl] / dev / i386 / libarchive-zip-perl / libarchive-zip-perl-1.18 / bin / crc32
diff --git a/dev/i386/libarchive-zip-perl/libarchive-zip-perl-1.18/bin/crc32 b/dev/i386/libarchive-zip-perl/libarchive-zip-perl-1.18/bin/crc32
new file mode 100644 (file)
index 0000000..1d9d051
--- /dev/null
@@ -0,0 +1,28 @@
+#! /usr/bin/perl -w
+# computes and prints to stdout the CRC-32 values of the given files
+use lib qw( blib/lib lib );
+use Archive::Zip;
+use FileHandle;
+
+my $totalFiles = scalar(@ARGV);
+foreach my $file (@ARGV) {
+    if ( -d $file ) {
+        warn "$0: ${file}: Is a directory\n";
+        next;
+    }
+    my $fh = FileHandle->new();
+    if ( !$fh->open( $file, 'r' ) ) {
+        warn "$0: $!\n";
+        next;
+    }
+    binmode($fh);
+    my $buffer;
+    my $bytesRead;
+    my $crc = 0;
+    while ( $bytesRead = $fh->read( $buffer, 32768 ) ) {
+        $crc = Archive::Zip::computeCRC32( $buffer, $crc );
+    }
+    printf( "%08x", $crc );
+    print("\t$file") if ( $totalFiles > 1 );
+    print("\n");
+}