aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* 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
|
* Fix bug affecting AltiVec on ppc64le processorsJack Lloyd2017-08-231-8/+2
|
* Fix Altivec detectionJack Lloyd2017-08-221-2/+2
| | | | Broken in c3ae43c04c
* Add support for ECDHE_PSK AEAD ciphersuitesJack Lloyd2017-08-221-2/+6
| | | | From draft-ietf-tls-ecdhe-psk-aead-05, now with official codepoints.
* Remove BOTAN_PARALLEL_FOR from T-table AESJack Lloyd2017-08-221-1/+1
| | | | GH #1077
* Simplify botan_privkey_create_XXXJack Lloyd2017-08-221-87/+16
| | | | All of these can just forward to botan_privkey_create
* Add dh functions in ffiKonstantinos Kolelis2017-08-222-0/+96
|
* Merge GH #1154 Add check for passhash9 algo being available in testsJack Lloyd2017-08-192-0/+15
|\
| * Add is_passhash9_alg_supported()René Korthaus2017-08-192-0/+15
| |
* | Newhope cleanupsJack Lloyd2017-08-182-663/+668
|/ | | | Formatting, use size_t instead of int, etc
* Change type of botan_scrub_mem from uint8_t* to void*Jack Lloyd2017-08-172-2/+2
| | | | | The underlying function already takes void* and it makes sense to pass non-byte buffers to this function.
* In SHACAL2 be smarter about how the round keys are loadedJack Lloyd2017-08-161-9/+15
| | | | | | Using _mm_set_epi32 caused 2 distinct (adjacent) loads followed by an unpack to combine the registers. Have not tested on hardware to see if this actually improves performance.
* Optimize SHACAL2Jack Lloyd2017-08-162-46/+20
| | | | | | Combine several shuffle operations into one. Thanks to jww for the hint. Probably not noticably faster on any system.
* Allow signature using `Raw(hashname)`Jack Lloyd2017-08-153-7/+38
| | | | | | This confirms the message is exactly the size of the expected hash, and also causes RFC 6979 nonces to be generated using the specified hash. See also https://github.com/riboseinc/rnp/issues/367
* Update FFI versionJack Lloyd2017-08-152-5/+13
| | | | | | | Also fix botan_ffi_supports_api to return true for any supported version (2.0, 2.1/2.2, and 2.3). Really 2.2 should have had its own FFI version code since there were already many FFI API additions in that release.
* Add botan_hex_decode, botan_base64_encode, botan_base64_decode FFI funcsJack Lloyd2017-08-152-3/+52
|
* Merge GH #1151 Add SHACAL2Jack Lloyd2017-08-1517-0/+700
|\
| * Add 2x unrolling for SHACAL2 on x86Jack Lloyd2017-08-141-2/+71
| |
| * Add support for SHACAL2 using x86 SHA extensionsJack Lloyd2017-08-144-0/+109
| |
| * Notify callers of parallel ops for AES, IDEA, Noekeon, SHACAL2 and ThreefishJack Lloyd2017-08-1410-0/+85
| |