Commit Graph

239 Commits (1d0df34ae8304fa964cb7702e4f4476bbf6e9e7c)

Author SHA1 Message Date
Jeffrey Walton 62f92dd592
Change next version from 5.7 to 6.0
Crypto++ 5.7 was the increment after the 5.6.5 release. Crypto++ 6.0 accurately reflects compatibility
2017-02-21 12:59:20 -05:00
anonimal 8558bc519c
config.h: add DragonFly BSD support 2017-02-19 07:04:38 +00:00
Jeffrey Walton 81b1a18063
Change file preamble to include "originally written by Wei Dai"
We have made a fair number of changes, and we don't want WD to receive credit for issues he was not part of
2017-01-27 07:05:45 -05:00
Jeffrey Walton 79f3ab89f1
Removed remaining CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY (Issue 369) 2017-01-27 06:02:58 -05:00
Jeffrey Walton b129818c35
Add GCC inline ASM for PMULL and PMULL2
The macros that invoke GCC inline ASM have better code generation and speedup GCM ops by about 70 MiB/s on an Opteron 1100. The intrinsics are still available for Windows platforms and Visual Studio 2017 and above
2017-01-19 02:38:00 -05:00
Jeffrey Walton 8eb1b6cb6b
Update CRYPTOPP_BOOL_ARM_PMULL_INTRINSICS_AVAILABLE availability (Issue 362)
PMULL and PMULL2 are available on Aarch64 only, and not Aarch32 or A-32
2017-01-16 05:35:53 -05:00
Jeffrey Walton c80502102a
Breakout __ARM_FEATURE_CRYPTO into PMULL, AES and SHA for Apple Clang (Issue 362)
It appears Apple Clang disgorges carryless multiply (PMULL) from Crypto (AES and SHA). The breakout added CRYPTOPP_BOOL_ARM_PMULL_INTRINSICS_AVAILABLE for PMULL, and retained CRYPTOPP_BOOL_ARM_CRYPTO_INTRINSICS_AVAILABLE for AES and SHA only
2017-01-15 00:22:14 -05:00
Jeffrey Walton 732601e8b6
Microsoft still does not suport ARMv8 and the ARM intrinscs
Remove the define for now. Maybe Microsoft will support it in 2019 or 2020
2017-01-13 23:57:11 -05:00
klemens 5a5c633073 spelling fixes 2016-12-27 18:34:57 +01:00
Jeffrey Walton 1a17ade299
Fixed version numbers
Version numbers are rolled back to update the docs. The rolled back versions got committed with the updated docs
2016-12-11 07:06:38 -05:00
Jeffrey Walton 99ae937d8b
Updated documentation (Issue 121) 2016-12-11 06:56:52 -05:00
Jeffrey Walton d01467b754
Use 'static const int' for constants in Doxygen documentation (Issue 343) 2016-12-04 16:07:10 -05:00
Jeffrey Walton d45763a7ae
Removed CRYPTOPP_DISABLE_X86ASM macro (Issue 70) 2016-12-03 05:16:23 -05:00
Jeffrey Walton ba75834ae9
Removed VC++ 5.0 and 6.0 workarounds (Issue 342) 2016-12-03 05:05:56 -05:00
Jeffrey Walton 40230dd3bf
Removed MAINTAIN_BACKWARDS_COMPATIBILITY_562 (Issue 70) 2016-12-03 00:32:07 -05:00
Jeffrey Walton c8b910aff5
Backed-off automatically setting CRYPTOPP_BOOL_SSE_SHA_INTRINSICS_AVAILABLE due to bad interaction with '-march=x86-64'. Disgorge SSE2 implementation from CXX implementation 2016-12-01 23:35:13 -05:00
Jeffrey Walton 82009ecf41
Increment version to 5.7 due to ABI break *Issue 337)
We still need to supply a patch for those maintaining 5.6.x
2016-12-01 18:10:56 -05:00
Jeffrey Walton 70d7297559 Merge pull request #339 from ralphtandetzky/master
Fix: GCC warning "type qualifiers ignored on function return type".
2016-12-01 09:56:39 -05:00
Ralph Tandetzky 35a2ef10a2 Fix: GCC warning "type qualifiers ignored on function return type".
This pedantic message appeared all over the code. Also removed one warning about an unused variable in release build.
2016-12-01 15:37:04 +01:00
Jeffrey Walton 7ab9b00f90
Add Intel SHA1 extension support 2016-12-01 00:49:59 -05:00
Jeffrey Walton 2b736bc6f1
Fix "deprecated conversion from string constant to ‘char*’" 2016-11-14 19:45:08 -05:00
Jeffrey Walton 76b11b010c
Add CRYPTOPP_STATIC_CONSTEXPR macro 2016-11-13 11:50:34 -05:00
Jeffrey Walton 61aa62bd8f
Add CRYPTOPP_STATIC_CONSTEXPR 2016-11-12 09:34:34 -05:00
Jeffrey Walton aa8260df2c
Use enum for Doxygen processing 2016-11-10 02:04:46 -05:00
Jeffrey Walton 84b602cc7d
Fix compile under Debian Hurd (i386)
Debian Hurd defines __MACH__, and it was picking up "#define CRYPTOPP_SECTION_INIT __attribute__((section (__DATA,__data)))" intended for Apple linkers
2016-10-28 00:33:43 -04:00
Jeffrey Walton 69de0d591b
Fix "operator '>=' has no left operand" (Issue 329) 2016-10-27 14:20:51 -04:00
Jeffrey Walton 5596f73371
Fix Cygwin Newlib signal handler (Issue 315) 2016-10-14 15:00:49 -04:00
Jeffrey Walton 4d562aaac7
Post-release version increment 2016-10-11 14:37:03 -04:00
Jeffrey Walton e09d8a2491
Fix Cygwin compile due to missing <signal.h> 2016-10-01 22:12:08 -04:00
Jeffrey Walton 2efedfb5ab
Reset config.h that cross-pollinated from AES dev-branch 2016-09-30 01:19:44 -04:00
Jeffrey Walton 4c1b5472cc Cutover to SecByteBlock member for AES (Issue 302, CVE-2016-7544) 2016-09-30 01:09:21 -04:00
Jeffrey Walton e0651b458f Fix Visual Studio 2005 compile (Part of Issue 300) 2016-09-22 23:54:10 -04:00
Jeffrey Walton 06e29357cb config.compat
Fix MSC compile under ARM
2016-09-21 02:02:55 -04:00
Jeffrey Walton 32ae3e52f1 Partially revert 714daaf570.
We were mostly OK under i686/x86_64, but Clang died completely under ARM-32 and Aarch64.
2016-09-21 00:35:59 -04:00
Jeffrey Walton 31a7b99f9e Remove CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY_562 from block defining word64 based on data models
We use the samllest word size that meets requirements, not th e largest size. That helps us get to a word128 on more platforms
2016-09-20 02:26:04 -04:00
Jeffrey Walton 49d7187255 Cleanup feature defines in <config.h>. Cleanup intrinsic includes in <cpu.h> 2016-09-20 00:35:27 -04:00
Jeffrey Walton 0e9da81311 Fix compile under CentOS 5 with GCC 4.1 2016-09-19 23:00:33 -04:00
Jeffrey Walton 923efa865b Fix Solaris GCC and "constructor priorities are not supported" 2016-09-19 21:18:58 -04:00
Jeffrey Walton 6422ecfbeb Fix CRYPTOPP_UNUSED macro and CVE number 2016-09-19 17:55:36 -04:00
Jeffrey Walton 151521d68f Cleanup use of CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY_562 2016-09-19 00:56:01 -04:00
Jeffrey Walton 714daaf570 Fix broken Clang compile with -march=x86-64 (Issue 283)
It would be great if Clang stopped pretending to be other compilers. In the absence of honesty, it would be nice if it consumed the same programs GCC does
2016-09-19 00:51:35 -04:00
Jeffrey Walton fb6a11ff08 Remove library supplied aesenc, aesdec and friends (Issue 206) 2016-09-18 21:06:41 -04:00
Jeffrey Walton f57c4dced5 Moved config.h → config.compat; moved config.recommend → config.h
Also see http://groups.google.com/forum/#\!topic/cryptopp-users/bWcRw1XgJ_Q
2016-09-18 12:36:50 -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 aa5767cccf Post-release version increment 2016-09-11 14:35:21 -04:00
Jeffrey Walton 3074541e92 Bump Crypto++ version number from 5.6.3 to 5.6.4 2016-09-10 02:51:54 -04:00
Jeffrey Walton 677c09584c Removed workspace and project files from FileList.txt. Cleared 'make convert' error for makefile recipe 2016-09-09 03:33:06 -04:00
Jeffrey Walton 7f958575ea Squashed commit of the following:
commit 47c75c6e9397e240919207e50e5a611d3e2a2428
Merge: d7685c2 42085ee
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 20:20:39 2016 -0400

    Attempting to fix binary file merge conflict

