Crypt::OpenPGP::Compressed.3pm

Langue: en

Version: 2001-08-10 (mandriva - 01/05/08)

Section: 3 (Bibliothèques de fonctions)

NAME

Crypt::OpenPGP::Compressed - Compressed data packets

SYNOPSIS

     use Crypt::OpenPGP::Compressed;
 
 
     my $cdata = Crypt::OpenPGP::Compressed->new( Data => $data );
     my $serialized = $cdata->save;
 
 
     my $cdata = Crypt::OpenPGP::Compressed->parse($buffer);
     my $data = $cdata->decompress;
 
 

DESCRIPTION

Crypt::OpenPGP::Compressed implements compressed data packets, providing both compression and decompression functionality, for all supported compression algorithms ("Zlib" and "ZIP"). This class uses Compress::Zlib for all compression/decompression needs for both algorithms: "ZIP" is simply "Zlib" with a different setting for the WindowBits parameter.

Decompressing a compressed data packet should always yield a stream of valid PGP packets (which you can then parse using Crypt::OpenPGP::PacketFactory). Similarly, when compressing a packet the input data should be a stream of packets.

USAGE


Crypt::OpenPGP::Compressed->new( %arg )


Crypt::OpenPGP::Compressed->new( %arg )

Creates a new compressed data packet object and returns that object. If there are no arguments in %arg, the object is created with an empty compressed data container; this is used, for example, in parse (below), to create an empty packet which is then filled with the data in the buffer.

If you wish to initialize a non-empty object, %arg can contain:

* Data
A block of octets that make up the data that you wish to compress. As mentioned above, the data to compress should always be a stream of valid PGP packets (saved using Crypt::OpenPGP::PacketFactory::save).

This argument is required (for a non-empty object).

* Alg
The name (or ID) of a supported PGP compression algorithm. Valid names are "Zlib" and "ZIP".

This argument is optional; by default Crypt::OpenPGP::Compressed will use "ZIP".

$cdata->save

Returns the serialized compressed data packet, which consists of a one-octet compression algorithm ID, followed by the compressed data.

Crypt::OpenPGP::Compressed->parse($buffer)

Given $buffer, a Crypt::OpenPGP::Buffer object holding (or with offset pointing to) a compressed data packet, returns a new Crypt::OpenPGP::Compressed object, initialized with the data from the buffer.

$cdata->decompress

Decompresses the compressed data in the Crypt::OpenPGP::Compressed object $cdata and returns the decompressed data.

AUTHOR & COPYRIGHTS

Please see the Crypt::OpenPGP manpage for author, copyright, and license information.