ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/staticperl/perl/ext/Digest/MD5/Changes
Revision: 1.1
Committed: Thu Jun 30 14:26:46 2005 UTC (21 years, 4 months ago) by root
Branch: MAIN
CVS Tags: PERL-5-8-7, HEAD
Branch point for: PERL
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 2003-12-07 Gisle Aas <gisle@ActiveState.com>
2    
3     Release 2.33
4    
5     Enable explicit context passing for slight performance
6     improvement in threaded perls.
7    
8     Tweaks to the Makefile.PL so that it is suitable both for
9     core and CPAN use.
10    
11    
12    
13     2003-12-05 Gisle Aas <gisle@ActiveState.com>
14    
15     Release 2.32
16    
17     Don't run u32align test program on HP-UX 10.20 as it
18     will hang. Patch by H.Merijn Brand <h.m.brand@hccnet.nl>.
19    
20     Fixed documentation typo.
21    
22    
23    
24     2003-11-28 Gisle Aas <gisle@ActiveState.com>
25    
26     Release 2.31
27    
28     Inherit add_bits() from Digest::base if available.
29    
30    
31    
32     2003-10-09 Gisle Aas <gisle@ActiveState.com>
33    
34     Release 2.30
35    
36     Some tweaks to make the module build on perl-5.004 and
37     perl-5.005 again.
38    
39    
40    
41     2003-10-06 Gisle Aas <gisle@ActiveState.com>
42    
43     Release 2.29
44    
45     Another try. Forgot to update the test checksums.
46    
47    
48    
49     2003-10-06 Gisle Aas <gisle@ActiveState.com>
50    
51     Release 2.28
52    
53     Fix minor documentation typo.
54    
55    
56    
57     2003-08-04 Gisle Aas <gisle@ActiveState.com>
58    
59     Release 2.27
60    
61     Avoid having to figure how to compile alignment test program
62     on MS-Windows by just assume free alignment as for i386. Source
63     builds on Windows was apparently broken.
64    
65    
66    
67     2003-07-21 Gisle Aas <gisle@ActiveState.com>
68    
69     Release 2.26
70    
71     Don't assume PerlIO_read() works like fread() even though
72     it was documented like that for perl 5.6. It returns negative
73     on read failure.
74    
75     Kill test #3 in t/badfile.t. I don't know a reliable way
76     to test read failures on a file handle. Seems better not to
77     test than to make many worry.
78    
79    
80    
81     2003-07-04 Gisle Aas <gisle@ActiveState.com>
82    
83     Release 2.25
84    
85     The $md5->addfile method now croaks if it discovers
86     errors on the handle after reading from it. This should
87     make it more difficult to end up with the wrong digest
88     just because you are to lazy to check the error status
89     on your file handles after reading from them.
90    
91     Improved documentation.
92    
93     Sync up with bleadperl; even safer patchlevel include.
94    
95    
96    
97     2003-03-09 Gisle Aas <gisle@ActiveState.com>
98    
99     Release 2.24
100    
101     Don't let the $^W test get confused by lexical warnings.
102    
103     Sync up with bleadperl; safer patchlevel include.
104    
105    
106    
107     2003-01-18 Gisle Aas <gisle@ActiveState.com>
108    
109     Release 2.23
110    
111     Override INSTALLDIRS for 5.8 as suggested by
112     Guido Ostkamp <Guido.Ostkamp@t-online.de>.
113    
114    
115    
116     2003-01-04 Gisle Aas <gisle@ActiveState.com>
117    
118     Release 2.22.
119    
120     Added clone method.
121     Contributed by Holger Smolinski <holger@kunterbunt.bb.bawue.de>
122    
123    
124    
125     2002-12-27 Gisle Aas <gisle@ActiveState.com>
126    
127     Release 2.21
128    
129     Minor tweaks sync up with bleadperl:
130     - VMS optimizer tweaks to the Makefile.PL
131     - MacOS support
132     - Added alignment test
133    
134     Added example to the MD5 POD that shows how to calculate the
135     digest of Unicode strings.
136    
137    
138    
139     2002-05-05 Gisle Aas <gisle@ActiveState.com>
140    
141     Release 2.20
142    
143     More synchronization with tweaks Jarkko have done to the
144     bleadperl test suite. This time various EBCDIC hacks.
145    
146     Outside PERL_CORE the md5-aaa.t test loaded the wrong version of
147     the module (and would fail if no previous Digest::MD5 was installed).
148     Patch by Mike Stok <mike@stok.co.uk>
149    
150    
151    
152     2002-05-01 Gisle Aas <gisle@ActiveState.com>
153    
154     Release 2.19
155    
156     One more test suite update from Jarkko to sync it
157     even better with bleadperl.
158    
159    
160    
161     2002-05-01 Gisle Aas <gisle@ActiveState.com>
162    
163     Release 2.18
164    
165     Changes #12954 and #16173 from bleadperl. Documentation typo fix
166     and some signed/unsigned mismatches that Microsoft's C compiler
167     complained about.
168    
169     The EBCDIC-aware md5-aaa.t from bleadperl.
170    
171    
172    
173     2002-04-25 Gisle Aas <gisle@ActiveState.com>
174    
175     Release 2.17
176    
177     The SvPVbyte in perl-5.6.1 is buggy. Use the one from 5.7.3
178     instead.
179    
180     Give warning if the function interface is used as instance
181     methods: $md5->md5_hex().
182    
183    
184    
185     2001-09-07 Gisle Aas <gisle@ActiveState.com>
186    
187     Release 2.16
188    
189     Sync up with the bleadperl version:
190     - use SvPVbyte() if available
191     - fixes to make the code 'gcc -Wall'-clean
192    
193    
194    
195     2001-08-27 Gisle Aas <gisle@ActiveState.com>
196    
197     Release 2.15
198    
199     Avoid exit() in Makefile.PL and bleadperl redefinition of printf
200     in the alignment test program.
201     Patch by Doug MacEachern <dougm@covalent.net>.
202    
203    
204    
205     2001-07-18 Gisle Aas <gisle@ActiveState.com>
206    
207     Release 2.14
208    
209     Try to warn if the functional interface is used as methods,
210     i.e. Digest::MD5->md5_hex("foo") will make noise if -w is
211     enabled.
212    
213     Document the missing padding for the base64 digests.
214    
215     If both XS bootstrap and locating Digest::Perl::MD5 fails
216     re-raise the original XS bootstrap exception.
217    
218    
219    
220     2001-03-13 Gisle Aas <gisle@ActiveState.com>
221    
222     Release 2.13
223    
224     Moved all other Digest:: modules out of the Digest-MD5 dist.
225    
226    
227    
228     2000-09-18 Gisle Aas <gisle@ActiveState.com>
229    
230     Release 2.12
231    
232     Avoid pointer cast warning for machines with bigger ints
233     than pointers. Patch by Robin Barker <rmb1@cise.npl.co.uk>.
234    
235    
236    
237     2000-08-19 Gisle Aas <gisle@ActiveState.com>
238    
239     Release 2.11
240    
241     The fallback code introduced in 2.10 did only work for
242     perl-5.6.0. It should now for for perl5.004 and 5.005
243     as well. Patch by Ville Skyttä <ville@office.popsystems.com>.
244    
245    
246    
247     2000-08-18 Gisle Aas <gisle@ActiveState.com>
248    
249     Release 2.10
250    
251     Digest::MD5 will now try to fallback to the pure perl
252     implementation of Digest::Perl::MD5 if bootstrap fails.
253    
254     Added a bit internal paranoia about casting the IV
255     in the Digest::MD5 object to the MD5_CTX* pointer.
256    
257    
258    
259     1999-08-06 Gisle Aas <gisle@aas.no>
260    
261     Release 2.09
262    
263     Documentation update.
264    
265    
266    
267     1999-07-28 Gisle Aas <gisle@aas.no>
268    
269     Release 2.08
270    
271     The addfile() methods could trigger a core dump when passed
272     a filehandle that had failed to open.
273    
274    
275    
276     1999-04-26 Gisle Aas <gisle@aas.no>
277    
278     Release 2.07
279    
280     The Digest::SHA1 module failed on some 64-bit systems, because I
281     assumed there was a correspondence between the U32 size and
282     BYTEORDER. This version use 'unsigned long' as Uwe's original
283     SHA module did.
284    
285     The module should now work better when liked statically with perl,
286     because we now use a safer module-loaded test in Digest.pm.
287    
288     Assume we know the outcome of the alignment test on VMS. Patch by
289     Chuck Lane <lane@duphy4.physics.drexel.edu>
290    
291    
292    
293     1999-03-26 Gisle Aas <gisle@aas.no>
294    
295     Release 2.06
296    
297     Avoid LONG and BYTE types in SHA.xs as they was in conflict
298     with similar definitions in <winnt.h>.
299    
300     Patch by Marko Asplund <aspa@hip.fi> to make the the alignment
301     test program link successfully with sfio-perl.
302    
303     Fixed a typo in MD5.xs that might have affected 64-bit systems.
304     Spotted by Nick Ing-Simmons
305    
306    
307    
308     1999-03-15 Gisle Aas <gisle@aas.no>
309    
310     Release 2.05
311    
312     Included Digest::SHA1 based on Uwe Hollerbach's SHA module.
313    
314    
315    
316     1999-03-05 Gisle Aas <gisle@aas.no>
317    
318     Release 2.04
319    
320     Avoid the -o option when compiling alignment test program
321     for Win32 as suggested by Gurusamy Sarathy.
322    
323     DEC Compiler bug workaround. Contributed by D Roland Walker
324     <walker@ncbi.nlm.nih.gov>
325    
326     Having references to a local variable called "na" was not
327     very safe either. Some older versions of Perl can apparently
328     macroize this into something completely different.
329    
330    
331    
332     1999-02-27 Gisle Aas <gisle@aas.no>
333    
334     Release 2.03
335    
336     Patch from Christopher J. Madsen <chris_madsen@geocities.com> that
337     should help getting the u32align test program to compile with
338     Visual C++ 5 on Windows NT.
339    
340     Got rid of references to PL_na.
341    
342    
343    
344     1999-01-31 Gisle Aas <gisle@aas.no>
345    
346     Release 2.02
347    
348     Added a hints file as workaround for an IRIX compiler bug.
349     Contributed by D Roland Walker <walker@ncbi.nlm.nih.gov>.
350    
351     Note that the rfc2202 test can still fail on some DEC Alpha,
352     because of a compiler bug that affects the perl 'x' operator.
353     The Digest:: modules should work and be safe to install anyway.
354    
355    
356    
357     1998-12-18 Gisle Aas <aas@sn.no>
358    
359     Release 2.01
360    
361     Some casts and tweaks to make picky compilers more happy.
362    
363    
364    
365     1998-11-04 Gisle Aas <aas@sn.no>
366    
367     Release 2.00.
368    
369     Taken out Digest::SHA1 as this module will be provided from Uwe
370     Hollerbach later.
371    
372     Some tweaks to MD2.xs and MD5.xs since "na" disappeared in
373     perl5.005_53
374    
375    
376    
377     1998-10-30 Gisle Aas <aas@sn.no>
378    
379     Release 1.99_60
380    
381     The 1.99_59 release introduced compilation problems for big-endian
382     systems with free U32 alignment. Bug reported, and fix suggested
383     by Paul J. Schinder <schinder@pobox.com>.
384    
385    
386    
387     1998-10-28 Gisle Aas <aas@sn.no>
388    
389     Release 1.99_59
390    
391     Makefile.PL will run a test program to find out if U32 values can
392     be aligned anywhere. This hopefully cures the core dumps reported
393     on Solaris and other big endian systems. Thanks to Graham Barr for
394     debugging this.
395    
396    
397    
398     1998-10-28 Gisle Aas <aas@sn.no>
399    
400     Release 1.99_58
401    
402     Should be very close to a 2.00 release now. Need some success
403     reports from people running on big-endian machines first I think.
404    
405     Added a Digest::MD2 implementation.
406    
407     Wrote Digest.pm documentation. This define the interface that all
408     Digest:: modules should provide.
409    
410     Avoided some code duplication in MD5.xs
411    
412     Fixed typo, that prevented Digest::SHA1::sha1_base64() from working.
413    
414    
415    
416     1998-10-27 Gisle Aas <aas@sn.no>
417    
418     Release 1.99_57
419    
420     Rewritten most of the MD5 C code to make it real fast (especially
421     on little-endian machines without alignment restrictions for U32).
422     Compared to MD5-1.7 we can process files 4 times as fast and we
423     digest small stuff in memory 7 times faster. I came to these
424     conclusions after these tests (gcc -O2, i586, Linux):
425    
426     First tested calculation of the digest of a 31 MB file, using
427     perl -le 'print Digest::MD5->new->addfile(*STDIN)->hexdigest'
428     and similar stuff:
429    
430     MD5-1.7: 21.06s
431     Digest::MD5-1.99_57: 5.23s
432     md5sum (GNU textutils): 4.90s
433    
434     As you can see, we do nearly as good as the md5sum program. I
435     think the reason we don't beat md5sum is that perl always insist on
436     loading extra modules like Config.pm, Carp.pm, strict.pm, vars.pm,
437     AutoLoader.pm and DynaLoader.pm. When I simply wrapped the MD5.xs
438     hasher code in a C program I managed to process the file in 4.68s.
439    
440     Then we calculated the digest of the same 6 byte sting, 20000
441     times:
442    
443     MD5-1.7: 11.81s
444     Digest::MD5-1.99_57: 1.68s
445    
446     Digest::MD5 benefit from making this into a plain procedure call
447     instead of a static method call.
448    
449    
450     Other changes in this release are:
451    
452     Documentation update
453    
454     Internal MD5.xs cleanup.
455    
456     $md5->digest will automatically reset now.
457    
458     Digest::HMAC methods add() and addfile() did not return the
459     correct object.
460    
461     Added Digest.pm loading module. I am not sure this is a good idea.
462    
463     Added Digest::SHA1 and Digest::HMAC_SHA1 module. The Digest::SHA1
464     module is just a wrapper around SHA.pm. I hope to get the author
465     of SHA.pm to move his module to the Digest:: category.
466    
467    
468    
469     1998-10-25 Gisle Aas <aas@sn.no>
470    
471     Release 1.99_56
472    
473     Fix memcpy_byteswap() function in MD5.xs. Must be careful with
474     htovl() as it might evaluate its arguments more than once.
475    
476    
477    
478     1998-10-25 Gisle Aas <aas@sn.no>
479    
480     Release 1.99_55
481    
482     Grahams HMAC_MD5.pm splitted into two modules. Digest::HMAC and
483     Digest::HMAC_MD5. Also provide functional interface. Documentation
484     is still lacking.
485    
486     Included RFC 2202 based test for HMAC-MD5.
487    
488    
489    
490     1998-10-24 Gisle Aas <aas@sn.no>
491    
492     Release 1.99_54
493    
494     Included HMAC_MD5.pm, contributed by Graham Barr <gbarr@ti.com>.
495    
496     I have a hard time to make up my mind :-) md5_bin() renamed back
497     to md5(). Functions are not exported by default any more.
498    
499     Try to Encode/Decode with memcpy_byteswap for 32-bit big-endian
500     machines.
501    
502    
503    
504     1998-10-23 Gisle Aas <aas@sn.no>
505    
506     Release 1.99_53
507    
508     Renamed core module as Digest::MD5. Leave a MD5.pm stub for
509     legacy code.
510    
511     The md5() function renamed as md5_bin().
512    
513     The constructor, Digest::MD5->new, no longer takes any extra
514     arguments.
515    
516     Added some new tests.
517    
518     Updated the documentation.
519    
520     $md5->b64digest implemented with same base64 encoder as md5_base64.
521    
522    
523    
524     1998-10-23 Gisle Aas <aas@sn.no>
525    
526     Release 1.99_52
527    
528     Patch from Graham Barr which make it work for big-endian machines
529     again.
530    
531    
532    
533     1998-10-22 Gisle Aas <aas@sn.no>
534    
535     Release 1.99_51
536    
537     The MD5 class is now subclassable.
538    
539     The add() and addfile() methods now return $self.
540    
541     The reset() method is just an alias for new().
542    
543     The constructor (MD5->new) now takes optional arguments which are
544     automatically added. It means that we can now write:
545    
546     MD5->new($data)->hexdigest;
547    
548     New $md5->b64digest method.
549    
550     New functions that are exported on request: md5, md5_hex, md5_base64
551    
552     Included RFC 1321
553    
554     Barely started to update the documentation.
555    
556    
557    
558     1998-10-22 Gisle Aas <aas@sn.no>
559    
560     Release 1.99_50
561    
562     Much better performance (more than twice as fast now). Mostly
563     because we use Copy/Zero instead of the original MD5_memcpy and
564     MD5_memset functions.
565    
566     The addfile() and hexdigest() methods are now XS implemented.
567    
568     All RSA functions now included in MD5.xs and made static.
569    
570     Use perl's Copy/Zero.
571    
572     Random cleanup, simplifications and reformatting.
573     Merged things better with the perl configuration.
574    
575    
576    
577     Neil Winton's versions below:
578    
579    
580     *** 96/06/20 Version 1.7
581    
582     MD5 is now completely 64-bit clean (I hope). The basic MD5 code uses
583     32-bit quantities and requires a typedef UINT4 to be defined in
584     global.h. Perl configuration data (the value of BYTEORDER) is used to
585     determine if unsigned longs have 4 or 8 bytes. On 64-bit platforms (eg
586     DEC Alpha) then it assumes that "unsigned int" will be a 32-bit type.
587     If this is incorrect then adding -DUINT4_IS_LONG to the DEFINES line in
588     Makefile.PL will override this.
589    
590     On some machines (at least Cray that I know of) there is no 32-bit
591     integer type. In this case defining TRUNCATE_UINT4 (which is done
592     automatically for a Cray) will ensure that 64-bit values are masked
593     down to 32 bits. I have done my best to test this but without easy
594     access to a true 64-bit machine I can not totally guarantee it (unless
595     anyone wants to lend me a spare Cray :-)
596    
597     There is one remaining limitation for 64-bit enabled processors. The
598     amount of data passed to any single call to the underlying MD5
599     routines is limited to (2^32 - 1) bytes -- that's 4 gigabytes. I'm
600     sorry if that's a real problem for you ...
601    
602     And finally, a minor compilation warning (unsigned char * used with
603     function having char * prototype) has also been eliminated.
604    
605     *** 96/04/09 Version 1.6
606    
607     Re-generated module framework using h2xs to pick up the latest module
608     conventions for versions etc. You can now say "use MD5 1.6;" and things
609     should work correctly. MD5.pod has been integrated into MD5.pm and
610     CHANGES renamed to Changes. There is a fairly comprehensive test.pl
611     which can be invoked via "make test". There are no functional changes
612     to the MD5 routines themselves.
613    
614     *** 96/03/14 Version 1.5.3
615    
616     Fixed addfile method to accept type-glob references for the file-handle
617     (eg \*STDOUT). This is more consistent with other routines and is now the
618     recommended way of passing file-handles. The documentation now gives more
619     examples as to how the routines might be used.
620    
621     *** 96/03/12 Version 1.5.2
622    
623     Minor fixes from Christopher J Madsen <madsen@computek.net> to provide
624     support for building on OS/2 (and to work around a perl -w bug).
625    
626     Remove warning about possible difference between add('foo', 'bar') and
627     add('foobar'). This is not true (it may have been true in the earliest
628     version of the module but is no longer the case).
629    
630     *** 96/03/08 Version 1.5.1
631    
632     Add CHANGES file to make it easier for people to figure out what has
633     been going on. (Meant to do this as part of 1.5)
634    
635     *** 96/03/05 Version 1.5
636    
637     Add hash() and hexhash() methods at the suggestion/request of Gary
638     Howland <gary@kampai.euronet.nl> before inclusion in a wider library
639     of cryptography modules.
640    
641     *** 96/02/27 Version 1.4
642    
643     Finally fixed the pesky Solaris dynamic loading bug. All kudos to Ken
644     Pizzini <kenp@spry.com>!
645    
646     *** 95/11/29 Version 1.3.1
647    
648     Add explanations of current known problems.
649    
650     *** 95/06/02 Version 1.3
651    
652     Fix problems with scope resolution in addfile() reported by
653     Jean-Claude Giese <Jean-Claude.Giese@loria.fr>. Basically ARGV is
654     always implicitly in package main while other filehandles aren't.
655    
656     *** 95/05/23 Version 1.2.1
657    
658     [Changes pre 1.2.1 not recorded]