commit d7685c2d946beecc419ddb6901c24e972c7cf3ee
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 16:39:23 2016 -0400

    Add vsClean.cmd to vs2010.zip

commit 4b96fdf1c551260da60eb021f324bcc3fcfec626
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 16:15:38 2016 -0400

    Add Keccak to vs2010.zip

commit 3962db73b7113ee805b46a5bb4da64e204fe6bb0
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 15:40:35 2016 -0400

    Fold hmqv.cpp and fhmqv.cpp into mqv.cpp. There's no need for three empty source files

commit 44401448cbb6c8125b0f1ab4419c5b174408ffd7
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 15:39:23 2016 -0400

    Fold hmqv.cpp and fhmqv.cpp into mqv.cpp. There's no need for three empty source files

commit 847bfccb8d5c388e67745dc8c69768fa503c5135
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 14:48:02 2016 -0400

    Whitespace cleanup

commit 46a37be6fef361704dcf852bc9a099ce0a1da4c8
Merge: aefb8f8 3697867
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 14:43:01 2016 -0400

    Merge 'master' into 'keccak'

commit aefb8f8ff2b81b967089c53b457a92fc6f7544d6
Merge: 51a828b 3c91d93
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 12:39:51 2016 -0400

    Merge 'master' into 'keccak'

