Commit Graph

51 Commits

Author SHA1 Message Date
Jeffrey Walton
26a819d5c2
Use non-virtual IteratedHashWithStaticTransform::Init in ctor (GH #147) 2021-06-03 21:10:59 -04:00
Jeffrey Walton
e0b1ab6629
Update comments 2021-03-17 17:57:24 -04:00
Jeffrey Walton
bfeba0d300
Update documentation 2020-12-15 04:05:17 -05:00
Jeffrey Walton
ac6987f3ae
Use \return and \throw consitently in the docs 2020-12-07 23:35:10 -05:00
Jeffrey Walton
9013cb60fb
Fix semicolons yet again (GH #889)
So it looks like sed added a '\r' between the closing paren and the semi. Grepping for '^;' failed because the '\r' was considered part of the previous line, so it showed no hits. I finally had to write a C program to properly identify and fix those damn stray semicolons.
2019-10-14 12:30:10 -04:00
Jeffrey Walton
589c25264a Don't add semicolon to CRYPTOPP_CONSTANT abd DOCUMENTED_TYPEDEF (GH #889)
This issue is a recurring issue. Let's try fixing it in the #define this time.
2019-10-03 19:40:53 -04:00
Jeffrey Walton
9807a3268f Clear sign conversion warnings 2019-09-28 21:08:22 -04:00
Jeffrey Walton
4fb9fbf5ac
Update comments 2018-08-24 12:19:42 -04:00
Jeffrey Walton
afbd3e60f6
Fix alignment on Win32 and Solaris Sparc (PR #709)
These fixes were interesting in a morbid sort of way. I thought the FixedSizeAllocatorWithCleanup specializations faithfully reproduced semantics but I was wrong on Win32 and Sparc. Also see Commit e054d36dc8.

It seems there was another requirement or dependency that we missed, but it was not readily apparent. If I am parsing results correctly (which I may not be), it appears the bit twiddling using 8 byte alignment had more influence on alignment than I originally thought based on use of CRYPTOPP_BOOL_ALIGN16 and T_Align16. Or maybe the alignment attributes specified by CRYPTOPP_ALIGN_DATA are not being honored like they should for stack allocations.

This check-in avoids some uses of x86 movdqa (aligned) in favor of movdqu (unaligned). The uses were concentrated on memory operands which were 8-byte aligned instead of 16-byte aligned. It is not clear to me how the specializations lost 8-bytes of alignment. The check-in also enlists CRYPTOPP_ASSERT to tell us when there's a problem so we don't need to go hunting for bugs.
2018-08-23 14:42:29 -04:00
Jeffrey Walton
f1192fd044
Update comments in IterHashBase and friends
We also switched to "IsAligned<HashWordType>(input)". Using word64 was due to debug testing on Solaris (the alignment check is needed). Hard coding word64 should not have been checked in.
2018-07-21 06:51:41 -04:00
Jeffrey Walton
0c0b68a4a2
Align input buffer in HashMultipleBlocks
IteratedHashBase::Update aligns the buffer, but IteratedHashBase::HashBlock does not. It was causing a fair number of asserts to fire when the code was instrumented with alignment checks. Linux benchmarks shows the code does not run materially slower on i686 or x86_64.
2018-07-20 18:56:41 -04:00
Jeffrey Walton
961e9b483c Revert "Clear conversion warning"
This reverts commit 9748c3cf3e. It broke Windows.
2018-07-10 17:18:11 -04:00
Jeffrey Walton
9748c3cf3e
Clear conversion warning 2018-07-10 11:54:13 -04:00
Jeffrey Walton
b74a6f4445
Add algorithm provider member function to Algorithm class 2018-07-06 09:23:37 -04:00
Marcel Raad
7c1d296283 Fix clang warnings in headers (#655)
* remove superfluous semicolon

* Remove C-style casts from public headers

clang warns about them with -Wold-style-cast. It also warns about
implicitly casting away const with -Wcast-qual. Fix both by removing
unnecessary casts and converting the remaining ones to C++ casts.
2018-05-10 19:59:21 -04:00
Jeffrey Walton
565bd844fc
Clear GCC -Wcast-align warnings on ARM
The buffers and workspaces are aligned
2018-01-20 19:39:49 -05:00
Jeffrey Walton
befd04312d
Remove unneeded Doxygen directive 2018-01-19 14:31:20 -05:00
Jeffrey Walton
61ec50dabe
Change Doxygen comment style from //! to ///
Also see https://groups.google.com/forum/#!topic/cryptopp-users/A7-Xt5Knlzw
2017-11-29 10:54:33 -05:00
Marcel Raad
d9de314e86 Fix Windows compilation issues (by RaptorFactor) (#444)
* Fix compilation on Windows with /DUNICODE

* Fix linking of fipstest for MSVC targeting ARM (__crt_debugger_hook is not available).

* Fix build for Clang on Windows with optimizations on.

* Fix a warning about a non-existant warning under Clang.

* Fix compilation under Intel C++ 18.0 on Windows
2017-07-17 12:10:38 -04:00
Jeffrey Walton
429047a8e9
Clear Visual Studio warnings (Issue 412) 2017-06-02 07:13:43 -04:00
Jeffrey Walton
7ac77ca9ac Revert "Revert "Clear Visual Studio warnings (Issue 412)""
This reverts commit c3871aec94.
2017-06-02 05:18:52 -04:00
Jeffrey Walton
c3871aec94 Revert "Clear Visual Studio warnings (Issue 412)"
This reverts commit eb3b27a6a5. The change broke GCC 4.8 and unknown version of Clang on OS X. UB reported the OS X break, and JW found duplicated the break on a ARM CubieTruck with GCC 4.8.
2017-06-02 05:06:56 -04:00
Jeffrey Walton
eb3b27a6a5
Clear Visual Studio warnings (Issue 412) 2017-05-30 16:37:41 -04:00
klemens
5a5c633073 spelling fixes 2016-12-27 18:34:57 +01:00
Jeffrey Walton
40230dd3bf
Removed MAINTAIN_BACKWARDS_COMPATIBILITY_562 (Issue 70) 2016-12-03 00:32:07 -05:00
Jeffrey Walton
ff67abdec5 Add virtual dtor for IteratedHash and ClonableImpl due to non-trivial data members
Solaris is showing unusual signs with SunCC 5.13 and 5.14. One user is experiencing a SIGBUS in SHA512::Transform due to data alignment of 'data', which was only 2-byte aligned. The project experienced an exception "Coneable not implemented" during the hashing test after building with Cmake. Its not clear how much Cmake influenced the project's results.
2016-09-13 20:44:14 -04:00
Jeffrey Walton
df7e07e75e The commit had a typo. This reverts commit 11eede3926. 2016-09-13 19:52:45 -04:00
Jeffrey Walton
11eede3926 Add veirtual dtor IteratedHash and ClonableImpl due to non-trivial data members 2016-09-13 18:31:01 -04:00
Jeffrey Walton
6bb6e8ab63 Updated documentation 2016-09-13 17:29:23 -04:00
Jeffrey Walton
8a47758463 Updated documentation 2016-09-13 16:43:12 -04:00
Jeffrey Walton
13744476bd Updated documentation 2016-09-13 15:55:16 -04:00
Jeffrey Walton
48809d4e85 CRYPTOPP 5.6.3 RC6 checkin 2015-11-05 01:59:46 -05:00
weidai
8ca6148ad5 add x86/x64 assembly for SHA-256,
add DEFAULT_CHANNEL and AAD_CHANNEL,
fix macChannel for AuthenticatedEncryptionFilter
2009-03-10 02:56:19 +00:00
weidai
d8a644fc4e changes for 5.6:
- added AuthenticatedSymmetricCipher interface class and Filter wrappers
    - added CCM, GCM (with SSE2 assembly), CMAC, and SEED
    - improved AES speed on x86 and x64
    - removed WORD64_AVAILABLE; compiler 64-bit int support is now required
2009-03-02 02:39:17 +00:00
weidai
f871754502 fix compile with GCC 4.0.1 on MacOS X 64-bit 2008-12-22 06:55:08 +00:00
weidai
a81ba0ebd9 reduce executable size when only hash functions are used 2007-10-02 00:21:52 +00:00
weidai
de8b060ea1 optimizations 2007-04-16 00:33:09 +00:00
weidai
4afd858ae4 port to Borland C++Builder 2006 2006-12-14 11:41:39 +00:00
weidai
09bb1aab64 port to GCC 4 2005-09-05 21:43:43 +00:00
weidai
1db8ea5084 port to MSVC .NET 2005 beta 2 2005-07-12 04:23:32 +00:00
weidai
b3924f2108 changes done for FIPS-140 lab code drop 2005-01-20 04:19:35 +00:00
weidai
c39b3de3c4 changes related to the next FIPS validation 2004-09-03 10:57:31 +00:00
weidai
6d4f31be8b add SHA-224 2004-07-23 09:57:11 +00:00
weidai
393ae4859a fix documentation, fix PanamaMAC, fix algorithm names 2004-07-22 00:51:57 +00:00
weidai
f78fccb3cc port to GCC 3.4 2004-06-19 08:28:09 +00:00
weidai
c2f6c37e6d avoid using hash keyword 2004-04-08 01:23:48 +00:00
weidai
473e5df89b merge in 5.0.4 changes (exclude DES and SHA-2 from DLL),
attempt (failed) to build DLL with GCC
2003-07-10 04:34:23 +00:00
weidai
f278895908 create DLL version, fix GetNextIV() bug in CTR and OFB modes 2003-07-04 00:17:37 +00:00
weidai
a003ea18cc add CRYPTOPP_NO_VTABLE 2003-05-16 00:53:53 +00:00
weidai
538de80a91 various changes for 5.1 2003-03-20 01:24:12 +00:00