Blame Changes

Packit fa4fcc
Revision history for Perl extension Digest::SHA.
Packit fa4fcc
Packit fa4fcc
6.02  Fri Apr 20 16:25:30 MST 2018
Packit fa4fcc
	- silenced compiler warnings from VS2017
Packit fa4fcc
		-- ref. rt.cpan.org #124477
Packit fa4fcc
		-- thanks to Sergey Aleynikov for diagnostics
Packit fa4fcc
	- modified addfile to return error when given a directory name
Packit fa4fcc
		-- makes behavior consistent with GNU coreutils shaXsum
Packit fa4fcc
		-- thanks to Scott Baker for pointing this out
Packit fa4fcc
Packit fa4fcc
6.01  Mon Dec 25 00:08:08 MST 2017
Packit fa4fcc
	- added "--ignore-missing" and "--strict" options to shasum
Packit fa4fcc
		-- consistent with GNU coreutils
Packit fa4fcc
		-- ref. rt.cpan.org #123897
Packit fa4fcc
	- removed PERL_CORE preambles from test scripts
Packit fa4fcc
		-- preambles no longer needed for core testing
Packit fa4fcc
		-- thanks to Chris Williams for patch
Packit fa4fcc
		-- ref. rt.cpan.org #123863
Packit fa4fcc
Packit fa4fcc
6.00  Fri Dec  8 22:44:44 MST 2017
Packit fa4fcc
	- added "tag" option (BSD-style checksums) to shasum
Packit fa4fcc
		-- consistent with GNU sha1sum, sha224sum, etc.
Packit fa4fcc
		-- thanks to Christopher Tubbs for suggestion
Packit fa4fcc
	- modified SHA.pm to use XSLoader
Packit fa4fcc
		-- falls back to DynaLoader if necessary
Packit fa4fcc
	- decoupled Digest::SHA and Digest::SHA::PurePerl
Packit fa4fcc
		-- scripts/tests in each module now fully independent
Packit fa4fcc
		-- Digest::SHA::PurePerl to be phased out eventually
Packit fa4fcc
			-- past versions will remain available
Packit fa4fcc
Packit fa4fcc
5.98  Wed Oct  4 00:40:02 MST 2017
Packit fa4fcc
	- removed "portable" mode from shasum and addfile
Packit fa4fcc
		-- rarely used, mostly in outdated systems
Packit fa4fcc
		-- potentially confusing features (e.g. \r\r\n -> \n)
Packit fa4fcc
		-- Universal Newlines mode (-U) a much cleaner approach
Packit fa4fcc
			-- mimics Universal Newlines in Python
Packit fa4fcc
	- shasum now uses Digest::SHA explicitly
Packit fa4fcc
		-- no longer loads Digest::SHA::PurePerl as an option
Packit fa4fcc
			-- hence no need for -R switch
Packit fa4fcc
		-- Digest::SHA::PurePerl has its own shasum: shasumpp
Packit fa4fcc
Packit fa4fcc
5.97  Wed Sep  6 02:23:02 MST 2017
Packit fa4fcc
	- added 'quiet' option to shasum
Packit fa4fcc
		-- thanks to Chris David for suggestion and initial patch
Packit fa4fcc
		-- ref. rt.cpan.org #122750
Packit fa4fcc
	- expanded shasum --help message
Packit fa4fcc
		-- to explain use of escaped FILE names
Packit fa4fcc
Packit fa4fcc
5.96  Wed Jul 27 20:04:34 MST 2016
Packit fa4fcc
	- prevented shasum from possibly running malicious code
Packit fa4fcc
		-- remove '.' from @INC before module loading
Packit fa4fcc
		-- ref. rt.cpan.org #116513
