aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib
Commit message (Collapse)AuthorAgeFilesLines
* Merge GH #1189 Correct return value of botan_pk_op_verify_finishJack Lloyd2017-09-073-2/+4
|\
| * Correct return value of botan_pk_op_verify_finishJack Lloyd2017-09-063-2/+4
| | | | | | | | | | | | | | This function changed behavior in 0d403a3 see also GH #1187 Add new return code BOTAN_FFI_INVALID_VERIFIER and use it for both signature and bcrypt verification functions.
* | Add support for computing SM2 ZA field to FFIJack Lloyd2017-09-062-0/+42
| | | | | | | | This is a contribution from Ribose Inc.
* | Support arbitrary hashes for SM2 signaturesJack Lloyd2017-09-061-7/+37
| | | | | | | | This is a contribution from Ribose Inc
* | Remove unused memberJack Lloyd2017-09-061-1/+0
| |
* | Support arbitrary hashes for SM2 encryptionJack Lloyd2017-09-051-12/+17
|/ | | | This is a contribution from Ribose Inc.
* Simplify polynomial doubling codeJack Lloyd2017-09-055-156/+82
| | | | | | | | | | GCC and Clang generate effectively identical code for a template with parameters, vs completely unrolled code as was used previously. Add a little-endian variant so XTS can use it. This extends XTS support to cover 256 and 512-bit ciphers. I was not able to find another implementation that supports both XTS and ciphers with large blocks, so the XTS test vectors are self-generated.
* Correct TLS::Policy::latest_supported_versionJack Lloyd2017-09-041-2/+16
| | | | | This would do the wrong thing if TLS v1.2 was disabled but v1.0/v1.1 allowed.
* Added SHA3_XXX_PKCS OIDFrancis Dupont2017-09-041-0/+28
|
* Header shuffleJack Lloyd2017-09-041-5/+10
| | | | Still need basic system headers even when using asio for network
* MinGW fixesJack Lloyd2017-09-042-4/+4
|
* Merge GH #1182 Add support for ARMv8 AES instructionsJack Lloyd2017-09-034-0/+367
|\
| * Add support for AES extensions on ARMv8Jack Lloyd2017-09-034-0/+367
| | | | | | | | Based on the patch in GH #1146
* | Merge GH #1181 Add support for ARMv8 PMULL instructionJack Lloyd2017-09-034-0/+112
|\ \
| * | Add support for ARMv8 PMULL instructionJack Lloyd2017-09-034-0/+112
| |/ | | | | | | Contributed in GH #842
* | Merge GH #1180 Refactorings to support Windows PhoneJack Lloyd2017-09-0312-470/+528
|\ \ | |/ |/|
| * TypoJack Lloyd2017-09-031-1/+1
| |
| * Define macro so windows.h doesn't include winsock.hJack Lloyd2017-09-033-0/+4
| | | | | | | | Ugh Windows headers y u so nasty.
| * Move secure_scrub_memory to os_utils.cppJack Lloyd2017-09-032-40/+27
| |
| * Refactor network code used in http_utilJack Lloyd2017-09-033-140/+303
| | | | | | | | Move the actual socket stuff to os_utils.cpp
| * Refactor RNGs to support Windows PhoneJack Lloyd2017-09-026-291/+195
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This OS has its own crypto API and does not support CryptGenRandom. Splits System_RNG_Impl into distinct declarations one per implementation type. Easier to read now that we are up to 4 distinct versions. Removes the CryptoAPI entropy source, and replaces it with an entropy source that calls the system RNG. This is nominally a bit less flexible in that the entropy source allowed polling multiple providers (though we didn't actually make use of that). Plus side is it works on all systems. Currently the dev_random entropy source is still there because we do actually use it to poll both /dev/random and /dev/urandom, and it might be useful (on certain systems) to also poll a HW RNG, which are often assigned their own device node. This could debatably also be removed in favor of just reading the system RNG.
* | Cleanups in cpuid handling codeJack Lloyd2017-09-031-47/+47
| |
* | Avoid g_ prefix on local variableJack Lloyd2017-09-031-3/+3
| | | | | | | | Reserving it for globals so they are easy to grep for
* | Clean up use of <limits> headerJack Lloyd2017-09-038-14/+6
|/ | | | Don't include it where it is not needed, included it where it is used.
* Avoid using <iostream> header within the libraryJack Lloyd2017-09-022-2/+4
| | | | We only need <istream> + <ostream> here
* Support a negative base in power_modJack Lloyd2017-09-021-3/+16
| | | | Closes #1168
* De-inline accessor functions in Client_Hello typeJack Lloyd2017-09-012-93/+130
| | | | | This class is exposed but the extension types aren't, so calls to these functions from outside the library would not link.
* Don't try enforcing the hash policy for PSK ciphersuitesJack Lloyd2017-09-011-1/+1
| | | | Since we don't end up signing anything in any case.
* Enforce signature hash policy properlyJack Lloyd2017-08-314-17/+61
| | | | | | | | Previously if the client did not send signature_algorithms, or if it only included algos not in the policy, we would just fallback to the hardcoded SHA-1 default of TLS v1.2 Instead check the policy before accepting anything.
* Rename file to match conventionsJack Lloyd2017-08-311-0/+0
| | | | [ci skip]
* Fix missing virtual destructor on CSP_HandleJack Lloyd2017-08-313-3/+4
| | | | Caught by GCC cross compiling. Also fix a couple 0-as-null warnings.
* Merge GH #1169 Add LLVM bitcode targetJack Lloyd2017-08-312-2/+2
|\
| * Add support for LLVM bitcode targetJack Lloyd2017-08-302-2/+2
| |
* | More MSVC warnings fixesJack Lloyd2017-08-3111-19/+20
| |
* | Fix various MSVC warningsJack Lloyd2017-08-3125-69/+97
|/ | | | Based on VC2017 output
* Slight cleanup in Curve25519_PrivateKey constructorJack Lloyd2017-08-291-8/+6
|
* Remove unused includeJack Lloyd2017-08-291-1/+0
|
* Avoid having variable named m_emsa twice in class hierarchyJack Lloyd2017-08-292-8/+16
| | | | | | | | In fact the variable was only used if we use deterministic nonces, and just to extract the hash name. So just do that once, and only if we are not using random nonces. Flagged by Sonar
* Fix a valgrind const-time error in ISO 9796 paddingJack Lloyd2017-08-291-2/+7
| | | | It didn't unpoison the output values.
* Avoid false positive valgrind in TLS CBC decryptionJack Lloyd2017-08-291-2/+2
| | | | | | We poisoned the record before decrypting it, which caused failures with Camellia ciphersuites (or AES, on platforms that use T-tables). Instead poison it right after decrypting.
* Avoid math on booleansJack Lloyd2017-08-291-3/+3
| | | | Sonar find
* In OCSP::CertID don't crash if SHA-1 not availableJack Lloyd2017-08-291-1/+1
| | | | Caught with Sonar
* Avoid `throw new Exception`Jack Lloyd2017-08-291-1/+1
| | | | Caught by Sonar, once I managed to wade through the noise.
* OpenSSL module requires public key code be enabled in buildJack Lloyd2017-08-291-0/+4
|
* Merge GH #1158 Add build mode for fuzzer testsJack Lloyd2017-08-292-3/+9
|\
| * Fix bad iterator deref in OpenSSL RSAJack Lloyd2017-08-251-1/+3
| |
| * Add a guard to avoid doing &v[1] when v.size() == 1Jack Lloyd2017-08-251-2/+6
| | | | | | | | Found by running the fuzzers over corpus with debug iterators.
* | Avoid using GCC ivdep pragma in GCC 4.8 [ci skip]Jack Lloyd2017-08-281-1/+1
|/
* Cleanup ARIAJack Lloyd2017-08-232-379/+251
| | | | Remove NEON support, replace macros with inlines
* Add ARIA Block Cipher (GH #1004)Jeffrey Walton2017-08-234-0/+738
|