Jeffrey Walton
74aa5b7e12
Test iOS Watch and TV builds.
...
Take 4
2017-08-14 06:16:25 -04:00
Jeffrey Walton
16442d2eae
Test iOS Watch and TV builds.
...
Take 3
2017-08-14 05:45:22 -04:00
Jeffrey Walton
9f33d0f834
Test iOS Watch and TV builds. For real this time...
2017-08-14 04:36:17 -04:00
Jeffrey Walton
a9fd2b6104
Test iOS Watch and TV builds
2017-08-14 04:34:24 -04:00
Jeffrey Walton
08191d5dff
Fix define used for SHA includes
2017-08-14 04:18:12 -04:00
Jeffrey Walton
a92fc55d39
Remove duplicate test after updtream merge
2017-08-14 04:01:55 -04:00
Jeffrey Walton
a25e63fcb7
Fix sources after sync with upstream
2017-08-14 03:19:20 -04:00
Jeffrey Walton
c44f32d683
Sync with upstream master
2017-08-14 02:22:48 -04:00
Jeffrey Walton
effa446a61
Fix test script when running on machine with RO mount of /
2017-08-14 01:48:11 -04:00
Jeffrey Walton
6a29d8c56f
Use -O1 for Asan and UBsan
2017-08-14 01:05:03 -04:00
Jeffrey Walton
2ee8e3b26d
Move free standing function into anonymous namespace
...
Update comments and use class constants when available
2017-08-14 00:08:55 -04:00
Jeffrey Walton
2aff92ddb6
Fix bad SHA::Transform calculation (Issue 455)
...
Reworked SHA class internals to align all the implementations. Formerly all hashes were software based, IterHashBase handled endian conversions, IterHashBase repeatedly called the single block SHA{N}::Transform. The rework added SHA{N}::HashMultipleBlocks, and the SHA classes attempt to always use it.
Now SHA{N}::Transform calls into SHA{N}_HashMultipleBlocks, which is a free standing function. An added wrinkle is hardware wants little endian data and software presents big endian data, so HashMultipleBlocks accepts a ByteOrder for the incoming data. Hardware based SHA{N}_HashMultipleBlocks can often perform the endian swap much easier by setting an EPI mask so it was profitable to defer to hardware when available.
The rework also removed the hacked-in pointers to implementations. The class now looks more like AES, GCM, etc.
2017-08-13 16:05:39 -04:00
Jeffrey Walton
011429583d
Fix sources after sync with upstream master
2017-08-13 07:06:19 -04:00
Jeffrey Walton
e0ec92b541
Sync with Upstream master
2017-08-13 06:54:28 -04:00
Jeffrey Walton
5f441d28e5
Cleanup __m128 casts due to Clang
2017-08-13 06:53:35 -04:00
Jeffrey Walton
863bf9133c
Cleanup casts due to Clang
2017-08-13 06:32:09 -04:00
Jeffrey Walton
d8e56b8250
Sync with Upstream master
2017-08-13 05:01:57 -04:00
Jeffrey Walton
f02bf91ee5
Revert 95ee8975b4 and 7d21cdd54e (Issue 408)
...
This broke some OS X builds. We need more testing. Ugh...
2017-08-13 04:31:17 -04:00
Jeffrey Walton
95ee8975b4
Use blockSize in error message thrown
2017-08-12 20:29:33 -04:00
Jeffrey Walton
5f3a3f29e8
Sync with Upstream master
2017-08-12 19:28:59 -04:00
Jeffrey Walton
5e6e6c4eaa
Sync with Upstream master
2017-08-12 19:24:00 -04:00
Jeffrey Walton
7d21cdd54e
Convert GCM to use runtime blocksize checking (Issue 408)
...
GCM is still only defined for 16-byte ciphers, but this is where we need to be when we add the larger polynomials
2017-08-12 16:14:29 -04:00
Jeffrey Walton
19ab62201d
Add files to Visual Studio filters
2017-08-12 00:15:09 -04:00
Jeffrey Walton
1463995c99
Add files to Visual Studio filters
2017-08-12 00:09:51 -04:00
Jeffrey Walton
a84f568ee2
Add subfunc to CpuId for AVX and above
2017-08-11 22:56:01 -04:00
Jeffrey Walton
f02503d08f
Sync with Upstream master
2017-08-11 17:27:19 -04:00
Jeffrey Walton
f5aa6f1f06
Cast enums to int for comparison
2017-08-11 17:15:13 -04:00
Jeffrey Walton
953252e44d
Move from 'static' to 'enum' for class constants
...
Enums don't take up space in class objects. Its should result in smaller objects and faster code
2017-08-11 17:13:15 -04:00
Jeffrey Walton
9ab233b52a
Switch from 'static const' to 'enum' for class constants
...
Enums do not take up space in a class. It should lead to smaller objects and faster runtimes
2017-08-11 16:09:28 -04:00
Jeffrey Walton
93a8f9e9b7
Fix compile with GCC on Solaris
2017-08-11 16:08:28 -04:00
Jeffrey Walton
5b945a5412
Update for earlier Apple compilers, like Apple Clang 6 and 8
2017-08-11 14:24:05 -04:00
Jeffrey Walton
8a66353b2c
Test <arm_acle.h> include under Apple
...
This is a compile test
2017-08-11 12:31:04 -04:00
Jeffrey Walton
22b7d74e1f
Test Apple ARM64 runtime detection
...
This is a compile test
2017-08-11 11:57:30 -04:00
Jeffrey Walton
a46377caf7
Clear "C4189: 'keys': local variable is initialized but not referenced"
2017-08-11 08:32:09 -04:00
Jeffrey Walton
f7978a6529
Sync with Upstream master
2017-08-11 07:53:37 -04:00
Jeffrey Walton
28a1fc2c60
Sync with Upstream master
2017-08-11 07:36:27 -04:00
Jeffrey Walton
173dd0b530
Add AES for ARMv8 (Issue 458)
2017-08-11 07:31:09 -04:00
Jeffrey Walton
6c28b521bd
Fix Illegal Instruction under SSE2+SSSE3
...
It appears SSE4.1 crept into our SSE2+SSSE3 implementation. We'll revisit it in the future
2017-08-11 06:43:14 -04:00
Jeffrey Walton
0c194bbc46
Fix "SSE4.2 instruction set not enabled"
...
Also see https://gcc.gnu.org/ml/gcc-help/2017-08/msg00015.html
2017-08-11 05:28:36 -04:00
Jeffrey Walton
ce96a7974d
Sync with Upstream master
2017-08-10 23:04:12 -04:00
Jeffrey Walton
e5b1be035e
Add iOS testing to Travis
2017-08-10 22:59:00 -04:00
Jeffrey Walton
70a0ca0826
Try to enable Travis iOS testing
...
Take 18
2017-08-10 22:37:20 -04:00
Jeffrey Walton
7907742c1a
Try to enable Travis iOS testing
...
Take 17
2017-08-10 22:10:47 -04:00
Jeffrey Walton
0b31e7ff5e
Fix broken compiler under Apple Clang for ARMv8
...
Undefined symbols for architecture arm64:
"CryptoPP::CRC32_Update_ARMV8(unsigned char const*, unsigned long, unsigned int&)", referenced from:
CryptoPP::CRC32::Update(unsigned char const*, unsigned long) in libcryptopp.a(crc.o)
"CryptoPP::CRC32C_Update_ARMV8(unsigned char const*, unsigned long, unsigned int&)", referenced from:
CryptoPP::CRC32C::Update(unsigned char const*, unsigned long) in libcryptopp.a(crc.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [cryptest.exe] Error 1
2017-08-10 22:08:40 -04:00
Jeffrey Walton
4a6cdc34a5
Try to enable Travis iOS testing
...
Take 16
2017-08-10 21:19:29 -04:00
Jeffrey Walton
c99beec2cd
Fix "error: use of undeclared identifier 'NULL'" on iOS
2017-08-10 21:18:29 -04:00
Jeffrey Walton
7cbadb43f9
Try to enable Travis iOS testing
...
Take 15
2017-08-10 21:11:33 -04:00
Jeffrey Walton
9df1c3b09b
Try to enable Travis iOS testing
...
Take 14
2017-08-10 21:07:20 -04:00
Jeffrey Walton
cea2249608
Try to enable Travis iOS testing
...
Take 13
2017-08-10 21:01:24 -04:00
Jeffrey Walton
2d97cf8bf8
Try to enable Travis iOS testing
...
Take 12
2017-08-10 20:51:07 -04:00