Commit Graph

856 Commits (572506de3d00f1280c89b1168384178a988c4486)

Author SHA1 Message Date
Jeffrey Walton 572506de3d This patch (1) documents the interface, including when the underlying array is uninitialized versus set to 0; (2) adds move semantics; (3) makes its members private; (4) adds asserts for some sanity checks in Debug builds; (5) guards calls to memset and memcpy for NULL pointers and 0-sizes; (6) prefers initialization over assignment; and (7) switches to numeric_limits::max() for sizes 2015-08-03 18:59:02 -04:00
Jeffrey Walton 57865b43ce Improved comment on use of __cplusplus macro 2015-08-03 17:24:41 -04:00
Jeffrey Walton 651ba89176 Added CRYPTOPP_POSIX_ASSERT to config.h for those who want original Posix behavior of abort(). Additional cleanup of CRYPTOPP_CXX11 defines 2015-08-03 17:14:55 -04:00
Jeffrey Walton 8bfb29740f Removed inline ASM for GCC. According to the GCC devs, the cast to volatile is all that's required 2015-08-03 14:01:31 -04:00
Jeffrey Walton 69c6989e99 Cleared "-Wunused-but-set-variable" warning due to Bot_2 macro on x86_64 2015-08-03 13:14:44 -04:00
Jeffrey Walton fd300a1c90 Changed to dynamic_cast for GlobalRNG() 2015-08-03 12:48:12 -04:00
Jeffrey Walton c8860d6fa9 Cleared "register is deprecated" warning on OS X with ancient versions of the C++ runtime library 2015-08-03 04:33:57 -04:00
Jeffrey Walton 491e8dbd74 Whitespace checkin 2015-08-03 04:03:23 -04:00
Jeffrey Walton 24047196b1 Cleaned up code to tame the optimizer in smart_ptr and member_ptr. It should work on all platforms 2015-08-02 02:11:46 -04:00
Jeffrey Walton b44546be11 Revert "Hid inline assembly behind a macro". The MEMORY_BARRIER code is OK, and the use of inline assembly code is OK to tame the optimizer is OK; but its confusing because the interactions are not readily apparent. 2015-08-01 19:00:31 -04:00
Jeffrey Walton 390d27b6cd Hid inline assembly behind a macro 2015-08-01 18:02:03 -04:00
Jeffrey Walton ad352c64e0 Wrapped SecByteBlock and SecWordBlock in DOCUMENTED_TYPEDEF 2015-08-01 16:53:33 -04:00
Jeffrey Walton 9b552d06d2 Changed cross-compile makefile to use "-Os" by default 2015-07-31 15:33:08 -04:00
Jeffrey Walton 158bb2c94f Added "system" target that dumps a number of internal variables for testing and troubleshooting 2015-07-31 14:24:49 -04:00
Jeffrey Walton c5b1adde3a Added "system" target that dumps a number of internal variables for testing and troubleshooting 2015-07-31 14:00:24 -04:00
Jeffrey Walton b1085b7384 Changed Cygwin to use -O2 instead of -O3 with GCC 4.9 due to crash 2015-07-31 10:22:15 -04:00
Jeffrey Walton 5f2c32af37 Cut-over to inline assembly to tame the optimizer 2015-07-31 10:05:14 -04:00
Jeffrey Walton 79ec88f5a6 Fixed optimize string under GCC 2015-07-31 09:52:23 -04:00
Jeffrey Walton d935fd80ba Partial cut-over to static local strings for DefaultChannel() and AadChannel(). Cout-over DEFAULT_CHANNEL and AAD_CHANNEL to use them behind the scenes 2015-07-31 08:23:53 -04:00
Jeffrey Walton 8796c9e684 Removed IS_CENTOS feature test 2015-07-31 08:09:59 -04:00
Jeffrey Walton 80b253c8d8 Removed IS_CENTOS feature test 2015-07-31 08:09:32 -04:00
Jeffrey Walton cfb68699b0 Fix "error: bad value (native) for -march= switch" on CentOS 5 2015-07-31 06:32:11 -04:00
Jeffrey Walton b84cd9013a Supress "-Wmaybe-unitiialized" warning under GCC; guard to ensure it does not produce unknown pragma warning under Clang 2015-07-31 04:44:28 -04:00
Jeffrey Walton 3caada0a9e Switch to static local/accessor pattern to avoid initialization order issues amoung translation units 2015-07-31 03:40:43 -04:00
Jeffrey Walton b27ca38ad7 fat libraries → fat binaries 2015-07-31 03:05:07 -04:00
Jeffrey Walton 2a09da77d6 Change _MSC_VER to 2300 (sometime around VS2019) for CRYPTOPP_CXX14. Its just a guess that won't collide in the near future... 2015-07-31 02:14:00 -04:00
Jeffrey Walton 9fd44748c1 Added define for CRYPTOPP_CXX14 so we can pick up operator "" and small string optimizations (SSO) 2015-07-31 02:11:32 -04:00
Jeffrey Walton bef0e79882 Removed USING_NAMESPACE(std). Removed unneeded headers. Added minimum headers. Added "-Wunused-parameter" to warning ignore list due to argc and argv[] 2015-07-31 01:48:18 -04:00
Jeffrey Walton f7600dbbec Added Microsoft compilers under <utility> guard 2015-07-31 01:14:31 -04:00
Jeffrey Walton 2d82901165 Added <utility> based on C++11 for R-values and std::move 2015-07-31 00:31:16 -04:00
Jeffrey Walton e9c086aaac Added assert. Thanks to Jean-Pierre Münch for the suggestion 2015-07-30 18:58:11 -04:00
Jeffrey Walton da68ad21a2 Removed USING_NAMESPACE(std). Changed hex → std::hex, etc (not sure how these six escaped the first time)... 2015-07-30 17:46:18 -04:00
Jeffrey Walton 22c3e41133 Removed USING_NAMESPACE(std). Changed cout → std::cout, cerr → std::cerr, ... 2015-07-30 17:35:58 -04:00
Jeffrey Walton 2799132fd7 Added fipsalgt.cpp to list of Windows sources to be filtered. Its literally empty (everything is commented out) 2015-07-30 17:30:10 -04:00
Jeffrey Walton 616a772ecc Added *.user files to list of artifacts to clean 2015-07-30 16:31:43 -04:00
Jeffrey Walton cfec803be8 Added trap.h and hkdf.h to DSP project files 2015-07-30 16:29:07 -04:00
Jeffrey Walton 52b7fbbca6 Template type aliases compiled under Visual Studio 2015 (v19.00); and not VS2010 or VS2012. We have a winner... 2015-07-30 15:53:01 -04:00
Jeffrey Walton c7e5bebcf2 Fixe compiler error under MinGW due to typedef'ing ssize_t. Cygwin OK 2015-07-30 14:38:54 -04:00
Jeffrey Walton efaaea4a90 Whitespace checkin 2015-07-30 14:33:17 -04:00
Jeffrey Walton 458d582ab1 Added typedef for missing ssize_t on Windows. We used the same definitions Windows provided for the datatypes on MSDN, so it should not cause compiler problems (at least under Windows compilers) 2015-07-30 14:26:17 -04:00
Jeffrey Walton c9759f4ca1 Updated information under "Building the Library". Added info on C++11 and LLVM's libc++ 2015-07-30 14:03:28 -04:00
Jeffrey Walton 21c4db07d9 Added validat0.cpp to Windows and Borland project files 2015-07-30 13:52:11 -04:00
Jeffrey Walton 17fd66f2ff Visual Studio 2010 (v16.00) does not accept the template type alias. Bump to VS2012 (v17.00). Lather, rinse, repeat until we determine when... 2015-07-30 13:43:55 -04:00
Jeffrey Walton 8293570bd4 Added self-assignment guards or comment indicating why the check is not needed 2015-07-30 13:24:37 -04:00
Jeffrey Walton 77206baf56 Whitespace checkin 2015-07-30 13:07:33 -04:00
Jeffrey Walton 7ad12ab5b0 Cleared auto_ptr deprecation warning with C++11 under Debian 8/i686 2015-07-30 12:07:26 -04:00
Jeffrey Walton a8ca289b00 Cleared "signed/unsigned" warning on Debian 8/i686. ROUNDS was already unsigned; suspect this was a compiler or port issue 2015-07-30 12:00:25 -04:00
Jeffrey Walton 4d8ac2db7c Cleared "reference to 'auto_ptr' is ambiguous" error under LLVM's libc++ and C++11 2015-07-30 11:25:24 -04:00
Jeffrey Walton 8c63032865 Cleared "name defined in alias declaration must be an identifier" error under LLVM's libc++ and C++11 2015-07-30 11:24:41 -04:00
Jeffrey Walton 60291122ae Cleared "no member named 'unique_ptr' in namespace 'std'" error under C++11 on OS X 2015-07-30 11:15:51 -04:00