commit 51a828b88e37a4d18abb00300cd5522bd0e110c5
Merge: 4152870 e7c7722
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 10:41:36 2016 -0400

    Merge 'master' into 'keccak'

commit 415287041e69ddadf5ca1f6fc794b87e145fc2db
Merge: 357a0c5 83ac849
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 10:34:45 2016 -0400

    Merge 'master' into 'keccak'

commit 357a0c510f75e4e58078b500dd469462e90f7650
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 10:13:32 2016 -0400

    Removed deprecated warning from SHA3 classes

commit 5cf9ec10d53b895b5a583e265e4e1298ed402195
Merge: 10ce0ed c2d60cc
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 09:43:15 2016 -0400

    Merge 'master' into 'keccak'

commit 10ce0ed4c5b8a1ea230062fd2dfdec0d87ec5b42
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 09:37:40 2016 -0400

    Add Keccak implementation based on early SHA3. Change SHA3 to NIST FIPS 202 conforming implementation
2016-09-08 20:24:25 -04:00
Jeffrey Walton e609559f06 Use "unsigned long" rather than "unsigned long long" for word64 when '_LP64 || __LP64__'
Guard use of the change on CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY_562
2016-09-08 03:33:05 -04:00
Jeffrey Walton f0e7b45bcb Remove comma operator from return values for StaticGetDefaultRounds and StaticGetValidKeyLength in non-constexpr builds (Issue 255) 2016-09-07 09:32:06 -04:00
Jeffrey Walton 9205efda02 Add constexpr to CRYPTOPP_CONSTANT when CRYPTOPP_CXX11_CONSTEXPR is in effect 2016-09-06 08:53:55 -04:00
Jeffrey Walton a62aee441f Backed out use of "static const" to declare constant; switch to "enum" (Issue 255) 2016-09-06 04:04:03 -04:00
Jeffrey Walton f23314f731 Add configuration support for C++11 constexpr 2016-09-01 22:45:44 -04:00
Jeffrey Walton 3f6d499c19 Fix missing arm_acle.h under GCC 4.8. Rearrange some defines to better account for ARM and MIPS 2016-08-01 13:41:42 -04:00
Jeffrey Walton e2bf6824ff Fix cannot convert between 'word64*' and 'uint64_t*' and -fpermissive 2016-07-24 13:40:58 -04:00
Jeffrey Walton df47660605 Remove unneeded 'defined(__INTEL_COMPILER)' 2016-07-19 00:09:29 -04:00
Jeffrey Walton 686aef6028 Remove second definition of CRYPTOPP_ALIGN_DATA using alignas 2016-07-18 21:53:18 -04:00
Jeffrey Walton 5ad7bbd0c7 Guard CRYPTOPP_CXX11 for STLport
On Android, the compiler will define __cplusplus=201103L when using -std=c++11 even with STLport. STLport appears to be abandoned sometime around 2008.
2016-07-17 20:20:36 -04:00
Jeffrey Walton b0b7b71562 Aloow GCC to particpate in MACH-O initialization 2016-07-12 23:38:30 -04:00
Jeffrey Walton 5080a065ce Clear Valgrind findings under -Ofast 2016-07-12 23:05:00 -04:00
Jeffrey Walton ebef1f418b Disable automatic detection of CRYPTOPP_BOOL_SSE4_INTRINSICS_AVAILABLE for SunCC. Remove #error for C++17 (Issue 222) 2016-07-12 11:05:05 -04:00
Jeffrey Walton 268b261739 Update comment for Sun Studio 12.4 2016-07-11 00:39:13 -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 6c0b120072 Go back to Commit 66ada4cc61 2016-07-06 14:39:18 -04:00
Mouse 87be783cd1 Revert "Merge remote-tracking branch 'upstream/master'" - not intended to be merged by me
This reverts commit 762c315566, reversing
changes made to b48866631a.
2016-07-06 12:01:28 -04:00
Jeffrey Walton fb72dbc8cb Add MacPorts GCC compiler and Clang integrated assembler support. This is a merge of the development branch 'clang-ia' 2016-07-05 02:48:27 -04:00
Jeffrey Walton 2d0dd95dda Fix "CRYPTOPP_USE_FIPS_202_SHA3 redfined" when using config.recommned with CRYPTOPP_USE_FIPS_202_SHA3 defined on command line 2016-07-04 17:51:09 -04:00
Jeffrey Walton ff8105404e Break build when we encounter Clang pretending to be VC++ (Issue 147) 2016-06-22 09:50:23 -04:00
Jeffrey Walton b1df5736a7 Merge 'solaris' dev branch into 'master' 2016-06-15 05:02:28 -04:00
Jeffrey Walton c1f025343a Add C++11 alignas support. Deleting 'alignas' branch 2016-06-14 19:14:09 -04:00
Jeffrey Walton 0414faff8e Revert "Add hack to pickup C++11 alignas"
This reverts commit 16df6e64a8. Detailed testing is revealing some fractures. The pain point seems to be C++11 is more strict about the location of the 'alignas(N)' in the statement-expression. Some compilers accept a looser grammar; while others do not.

