Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Use rol/ror x86 instructions on GCC/Clang | Jack Lloyd | 2017-10-11 | 1 | -2/+24 |
| | | | | | | | Neither is very good at recognizing rotate sequences. For cases where the rotation value is a constant they do fine, but for variable rotations they do horribly. Using inline asm here improved performance of both CAST-128 and CAST-256 by ~20% on my system with both GCC and Clang. | ||||
* | Merge GH #1248 Unroll SM3 compression loop | Jack Lloyd | 2017-10-11 | 1 | -56/+94 |
|\ | |||||
| * | Unroll SM3 compression function | Jack Lloyd | 2017-10-10 | 1 | -56/+94 |
| | | |||||
* | | Helpful comment | Jack Lloyd | 2017-10-11 | 1 | -1/+2 |
| | | |||||
* | | Remove SSE2 bswap_4 | Jack Lloyd | 2017-10-11 | 1 | -24/+0 |
| | | | | | | | | | | It was disabled anyway (bad macro check) and with recent GCC turned out to be slower than just using bswap. | ||||
* | | Optimize CFB mode | Jack Lloyd | 2017-10-11 | 2 | -39/+97 |
| | | | | | | | | Still slower but notably faster at least with AES-NI | ||||
* | | Add missing header | Jack Lloyd | 2017-10-11 | 1 | -0/+1 |
| | | | | | | | | Error under filesystem-free builds | ||||
* | | Simplify ffi call overhead | Jack Lloyd | 2017-10-11 | 5 | -45/+22 |
| | | | | | | | | Notable reductions in code size, stack size and function call overhead. | ||||
* | | getenv is in standard C++ | Jack Lloyd | 2017-10-09 | 1 | -1/+1 |
| | | |||||
* | | Include cstdlib to make os_utils compile with clang. | Alexander Bluhm | 2017-10-09 | 1 | -0/+2 |
| | | |||||
* | | Add comments explaining why its ok to rely on deprecated features here. | Jack Lloyd | 2017-10-09 | 2 | -0/+8 |
| | | | | | | | | [ci skip] | ||||
* | | Add a special Compat_Callbacks constructor to silence deprecation warnings. | Jack Lloyd | 2017-10-09 | 3 | -7/+24 |
| | | | | | | | | | | | | That way we avoid the warning internally even in amalgamation mode. GH #1243 | ||||
* | | Forward declare BigInt in mp_core.h | Jack Lloyd | 2017-10-06 | 2 | -1/+3 |
| | | | | | | | | Only needed in one source file here. | ||||
* | | Remove needless variable | Jack Lloyd | 2017-10-06 | 1 | -2/+0 |
| | | |||||
* | | Address some bool/int conversion warnings from Sonar | Jack Lloyd | 2017-10-06 | 4 | -5/+12 |
| | | | | | | | | Nothing major but probably good to clean these up. | ||||
* | | Address various GCC warnings | Jack Lloyd | 2017-10-06 | 8 | -24/+26 |
| | | | | | | | | | | Things like -Wconversion and -Wuseless-cast that are noisy and not on by default. | ||||
* | | Correct the SHA-3 PKCSv1.5 IDs | Jack Lloyd | 2017-10-05 | 2 | -5/+13 |
| | | | | | | | | | | | | | | Thanks to @noloader for pointing me at draft-jivsov-openpgp-sha3-01 which has the correct values. Adds a test so this can't happen again. | ||||
* | | Mark some functions of MDx_HashFunction final | Jack Lloyd | 2017-10-05 | 1 | -3/+3 |
| | | | | | | | | | | The class itself can't be final but we can final the overrides from HashFunction, which helps the compiler devirtualize. | ||||
* | | Add missing `override` | Jack Lloyd | 2017-10-05 | 1 | -1/+1 |
| | | | | | | | | | | Redundant with `final` but GCC -Wsuggest-override complains. (This is already a bug filed for this in GCC upstream.) | ||||
* | | Add missing include | Jack Lloyd | 2017-10-05 | 1 | -0/+1 |
|/ | | | | | In filesystem free build, we weren't including any definition of std::istream. GH #1238 | ||||
* | Add limits.h header for INT_MAX | Jack Lloyd | 2017-10-04 | 1 | -0/+1 |
| | | | | Gentoo bug https://bugs.gentoo.org/633468 | ||||
* | Simplify header includes in socket.cpp | Jack Lloyd | 2017-10-03 | 1 | -9/+3 |
| | | | | | | This got a little contorted in os_utils.cpp because of need to support Boost asio along with system dependent interfaces. Here it's simple: Boost or Unix or Winsock. | ||||
* | Merge GH #1232 Only require socket code if http_util is loaded | Jack Lloyd | 2017-10-03 | 7 | -305/+368 |
|\ | |||||
| * | Add missing windows.h include in os_utils.cpp | Simon Warta | 2017-10-03 | 1 | -0/+3 |
| | | |||||
| * | Add missing include mem_ops.h in socket.cpp | Simon Warta | 2017-10-03 | 1 | -0/+2 |
| | | | | | | | | cast_uint8_ptr_to_char is required by Winsock_Socket | ||||
| * | Move socket implementation into module http_util | Simon Warta | 2017-10-03 | 7 | -308/+366 |
| | | | | | | | | | | This removes the requirement of linking socket libraries for applications that do not use http_util | ||||
* | | Avoid empty methods, use =default or add a comment | Jack Lloyd | 2017-10-03 | 20 | -40/+29 |
| | | | | | | | | Sonar | ||||
* | | Add missing cstdlib include to openssl_rsa.cpp | ilovezfs | 2017-10-03 | 1 | -0/+1 |
|/ | | | | Fixes the build with Xcode 8 and earlier. | ||||
* | Remove redundant private: specifier | Jack Lloyd | 2017-10-03 | 1 | -1/+1 |
| | | | | [ci skip] | ||||
* | Add static_cast to avoid conversion warning | Jack Lloyd | 2017-10-03 | 1 | -1/+2 |
| | | | | | I guess we're in trouble if we add any block ciphers with size >= 2^31 Probably fine. | ||||
* | Force expand_mask to be on T instead of int | Jack Lloyd | 2017-10-03 | 1 | -1/+1 |
| | | | | Which is what the expression evaluates to. Caught by MSVC warning. | ||||
* | MSVC wants __declspec(restrict) on both declaration and definition | Jack Lloyd | 2017-10-03 | 1 | -1/+1 |
| | | | | Thankfully GCC doesn't mind it being on the definition. | ||||
* | Add wrappers for reinterpret_cast between char* and uint8_t* | Jack Lloyd | 2017-10-03 | 29 | -66/+85 |
| | | | | | | | Generally speaking reinterpret_cast is sketchy stuff. But the special case of char*/uint8_t* is both common and safe. By isolating those, the remaining (likely sketchy) cases are easier to grep for. | ||||
* | Remove redundant parens | Jack Lloyd | 2017-10-03 | 7 | -8/+8 |
| | | | | Sonar | ||||
* | Remove redundant return statement | Jack Lloyd | 2017-10-02 | 1 | -1/+1 |
| | |||||
* | Remove various unused variables | Jack Lloyd | 2017-10-02 | 3 | -4/+0 |
| | | | | Sonar finds | ||||
* | Remove unnecessary virtuals from final classes | Jack Lloyd | 2017-10-02 | 6 | -10/+6 |
| | | | | Found with Sonar | ||||
* | Uppercase constants | Jack Lloyd | 2017-10-02 | 1 | -12/+15 |
| | |||||
* | Use class for exception types | Jack Lloyd | 2017-10-02 | 2 | -5/+9 |
| | |||||
* | Remove protected functions from final classes | Jack Lloyd | 2017-10-02 | 8 | -38/+8 |
| | | | | | | Mostly residue from the old system of splitting impls among subclasses Found with Sonar | ||||
* | Make TLS::Blocking_Client non-final | Jack Lloyd | 2017-10-02 | 1 | -1/+1 |
| | | | | It is intended for derivation! Just not tested... | ||||
* | sigemptyset is a macro on OS X | Jack Lloyd | 2017-10-02 | 1 | -1/+1 |
| | |||||
* | Remove protected m_handle data from PKCS11::Object | Jack Lloyd | 2017-10-02 | 3 | -6/+18 |
| | |||||
* | Make m_emsa in PK_{Signature,Verification}_with_EMSA private | Jack Lloyd | 2017-10-02 | 2 | -4/+7 |
| | |||||
* | Make EMSA1 data private | Jack Lloyd | 2017-10-02 | 1 | -6/+4 |
| | | | | It was already final so leaving data as protected makes no sense... | ||||
* | Make kv in TLS_Text_Policy private, add protected setter | Jack Lloyd | 2017-10-02 | 2 | -0/+14 |
| | |||||
* | Remove protected data members from X509_Object | Jack Lloyd | 2017-10-02 | 5 | -41/+27 |
| | | | | Just need const accessors, no reason for any subclass to modify values. | ||||
* | Remove needless block | Jack Lloyd | 2017-10-02 | 1 | -11/+7 |
| | |||||
* | Avoid using namespace in FFI headers | Jack Lloyd | 2017-10-02 | 5 | -7/+3 |
| | | | | Internal only headers but Sonar doesn't know that | ||||
* | Prefix names in global namespace with :: | Jack Lloyd | 2017-10-02 | 3 | -7/+7 |
| |