This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update Digest-SHA to CPAN version 5.73
[perl5.git] / cpan / Digest-SHA / Changes
1 Revision history for Perl extension Digest::SHA.
2
3 5.73  Wed Oct 31 04:32:44 MST 2012
4         - provided workaround for DEC compiler bug (ref. Makefile.PL)
5
6 5.72  Mon Sep 24 15:22:08 MST 2012
7         - adjusted module installation directory for later Perls
8                 -- As of 5.11 Perl searches 'site' first, so use that
9                         -- ref. INSTALLDIRS in Makefile.PL
10                 -- thanks to Robert Sedlacek for patch
11
12 5.71  Wed Feb 29 04:06:10 MST 2012
13         - prevented $! from getting clobbered in _bail() routine
14                 -- thanks to Zefram for patch
15         - added example of BITS mode usage to shasum documentation
16
17 5.70  Wed Dec 14 02:32:10 MST 2011
18         - added BITS mode to addfile method and shasum
19                 -- partial-byte inputs now possible via files/STDIN
20                 -- allows shasum to check all 8074 NIST Msg vectors
21                         -- previously required special programming
22
23 5.63  Tue Nov  8 02:36:42 MST 2011
24         - added code to allow very large data inputs all at once
25                 -- previously limited to several hundred MB at a time
26                 -- many thanks to Thomas Drugeon for his elegant patch
27         - removed outdated reference URLs from several test scripts
28                 -- these URLs aren't essential, and often go stale
29                 -- thanks to Leon Brocard for spotting this
30                         -- ref. rt.cpan.org #68740
31
32 5.62  Sat May 14 04:00:34 MST 2011
33         - removed unnecessary loading of MIME::Base64 module
34                 -- thanks to dolmen for pointing this out
35
36 5.61  Wed Mar  9 05:26:36 MST 2011
37         - corrected bug in 'algorithm' method
38         - fixed -x option in Makefile.PL
39                 -- not often used since it deliberately excludes
40                         all 64-bit SHA transforms
41         - addressed minor documentation oversights
42
43 5.60  Thu Mar  3 05:26:42 MST 2011
44         - added new SHA-512/224 and SHA-512/256 transforms
45                 -- ref. NIST Draft FIPS 180-4 (February 2011)
46         - simplified shasum by removing duplicative text
47         - improved efficiency of Addfile
48                 -- expensive -T test now occurs only in portable mode
49
50 5.50  Tue Dec 14 06:20:08 MST 2010
51         - adopted convention that '-' always means STDIN
52                 -- actual filename '-' accessed as './-'
53                 -- accords with behavior of sha1sum/md5sum
54         - corrected undefined subroutine oversight in shasum
55                 -- inadvertent migration of _bail() from SHA.pm
56
57 5.49  Sun Dec 12 07:22:04 MST 2010
58         - modified Addfile to accept all POSIX filenames
59                 -- standard allows all characters except NUL and '/'
60         - updated shasum to more closely mimic sha1sum/md5sum
61                 -- added "backslash processing" to handle newlines
62                         and backslashes in filenames
63                 -- now accepts all POSIX filenames via Addfile
64                 -- thanks to Sean Burke for identifying edge cases
65
66 5.48  Mon Jan  4 16:32:52 MST 2010
67         - fixed "shasum -a0" option (ref. rt.cpan.org #53319)
68                 -- incorrectly accepted 0 as a valid algorithm
69                         -- thanks to Zefram for patch
70         - updated URL for NIST test vectors
71                 -- ref. files t/nistbit.t, t/nistbyte.t
72                         -- thanks to Leon Brocard for patch
73
74 5.47  Wed Apr 30 04:00:54 MST 2008
75         - modified Makefile.PL to install in core for Perls >= 5.10
76                 -- thanks to Jerry Hedden for patch
77         - changed from #include <> to #include "" in SHA.xs
78                 -- some platforms not able to find SHA source files
79                         -- thanks to Alexandr Ciornii for testing
80         - moved .pm file to appropriate lib directory
81         - minor addition to META.yml
82
83 5.46  Wed Apr  9 05:04:00 MST 2008
84         - modified Addfile to recognize leading and trailing
85                 whitespace in filenames (ref. rt.cpan.org #34690)
86         - minor C source code modification (ref. hmac.c)
87         - use const in sha.c for clean builds with -Wwrite-strings
88                 -- thanks to Robin Barker for patch
89
90 5.45  Tue Jun 26 02:36:00 MST 2007
91         - extended portability to earlier Perls
92                 -- works on Perl 5.003 and later
93                 -- thanks to Jim Doble for testing on legacy platforms
94         - updated META.yml to conform to current META spec (1.3)
95         - minor documentation fixes
96
97 5.44  Sat Oct 14 00:42:44 MST 2006
98         - removed SIGNATURE file from distribution
99                 -- spurious errors from CPANPLUS can break build
100         - eliminated ppport.h header file
101                 -- significantly reduces size of distribution
102         - modified C functions in src/hmac.c to use ANSI prototypes
103                 -- thanks to Jarkko Hietaniemi for patch
104
105 5.43  Sat Aug  5 02:36:18 MST 2006
106         - undid Perl Best Practice of favoring 3-argument "open"
107                 -- 3-arg version uses different semantics for "-"
108                         causing bugs in addfile and shasum
109         - modified underlying C functions to use ANSI prototypes
110                 -- requested by Steve Hay (ref. Smoke [5.9.4] 28630)
111                 -- K&R style was causing numerous warnings from
112                         Borland compiler
113
114 5.42  Mon Jul 24 04:04:40 MST 2006
115         - minor code changes suggested by Perl::Critic
116                 -- e.g. no bareword filehandles, no 2-argument open's
117         - updated public key (ref. B538C51C)
118                 -- previous one (0AF563FE) expired July 2, 2006
119         - added documentation to warn that Base64 digests are NOT padded
120                 -- padding must be done by user if interoperability
121                         with other software is required
122
123 5.41  Sat Jun  3 01:50:46 MST 2006
124         - corrected addfile
125                 -- process $file argument as a filehandle unless passed
126                         as a SCALAR (which indicates a file name)
127
128 5.40  Fri Jun  2 04:00:30 MST 2006
129         - modified addfile to accept indirect filehandles
130                 -- ref. rt.cpan.org #19627 and #19641
131
132 5.39  Sun May 28 03:22:24 MST 2006
133         - modified shasum to warn rather than die for file errors
134                 -- to follow conventions of GNU sha1sum/md5sum
135
136 5.38  Thu May 25 02:02:02 MST 2006
137         - added new capabilities to the "addfile" method
138                 -- now able to accept file names as well as handles
139                 -- includes mode for portable digest calculation
140                         -- thanks to Adam Kennedy for emails and ideas
141                                 ref. File::LocalizeNewlines
142         - used expanded addfile interface to simplify shasum (sumfile)
143                 -- regex a tad less general than 5.37, but handles all
144                         known newline variants in UNIX/Windows/MacOS
145         - enhanced WARNING messages from shasum checkfile processing
146                 -- to mimic behavior of md5sum
147
148 5.37  Mon May  8 04:30:09 MST 2006
149         - modified shasum to avoid file slurping (ref. sub sumfile)
150         - improved error handling of checksum files in shasum
151                 -- to better mimic the behavior of md5sum
152         - refined line-break regex in shasum (ref. sub sumfile)
153                 -- catches multiple CR's preceding LF
154                         thanks to Gisle Aas for suggested patch
155         - changed loop vars to signed int's in shadump (ref. src/sha.c)
156                 -- to prevent type mismatch warnings
157
158 5.36  Mon May  8 01:38:36 MST 2006
159         - fixed the "portable" option in shasum
160                 -- normalize line-breaks in text files only
161
162 5.35  Thu May  4 16:54:42 MST 2006
163         - added "portable" option to shasum
164                 -- to make digests match across Windows/Unix/MacOS
165         - enabled bundling of shasum command line options
166                 -- to mimic behavior of md5sum
167         - removed \r's from text files in t/nist directory
168                 -- resolves SIGNATURE clashes (rt.cpan.org #18983)
169         - changed suffix on SHA64_MAX (src/sha.h) to ULL
170                 -- eliminates gcc warnings (rt.cpan.org #18988)
171         - specified minimum Perl version for module and Makefile.PL
172                 -- closes rt.cpan.org #18984
173
174 5.34  Thu Feb  2 18:55:40 MST 2006
175         - removed Unix-style pathnames in test scripts
176                 -- causing problems on OpenVMS
177                 -- thanks to Steve Peters for patch
178         - included latest version of Perl Portability header (ppport.h)
179         - added PERL_CORE check to test scripts
180                 -- allows module to be built into Perl distribution
181
182 5.32  Fri Dec  2 02:32:20 MST 2005
183         - added POD section to shasum script
184                 -- thanks to Gunnar Wolf for patch
185         - made minor code changes to silence compiler warnings
186                 -- resulting from signed/unsigned integer mixing
187         - inserted code in test scripts for POD checking
188                 -- to recover gracefully if Test::More isn't installed
189
190 5.31  Mon Sep  5 00:52:42 MST 2005
191         - added standard tests for pod and pod-coverage checking
192         - inserted subtest to check for failure when using
193                 unrecognized SHA algorithm
194
195 5.30  Sat Aug 20 16:46:08 MST 2005
196         - updated docs with recent NIST statement on SHA-1
197                 -- advises use of larger and stronger hash functions
198                         (i.e. SHA-224/256/384/512) for new developments
199
200 5.29  Sun Aug 14 04:48:34 MST 2005
201         - added explicit casts in "shaload" routine (ref. "ldvals")
202                 -- thanks to E. Allen Smith for pointing out SGI compiler
203                         warnings on IPxx-irix platforms
204         - updated docs with cautionary note about SHA-1
205
206 5.28  Wed Nov 10 15:33:20 MST 2004
207         - provided more flexible formatting of SHA state files
208                 -- entries may now contain embedded whitespace
209                         for improved readability
210         - minor code cleanups
211
212 5.27  Sun Oct 24 02:54:00 MST 2004
213         - minor code cleanups
214                 -- reduces size of dump files for SHA-1/224/256
215
216 5.26  Thu Oct  7 14:52:00 MST 2004
217         - streamlined distribution
218                 -- reduced NIST vector tests from 200 to 20
219                         -- former number was overkill
220                         -- distro now downloads and builds more quickly
221         - rewrote SYNOPSIS sections in pod file
222         - made additional tweaks to t/8-shasum.t for portability
223         - cleaned up test scripts
224
225 5.25  Sun Sep 12 18:48:00 MST 2004
226         - removed non-essential test script
227                 -- t/8-shasum.t causes problems on sparc64-linux
228         - reverted to using eval "require $module" in shasum
229
230 5.24  Sun Sep 12 02:50:18 MST 2004
231         - modified shasum to use barewords in "require" statements
232                 -- ref. perl.cpan.testers (157305)
233
234 5.23  Thu Sep  9 23:06:18 MST 2004
235         - corrected bug in test script
236                 -- use blib when invoking perl as an external
237                         command in t/8-shasum.t
238
239 5.22  Tue Sep  7 19:12:40 MST 2004
240         - broadened SHA-384/512 support
241                 -- to compilers with no ULLONG_MAX in limits.h
242                         -- e.g IBM C (xlC 6.0.0) on AIX 4.3.3
243                         -- thanks to Chris Carey for suggestions
244                                 and technical expertise
245         - improved use of static storage class in transforms
246                 -- detection of Intel arch. now done in Makefile.PL
247                 -- NB: static not used if compiling for thread safety
248         - minor changes to documentation
249
250 5.21  Mon Aug 23 04:02:00 MST 2004
251         - removed 64-bit constant expressions from #if statements
252                 -- ref. src/sha.h (lines 55, 58, and 61)
253                 -- even if compiler supports long long's, preprocessor
254                         may use long's when evaluating expressions
255         - improved test script for "shasum" (t/8-shasum.t)
256                 -- exercises check file option (-c)
257
258 5.20  Sun Aug 15 04:24:48 MST 2004
259         - introduced "shasum" script
260                 -- mimics the usage and behavior of "md5sum"
261                 -- adds "-a" option to select SHA algorithm
262                 -- for help, just type "shasum -h"
263
264 5.10  Fri Aug  6 02:04:38 MST 2004
265         - simplified module documentation
266                 -- made it consistent with Digest::SHA::PurePerl docs
267
268 5.03  Sat Jul 31 00:00:48 MST 2004
269         - corrected HMAC-SHA-384/512 bug (cpan #7181, Adam Woodbury)
270                 -- code was using hardwired blocksize for SHA-1/256
271                         -- ref. src/hmac.c, src/hmac.h
272
273 5.02  Thu Jul 29 02:48:00 MST 2004
274         - updated documentation and "dump-load.t" test script
275                 -- to be consistent with Digest::SHA::PurePerl
276         - included a SIGNATURE file
277                 -- for stronger authentication of module contents
278                         -- ref. Module::Signature on CPAN
279         - corrected embarrassing misspelling in docs
280                 -- apologies to Gisle Aas
281
282 5.01  Fri May 21 13:08:12 MST 2004
283         - check for undefined SHA handle when calling "shaclose()"
284                 -- prevents intermittent cleanup errors during
285                         global object destruction
286
287 5.00  Fri May 14 04:45:00 MST 2004
288         - minor documentation fixes
289         - restored classical style of version numbering (X.YZ)
290                 -- previous X.Y.Z style caused installation difficulties
291                         when using CPANPLUS
292
293 4.3.3 Wed May  5 00:30:40 MST 2004
294         - fixed bug in "strto64()" function
295                 -- caused problems in state files with CR/LF pairs
296                 -- thanks to Martin Thurn for testing support
297
298 4.3.2 Wed Apr 28 03:56:00 MST 2004
299         - added Makefile.PL options
300                 -- thread-safety: -t
301                 -- exclude 384/512 support: -x
302                 -- e.g. perl Makefile.PL -t
303         - temporarily suppress dump/load tests for SHA-384/512
304                 -- pending clarification of problem on sun4u sparc
305
306 4.3.1 Thu Mar  4 02:54:00 MST 2004
307         - removed unused functions from XS file
308                 -- reduces size of compiled objects
309         - simplified implementation of Digest::SHA object
310                 -- now a blessed SHAPtr ref instead of blessed array ref
311                 -- results in slight speed-up of OO operations
312         - streamlined underlying C source
313                 -- used macros to consolidate repetitive code
314         - rewrote test scripts to depend on Test rather than Test::More
315                 -- allows module to be checked in minimal Perl environments
316         - added compilation option for thread-safety
317                 -- overrides use of static arrays
318
319 4.3.0 Sat Feb  7 02:58:00 MST 2004
320         - included SHA-384/512 support if using Microsoft C/C++
321                 -- uses MSVC's __int64 in place of "long long"
322         - enhanced portability and efficiency on diverse platforms
323                 -- automatically sets up optimal types for 32/64-bit ops
324         - improved test scripts for better reporting
325                 -- many thanks to Alex Muntada for helpful suggestions
326
327 4.2.2 Sat Jan 31 17:10:20 MST 2004
328         - repaired 32-bit SHA operations for 8-byte longs
329
330 4.2.1 Sat Jan 24 00:56:54 MST 2004
331         - modified I/O and memory management in underlying C code
332                 -- uses Perl libraries when compiled as CPAN module
333                         -- otherwise defaults to ANSI C libraries
334                 -- bypasses problems in MSWin multi-threaded Perls
335                         -- avoids "Free to wrong pool" error
336                 -- special thanks to Robert Gilmour and Brian Gladman
337                         for technical guidance and testing
338
339 4.2.0 Sat Dec 27 16:08:00 MST 2003
340         - added support for recently-announced SHA-224 algorithm
341                 -- ref. FIPS 180-2 Change Notice 1
342                 -- also includes HMAC-SHA-224
343
344 4.1.0 Thu Dec 25 00:58:00 MST 2003
345         - repaired "nist-vectors" test scripts for MSWin32 portability
346                 -- use binmode for data files
347
348 4.0.9 Wed Dec 24 02:58:22 MST 2003
349         - use canonical file specs in test scripts
350                 -- enhances portability across different OSes
351         - modify type declarations of objects in XS file
352                 -- re-declare as (SV *) and cast to (AV *) SvRV(self)
353                         -- in response to AVPtr problem on MSWin32
354
355 4.0.8 Thu Dec 18 23:32:00 MST 2003
356         - inherits from Digest::base if installed
357                 -- also checks for MIME::Base64
358                 -- still fully-functional if neither are installed
359         - added buffer overflow protection in underlying C code
360                 -- ref. shahex() and shabase64() routines
361                 -- prior code appeared impossible to exploit, but ...
362                         -- better safe than sorry
363                 -- does not impact runtime efficiency
364         - minor code cleanup
365
366 4.0.7 Sat Dec 13 00:48:24 MST 2003
367         - check for undefined SHA handle when calling "shaclose()"
368                 -- was causing cleanup err during global destruction
369
370 4.0.6 Thu Dec 11 02:18:00 MST 2003
371         - more optimization and streamlining
372                 -- a bit faster on non-big-endians (e.g. Intel)
373         - rewrote time-critical functions and methods in XS
374         - removed unused C functions from source files
375
376 4.0.5 Sat Dec  6 00:02:24 MST 2003
377         - performance optimizations
378                 -- rewrote "add" method in XS
379                 -- unrolled loops in sha256 transform
380
381 4.0.4 Thu Dec  4 00:07:00 MST 2003
382         - made Digest::SHA into a self-contained module
383                 -- no longer depends on Digest::base
384                 -- more convenient for users
385                         -- no need to install Digest:: module
386
387 4.0.3 Wed Dec  3 00:01:20 MST 2003
388         - Digest::SHA now a subclass of Digest::base
389                 -- inherits hexdigest/b64digest/addfile methods
390         - added "hashsize" method
391         - removed old "shaopen()/shawrite()/..." legacy code
392                 -- in favor of standard, streamlined OO interface
393         - renamed test vector files from NIST
394                 -- prevents problems on 8+3 filesystems
395         - added test for Dave Ireland's SHA-256 vector
396
397 4.0.0 Sat Nov 29 21:14:09 MST 2003
398         - major streamlining of interface (hence, major version change)
399                 -- coordinated with Gisle Aas and J. Duque
400                         -- goal is to produce a single SHA module
401                 -- adheres to OO and functional styles of Digest::
402                 -- greatly reduces the number of interface functions
403                 -- old functions still supported
404                         -- use Digest::SHA ':legacy'
405                         -- will be deprecated in near future
406         - rewrote all test scripts to match new interface
407                 -- very easy to modify all 281 tests
408                 -- old interface maps cleanly to new one
409
410 3.0   Wed Nov 26 05:02:34 MST 2003
411         - added functions that conform to Digest:: interface
412                 -- both functional and OO styles
413                         -- byte-oriented data only
414                 -- continue to support original interface as well
415                         -- necessary for bit-oriented data
416         - supplied formal test vectors for HMAC-SHA-256
417                 -- from draft-ietf-ipsec-ciph-sha-256-01.txt
418         - included tests for all OO methods
419
420 2.4   Sat Nov 22 17:10:22 MST 2003
421         - code cleanup
422                 -- "sha.c" now completely free of #ifdef's
423         - modularized all 64-bit (long long) code
424         - improved readability of header files
425         - simplified logic of "fixdump" utility
426
427 2.3   Wed Nov 19 03:54:31 MST 2003
428         - minor optimizations and code cleanup
429                 -- improved maintainability by reducing #ifdef's
430                 -- sha1 transform code now easier to follow
431         - streamlined shadump/shaload file format
432                 -- eliminated special "HQ" entry
433                 -- state now held in "H" for all transforms
434                 -- supplied "fixdump" utility to convert old format
435         - SHA-384/512 functions now return NULL for no 64-bit operations
436                 -- previously they were undefined
437                 -- no longer necessary to use eval's to test for presence
438
439 2.2   Sun Nov 16 01:54:00 MST 2003
440         - optimized the performance of the SHA-1 transform
441                 -- around 20-30% faster than previous version
442                 -- achieved by loop unrolling and assignment consolidation
443         - enhanced shaload/shadump to allow interaction with stdin/stdout
444                 -- "$filename" argument now optional
445
446 2.1   Sun Nov  9 03:28:04 MST 2003
447         - simplified data input routines
448                 -- length argument now optional for byte data
449                         (special thanks to Jeffrey Friedl for this idea)
450                 -- interface still compatible with earlier versions
451                         -- changes will not affect existing client code
452         - streamlined underlying C code for easier maintenance
453         - provided additional tests for persistent data
454
455 2.0   Sat Nov  1 03:55:36 MST 2003
456         - added functions for HMAC-SHA-1/256/384/512 (FIPS PUB 198)
457         - shadump/shaload files now compatible between 32/64-bit machines
458
459 1.01  Sat Oct 25 02:44:55 MST 2003
460         - package now downloads and installs much faster
461         - reduced distribution size by 80%
462                 -- pruned extensive NIST vectors to a useful subset
463                 -- still possible to test all vectors if desired
464                         --- see "t/nist/COPYRIGHT" file for details
465         - added routines to provide persistent storage of SHA states
466                 -- shadump() and shaload()
467         - reduced runtime of large bitstring tests (gillogly-hard)
468                 -- illustrates usefulness of shadump()/shaload()
469
470 1.0   Sat Oct 18 17:35:07 MST 2003
471         - documentation fixes
472         - code cleanup: no more compiler warnings from gcc -Wall
473         - added code to allow reading of intermediate digest state
474                 -- shahex() prior to shafinish() returns current state
475
476 0.9   Thu Oct  9 20:43:54 MST 2003
477         - version updated to reflect portability check and passing
478                 of all tests (1401)
479
480 0.01  Wed Oct  8 22:28:05 2003
481         - original version; created by h2xs 1.22 with options
482                 -x -A -n Digest::SHA sha.h