Packit fa4fcc
	- namespace cleanup (ref. rt.cpan.org #105371 and #105372)
Packit fa4fcc
	- minor code and documentation tweaks
Packit fa4fcc
Packit fa4fcc
5.95  Sat Jan 10 12:15:36 MST 2015
Packit fa4fcc
	- modified the bit-ordering test (ref. t/bitorder.t)
Packit fa4fcc
		-- supplied directory-change preamble for CORE builds
Packit fa4fcc
Packit fa4fcc
5.94  Sat Jan 10 00:45:28 MST 2015
Packit fa4fcc
	- added support for threaded builds 
Packit fa4fcc
		-- PERL_GET_NO_CONTEXT, pTHX_, aTHX_, etc.
Packit fa4fcc
		-- employed 'const' storage class where possible
Packit fa4fcc
		-- ref. rt.cpan.org #101260
Packit fa4fcc
	- simplified shabits() routine (bitwise input buffering)
Packit fa4fcc
		-- slightly less efficient but easier to understand
Packit fa4fcc
		-- ref. rt.cpan.org #101344
Packit fa4fcc
	- minor documentation tweaks and additions
Packit fa4fcc
Packit fa4fcc
5.93  Sun Oct 26 06:00:48 MST 2014
Packit fa4fcc
	- corrected alignment problem in SHA struct (src/sha.h)
Packit fa4fcc
		-- thanks to H. Merijn Brand and J. Hietaniemi for 
Packit fa4fcc
			analysis and suggested patch
Packit fa4fcc
	- provided workaround in t/methods.t for unreliable -T test
Packit fa4fcc
		-- Some Perl 5.8's mistake text for binary
Packit fa4fcc
Packit fa4fcc
5.92  Sun Jun  1 00:15:44 MST 2014
Packit fa4fcc
	- fixed reserved-word clash when compiling with C++
Packit fa4fcc
		-- use 'classname' instead of 'class'
Packit fa4fcc
			-- ref. SHA.xs (rt.cpan.org #96090)
Packit fa4fcc
	- silenced MSC compiler warning about signed/unsigned comparison
Packit fa4fcc
		-- ref. SHA.xs (rt.cpan.org #95830)
Packit fa4fcc
Packit fa4fcc
5.91  Fri May 16 10:21:44 MST 2014
Packit fa4fcc
	- restored original 'addfile' for use on opened file handles
Packit fa4fcc
		-- allows callbacks in place of actual files
Packit fa4fcc
			-- ref. IO::Callback (rt.cpan.org #95643)
Packit fa4fcc
	- re-established inheritance from Digest::base
Packit fa4fcc
		-- to pick up future Digest enhancements automatically
Packit fa4fcc
	- cleaned up documentation
Packit fa4fcc
Packit fa4fcc
5.90  Wed May  7 07:57:08 MST 2014
Packit fa4fcc
	- consolidated all dynamic memory allocation into XSUBs
Packit fa4fcc
		-- streamlines referencing of SHA objects
Packit fa4fcc
		-- simplifies DESTROYing of objects
Packit fa4fcc
	- enhanced Makefile.PL to allow 'use warnings'
Packit fa4fcc
		-- automatically reverts to $^W for early Perls
Packit fa4fcc
	- scrubbed C and Perl code to remove all compiler warnings
Packit fa4fcc
Packit fa4fcc
5.89  Sat Apr 19 05:14:48 MST 2014
Packit fa4fcc
	- added universal newlines mode ("U") to addfile and shasum
Packit fa4fcc
		-- based on Python Universal Newlines concept
Packit fa4fcc
			-- newlines identical across MacOS, DOS, and UNIX
Packit fa4fcc
		-- will deprecate portable mode ("p") in future
Packit fa4fcc
			-- "U" mode is cleaner and more efficient
Packit fa4fcc
	- enhanced performance
Packit fa4fcc
		-- reduced number of dynamic memory allocations
Packit fa4fcc
		-- sped up addfile method with use of C code
Packit fa4fcc
			-- ref. SHA.xs (_addfilebin and _addfileuniv)
Packit fa4fcc
	- eliminated experimental -M option in favor of new -R option
Packit fa4fcc
		-- reverses order of digest module preference
Packit fa4fcc
		-- undocumented: for test and development use only
Packit fa4fcc
	- sealed memory leak in SHA.xs
Packit fa4fcc
		-- arose only with SvPVbyte exceptions during eval
Packit fa4fcc
	- patched inheritence bug (ref: rt.cpan.org #94830)
Packit fa4fcc
		-- use sv_isobject/sv_derived_from instead of sv_isa
Packit fa4fcc
	- added 'allocated' flag to SHA structure (ref. src/sha.h)
Packit fa4fcc
		-- to guard against Perl double frees
Packit fa4fcc
Packit fa4fcc
5.88  Mon Mar 17 08:46:10 MST 2014
Packit fa4fcc
	- added OUTPUT clause in SHA.xs to silence compiler warning
Packit fa4fcc
		-- ref. shaclose()
Packit fa4fcc
	- changed text file test (-T) to act on filehandles
Packit fa4fcc
		-- ref. addfile portable mode
Packit fa4fcc
		-- improves consistency when reading from STDIN
Packit fa4fcc
		-- still must act on filenames for early Perls (< 5.6)
Packit fa4fcc
	- added -M and -V options to shasum
Packit fa4fcc
		-- undocumented: for development and testing use only
Packit fa4fcc
Packit fa4fcc
5.87  Mon Feb 17 16:42:02 MST 2014
Packit fa4fcc
	- simplified capture of intermediate SHA states
Packit fa4fcc
		-- can now be done via strings (ref. getstate/putstate)
Packit fa4fcc
		-- substantially reduces size of src/sha.c
Packit fa4fcc
	- tightened code in SHA.xs
Packit fa4fcc
		-- added sv_isa checks when invoking methods
Packit fa4fcc
Packit fa4fcc
5.86  Thu Jan 30 08:24:28 MST 2014
Packit fa4fcc
	- improved the performance of hexadecimal output functions
Packit fa4fcc
		-- ref. 'shahex' in src/sha.c
Packit fa4fcc
		-- thanks to Thomas Drugeon for ideas and test script
Packit fa4fcc
Packit fa4fcc
5.85  Wed Jun 26 04:05:26 MST 2013
Packit fa4fcc
	- workaround for repeated calls to shaclose (ref. Bug #86295)
Packit fa4fcc
		-- need to explicitly reset internal pointer to NULL
Packit fa4fcc
			ref. shaclose() in SHA.xs
Packit fa4fcc
	- corrected typos in shasum script
Packit fa4fcc
		-- ref. Bug #85430
Packit fa4fcc
Packit fa4fcc
5.84  Sat Mar  9 17:36:08 MST 2013
Packit fa4fcc
	- untweaked Makefile.PL to remove dependencies of SHA.c
Packit fa4fcc
		-- dependencies were breaking builds on VMS
Packit fa4fcc
		-- retaining dependencies provides too little benefit
Packit fa4fcc
			for cost of portable workaround
Packit fa4fcc
Packit fa4fcc
5.83  Mon Mar  4 08:12:00 MST 2013
Packit fa4fcc
	- removed code for standalone C operation (no longer used)
Packit fa4fcc
		-- eliminates need for external symbols
Packit fa4fcc
		-- consolidates SHA and HMAC code
Packit fa4fcc
		-- reduces size of object files
Packit fa4fcc
		-- thanks to Marc Lehmann for suggestions
Packit fa4fcc
	- tweaked Makefile.PL to show dependencies of SHA.c
Packit fa4fcc
Packit fa4fcc
5.82  Thu Jan 24 04:54:12 MST 2013
Packit fa4fcc
	- introduced workaround to SvPVbyte bug in Perl 5.6
Packit fa4fcc
		-- module behavior now consistent under all Perls 5.6+
Packit fa4fcc
			-- ref: new test script t/unicode.t
Packit fa4fcc
		-- SHA routines now always croak on wide chars (5.6+)
Packit fa4fcc
	- removed "static" message schedules from C code
Packit fa4fcc
		-- default "auto" is now just as fast
Packit fa4fcc
		-- thread-safe option (-t) no longer necessary
Packit fa4fcc
			-- still allowed, but ignored
Packit fa4fcc
		-- simplifies source and header files
Packit fa4fcc
			-- eliminates SHA_STO_CLASS and SHA_THREAD_SAFE
Packit fa4fcc
			-- ref. Bug #82784
Packit fa4fcc
		-- thanks to Steve Hay for initial patch
Packit fa4fcc
	- provided documentation to describe Unicode handling
Packit fa4fcc
		-- ref: Bug #82378
Packit fa4fcc
	- updated documentation of NIST statement on SHA-1
Packit fa4fcc
Packit fa4fcc
5.81  Mon Jan 14 05:17:08 MST 2013
Packit fa4fcc
	- corrected load subroutine (SHA.pm) to prevent double-free
Packit fa4fcc
		-- Bug #82655: Security issue - segfault
Packit fa4fcc
		-- thanks to Victor Efimov and Nicholas Clark
Packit fa4fcc
			for technical expertise and suggestions
Packit fa4fcc
Packit fa4fcc
5.80  Mon Dec 10 14:15:26 MST 2012
Packit fa4fcc
	- obtained noticeable speedup on Intel/gcc
Packit fa4fcc
		-- by setting -O1 and -fomit-frame-pointer
Packit fa4fcc
		-- SHA-1 about 63% faster, SHA-2 improves 11-20%
Packit fa4fcc
Packit fa4fcc
5.74  Sat Nov 24 03:10:18 MST 2012
Packit fa4fcc
	- handle wide-string input by converting to bytes first
Packit fa4fcc
		-- viz. use SvPVbyte instead of SvPV in SHA.xs
Packit fa4fcc
		-- thanks to Eric Brine for summary and code
Packit fa4fcc
Packit fa4fcc
5.73  Wed Oct 31 04:32:44 MST 2012
Packit fa4fcc
	- provided workaround for DEC compiler bug (ref. Makefile.PL)
Packit fa4fcc
Packit fa4fcc
5.72  Mon Sep 24 15:22:08 MST 2012
Packit fa4fcc
	- adjusted module installation directory for later Perls
Packit fa4fcc
		-- As of 5.11 Perl searches 'site' first, so use that
Packit fa4fcc
			-- ref. INSTALLDIRS in Makefile.PL
Packit fa4fcc
		-- thanks to Robert Sedlacek for patch
Packit fa4fcc
Packit fa4fcc
5.71  Wed Feb 29 04:06:10 MST 2012
Packit fa4fcc
	- prevented $! from getting clobbered in _bail() routine
Packit fa4fcc
		-- thanks to Zefram for patch
Packit fa4fcc
	- added example of BITS mode usage to shasum documentation
Packit fa4fcc
Packit fa4fcc
5.70  Wed Dec 14 02:32:10 MST 2011
Packit fa4fcc
	- added BITS mode to addfile method and shasum
Packit fa4fcc
		-- partial-byte inputs now possible via files/STDIN
Packit fa4fcc
		-- allows shasum to check all 8074 NIST Msg vectors
Packit fa4fcc
			-- previously required special programming
Packit fa4fcc
Packit fa4fcc
5.63  Tue Nov  8 02:36:42 MST 2011
Packit fa4fcc
	- added code to allow very large data inputs all at once
Packit fa4fcc
		-- previously limited to several hundred MB at a time
Packit fa4fcc
		-- many thanks to Thomas Drugeon for his elegant patch
Packit fa4fcc
	- removed outdated reference URLs from several test scripts
Packit fa4fcc
		-- these URLs aren't essential, and often go stale
Packit fa4fcc
		-- thanks to Leon Brocard for spotting this
Packit fa4fcc
			-- ref. rt.cpan.org #68740
Packit fa4fcc
Packit fa4fcc
5.62  Sat May 14 04:00:34 MST 2011
Packit fa4fcc
	- removed unnecessary loading of MIME::Base64 module
Packit fa4fcc
		-- thanks to dolmen for pointing this out
Packit fa4fcc
Packit fa4fcc
5.61  Wed Mar  9 05:26:36 MST 2011
Packit fa4fcc
	- corrected bug in 'algorithm' method
Packit fa4fcc
	- fixed -x option in Makefile.PL
Packit fa4fcc
		-- not often used since it deliberately excludes
Packit fa4fcc
			all 64-bit SHA transforms
Packit fa4fcc
	- addressed minor documentation oversights
Packit fa4fcc
Packit fa4fcc
5.60  Thu Mar  3 05:26:42 MST 2011
Packit fa4fcc
	- added new SHA-512/224 and SHA-512/256 transforms
Packit fa4fcc
		-- ref. NIST Draft FIPS 180-4 (February 2011)
Packit fa4fcc
	- simplified shasum by removing duplicative text
Packit fa4fcc
	- improved efficiency of Addfile
Packit fa4fcc
		-- expensive -T test now occurs only in portable mode
Packit fa4fcc
Packit fa4fcc
5.50  Tue Dec 14 06:20:08 MST 2010
Packit fa4fcc
	- adopted convention that '-' always means STDIN
Packit fa4fcc
		-- actual filename '-' accessed as './-'
Packit fa4fcc
		-- accords with behavior of sha1sum/md5sum
Packit fa4fcc
	- corrected undefined subroutine oversight in shasum
Packit fa4fcc
		-- inadvertent migration of _bail() from SHA.pm
Packit fa4fcc
Packit fa4fcc
5.49  Sun Dec 12 07:22:04 MST 2010
Packit fa4fcc
	- modified Addfile to accept all POSIX filenames
Packit fa4fcc
		-- standard allows all characters except NUL and '/'
Packit fa4fcc
	- updated shasum to more closely mimic sha1sum/md5sum
Packit fa4fcc
		-- added "backslash processing" to handle newlines
Packit fa4fcc
			and backslashes in filenames
Packit fa4fcc
		-- now accepts all POSIX filenames via Addfile
Packit fa4fcc
		-- thanks to Sean Burke for identifying edge cases
Packit fa4fcc
Packit fa4fcc
5.48  Mon Jan  4 16:32:52 MST 2010
Packit fa4fcc
	- fixed "shasum -a0" option (ref. rt.cpan.org #53319)
Packit fa4fcc
		-- incorrectly accepted 0 as a valid algorithm
Packit fa4fcc
			-- thanks to Zefram for patch
Packit fa4fcc
	- updated URL for NIST test vectors
Packit fa4fcc
		-- ref. files t/nistbit.t, t/nistbyte.t
Packit fa4fcc
			-- thanks to Leon Brocard for patch
Packit fa4fcc
Packit fa4fcc
5.47  Wed Apr 30 04:00:54 MST 2008
Packit fa4fcc
	- modified Makefile.PL to install in core for Perls >= 5.10
Packit fa4fcc
		-- thanks to Jerry Hedden for patch
Packit fa4fcc
	- changed from #include <> to #include "" in SHA.xs
Packit fa4fcc
		-- some platforms not able to find SHA source files
Packit fa4fcc
			-- thanks to Alexandr Ciornii for testing
Packit fa4fcc
	- moved .pm file to appropriate lib directory
Packit fa4fcc
	- minor addition to META.yml
Packit fa4fcc
Packit fa4fcc
5.46  Wed Apr  9 05:04:00 MST 2008
Packit fa4fcc
	- modified Addfile to recognize leading and trailing
Packit fa4fcc
		whitespace in filenames (ref. rt.cpan.org #34690)
Packit fa4fcc
	- minor C source code modification (ref. hmac.c)
Packit fa4fcc
	- use const in sha.c for clean builds with -Wwrite-strings
Packit fa4fcc
		-- thanks to Robin Barker for patch
Packit fa4fcc
Packit fa4fcc
5.45  Tue Jun 26 02:36:00 MST 2007
Packit fa4fcc
	- extended portability to earlier Perls
Packit fa4fcc
		-- works on Perl 5.003 and later
Packit fa4fcc
		-- thanks to Jim Doble for testing on legacy platforms
Packit fa4fcc
	- updated META.yml to conform to current META spec (1.3)
Packit fa4fcc
	- minor documentation fixes
Packit fa4fcc
Packit fa4fcc
5.44  Sat Oct 14 00:42:44 MST 2006
Packit fa4fcc
	- removed SIGNATURE file from distribution
Packit fa4fcc
		-- spurious errors from CPANPLUS can break build
Packit fa4fcc
	- eliminated ppport.h header file
Packit fa4fcc
		-- significantly reduces size of distribution
Packit fa4fcc
	- modified C functions in src/hmac.c to use ANSI prototypes
Packit fa4fcc
		-- thanks to Jarkko Hietaniemi for patch
Packit fa4fcc
Packit fa4fcc
5.43  Sat Aug  5 02:36:18 MST 2006
Packit fa4fcc
	- undid Perl Best Practice of favoring 3-argument "open"
Packit fa4fcc
		-- 3-arg version uses different semantics for "-"
Packit fa4fcc
			causing bugs in addfile and shasum
Packit fa4fcc
	- modified underlying C functions to use ANSI prototypes
Packit fa4fcc
		-- requested by Steve Hay (ref. Smoke [5.9.4] 28630)
Packit fa4fcc
		-- K&R style was causing numerous warnings from
Packit fa4fcc
			Borland compiler
Packit fa4fcc
Packit fa4fcc
5.42  Mon Jul 24 04:04:40 MST 2006
Packit fa4fcc
	- minor code changes suggested by Perl::Critic
Packit fa4fcc
		-- e.g. no bareword filehandles, no 2-argument open's
Packit fa4fcc
	- updated public key (ref. B538C51C)
Packit fa4fcc
		-- previous one (0AF563FE) expired July 2, 2006
Packit fa4fcc
	- added documentation to warn that Base64 digests are NOT padded
Packit fa4fcc
		-- padding must be done by user if interoperability
Packit fa4fcc
			with other software is required
Packit fa4fcc
Packit fa4fcc
5.41  Sat Jun  3 01:50:46 MST 2006
Packit fa4fcc
	- corrected addfile
Packit fa4fcc
		-- process $file argument as a filehandle unless passed
Packit fa4fcc
			as a SCALAR (which indicates a file name)
Packit fa4fcc
Packit fa4fcc
5.40  Fri Jun  2 04:00:30 MST 2006
Packit fa4fcc
	- modified addfile to accept indirect filehandles
Packit fa4fcc
		-- ref. rt.cpan.org #19627 and #19641
Packit fa4fcc
Packit fa4fcc
5.39  Sun May 28 03:22:24 MST 2006
Packit fa4fcc
	- modified shasum to warn rather than die for file errors
Packit fa4fcc
		-- to follow conventions of GNU sha1sum/md5sum
Packit fa4fcc
Packit fa4fcc
5.38  Thu May 25 02:02:02 MST 2006
Packit fa4fcc
	- added new capabilities to the "addfile" method
Packit fa4fcc
		-- now able to accept file names as well as handles
Packit fa4fcc
		-- includes mode for portable digest calculation
Packit fa4fcc
			-- thanks to Adam Kennedy for emails and ideas
Packit fa4fcc
				ref. File::LocalizeNewlines
Packit fa4fcc
	- used expanded addfile interface to simplify shasum (sumfile)
Packit fa4fcc
		-- regex a tad less general than 5.37, but handles all
Packit fa4fcc
			known newline variants in UNIX/Windows/MacOS
Packit fa4fcc
	- enhanced WARNING messages from shasum checkfile processing
Packit fa4fcc
		-- to mimic behavior of md5sum
Packit fa4fcc
Packit fa4fcc
5.37  Mon May  8 04:30:09 MST 2006
Packit fa4fcc
	- modified shasum to avoid file slurping (ref. sub sumfile)
Packit fa4fcc
	- improved error handling of checksum files in shasum
Packit fa4fcc
		-- to better mimic the behavior of md5sum
Packit fa4fcc
	- refined line-break regex in shasum (ref. sub sumfile)
Packit fa4fcc
		-- catches multiple CR's preceding LF
Packit fa4fcc
			thanks to Gisle Aas for suggested patch
Packit fa4fcc
	- changed loop vars to signed int's in shadump (ref. src/sha.c)
Packit fa4fcc
		-- to prevent type mismatch warnings
Packit fa4fcc
Packit fa4fcc
5.36  Mon May  8 01:38:36 MST 2006
Packit fa4fcc
	- fixed the "portable" option in shasum
Packit fa4fcc
		-- normalize line-breaks in text files only
Packit fa4fcc
Packit fa4fcc
5.35  Thu May  4 16:54:42 MST 2006
Packit fa4fcc
	- added "portable" option to shasum
Packit fa4fcc
		-- to make digests match across Windows/Unix/MacOS
Packit fa4fcc
	- enabled bundling of shasum command line options
Packit fa4fcc
		-- to mimic behavior of md5sum
Packit fa4fcc
	- removed \r's from text files in t/nist directory
Packit fa4fcc
		-- resolves SIGNATURE clashes (rt.cpan.org #18983)
Packit fa4fcc
	- changed suffix on SHA64_MAX (src/sha.h) to ULL
Packit fa4fcc
		-- eliminates gcc warnings (rt.cpan.org #18988)
Packit fa4fcc
	- specified minimum Perl version for module and Makefile.PL
Packit fa4fcc
		-- closes rt.cpan.org #18984
Packit fa4fcc
Packit fa4fcc
5.34  Thu Feb  2 18:55:40 MST 2006
Packit fa4fcc
	- removed Unix-style pathnames in test scripts
Packit fa4fcc
		-- causing problems on OpenVMS
Packit fa4fcc
		-- thanks to Steve Peters for patch
Packit fa4fcc
	- included latest version of Perl Portability header (ppport.h)
Packit fa4fcc
	- added PERL_CORE check to test scripts
Packit fa4fcc
		-- allows module to be built into Perl distribution
Packit fa4fcc
Packit fa4fcc
5.32  Fri Dec  2 02:32:20 MST 2005
Packit fa4fcc
	- added POD section to shasum script
Packit fa4fcc
		-- thanks to Gunnar Wolf for patch
Packit fa4fcc
	- made minor code changes to silence compiler warnings
Packit fa4fcc
		-- resulting from signed/unsigned integer mixing
Packit fa4fcc
	- inserted code in test scripts for POD checking
Packit fa4fcc
		-- to recover gracefully if Test::More isn't installed
Packit fa4fcc
Packit fa4fcc
5.31  Mon Sep  5 00:52:42 MST 2005
Packit fa4fcc
	- added standard tests for pod and pod-coverage checking
Packit fa4fcc
	- inserted subtest to check for failure when using
Packit fa4fcc
		unrecognized SHA algorithm
Packit fa4fcc
Packit fa4fcc
5.30  Sat Aug 20 16:46:08 MST 2005
Packit fa4fcc
	- updated docs with recent NIST statement on SHA-1
Packit fa4fcc
		-- advises use of larger and stronger hash functions
Packit fa4fcc
			(i.e. SHA-224/256/384/512) for new developments
Packit fa4fcc
Packit fa4fcc
5.29  Sun Aug 14 04:48:34 MST 2005
Packit fa4fcc
	- added explicit casts in "shaload" routine (ref. "ldvals")
Packit fa4fcc
		-- thanks to E. Allen Smith for pointing out SGI compiler
Packit fa4fcc
			warnings on IPxx-irix platforms
Packit fa4fcc
	- updated docs with cautionary note about SHA-1
Packit fa4fcc
Packit fa4fcc
5.28  Wed Nov 10 15:33:20 MST 2004
Packit fa4fcc
	- provided more flexible formatting of SHA state files
Packit fa4fcc
		-- entries may now contain embedded whitespace
Packit fa4fcc
			for improved readability
Packit fa4fcc
	- minor code cleanups
Packit fa4fcc
Packit fa4fcc
5.27  Sun Oct 24 02:54:00 MST 2004
Packit fa4fcc
	- minor code cleanups
Packit fa4fcc
		-- reduces size of dump files for SHA-1/224/256
Packit fa4fcc
Packit fa4fcc
5.26  Thu Oct  7 14:52:00 MST 2004
Packit fa4fcc
	- streamlined distribution
Packit fa4fcc
		-- reduced NIST vector tests from 200 to 20
Packit fa4fcc
			-- former number was overkill
Packit fa4fcc
			-- distro now downloads and builds more quickly
Packit fa4fcc
	- rewrote SYNOPSIS sections in pod file
Packit fa4fcc
	- made additional tweaks to t/8-shasum.t for portability
Packit fa4fcc
	- cleaned up test scripts
Packit fa4fcc
Packit fa4fcc
5.25  Sun Sep 12 18:48:00 MST 2004
Packit fa4fcc
	- removed non-essential test script
Packit fa4fcc
		-- t/8-shasum.t causes problems on sparc64-linux
Packit fa4fcc
	- reverted to using eval "require $module" in shasum
Packit fa4fcc
Packit fa4fcc
5.24  Sun Sep 12 02:50:18 MST 2004
Packit fa4fcc
	- modified shasum to use barewords in "require" statements
Packit fa4fcc
		-- ref. perl.cpan.testers (157305)
Packit fa4fcc
Packit fa4fcc
5.23  Thu Sep  9 23:06:18 MST 2004
Packit fa4fcc
	- corrected bug in test script
Packit fa4fcc
		-- use blib when invoking perl as an external
Packit fa4fcc
			command in t/8-shasum.t
Packit fa4fcc
Packit fa4fcc
5.22  Tue Sep  7 19:12:40 MST 2004
Packit fa4fcc
	- broadened SHA-384/512 support
Packit fa4fcc
		-- to compilers with no ULLONG_MAX in limits.h
Packit fa4fcc
			-- e.g IBM C (xlC 6.0.0) on AIX 4.3.3
Packit fa4fcc
			-- thanks to Chris Carey for suggestions
Packit fa4fcc
				and technical expertise
Packit fa4fcc
	- improved use of static storage class in transforms
Packit fa4fcc
		-- detection of Intel arch. now done in Makefile.PL
Packit fa4fcc
		-- NB: static not used if compiling for thread safety
Packit fa4fcc
	- minor changes to documentation
Packit fa4fcc
Packit fa4fcc
5.21  Mon Aug 23 04:02:00 MST 2004
Packit fa4fcc
	- removed 64-bit constant expressions from #if statements
Packit fa4fcc
		-- ref. src/sha.h (lines 55, 58, and 61)
Packit fa4fcc
		-- even if compiler supports long long's, preprocessor
Packit fa4fcc
			may use long's when evaluating expressions
Packit fa4fcc
	- improved test script for "shasum" (t/8-shasum.t)
Packit fa4fcc
		-- exercises check file option (-c)
Packit fa4fcc
Packit fa4fcc
5.20  Sun Aug 15 04:24:48 MST 2004
Packit fa4fcc
	- introduced "shasum" script
Packit fa4fcc
		-- mimics the usage and behavior of "md5sum"
Packit fa4fcc
		-- adds "-a" option to select SHA algorithm
Packit fa4fcc
		-- for help, just type "shasum -h"
Packit fa4fcc
Packit fa4fcc
5.10  Fri Aug  6 02:04:38 MST 2004
Packit fa4fcc
	- simplified module documentation
Packit fa4fcc
		-- made it consistent with Digest::SHA::PurePerl docs
Packit fa4fcc
Packit fa4fcc
5.03  Sat Jul 31 00:00:48 MST 2004
Packit fa4fcc
	- corrected HMAC-SHA-384/512 bug (cpan #7181, Adam Woodbury)
Packit fa4fcc
		-- code was using hardwired blocksize for SHA-1/256
Packit fa4fcc
			-- ref. src/hmac.c, src/hmac.h
Packit fa4fcc
Packit fa4fcc
5.02  Thu Jul 29 02:48:00 MST 2004
Packit fa4fcc
	- updated documentation and "dump-load.t" test script
Packit fa4fcc
		-- to be consistent with Digest::SHA::PurePerl
Packit fa4fcc
	- included a SIGNATURE file
Packit fa4fcc
		-- for stronger authentication of module contents
Packit fa4fcc
			-- ref. Module::Signature on CPAN
Packit fa4fcc
	- corrected embarrassing misspelling in docs
Packit fa4fcc
		-- apologies to Gisle Aas
Packit fa4fcc
Packit fa4fcc
5.01  Fri May 21 13:08:12 MST 2004
Packit fa4fcc
	- check for undefined SHA handle when calling "shaclose()"
Packit fa4fcc
		-- prevents intermittent cleanup errors during
Packit fa4fcc
			global object destruction
Packit fa4fcc
Packit fa4fcc
5.00  Fri May 14 04:45:00 MST 2004
Packit fa4fcc
	- minor documentation fixes
Packit fa4fcc
	- restored classical style of version numbering (X.YZ)
Packit fa4fcc
		-- previous X.Y.Z style caused installation difficulties
Packit fa4fcc
			when using CPANPLUS
Packit fa4fcc
Packit fa4fcc
4.3.3 Wed May  5 00:30:40 MST 2004
Packit fa4fcc
	- fixed bug in "strto64()" function
Packit fa4fcc
		-- caused problems in state files with CR/LF pairs
Packit fa4fcc
		-- thanks to Martin Thurn for testing support
Packit fa4fcc
Packit fa4fcc
4.3.2 Wed Apr 28 03:56:00 MST 2004
Packit fa4fcc
	- added Makefile.PL options
Packit fa4fcc
		-- thread-safety: -t
Packit fa4fcc
		-- exclude 384/512 support: -x
Packit fa4fcc
		-- e.g. perl Makefile.PL -t
Packit fa4fcc
	- temporarily suppress dump/load tests for SHA-384/512
Packit fa4fcc
		-- pending clarification of problem on sun4u sparc
Packit fa4fcc
Packit fa4fcc
4.3.1 Thu Mar  4 02:54:00 MST 2004
Packit fa4fcc
	- removed unused functions from XS file
Packit fa4fcc
		-- reduces size of compiled objects
Packit fa4fcc
	- simplified implementation of Digest::SHA object
Packit fa4fcc
		-- now a blessed SHAPtr ref instead of blessed array ref
Packit fa4fcc
		-- results in slight speed-up of OO operations
Packit fa4fcc
	- streamlined underlying C source
Packit fa4fcc
		-- used macros to consolidate repetitive code
Packit fa4fcc
	- rewrote test scripts to depend on Test rather than Test::More
Packit fa4fcc
		-- allows module to be checked in minimal Perl environments
Packit fa4fcc
	- added compilation option for thread-safety
Packit fa4fcc
		-- overrides use of static arrays
Packit fa4fcc
Packit fa4fcc
4.3.0 Sat Feb  7 02:58:00 MST 2004
Packit fa4fcc
	- included SHA-384/512 support if using Microsoft C/C++
Packit fa4fcc
		-- uses MSVC's __int64 in place of "long long"
Packit fa4fcc
	- enhanced portability and efficiency on diverse platforms
Packit fa4fcc
		-- automatically sets up optimal types for 32/64-bit ops
Packit fa4fcc
	- improved test scripts for better reporting
Packit fa4fcc
		-- many thanks to Alex Muntada for helpful suggestions
Packit fa4fcc
Packit fa4fcc
4.2.2 Sat Jan 31 17:10:20 MST 2004
Packit fa4fcc
	- repaired 32-bit SHA operations for 8-byte longs
Packit fa4fcc
Packit fa4fcc
4.2.1 Sat Jan 24 00:56:54 MST 2004
Packit fa4fcc
	- modified I/O and memory management in underlying C code
Packit fa4fcc
		-- uses Perl libraries when compiled as CPAN module
Packit fa4fcc
			-- otherwise defaults to ANSI C libraries
Packit fa4fcc
		-- bypasses problems in MSWin multi-threaded Perls
Packit fa4fcc
			-- avoids "Free to wrong pool" error
Packit fa4fcc
		-- special thanks to Robert Gilmour and Brian Gladman
Packit fa4fcc
			for technical guidance and testing
Packit fa4fcc
Packit fa4fcc
4.2.0 Sat Dec 27 16:08:00 MST 2003
Packit fa4fcc
	- added support for recently-announced SHA-224 algorithm
Packit fa4fcc
		-- ref. FIPS 180-2 Change Notice 1
Packit fa4fcc
		-- also includes HMAC-SHA-224
Packit fa4fcc
Packit fa4fcc
4.1.0 Thu Dec 25 00:58:00 MST 2003
Packit fa4fcc
	- repaired "nist-vectors" test scripts for MSWin32 portability
Packit fa4fcc
		-- use binmode for data files
Packit fa4fcc
Packit fa4fcc
4.0.9 Wed Dec 24 02:58:22 MST 2003
Packit fa4fcc
	- use canonical file specs in test scripts
Packit fa4fcc
		-- enhances portability across different OSes
Packit fa4fcc
	- modify type declarations of objects in XS file
Packit fa4fcc
		-- re-declare as (SV *) and cast to (AV *) SvRV(self)
Packit fa4fcc
			-- in response to AVPtr problem on MSWin32
Packit fa4fcc
Packit fa4fcc
4.0.8 Thu Dec 18 23:32:00 MST 2003
Packit fa4fcc
	- inherits from Digest::base if installed
Packit fa4fcc
		-- also checks for MIME::Base64
Packit fa4fcc
		-- still fully-functional if neither are installed
Packit fa4fcc
	- added buffer overflow protection in underlying C code
Packit fa4fcc
		-- ref. shahex() and shabase64() routines
Packit fa4fcc
		-- prior code appeared impossible to exploit, but ...
Packit fa4fcc
			-- better safe than sorry
Packit fa4fcc
		-- does not impact runtime efficiency
Packit fa4fcc
	- minor code cleanup
Packit fa4fcc
Packit fa4fcc
4.0.7 Sat Dec 13 00:48:24 MST 2003
Packit fa4fcc
	- check for undefined SHA handle when calling "shaclose()"
Packit fa4fcc
		-- was causing cleanup err during global destruction
Packit fa4fcc
Packit fa4fcc
4.0.6 Thu Dec 11 02:18:00 MST 2003
Packit fa4fcc
	- more optimization and streamlining
Packit fa4fcc
		-- a bit faster on non-big-endians (e.g. Intel)
Packit fa4fcc
	- rewrote time-critical functions and methods in XS
Packit fa4fcc
	- removed unused C functions from source files
Packit fa4fcc
Packit fa4fcc
4.0.5 Sat Dec  6 00:02:24 MST 2003
Packit fa4fcc
	- performance optimizations
Packit fa4fcc
		-- rewrote "add" method in XS
Packit fa4fcc
		-- unrolled loops in sha256 transform
Packit fa4fcc
Packit fa4fcc
4.0.4 Thu Dec  4 00:07:00 MST 2003
Packit fa4fcc
	- made Digest::SHA into a self-contained module
Packit fa4fcc
		-- no longer depends on Digest::base
Packit fa4fcc
		-- more convenient for users
Packit fa4fcc
			-- no need to install Digest:: module
Packit fa4fcc
Packit fa4fcc
4.0.3 Wed Dec  3 00:01:20 MST 2003
Packit fa4fcc
	- Digest::SHA now a subclass of Digest::base
Packit fa4fcc
		-- inherits hexdigest/b64digest/addfile methods
Packit fa4fcc
	- added "hashsize" method
Packit fa4fcc
	- removed old "shaopen()/shawrite()/..." legacy code
Packit fa4fcc
		-- in favor of standard, streamlined OO interface
Packit fa4fcc
	- renamed test vector files from NIST
Packit fa4fcc
		-- prevents problems on 8+3 filesystems
Packit fa4fcc
	- added test for Dave Ireland's SHA-256 vector
Packit fa4fcc
Packit fa4fcc
4.0.0 Sat Nov 29 21:14:09 MST 2003
Packit fa4fcc
	- major streamlining of interface (hence, major version change)
Packit fa4fcc
		-- coordinated with Gisle Aas and J. Duque
Packit fa4fcc
			-- goal is to produce a single SHA module
Packit fa4fcc
		-- adheres to OO and functional styles of Digest::
Packit fa4fcc
		-- greatly reduces the number of interface functions
Packit fa4fcc
		-- old functions still supported
Packit fa4fcc
			-- use Digest::SHA ':legacy'
Packit fa4fcc
			-- will be deprecated in near future
Packit fa4fcc
	- rewrote all test scripts to match new interface
Packit fa4fcc
		-- very easy to modify all 281 tests
Packit fa4fcc
		-- old interface maps cleanly to new one
Packit fa4fcc
Packit fa4fcc
3.0   Wed Nov 26 05:02:34 MST 2003
Packit fa4fcc
	- added functions that conform to Digest:: interface
Packit fa4fcc
		-- both functional and OO styles
Packit fa4fcc
			-- byte-oriented data only
Packit fa4fcc
		-- continue to support original interface as well
Packit fa4fcc
			-- necessary for bit-oriented data
Packit fa4fcc
	- supplied formal test vectors for HMAC-SHA-256
Packit fa4fcc
		-- from draft-ietf-ipsec-ciph-sha-256-01.txt
Packit fa4fcc
	- included tests for all OO methods
Packit fa4fcc
Packit fa4fcc
2.4   Sat Nov 22 17:10:22 MST 2003
Packit fa4fcc
	- code cleanup
Packit fa4fcc
		-- "sha.c" now completely free of #ifdef's
Packit fa4fcc
	- modularized all 64-bit (long long) code
Packit fa4fcc
	- improved readability of header files
Packit fa4fcc
	- simplified logic of "fixdump" utility
Packit fa4fcc
Packit fa4fcc
2.3   Wed Nov 19 03:54:31 MST 2003
Packit fa4fcc
	- minor optimizations and code cleanup
Packit fa4fcc
		-- improved maintainability by reducing #ifdef's
Packit fa4fcc
		-- sha1 transform code now easier to follow
Packit fa4fcc
	- streamlined shadump/shaload file format
Packit fa4fcc
		-- eliminated special "HQ" entry
Packit fa4fcc
		-- state now held in "H" for all transforms
Packit fa4fcc
		-- supplied "fixdump" utility to convert old format
Packit fa4fcc
	- SHA-384/512 functions now return NULL for no 64-bit operations
Packit fa4fcc
		-- previously they were undefined
Packit fa4fcc
		-- no longer necessary to use eval's to test for presence
Packit fa4fcc
Packit fa4fcc
2.2   Sun Nov 16 01:54:00 MST 2003
Packit fa4fcc
	- optimized the performance of the SHA-1 transform
Packit fa4fcc
		-- around 20-30% faster than previous version
Packit fa4fcc
		-- achieved by loop unrolling and assignment consolidation
Packit fa4fcc
	- enhanced shaload/shadump to allow interaction with stdin/stdout
Packit fa4fcc
		-- "$filename" argument now optional
Packit fa4fcc
Packit fa4fcc
2.1   Sun Nov  9 03:28:04 MST 2003
Packit fa4fcc
	- simplified data input routines
Packit fa4fcc
		-- length argument now optional for byte data
Packit fa4fcc
			(special thanks to Jeffrey Friedl for this idea)
Packit fa4fcc
		-- interface still compatible with earlier versions
Packit fa4fcc
			-- changes will not affect existing client code
Packit fa4fcc
	- streamlined underlying C code for easier maintenance
Packit fa4fcc
	- provided additional tests for persistent data
Packit fa4fcc
Packit fa4fcc
2.0   Sat Nov  1 03:55:36 MST 2003
Packit fa4fcc
	- added functions for HMAC-SHA-1/256/384/512 (FIPS PUB 198)
Packit fa4fcc
	- shadump/shaload files now compatible between 32/64-bit machines
Packit fa4fcc
Packit fa4fcc
1.01  Sat Oct 25 02:44:55 MST 2003
Packit fa4fcc
	- package now downloads and installs much faster
Packit fa4fcc
	- reduced distribution size by 80%
Packit fa4fcc
		-- pruned extensive NIST vectors to a useful subset
Packit fa4fcc
		-- still possible to test all vectors if desired
Packit fa4fcc
			--- see "t/nist/COPYRIGHT" file for details
Packit fa4fcc
	- added routines to provide persistent storage of SHA states
Packit fa4fcc
		-- shadump() and shaload()
Packit fa4fcc
	- reduced runtime of large bitstring tests (gillogly-hard)
Packit fa4fcc
		-- illustrates usefulness of shadump()/shaload()
Packit fa4fcc
Packit fa4fcc
1.0   Sat Oct 18 17:35:07 MST 2003
Packit fa4fcc
	- documentation fixes
Packit fa4fcc
	- code cleanup: no more compiler warnings from gcc -Wall
Packit fa4fcc
	- added code to allow reading of intermediate digest state
Packit fa4fcc
		-- shahex() prior to shafinish() returns current state
Packit fa4fcc
Packit fa4fcc
0.9   Thu Oct  9 20:43:54 MST 2003
Packit fa4fcc
	- version updated to reflect portability check and passing
Packit fa4fcc
		of all tests (1401)
Packit fa4fcc
Packit fa4fcc
0.01  Wed Oct  8 22:28:05 2003
Packit fa4fcc
	- original version; created by h2xs 1.22 with options
Packit fa4fcc
		-x -A -n Digest::SHA sha.h