Compress::unLZMA - Interface to LZMA decompression library
use Compress::unLZMA qw(uncompress uncompressfile); my $data = uncompressfile('foo.lzma'); my $data = uncompress($content);
LZMA is default and general compression method of 7z format in 7-Zip program. LZMA provides high compression ratio and very fast decompression.
This module is based on the LZMA SDK which provides a cross-platform implementation of the LZMA decompression algorithm in ANSI C.
From SDK lzma.txt file:
LZMA decompression code was ported from original C++ sources to C. Also it was simplified and optimized for code size. But it is fully compatible with LZMA from 7-Zip.
Uncompress $data. if successful, it returns the uncompressed data. Otherwise it returns undef and $@ contains the error message.
The source buffer can be either be a scalar or a scalar reference.
Uncompress the file $file. if successful, it returns the uncompressed data. Otherwise it returns undef and $@ contains the error message.
This version only implements in-memory decompression (patches are welcomed).
There is no way to recognize a valid LZMA encoded file with the SDK. So, in some cases, you can crash your script if you try to uncompress a non valid LZMA encoded file.
Please report any requests, suggestions or bugs via the RT bug-tracking system at http://rt.cpan.org/ or email to bug-Compress-unLZMA\@rt.cpan.org.
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Compress-unLZMA is the RT queue for Compress::unLZMA. Please check to see if your bug has already been reported.
Adriano Ferreira, email@example.com
Fabien Potencier, firstname.lastname@example.org
This software may be freely copied and distributed under the same terms and conditions as Perl.
LZMA SDK 4.01 Copyright (C) 1999-2004 Igor Pavlov 2004-02-15
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
LZMA SDK also can be available under a proprietary license for those who cannot use the GNU LGPL in their code. To request such proprietary license or any additional consultations, write to email@example.com