From 12679ab7d3c2a210f4123163671b532b8b55d5f9 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Fri, 15 Mar 2024 03:06:35 +0000 Subject: CTAN sync 202403150306 --- .../tlnet/tlpkg/tlperl/lib/IO/Compress/Deflate.pm | 114 +++++---------------- 1 file changed, 27 insertions(+), 87 deletions(-) (limited to 'systems/texlive/tlnet/tlpkg/tlperl/lib/IO/Compress/Deflate.pm') diff --git a/systems/texlive/tlnet/tlpkg/tlperl/lib/IO/Compress/Deflate.pm b/systems/texlive/tlnet/tlpkg/tlperl/lib/IO/Compress/Deflate.pm index 9e71977df4..a34a6ba6e6 100644 --- a/systems/texlive/tlnet/tlpkg/tlperl/lib/IO/Compress/Deflate.pm +++ b/systems/texlive/tlnet/tlpkg/tlperl/lib/IO/Compress/Deflate.pm @@ -8,16 +8,16 @@ use bytes; require Exporter ; -use IO::Compress::RawDeflate 2.101 (); -use IO::Compress::Adapter::Deflate 2.101 ; +use IO::Compress::RawDeflate 2.204 (); +use IO::Compress::Adapter::Deflate 2.204 ; -use IO::Compress::Zlib::Constants 2.101 ; -use IO::Compress::Base::Common 2.101 qw(); +use IO::Compress::Zlib::Constants 2.204 ; +use IO::Compress::Base::Common 2.204 qw(); our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $DeflateError); -$VERSION = '2.102'; +$VERSION = '2.204'; $DeflateError = ''; @ISA = qw(IO::Compress::RawDeflate Exporter); @@ -42,92 +42,35 @@ sub deflate return $obj->_def(@_); } - -sub bitmask($$$$) -{ - my $into = shift ; - my $value = shift ; - my $offset = shift ; - my $mask = shift ; - - return $into | (($value & $mask) << $offset ) ; -} - -sub mkDeflateHdr($$$;$) -{ - my $method = shift ; - my $cinfo = shift; - my $level = shift; - my $fdict_adler = shift ; - - my $cmf = 0; - my $flg = 0; - my $fdict = 0; - $fdict = 1 if defined $fdict_adler; - - $cmf = bitmask($cmf, $method, ZLIB_CMF_CM_OFFSET, ZLIB_CMF_CM_BITS); - $cmf = bitmask($cmf, $cinfo, ZLIB_CMF_CINFO_OFFSET, ZLIB_CMF_CINFO_BITS); - - $flg = bitmask($flg, $fdict, ZLIB_FLG_FDICT_OFFSET, ZLIB_FLG_FDICT_BITS); - $flg = bitmask($flg, $level, ZLIB_FLG_LEVEL_OFFSET, ZLIB_FLG_LEVEL_BITS); - - my $fcheck = 31 - ($cmf * 256 + $flg) % 31 ; - $flg = bitmask($flg, $fcheck, ZLIB_FLG_FCHECK_OFFSET, ZLIB_FLG_FCHECK_BITS); - - my $hdr = pack("CC", $cmf, $flg) ; - $hdr .= pack("N", $fdict_adler) if $fdict ; - - return $hdr; -} - -sub mkHeader +sub mkComp { my $self = shift ; - my $param = shift ; + my $got = shift ; - my $level = $param->getValue('level'); - my $strategy = $param->getValue('strategy'); + my ($obj, $errstr, $errno) = IO::Compress::Adapter::Deflate::mkCompObject1( + $got->getValue('crc32'), + $got->getValue('adler32'), + $got->getValue('level'), + $got->getValue('strategy') + ); - my $lflag ; - $level = 6 - if $level == Z_DEFAULT_COMPRESSION ; + return $self->saveErrorString(undef, $errstr, $errno) + if ! defined $obj; - if (ZLIB_VERNUM >= 0x1210) - { - if ($strategy >= Z_HUFFMAN_ONLY || $level < 2) - { $lflag = ZLIB_FLG_LEVEL_FASTEST } - elsif ($level < 6) - { $lflag = ZLIB_FLG_LEVEL_FAST } - elsif ($level == 6) - { $lflag = ZLIB_FLG_LEVEL_DEFAULT } - else - { $lflag = ZLIB_FLG_LEVEL_SLOWEST } - } - else - { - $lflag = ($level - 1) >> 1 ; - $lflag = 3 if $lflag > 3 ; - } - - #my $wbits = (MAX_WBITS - 8) << 4 ; - my $wbits = 7; - mkDeflateHdr(ZLIB_CMF_CM_DEFLATED, $wbits, $lflag); + return $obj; } -sub ckParams + +sub mkHeader { my $self = shift ; - my $got = shift; - - $got->setValue('adler32' => 1); - return 1 ; + return ''; } - sub mkTrailer { my $self = shift ; - return pack("N", *$self->{Compress}->adler32()) ; + return ''; } sub mkFinalTrailer @@ -135,12 +78,6 @@ sub mkFinalTrailer return ''; } -#sub newHeader -#{ -# my $self = shift ; -# return *$self->{Header}; -#} - sub getExtraParams { my $self = shift ; @@ -930,9 +867,9 @@ L, L For RFC 1950, 1951 and 1952 see -L, -L and -L +L, +L and +L The I compression library was written by Jean-loup Gailly C and Mark Adler C. @@ -940,6 +877,9 @@ C and Mark Adler C. The primary site for the I compression library is L. +The primary site for the I compression library is +L. + The primary site for gzip is L. =head1 AUTHOR @@ -952,7 +892,7 @@ See the Changes file. =head1 COPYRIGHT AND LICENSE -Copyright (c) 2005-2021 Paul Marquess. All rights reserved. +Copyright (c) 2005-2023 Paul Marquess. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. -- cgit v1.2.3