Clang 3.3 is rejecting some of the statements with CRYPTOPP_ALIGN_DATA(N). Others may do the same, and we need to look at ICC in particular.
2016-06-07 15:22:11 -04:00
Jeffrey Walton 16df6e64a8 Add hack to pickup C++11 alignas 2016-06-06 23:57:46 -04:00
Jeffrey Walton e961c2da5b Merge Atomics branch into Master 2016-06-06 22:08:04 -04:00
Jeffrey Walton ec8c794a26 Removed duplicate C++11 atomics block. Fixed comment on CRYPTOPP_CXX11_ALIGNAS availability under MS toolchain 2016-05-30 17:46:00 -04:00
Jeffrey Walton 3a26c34721 Simplified tests ARM features. Tied ARM intrinsics to CRYPTOPP_DISABLE_ASM to allow easier user control and testing 2016-05-22 13:02:53 -04:00
Jeffrey Walton 733c78ba23 Relocate ARM defines to contribute to CRYPTOPP_BOOL_ALIGN16 2016-05-21 15:50:04 -04:00
Jeffrey Walton d7c832b813 Remove ILP32 from CRYPTOPP_L1_CACHE_LINE_SIZE. Clang defines it for all 32-bit data models, and not just X32 2016-05-20 16:38:42 -04:00
Jeffrey Walton 9534ce5bc5 Add ARM-64 defines for CRYPTOPP_L1_CACHE_LINE_SIZE 2016-05-20 16:28:55 -04:00
Jeffrey Walton 5e719b95bb Merge branch 'master' into windows-store 2016-05-16 20:38:02 -04:00
Jeffrey Walton f21c15d7af Fix iOS ARM CRC32 and Crypto detection 2016-05-16 20:37:22 -04:00
Jeffrey Walton b42cc4676f Merge branch 'master' into windows-store 2016-05-16 18:48:49 -04:00
Jeffrey Walton e846beac35 Add defines for ARMv8 CRC32 and Crypto extensions 2016-05-16 18:47:31 -04:00
Jeffrey Walton 1f70c6aecc Merge branch 'master' into windows-store 2016-05-15 08:25:45 -04:00
Jeffrey Walton 480532931b Improve Apple iOS support for ARM and NEON. Add ARM Crypto detection 2016-05-15 08:24:51 -04:00
Jeffrey Walton 8313d082ad Merge branch 'master' into windows-store 2016-05-15 05:59:30 -04:00
Jeffrey Walton 950cf4cdb9 Improve ARM feature detection for ARM64 2016-05-15 05:37:39 -04:00
Jeffrey Walton ba6e56e4a2 Merge branch 'master' into windows-store 2016-05-15 02:40:34 -04:00
Jeffrey Walton 01f77765d4 Add basic ARM and Windows Store support 2016-05-15 02:30:08 -04:00
Jeffrey Walton d294b4290b Add changes for Windows Sotre that went missing with my clumsy Git skills 2016-05-09 03:07:57 -04:00
Jeffrey Walton b499b8ba65 Fix Windows Phone compile (Issue 162) 2016-04-25 16:36:54 -04:00
Jeffrey Walton dfac7ec28b Fix Debian 8/GCC 4.9 compile on Core2 Duo 2016-04-25 01:43:45 -04:00
Jeffrey Walton d83e4a0704 Add comment on test vectors used for CRYPTOPP_USE_FIPS_202_SHA3 2016-04-24 00:03:21 -04:00
Jeffrey Walton 01d137155c Add SHA3/FIPS 202 test vectors. Add note to config.h on uncommenting sha3_fips_202.txt when defining CRYPTOPP_USE_FIPS_202_SHA3 2016-04-23 21:55:47 -04:00
Jeffrey Walton df1c94a38a Initial cut-in of CRYPTOPP_USE_FIPS_202_SHA3 macro 2016-04-23 18:47:23 -04:00
Jeffrey Walton 2b311f2194 Add CRYPTOPP_DEPRECATED macro 2016-04-23 16:45:35 -04:00
Jeffrey Walton a11c9e7574 Add SSE4.1 and SSE4.2 feature detection 2016-04-15 16:23:04 -04:00
Jeffrey Walton d8b02cfaaf Fixed m68k detection (Issue 153) 2016-04-06 01:47:45 -04:00
Jeffrey Walton 9b260cf75a Merge branch 'integer-master' of https://github.com/DevJPM/cryptopp into DevJPM-integer-master 2016-01-14 10:03:05 -05:00
DevJPM 36f5e4c4c8 updated to offer the option to hide the base
Added the config.h related changes of the Integer patch (show_no_base only)
2016-01-13 22:38:56 +01:00
Crayon2000 0892ee411b C++Builder: The problem with the CRYPTOPP_CONSTANT macro was corrected properly 2016-01-12 12:29:44 -05:00