Jeffrey Walton
81f8c48faf
Avoid std::call_once (GH #707 )
...
This commit also favors init priorities over C++ dynamic initialization. After the std::call_once problems on Sparc and PowerPC I'm worried about problems with Dynamic Initialization and Destruction with Concurrency.
We also do away with supressing warnings and use CRYPTOPP_UNUSED instead.
2018-08-21 12:53:10 -04:00
Jeffrey Walton
6b93c284fe
Use bitwise not 0 for last block flag
2018-08-21 11:25:39 -04:00
Jeffrey Walton
a9c5c56d21
Switch to SaturatingSubtract to guard against wrap on user parameters
2018-08-21 11:21:20 -04:00
Jeffrey Walton
4a86ad67bf
Clear initialization warning due to non-trivial destructor
2018-08-21 10:45:44 -04:00
Jeffrey Walton
b74a6f4445
Add algorithm provider member function to Algorithm class
2018-07-06 09:23:37 -04:00
Jeffrey Walton
3e965ac9b3
Back-off on Hash asserts (GH #652 )
...
The asserts were a little aggressive and caused very noisy Debug runs. The library itself was one of the biggest offenders.
2018-05-05 23:27:55 -04:00
Jeffrey Walton
3159969808
Back-off on Hash asserts (GH #652 )
...
The asserts were a little aggressive and caused very noisy Debug runs. The library itself was one of the biggest offenders.
2018-05-05 22:56:15 -04:00
Jeffrey Walton
01136e2c7b
Clear clang-tidy warnings
2018-01-23 21:15:26 -05:00
Jeffrey Walton
fe257e92a9
Add const-ness to internal BLAKE2 functions (GH #527 )
2017-12-06 17:40:34 -05:00
Jeffrey Walton
b436411de5
Fix MSVC 2017 hang on BLAKE2 (GH #527 )
...
It looks like the macros for BLAKE2B and BLAKE2S round functions were too much for the compiler to handle
2017-12-06 14:02:28 -05:00
Jeffrey Walton
b08596da44
Add CRYPTOPP_SLOW_ARMV8_SHIFT for Aarch32 and Aarch64
...
Both BLAKE2 and SPECK slow down when using NEON/ASIMD. When just BLAKE2 experienced the issue, it was a one-off problem. Its now wider than a one-off, so add the formal define
2017-11-23 02:22:27 -05:00
Jeffrey Walton
c49b6d4d71
Cleanup comments and old code artifacts
2017-11-15 21:11:42 -05:00
Jeffrey Walton
e8bed05b7d
Use SSE4.1 instead of SSE4.2 for BLAKE2
...
BLAKE2 requires SSE4.1, no SSE4.2. This change should have been made when we split SSE4 into .1 and .2, but we needed more OS X and LLVM testing
2017-11-15 20:08:06 -05:00
Jeffrey Walton
f1386ad894
Fix SunCC 12.5 compile with -std=c++11
2017-11-13 13:08:56 -05:00
Jeffrey Walton
b40ca97550
Update documentation
2017-11-12 16:35:44 -05:00
Jeffrey Walton
b079803856
Fix compile under Embarcadero (GH #498 )
...
[bcc32c Error] blake2.cpp(49): 'alignas' must be specified on definition if it is specified on any declaration
2017-09-15 12:43:18 -04:00
Jeffrey Walton
602fa05825
Cleared unused variable warning under MSC
2017-09-01 14:19:48 -04:00
Jeffrey Walton
6544f75769
Clear strict aliasing rule violation in BLAKE2
...
There was no aliasing violation in practice. We used a to assign the right pointer. If the compiler would have removed the unneeded assignment based on T_64bit, then we would not have been flagged.
2017-09-01 11:36:22 -04:00
Jeffrey Walton
e2c377effd
Split source files to support Base Implementation + SIMD implementation (GH #461 )
...
Split source files to support Base Implementation + SIMD implementation
2017-08-17 12:33:43 -04:00
Jeffrey Walton
863bf9133c
Cleanup casts due to Clang
2017-08-13 06:32:09 -04:00
Dmitry S. Baikov
369fa3bc52
NULLPTR fix for blake2
2017-05-11 07:04:51 +03:00
Dmitry S. Baikov
e8e0b1c3f2
blake2: Fixed initialization when using non-keyed constructor with non-standard digest size. Added test vectors.
...
https://github.com/weidai11/cryptopp/issues/415
Test vectors generated with pyblake2 which uses 'BLAKE2 reference source code package' by Samuel Neves
2017-05-11 06:46:56 +03:00
Jeffrey Walton
c21023e2dc
Removed 'aligned' makefile target. It was made default in 5.6.5
2017-03-28 23:49:58 -04:00
Jeffrey Walton
5efb019d8b
Add C++ nullptr support (Issue 383)
2017-03-01 06:10:06 -05:00
Jeffrey Walton
8c20630c2d
Remove extra preamble for copyright.
...
Similar text may be added in the future
2017-02-21 02:54:09 -05:00
Jeffrey Walton
b8adc91ce8
Add asserts to validation routines
2017-01-29 04:58:56 -05:00
Jeffrey Walton
23fbba488d
Add BLAKE2B_ and BLAKE2S_ prefix to macros, remive \#undef's
2017-01-22 22:44:35 -05:00
Jeffrey Walton
6e1a021511
Comments and whitespace (Issue 367)
2017-01-22 13:34:50 -05:00
Jeffrey Walton
9dd2744419
Disable NEON for Cortex-A53 and A57 processors (Issue 367)
2017-01-22 13:18:35 -05:00
klemens
5a5c633073
spelling fixes
2016-12-27 18:34:57 +01:00
Jeffrey Walton
ba75834ae9
Removed VC++ 5.0 and 6.0 workarounds (Issue 342)
2016-12-03 05:05:56 -05:00
Jeffrey Walton
57b3a7c9cc
Fix SunCC compile under x86_64
2016-09-21 02:07:17 -04:00
Jeffrey Walton
399a1546de
Add CRYPTOPP_ASSERT (Issue 277, CVE-2016-7420)
...
trap.h and CRYPTOPP_ASSERT has existed for over a year in Master. We deferred on the cut-over waiting for a minor version bump (5.7). We have to use it now due to CVE-2016-7420
2016-09-16 11:27:15 -04:00
Jeffrey Walton
ded4fd50a2
Work around BLAKE2b self test failures under SunCC 5.12 with SSE2 (Issue 247)
2016-08-24 02:39:06 -04:00
Jeffrey Walton
0c3313c8a2
Fix compile under VS2013 X86
2016-08-21 06:42:54 -04:00
Jeffrey Walton
898d6a3f78
Fix compile under VS2012 X86
2016-08-21 04:36:32 -04:00
Jeffrey Walton
cd3dd25b12
Fix compile under VS2010 X86
2016-08-21 04:16:44 -04:00
Jeffrey Walton
43320dd727
Fixed compile under Visual Studio 2008, 32-bit
2016-07-24 04:20:50 -04:00
Jeffrey Walton
fc5ad7ea7d
Removed SSE2 and SSE4 restrictions under Visual Studio
2016-07-24 01:25:30 -04:00
Jeffrey Walton
fa0b378173
Add SSE2 guard with CRYPTOPP_BOOL_SSE2_AVAILABLE
2016-07-24 00:47:37 -04:00
Jeffrey Walton
7716f5f689
Enable CRYPTOPP_BOOL_SSE4_INTRINSICS_AVAILABLE
2016-07-24 00:39:20 -04:00
Jeffrey Walton
32e6276baf
Prefer union access over pointer cast
...
Also see http://stackoverflow.com/a/38547909/608639
2016-07-24 00:34:55 -04:00
Jeffrey Walton
ef4f185d9b
Avoid accessing union value through inactive member
2016-07-23 23:49:26 -04:00
Jeffrey Walton
d8638a597f
Fixed arguments to _mm_set_epi64x
2016-07-23 22:09:26 -04:00
Jeffrey Walton
f532b02a96
Add replacement for _mm_set_epi64x under Sun Studio 12.3 and below
2016-07-23 21:39:18 -04:00
Jeffrey Walton
c4f9a7cfce
Fix compile under iOS
2016-07-13 01:45:09 -04:00
Jeffrey Walton
5080a065ce
Clear Valgrind findings under -Ofast
2016-07-12 23:05:00 -04:00
Jeffrey Walton
53e2147d8d
Fix compile under Sun Studio 12.3 and below with -xarch=aes defines
2016-07-10 20:40:45 -04:00
Jeffrey Walton
f8200af3ae
Add SunCC 12.4 support for specialized implementations if CRC, RDRAND and BLAKE2
2016-07-10 16:21:19 -04:00
Jeffrey Walton
6c0b120072
Go back to Commit 66ada4cc61
2016-07-06 14:39:18 -04:00