Gene Selkov, Jr.
and 1 contributors

NAME

Finnigan::OLE2Header -- a decoder for the Microsoft OLE2 header structure

SYNOPSIS

  use Finnigan;
  my $header = Finnigan::OLE2Header->decode(\*INPUT);
  say "$header";

DESCRIPTION

This is an auxiliary decoder used by Finnigan::OLE2File; it is of no use on its own.

The OLE2 header is the first the first object to be decoded on the way to parsing the embedded filesystem. It contains the key parameters that determine the shape of the filesystem.

METHODS

decode($stream)

The constructor method

bb_count

Get the number of blocks in Big Block Depot (number of SECTs in the FAT chain)

bb_log

Get the log2-size of big blocks

bb_start

Get the first block in Big Block Depot (first SECT in the Directory chain)

dif_count

Get the number of SECTs in the DIF chain (should be 0 if the file is smaller than 7Mb)

dif_start

Get the first SECT in the DIF chain (should be 0xfffffffe if the file is smaller than 7Mb)

ministream_max

Get the maximum size of a ministream (4096)

sb_count

Get the number of blocks in Small Block Depot (number of SECTs in the mini-FAT chain

sb_log

Get the log2-size of small blocks

sb_start

Get the first block in Small Block Depot (first SECT in the mini-FAT chain)

stringify

Makes a short text summary consisting of container format version and block use

SEE ALSO

Finnigan::OLE2File

Windows Compound Binary File Format Specification

AUTHOR

Gene Selkov, <selkovjr@gmail.com>

COPYRIGHT AND LICENSE

Copyright (C) 2010 by Gene Selkov

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.