Imported Upstream version 2.13
This commit is contained in:
587
Changes
Normal file
587
Changes
Normal file
@@ -0,0 +1,587 @@
|
||||
2010-07-03 Release 2.13
|
||||
|
||||
Mike McCauley (1):
|
||||
Fix memory leak in sha1_transform
|
||||
|
||||
|
||||
|
||||
2009-05-23 Release 2.12
|
||||
|
||||
Gisle Aas (6):
|
||||
Get rid of the old CVS ids
|
||||
Avoid "redefined" error for ULONG on Win64
|
||||
Less optimizations on IRIX [RT#8999]
|
||||
Clean up the 'git status' output
|
||||
Mention that SHA-1 might be weak [RT#11880]
|
||||
Ensure more stuff in the META.yml file [RT#40757]
|
||||
|
||||
Steve Peters (1):
|
||||
Quiet warnings when compiled with -Wwrite-strings [RT#31915]
|
||||
|
||||
|
||||
|
||||
2006-01-18 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.11
|
||||
|
||||
Internal cleanup to avoid some compiler warnings.
|
||||
|
||||
|
||||
|
||||
2004-04-05 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.10
|
||||
|
||||
Restore compatibility with perl-5.004 and perl-5.005.
|
||||
|
||||
|
||||
|
||||
2004-04-01 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.09
|
||||
|
||||
The 2.08 release did not compile with a threaded debugging
|
||||
perl, because assert() then needs my_perl. Fixed by commenting
|
||||
out the asserts.
|
||||
|
||||
|
||||
|
||||
2004-04-01 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.08
|
||||
|
||||
Enable PERL_NO_GET_CONTEXT for more more efficient execution
|
||||
on a threaded perl.
|
||||
|
||||
Fix up md5 references. Patch by Ville Skyttä <ville.skytta@iki.fi>.
|
||||
|
||||
|
||||
|
||||
2003-12-05 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.07
|
||||
|
||||
Inherit add_bits() from Digest::base if available.
|
||||
|
||||
|
||||
|
||||
2003-10-13 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.06
|
||||
|
||||
The sha1_transform() function did not check that it was actually
|
||||
passed any arguments.
|
||||
|
||||
Complete self-contained documentation included (copied from
|
||||
Digest::MD5), since the Digest.pm manpage is not always available.
|
||||
|
||||
|
||||
|
||||
2003-10-06 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.05
|
||||
|
||||
Added missing cast to support C++ compilation. Patch by Jan Dubois.
|
||||
|
||||
Document that the sha1_base64 function and the b64digest method
|
||||
does not pad their result.
|
||||
|
||||
|
||||
|
||||
2003-07-22 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.04
|
||||
|
||||
Don't assume PerlIO_read() works like fread() even though
|
||||
it was documented like that for perl 5.6. It returns negative
|
||||
on read failure.
|
||||
|
||||
Kill test #3 in t/badfile.t. I don't know a reliable way
|
||||
to test read failures on a file handle. Seems better not to
|
||||
test than to make many worry.
|
||||
|
||||
|
||||
|
||||
2003-07-05 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.03
|
||||
|
||||
Implemented sha1_transform, required to implement NIST FIPS 186-2.
|
||||
Contributed by Mike McCauley <mikem@open.com.au>.
|
||||
|
||||
Make it build on 64-bit platforms with 32-bit longs. At least
|
||||
I hope it will.
|
||||
|
||||
Sync up with the Digest::MD5 implementation:
|
||||
- added clone method
|
||||
- addfile croaks if it can't read
|
||||
- the sha1*() functions warn if called as method
|
||||
or with reference arguments.
|
||||
|
||||
|
||||
|
||||
2002-12-27 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.02
|
||||
|
||||
Make it work when there is a mismatch between the
|
||||
sizeof(BYTEORDER) and sizeof(long). Based on patch
|
||||
by Allen Smith <easmith@beatrice.rutgers.edu>.
|
||||
|
||||
Support UTF8 strings in newer versions of Perl.
|
||||
|
||||
|
||||
|
||||
2001-12-30 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.01
|
||||
|
||||
Applied trivial win32 fix from Gurusamy Sarathy that
|
||||
avoids stray temp files left after 'make test'.
|
||||
|
||||
|
||||
|
||||
2001-03-13 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.00
|
||||
|
||||
Broken out of the Digest-MD5-2.12 distribution and made into
|
||||
a separate dist.
|
||||
|
||||
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Changes below from the Digest-MD5 dist.
|
||||
|
||||
|
||||
2000-09-18 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.12
|
||||
|
||||
Avoid pointer cast warning for machines with bigger ints
|
||||
than pointers. Patch by Robin Barker <rmb1@cise.npl.co.uk>.
|
||||
|
||||
|
||||
|
||||
2000-08-19 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.11
|
||||
|
||||
The fallback code introduced in 2.10 did only work for
|
||||
perl-5.6.0. It should now for for perl5.004 and 5.005
|
||||
as well. Patch by Ville Skyttä <ville@office.popsystems.com>.
|
||||
|
||||
|
||||
|
||||
2000-08-18 Gisle Aas <gisle@ActiveState.com>
|
||||
|
||||
Release 2.10
|
||||
|
||||
Digest::MD5 will now try to fallback to the pure perl
|
||||
implementation of Digest::Perl::MD5 if bootstrap fails.
|
||||
|
||||
Added a bit internal paranoia about casting the IV
|
||||
in the Digest::MD5 object to the MD5_CTX* pointer.
|
||||
|
||||
|
||||
|
||||
1999-08-06 Gisle Aas <gisle@aas.no>
|
||||
|
||||
Release 2.09
|
||||
|
||||
Documentation update.
|
||||
|
||||
|
||||
|
||||
1999-07-28 Gisle Aas <gisle@aas.no>
|
||||
|
||||
Release 2.08
|
||||
|
||||
The addfile() methods could trigger a core dump when passed
|
||||
a filehandle that had failed to open.
|
||||
|
||||
|
||||
|
||||
1999-04-26 Gisle Aas <gisle@aas.no>
|
||||
|
||||
Release 2.07
|
||||
|
||||
The Digest::SHA1 module failed on some 64-bit systems, because I
|
||||
assumed there was a correspondence between the U32 size and
|
||||
BYTEORDER. This version use 'unsigned long' as Uwe's original
|
||||
SHA module did.
|
||||
|
||||
The module should now work better when liked statically with perl,
|
||||
because we now use a safer module-loaded test in Digest.pm.
|
||||
|
||||
Assume we know the outcome of the alignment test on VMS. Patch by
|
||||
Chuck Lane <lane@duphy4.physics.drexel.edu>
|
||||
|
||||
|
||||
|
||||
1999-03-26 Gisle Aas <gisle@aas.no>
|
||||
|
||||
Release 2.06
|
||||
|
||||
Avoid LONG and BYTE types in SHA.xs as they was in conflict
|
||||
with similar definitions in <winnt.h>.
|
||||
|
||||
Patch by Marko Asplund <aspa@hip.fi> to make the the alignment
|
||||
test program link successfully with sfio-perl.
|
||||
|
||||
Fixed a typo in MD5.xs that might have affected 64-bit systems.
|
||||
Spotted by Nick Ing-Simmons
|
||||
|
||||
|
||||
|
||||
1999-03-15 Gisle Aas <gisle@aas.no>
|
||||
|
||||
Release 2.05
|
||||
|
||||
Included Digest::SHA1 based on Uwe Hollerbach's SHA module.
|
||||
|
||||
|
||||
|
||||
1999-03-05 Gisle Aas <gisle@aas.no>
|
||||
|
||||
Release 2.04
|
||||
|
||||
Avoid the -o option when compiling alignment test program
|
||||
for Win32 as suggested by Gurusamy Sarathy.
|
||||
|
||||
DEC Compiler bug workaround. Contributed by D Roland Walker
|
||||
<walker@ncbi.nlm.nih.gov>
|
||||
|
||||
Having references to a local variable called "na" was not
|
||||
very safe either. Some older versions of Perl can apparently
|
||||
macroize this into something completely different.
|
||||
|
||||
|
||||
|
||||
1999-02-27 Gisle Aas <gisle@aas.no>
|
||||
|
||||
Release 2.03
|
||||
|
||||
Patch from Christopher J. Madsen <chris_madsen@geocities.com> that
|
||||
should help getting the u32align test program to compile with
|
||||
Visual C++ 5 on Windows NT.
|
||||
|
||||
Got rid of references to PL_na.
|
||||
|
||||
|
||||
|
||||
1999-01-31 Gisle Aas <gisle@aas.no>
|
||||
|
||||
Release 2.02
|
||||
|
||||
Added a hints file as workaround for an IRIX compiler bug.
|
||||
Contributed by D Roland Walker <walker@ncbi.nlm.nih.gov>.
|
||||
|
||||
Note that the rfc2202 test can still fail on some DEC Alpha,
|
||||
because of a compiler bug that affects the perl 'x' operator.
|
||||
The Digest:: modules should work and be safe to install anyway.
|
||||
|
||||
|
||||
|
||||
1998-12-18 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 2.01
|
||||
|
||||
Some casts and tweaks to make picky compilers more happy.
|
||||
|
||||
|
||||
|
||||
1998-11-04 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 2.00.
|
||||
|
||||
Taken out Digest::SHA1 as this module will be provided from Uwe
|
||||
Hollerbach later.
|
||||
|
||||
Some tweaks to MD2.xs and MD5.xs since "na" disappeared in
|
||||
perl5.005_53
|
||||
|
||||
|
||||
|
||||
1998-10-30 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_60
|
||||
|
||||
The 1.99_59 release introduced compilation problems for big-endian
|
||||
systems with free U32 alignment. Bug reported, and fix suggested
|
||||
by Paul J. Schinder <schinder@pobox.com>.
|
||||
|
||||
|
||||
|
||||
1998-10-28 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_59
|
||||
|
||||
Makefile.PL will run a test program to find out if U32 values can
|
||||
be aligned anywhere. This hopefully cures the core dumps reported
|
||||
on Solaris and other big endian systems. Thanks to Graham Barr for
|
||||
debugging this.
|
||||
|
||||
|
||||
|
||||
1998-10-28 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_58
|
||||
|
||||
Should be very close to a 2.00 release now. Need some success
|
||||
reports from people running on big-endian machines first I think.
|
||||
|
||||
Added a Digest::MD2 implementation.
|
||||
|
||||
Wrote Digest.pm documentation. This define the interface that all
|
||||
Digest:: modules should provide.
|
||||
|
||||
Avoided some code duplication in MD5.xs
|
||||
|
||||
Fixed typo, that prevented Digest::SHA1::sha1_base64() from working.
|
||||
|
||||
|
||||
|
||||
1998-10-27 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_57
|
||||
|
||||
Rewritten most of the MD5 C code to make it real fast (especially
|
||||
on little-endian machines without alignment restrictions for U32).
|
||||
Compared to MD5-1.7 we can process files 4 times as fast and we
|
||||
digest small stuff in memory 7 times faster. I came to these
|
||||
conclusions after these tests (gcc -O2, i586, Linux):
|
||||
|
||||
First tested calculation of the digest of a 31 MB file, using
|
||||
perl -le 'print Digest::MD5->new->addfile(*STDIN)->hexdigest'
|
||||
and similar stuff:
|
||||
|
||||
MD5-1.7: 21.06s
|
||||
Digest::MD5-1.99_57: 5.23s
|
||||
md5sum (GNU textutils): 4.90s
|
||||
|
||||
As you can see, we do nearly as good as the md5sum program. I
|
||||
think the reason we don't beat md5sum is that perl always insist on
|
||||
loading extra modules like Config.pm, Carp.pm, strict.pm, vars.pm,
|
||||
AutoLoader.pm and DynaLoader.pm. When I simply wrapped the MD5.xs
|
||||
hasher code in a C program I managed to process the file in 4.68s.
|
||||
|
||||
Then we calculated the digest of the same 6 byte sting, 20000
|
||||
times:
|
||||
|
||||
MD5-1.7: 11.81s
|
||||
Digest::MD5-1.99_57: 1.68s
|
||||
|
||||
Digest::MD5 benefit from making this into a plain procedure call
|
||||
instead of a static method call.
|
||||
|
||||
|
||||
Other changes in this release are:
|
||||
|
||||
Documentation update
|
||||
|
||||
Internal MD5.xs cleanup.
|
||||
|
||||
$md5->digest will automatically reset now.
|
||||
|
||||
Digest::HMAC methods add() and addfile() did not return the
|
||||
correct object.
|
||||
|
||||
Added Digest.pm loading module. I am not sure this is a good idea.
|
||||
|
||||
Added Digest::SHA1 and Digest::HMAC_SHA1 module. The Digest::SHA1
|
||||
module is just a wrapper around SHA.pm. I hope to get the author
|
||||
of SHA.pm to move his module to the Digest:: category.
|
||||
|
||||
|
||||
|
||||
1998-10-25 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_56
|
||||
|
||||
Fix memcpy_byteswap() function in MD5.xs. Must be careful with
|
||||
htovl() as it might evaluate its arguments more than once.
|
||||
|
||||
|
||||
|
||||
1998-10-25 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_55
|
||||
|
||||
Grahams HMAC_MD5.pm splitted into two modules. Digest::HMAC and
|
||||
Digest::HMAC_MD5. Also provide functional interface. Documentation
|
||||
is still lacking.
|
||||
|
||||
Included RFC 2202 based test for HMAC-MD5.
|
||||
|
||||
|
||||
|
||||
1998-10-24 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_54
|
||||
|
||||
Included HMAC_MD5.pm, contributed by Graham Barr <gbarr@ti.com>.
|
||||
|
||||
I have a hard time to make up my mind :-) md5_bin() renamed back
|
||||
to md5(). Functions are not exported by default any more.
|
||||
|
||||
Try to Encode/Decode with memcpy_byteswap for 32-bit big-endian
|
||||
machines.
|
||||
|
||||
|
||||
|
||||
1998-10-23 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_53
|
||||
|
||||
Renamed core module as Digest::MD5. Leave a MD5.pm stub for
|
||||
legacy code.
|
||||
|
||||
The md5() function renamed as md5_bin().
|
||||
|
||||
The constructor, Digest::MD5->new, no longer takes any extra
|
||||
arguments.
|
||||
|
||||
Added some new tests.
|
||||
|
||||
Updated the documentation.
|
||||
|
||||
$md5->b64digest implemented with same base64 encoder as md5_base64.
|
||||
|
||||
|
||||
|
||||
1998-10-23 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_52
|
||||
|
||||
Patch from Graham Barr which make it work for big-endian machines
|
||||
again.
|
||||
|
||||
|
||||
|
||||
1998-10-22 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_51
|
||||
|
||||
The MD5 class is now subclassable.
|
||||
|
||||
The add() and addfile() methods now return $self.
|
||||
|
||||
The reset() method is just an alias for new().
|
||||
|
||||
The constructor (MD5->new) now takes optional arguments which are
|
||||
automatically added. It means that we can now write:
|
||||
|
||||
MD5->new($data)->hexdigest;
|
||||
|
||||
New $md5->b64digest method.
|
||||
|
||||
New functions that are exported on request: md5, md5_hex, md5_base64
|
||||
|
||||
Included RFC 1321
|
||||
|
||||
Barely started to update the documentation.
|
||||
|
||||
|
||||
|
||||
1998-10-22 Gisle Aas <aas@sn.no>
|
||||
|
||||
Release 1.99_50
|
||||
|
||||
Much better performance (more than twice as fast now). Mostly
|
||||
because we use Copy/Zero instead of the original MD5_memcpy and
|
||||
MD5_memset functions.
|
||||
|
||||
The addfile() and hexdigest() methods are now XS implemented.
|
||||
|
||||
All RSA functions now included in MD5.xs and made static.
|
||||
|
||||
Use perl's Copy/Zero.
|
||||
|
||||
Random cleanup, simplifications and reformatting.
|
||||
Merged things better with the perl configuration.
|
||||
|
||||
|
||||
|
||||
Neil Winton's versions below:
|
||||
|
||||
|
||||
*** 96/06/20 Version 1.7
|
||||
|
||||
MD5 is now completely 64-bit clean (I hope). The basic MD5 code uses
|
||||
32-bit quantities and requires a typedef UINT4 to be defined in
|
||||
global.h. Perl configuration data (the value of BYTEORDER) is used to
|
||||
determine if unsigned longs have 4 or 8 bytes. On 64-bit platforms (eg
|
||||
DEC Alpha) then it assumes that "unsigned int" will be a 32-bit type.
|
||||
If this is incorrect then adding -DUINT4_IS_LONG to the DEFINES line in
|
||||
Makefile.PL will override this.
|
||||
|
||||
On some machines (at least Cray that I know of) there is no 32-bit
|
||||
integer type. In this case defining TRUNCATE_UINT4 (which is done
|
||||
automatically for a Cray) will ensure that 64-bit values are masked
|
||||
down to 32 bits. I have done my best to test this but without easy
|
||||
access to a true 64-bit machine I can not totally guarantee it (unless
|
||||
anyone wants to lend me a spare Cray :-)
|
||||
|
||||
There is one remaining limitation for 64-bit enabled processors. The
|
||||
amount of data passed to any single call to the underlying MD5
|
||||
routines is limited to (2^32 - 1) bytes -- that's 4 gigabytes. I'm
|
||||
sorry if that's a real problem for you ...
|
||||
|
||||
And finally, a minor compilation warning (unsigned char * used with
|
||||
function having char * prototype) has also been eliminated.
|
||||
|
||||
*** 96/04/09 Version 1.6
|
||||
|
||||
Re-generated module framework using h2xs to pick up the latest module
|
||||
conventions for versions etc. You can now say "use MD5 1.6;" and things
|
||||
should work correctly. MD5.pod has been integrated into MD5.pm and
|
||||
CHANGES renamed to Changes. There is a fairly comprehensive test.pl
|
||||
which can be invoked via "make test". There are no functional changes
|
||||
to the MD5 routines themselves.
|
||||
|
||||
*** 96/03/14 Version 1.5.3
|
||||
|
||||
Fixed addfile method to accept type-glob references for the file-handle
|
||||
(eg \*STDOUT). This is more consistent with other routines and is now the
|
||||
recommended way of passing file-handles. The documentation now gives more
|
||||
examples as to how the routines might be used.
|
||||
|
||||
*** 96/03/12 Version 1.5.2
|
||||
|
||||
Minor fixes from Christopher J Madsen <madsen@computek.net> to provide
|
||||
support for building on OS/2 (and to work around a perl -w bug).
|
||||
|
||||
Remove warning about possible difference between add('foo', 'bar') and
|
||||
add('foobar'). This is not true (it may have been true in the earliest
|
||||
version of the module but is no longer the case).
|
||||
|
||||
*** 96/03/08 Version 1.5.1
|
||||
|
||||
Add CHANGES file to make it easier for people to figure out what has
|
||||
been going on. (Meant to do this as part of 1.5)
|
||||
|
||||
*** 96/03/05 Version 1.5
|
||||
|
||||
Add hash() and hexhash() methods at the suggestion/request of Gary
|
||||
Howland <gary@kampai.euronet.nl> before inclusion in a wider library
|
||||
of cryptography modules.
|
||||
|
||||
*** 96/02/27 Version 1.4
|
||||
|
||||
Finally fixed the pesky Solaris dynamic loading bug. All kudos to Ken
|
||||
Pizzini <kenp@spry.com>!
|
||||
|
||||
*** 95/11/29 Version 1.3.1
|
||||
|
||||
Add explanations of current known problems.
|
||||
|
||||
*** 95/06/02 Version 1.3
|
||||
|
||||
Fix problems with scope resolution in addfile() reported by
|
||||
Jean-Claude Giese <Jean-Claude.Giese@loria.fr>. Basically ARGV is
|
||||
always implicitly in package main while other filehandles aren't.
|
||||
|
||||
*** 95/05/23 Version 1.2.1
|
||||
|
||||
[Changes pre 1.2.1 not recorded]
|
||||
Reference in New Issue
Block a user