7 Commits

Author SHA1 Message Date
Rolf Eike Beer
539b6c58f5 Fix build on AIX failing because of access to string elements
The compilation failed with this error message:

.../Source/cmCryptoHash.cxx: In method `string cmCryptoHash::HashString (const string &)':
.../Source/cmCryptoHash.cxx:41: non-lvalue in unary `&'

This was introduced in 77f60392d93f41a8828d3db1d7b76d45f1535d07 (stringapi:
Accept strings when MD5 hashing data).
2014-04-04 23:25:33 +02:00
Ben Boeckel
77f60392d9 stringapi: Accept strings when MD5 hashing data 2014-03-08 13:05:32 -05:00
Clinton Stimpson
5730710c86 Use cmsys::[io]fstream instead of cmsys_ios::[io]fstream.
Also use SystemTools::Fopen() instead of fopen().
This is to eventually support utf-8 filenames.
2014-01-07 09:27:44 -05:00
Brad King
75994d953e cmCryptoHash: Increase alignment of HashFile buffer
The SHA512_Update implementation accesses input data via 64-bit
integers.  This requires alignment of the input buffer on some
architectures.  Align our stack-allocated buffer for file content to
satisfy this requirement.
2013-06-13 08:40:10 -04:00
Brad King
293a7f4e2a cmCryptoHash: Provide factory "New" method
Construct a cmCryptoHash subclass instance based on the name of the
desired hash algorithm.
2011-11-16 10:15:44 -05:00
Brad King
38771d3bdf Add file(SHA*) commands to compute cryptographic hashes
Add a file() command API for SHA1, SHA224, SHA256, SHA384, and SHA512.
2011-11-16 10:15:44 -05:00
Brad King
ed7cef5634 Factor Compute(File|String)MD5 into cmCryptoHash helper
Define an abstract API around the backend hash algorithm.  Expose
ifstream errors to HashFile callers.  Always try opening the file.
Succeed only if the end of file is reached without error.
2011-11-16 10:14:53 -05:00