Upgrade to Digest-SHA-5.38.
[p5sagit/p5-mst-13.2.git] / ext / Digest / SHA / Changes
1 Revision history for Perl extension Digest::SHA.
2
3 5.38  Thu May 25 02:02:02 MST 2006
4         - added new capabilities to the "addfile" method
5                 -- now able to accept file names as well as handles
6                 -- includes mode for portable digest calculation
7                         -- thanks to Adam Kennedy for emails and ideas
8                                 ref. File::LocalizeNewlines
9         - used expanded addfile interface to simplify shasum (sumfile)
10                 -- regex a tad less general than 5.37, but handles all
11                         known newline variants in UNIX/Windows/MacOS
12         - enhanced WARNING messages from shasum checkfile processing
13                 -- to mimic behavior of md5sum
14
15 5.37  Mon May  8 04:30:09 MST 2006
16         - modified shasum to avoid file slurping (ref. sub sumfile)
17         - improved error handling of checksum files in shasum
18                 -- to better mimic the behavior of md5sum
19         - refined line-break regex in shasum (ref. sub sumfile)
20                 -- catches multiple CR's preceding LF
21                         thanks to Gisle Aas for suggested patch
22         - changed loop vars to signed int's in shadump (ref. src/sha.c)
23                 -- to prevent type mismatch warnings
24
25 5.36  Mon May  8 01:38:36 MST 2006
26         - fixed the "portable" option in shasum
27                 -- normalize line-breaks in text files only
28
29 5.35  Thu May  4 16:54:42 MST 2006
30         - added "portable" option to shasum
31                 -- to make digests match across Windows/Unix/MacOS
32         - enabled bundling of shasum command line options
33                 -- to mimic behavior of md5sum
34         - removed \r's from text files in t/nist directory
35                 -- resolves SIGNATURE clashes (rt.cpan.org #18983)
36         - changed suffix on SHA64_MAX (src/sha.h) to ULL
37                 -- eliminates gcc warnings (rt.cpan.org #18988)
38         - specified minimum Perl version for module and Makefile.PL
39                 -- closes rt.cpan.org #18984
40
41 5.34  Thu Feb  2 18:55:40 MST 2006
42         - removed Unix-style pathnames in test scripts
43                 -- causing problems on OpenVMS
44                 -- thanks to Steve Peters for patch
45         - included latest version of Perl Portability header (ppport.h)
46         - added PERL_CORE check to test scripts
47                 -- allows module to be built into Perl distribution
48
49 5.32  Fri Dec  2 02:32:20 MST 2005
50         - added POD section to shasum script
51                 -- thanks to Gunnar Wolf for patch
52         - made minor code changes to silence compiler warnings
53                 -- resulting from signed/unsigned integer mixing
54         - inserted code in test scripts for POD checking
55                 -- to recover gracefully if Test::More isn't installed
56
57 5.31  Mon Sep  5 00:52:42 MST 2005
58         - added standard tests for pod and pod-coverage checking
59         - inserted subtest to check for failure when using
60                 unrecognized SHA algorithm
61
62 5.30  Sat Aug 20 16:46:08 MST 2005
63         - updated docs with recent NIST statement on SHA-1
64                 -- advises use of larger and stronger hash functions
65                         (i.e. SHA-224/256/384/512) for new developments
66
67 5.29  Sun Aug 14 04:48:34 MST 2005
68         - added explicit casts in "shaload" routine (ref. "ldvals")
69                 -- thanks to E. Allen Smith for pointing out SGI compiler
70                         warnings on IPxx-irix platforms
71         - updated docs with cautionary note about SHA-1
72
73 5.28  Wed Nov 10 15:33:20 MST 2004
74         - provided more flexible formatting of SHA state files
75                 -- entries may now contain embedded whitespace
76                         for improved readability
77         - minor code cleanups
78
79 5.27  Sun Oct 24 02:54:00 MST 2004
80         - minor code cleanups
81                 -- reduces size of dump files for SHA-1/224/256
82
83 5.26  Thu Oct  7 14:52:00 MST 2004
84         - streamlined distribution
85                 -- reduced NIST vector tests from 200 to 20
86                         -- former number was overkill
87                         -- distro now downloads and builds more quickly
88         - rewrote SYNOPSIS sections in pod file
89         - made additional tweaks to t/8-shasum.t for portability
90         - cleaned up test scripts
91
92 5.25  Sun Sep 12 18:48:00 MST 2004
93         - removed non-essential test script
94                 -- t/8-shasum.t causes problems on sparc64-linux
95         - reverted to using eval "require $module" in shasum
96
97 5.24  Sun Sep 12 02:50:18 MST 2004
98         - modified shasum to use barewords in "require" statements
99                 -- ref. perl.cpan.testers (157305)
100
101 5.23  Thu Sep  9 23:06:18 MST 2004
102         - corrected bug in test script
103                 -- use blib when invoking perl as an external
104                         command in t/8-shasum.t
105
106 5.22  Tue Sep  7 19:12:40 MST 2004
107         - broadened SHA-384/512 support
108                 -- to compilers with no ULLONG_MAX in limits.h
109                         -- e.g IBM C (xlC 6.0.0) on AIX 4.3.3
110                         -- thanks to Chris Carey for suggestions
111                                 and technical expertise
112         - improved use of static storage class in transforms
113                 -- detection of Intel arch. now done in Makefile.PL
114                 -- NB: static not used if compiling for thread safety
115         - minor changes to documentation
116
117 5.21  Mon Aug 23 04:02:00 MST 2004
118         - removed 64-bit constant expressions from #if statements
119                 -- ref. src/sha.h (lines 55, 58, and 61)
120                 -- even if compiler supports long long's, preprocessor
121                         may use long's when evaluating expressions
122         - improved test script for "shasum" (t/8-shasum.t)
123                 -- exercises check file option (-c)
124
125 5.20  Sun Aug 15 04:24:48 MST 2004
126         - introduced "shasum" script
127                 -- mimics the usage and behavior of "md5sum"
128                 -- adds "-a" option to select SHA algorithm
129                 -- for help, just type "shasum -h"
130
131 5.10  Fri Aug  6 02:04:38 MST 2004
132         - simplified module documentation
133                 -- made it consistent with Digest::SHA::PurePerl docs
134
135 5.03  Sat Jul 31 00:00:48 MST 2004
136         - corrected HMAC-SHA-384/512 bug (cpan #7181, Adam Woodbury)
137                 -- code was using hardwired blocksize for SHA-1/256
138                         -- ref. src/hmac.c, src/hmac.h
139
140 5.02  Thu Jul 29 02:48:00 MST 2004
141         - updated documentation and "dump-load.t" test script
142                 -- to be consistent with Digest::SHA::PurePerl
143         - included a SIGNATURE file
144                 -- for stronger authentication of module contents
145                         -- ref. Module::Signature on CPAN
146         - corrected embarrassing misspelling in docs
147                 -- apologies to Gisle Aas
148
149 5.01  Fri May 21 13:08:12 MST 2004
150         - check for undefined SHA handle when calling "shaclose()"
151                 -- prevents intermittent cleanup errors during
152                         global object destruction
153
154 5.00  Fri May 14 04:45:00 MST 2004
155         - minor documentation fixes
156         - restored classical style of version numbering (X.YZ)
157                 -- previous X.Y.Z style caused installation difficulties
158                         when using CPANPLUS
159
160 4.3.3 Wed May  5 00:30:40 MST 2004
161         - fixed bug in "strto64()" function
162                 -- caused problems in state files with CR/LF pairs
163                 -- thanks to Martin Thurn for testing support
164
165 4.3.2 Wed Apr 28 03:56:00 MST 2004
166         - added Makefile.PL options
167                 -- thread-safety: -t
168                 -- exclude 384/512 support: -x
169                 -- e.g. perl Makefile.PL -t
170         - temporarily suppress dump/load tests for SHA-384/512
171                 -- pending clarification of problem on sun4u sparc
172
173 4.3.1 Thu Mar  4 02:54:00 MST 2004
174         - removed unused functions from XS file
175                 -- reduces size of compiled objects
176         - simplified implementation of Digest::SHA object
177                 -- now a blessed SHAPtr ref instead of blessed array ref
178                 -- results in slight speed-up of OO operations
179         - streamlined underlying C source
180                 -- used macros to consolidate repetitive code
181         - rewrote test scripts to depend on Test rather than Test::More
182                 -- allows module to be checked in minimal Perl environments
183         - added compilation option for thread-safety
184                 -- overrides use of static arrays
185
186 4.3.0 Sat Feb  7 02:58:00 MST 2004
187         - included SHA-384/512 support if using Microsoft C/C++
188                 -- uses MSVC's __int64 in place of "long long"
189         - enhanced portability and efficiency on diverse platforms
190                 -- automatically sets up optimal types for 32/64-bit ops
191         - improved test scripts for better reporting
192                 -- many thanks to Alex Muntada for helpful suggestions
193
194 4.2.2 Sat Jan 31 17:10:20 MST 2004
195         - repaired 32-bit SHA operations for 8-byte longs
196
197 4.2.1 Sat Jan 24 00:56:54 MST 2004
198         - modified I/O and memory management in underlying C code
199                 -- uses Perl libraries when compiled as CPAN module
200                         -- otherwise defaults to ANSI C libraries
201                 -- bypasses problems in MSWin multi-threaded Perls
202                         -- avoids "Free to wrong pool" error
203                 -- special thanks to Robert Gilmour and Brian Gladman
204                         for technical guidance and testing
205
206 4.2.0 Sat Dec 27 16:08:00 MST 2003
207         - added support for recently-announced SHA-224 algorithm
208                 -- ref. FIPS 180-2 Change Notice 1
209                 -- also includes HMAC-SHA-224
210
211 4.1.0 Thu Dec 25 00:58:00 MST 2003
212         - repaired "nist-vectors" test scripts for MSWin32 portability
213                 -- use binmode for data files
214
215 4.0.9 Wed Dec 24 02:58:22 MST 2003
216         - use canonical file specs in test scripts
217                 -- enhances portability across different OSes
218         - modify type declarations of objects in XS file
219                 -- re-declare as (SV *) and cast to (AV *) SvRV(self)
220                         -- in response to AVPtr problem on MSWin32
221
222 4.0.8 Thu Dec 18 23:32:00 MST 2003
223         - inherits from Digest::base if installed
224                 -- also checks for MIME::Base64
225                 -- still fully-functional if neither are installed
226         - added buffer overflow protection in underlying C code
227                 -- ref. shahex() and shabase64() routines
228                 -- prior code appeared impossible to exploit, but ...
229                         -- better safe than sorry
230                 -- does not impact runtime efficiency
231         - minor code cleanup
232
233 4.0.7 Sat Dec 13 00:48:24 MST 2003
234         - check for undefined SHA handle when calling "shaclose()"
235                 -- was causing cleanup err during global destruction
236
237 4.0.6 Thu Dec 11 02:18:00 MST 2003
238         - more optimization and streamlining
239                 -- a bit faster on non-big-endians (e.g. Intel)
240         - rewrote time-critical functions and methods in XS
241         - removed unused C functions from source files
242
243 4.0.5 Sat Dec  6 00:02:24 MST 2003
244         - performance optimizations
245                 -- rewrote "add" method in XS
246                 -- unrolled loops in sha256 transform
247
248 4.0.4 Thu Dec  4 00:07:00 MST 2003
249         - made Digest::SHA into a self-contained module
250                 -- no longer depends on Digest::base
251                 -- more convenient for users
252                         -- no need to install Digest:: module
253
254 4.0.3 Wed Dec  3 00:01:20 MST 2003
255         - Digest::SHA now a subclass of Digest::base
256                 -- inherits hexdigest/b64digest/addfile methods
257         - added "hashsize" method
258         - removed old "shaopen()/shawrite()/..." legacy code
259                 -- in favor of standard, streamlined OO interface
260         - renamed test vector files from NIST
261                 -- prevents problems on 8+3 filesystems
262         - added test for Dave Ireland's SHA-256 vector
263
264 4.0.0 Sat Nov 29 21:14:09 MST 2003
265         - major streamlining of interface (hence, major version change)
266                 -- coordinated with Gisle Aas and J. Duque
267                         -- goal is to produce a single SHA module
268                 -- adheres to OO and functional styles of Digest::
269                 -- greatly reduces the number of interface functions
270                 -- old functions still supported
271                         -- use Digest::SHA ':legacy'
272                         -- will be deprecated in near future
273         - rewrote all test scripts to match new interface
274                 -- very easy to modify all 281 tests
275                 -- old interface maps cleanly to new one
276
277 3.0   Wed Nov 26 05:02:34 MST 2003
278         - added functions that conform to Digest:: interface
279                 -- both functional and OO styles
280                         -- byte-oriented data only
281                 -- continue to support original interface as well
282                         -- necessary for bit-oriented data
283         - supplied formal test vectors for HMAC-SHA-256
284                 -- from draft-ietf-ipsec-ciph-sha-256-01.txt
285         - included tests for all OO methods
286
287 2.4   Sat Nov 22 17:10:22 MST 2003
288         - code cleanup
289                 -- "sha.c" now completely free of #ifdef's
290         - modularized all 64-bit (long long) code
291         - improved readability of header files
292         - simplified logic of "fixdump" utility
293
294 2.3   Wed Nov 19 03:54:31 MST 2003
295         - minor optimizations and code cleanup
296                 -- improved maintainability by reducing #ifdef's
297                 -- sha1 transform code now easier to follow
298         - streamlined shadump/shaload file format
299                 -- eliminated special "HQ" entry
300                 -- state now held in "H" for all transforms
301                 -- supplied "fixdump" utility to convert old format
302         - SHA-384/512 functions now return NULL for no 64-bit operations
303                 -- previously they were undefined
304                 -- no longer necessary to use eval's to test for presence
305
306 2.2   Sun Nov 16 01:54:00 MST 2003
307         - optimized the performance of the SHA-1 transform
308                 -- around 20-30% faster than previous version
309                 -- achieved by loop unrolling and assignment consolidation
310         - enhanced shaload/shadump to allow interaction with stdin/stdout
311                 -- "$filename" argument now optional
312
313 2.1   Sun Nov  9 03:28:04 MST 2003
314         - simplified data input routines
315                 -- length argument now optional for byte data
316                         (special thanks to Jeffrey Friedl for this idea)
317                 -- interface still compatible with earlier versions
318                         -- changes will not affect existing client code
319         - streamlined underlying C code for easier maintenance
320         - provided additional tests for persistent data
321
322 2.0   Sat Nov  1 03:55:36 MST 2003
323         - added functions for HMAC-SHA-1/256/384/512 (FIPS PUB 198)
324         - shadump/shaload files now compatible between 32/64-bit machines
325
326 1.01  Sat Oct 25 02:44:55 MST 2003
327         - package now downloads and installs much faster
328         - reduced distribution size by 80%
329                 -- pruned extensive NIST vectors to a useful subset
330                 -- still possible to test all vectors if desired
331                         --- see "t/nist/COPYRIGHT" file for details
332         - added routines to provide persistent storage of SHA states
333                 -- shadump() and shaload()
334         - reduced runtime of large bitstring tests (gillogly-hard)
335                 -- illustrates usefulness of shadump()/shaload()
336
337 1.0   Sat Oct 18 17:35:07 MST 2003
338         - documentation fixes
339         - code cleanup: no more compiler warnings from gcc -Wall
340         - added code to allow reading of intermediate digest state
341                 -- shahex() prior to shafinish() returns current state
342
343 0.9   Thu Oct  9 20:43:54 MST 2003
344         - version updated to reflect portability check and passing
345                 of all tests (1401)
346
347 0.01  Wed Oct  8 22:28:05 2003
348         - original version; created by h2xs 1.22 with options
349                 -x -A -n Digest::SHA sha.h