aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Add SM2 encryption schemeJack Lloyd2017-08-0410-15/+414
| | | | This is a contribution from Ribose Inc (@riboseinc)
* Complete merge of #1137 ChaCha_RNGJack Lloyd2017-08-0410-392/+518
|\ | | | | | | | | For whatever reason only the first commit in that branch got merged to master. Not sure what happened.
| * Reset the ChaCha key in clearJack Lloyd2017-08-031-0/+1
| | | | | | | | | | This is not necessary for setup, but we want to zero the key out in the event someone calls clear explicitly.
| * Use new reset_reseed_counter function within Stateful_RNG as wellJack Lloyd2017-08-031-3/+3
| |
| * Add Stateful_RNG::reset_reseed_counterJack Lloyd2017-08-035-6/+9
| | | | | | | | Instead of giving subclasses access to the variable directly.
| * Refactor stateful RNG tests to cover both HMAC_DRBG and ChaCha_RNGJack Lloyd2017-08-038-383/+506
| |
| * Add ChaCha_RNGJack Lloyd2017-08-038-48/+438
| |
* | Merge GH #1137 Add ChaCha_RNGJack Lloyd2017-08-038-48/+438
|\ \
| * | Add ChaCha_RNGJack Lloyd2017-07-318-48/+442
| | |
* | | Initialize member var in Certificate_Status_RequestJack Lloyd2017-08-031-1/+2
| | | | | | | | | | | | | | | This var is only used when encoding so was never read from, but leaving it uninitialized is bad news. Flagged by Coverity.
* | | Change how CPU endianness is detected.Jack Lloyd2017-08-032-17/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is kind of an artificial change to appease Coverity but maybe a bit cleaner in any case. The issue is Coverity detects the throw in the case of PDP endian being found at runtime, and assumes it might happen. And since OS::get_processor_timestamp calls CPUID on x86 (to check for RDTSC), it might throw. And so on up the call chain until it detect a throw escaping from ~Timer_Scope in speed.cpp, which would crash. However I do not have a PDP-endian x86 around to confirm this ... :)
* | | Add virtual destructor to FFI botan_structJack Lloyd2017-08-031-1/+1
| | | | | | | | | | | | | | | | | | As we do inherit from it, and delete through the base pointer. Found by Coverity scanner.
* | | Test encoding of challenge password in PKCS10 requestsJack Lloyd2017-08-031-0/+5
| | |
* | | Add a test of PGP S2K iteration encodingJack Lloyd2017-08-031-0/+53
| |/ |/|
* | Add explicit tests for RDRAND_RNG and System_RNGJack Lloyd2017-08-032-9/+105
| |
* | Fix some maintainer mode warningsJack Lloyd2017-08-033-9/+9
| |
* | Merge GH #1094 Add initial BearSSL providerJack Lloyd2017-08-027-3/+444
|\ \
| * | BearSSL: replace more NULLs with nullptrPatrick Wildt2017-07-101-4/+4
| | | | | | | | | | | | Based on feedback from @securitykernel on the PR.
| * | BearSSL: implement PR feedback and compare ECGroup OID namePatrick Wildt2017-07-054-18/+35
| | | | | | | | | | | | | | | | | | | | | This commit implements the feedback from @securitykernel on the PR and also changes the EC Group comparison to use the OID, akin to OpenSSL. The EC Group comparison was needed before GH #1093 was merged, but now we can go use the OpenSSL variant.
| * | BearSSL: move includes into extern "C"Patrick Wildt2017-07-052-3/+8
| | | | | | | | | | | | | | | Without the specific extern "C" declaration for the includes the C functions might get C++'d so the linking stage fails.
| * | BearSSL: Support for ECDSAPatrick Wildt2017-07-054-2/+242
| | | | | | | | | | | | | | | | | | This commit adds support for ECDSA using BearSSL as a backend. This means we can test BearSSL's ECDSA algorithms using the extensive Botan testsuite.
| * | BearSSL: Initial support and hash testsPatrick Wildt2017-07-054-1/+180
| | | | | | | | | | | | | | | | | | | | | | | | | | | BearSSL is an implementation of the SSL/TLS protocol in C aiming to be correct and secure, small and highly portable. Thus making it nicer to be included in a rather sparse bootloader. This commit adds support for BearSSL's hash routines only, with more stuff coming up in following commits. The goal is to be able to test BearSSL using Botan's extensive testsuite.
* | | Add two digit clang version test from crystax ndkSimon Warta2017-08-011-0/+14
| | |
* | | Use native compiler versioning of MSVCSimon Warta2017-07-313-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While using marketing names like 2013, 2015 etc. is more convenient at first sight, it requires keeping a table about all supported compiler versions, as there is no formular to calculate between the representations. Keeping a list of compilers leads to the following issue: if one version of Botan is released in 2017, requiring MSVS 2015 for one module, this source can be compiled using MSVS 2015 and 2017 but not a future version like 2019. Also preview/development versions of MSVC that may use an intermediate version number cannot be handled with the marketing name table because they may be unknown to the general public.
* | | Remove low compiler version restrictionsSimon Warta2017-07-311-3/+3
| |/ |/| | | | | | | | | All minimum compiler versions in rdseed are less or equal the minimum compiler version for the Botan 2.x branch. Remove those explicit restrictions to allow users with unknown cc_version to compile rdseed
* | Merge GH #1133 Fix MSVC compiler detection fixing #1125Jack Lloyd2017-07-312-0/+82
|\ \
| * | Use _MSC_VER to get MSVC versionSimon Warta2017-07-302-13/+11
| | |
| * | Adapt MSVC version regexp to non-english outputsSimon Warta2017-07-301-0/+9
| | |
| * | Fix compiler version matching patternsSimon Warta2017-07-301-0/+8
| | |
| * | Refactor and test compiler version detectionSimon Warta2017-07-301-0/+67
| | |
* | | Merge GH #1134 Run pylint on install.pyJack Lloyd2017-07-312-23/+35
|\ \ \
| * | | Deduplicate pylint arguments in lint.shSimon Warta2017-07-301-7/+11
| | | |
| * | | Run pylint on install.py in CISimon Warta2017-07-301-0/+5
| | | |
| * | | install.py: silence remaining code style issues in main()Simon Warta2017-07-301-0/+1
| | | |
| * | | install.py: let main() explicitly take arguments and return 0Simon Warta2017-07-301-4/+3
| | | |
| * | | install.py: pull out calculate_exec_modeSimon Warta2017-07-301-7/+10
| | | |
| * | | install.py: disable two pylint warnings locallySimon Warta2017-07-301-2/+2
| | | |
| * | | install.py: fix whitespace issues found by pylintSimon Warta2017-07-301-6/+6
| |/ /
* | | Merge GH #1132 Fix Doxygen errors and add -Wdocumentation flag to clang ↵Jack Lloyd2017-07-3112-18/+14
|\ \ \ | | | | | | | | | | | | maintainer build
| * | | Add missing override annotationJack Lloyd2017-07-281-1/+1
| | | |
| * | | Fix warnings from clangs -Wdocumentation flagJack Lloyd2017-07-2811-17/+13
| |/ /
* | | Merge GH #1131 Confirm OpenSSL supports curve at runtime before attempting ↵Jack Lloyd2017-07-311-12/+35
|\ \ \ | | | | | | | | | | | | to use it
| * | | Check if curve is built into OpenSSL at runtimeRené Korthaus2017-07-281-12/+35
| |/ /
* | | Add test for FFI keywrap, and constify argsJack Lloyd2017-07-313-9/+46
| | |
* | | Split up ffi.cpp into several filesJack Lloyd2017-07-3119-2314/+2552
| | | | | | | | | | | | | | | It was getting pretty big and would get worse over time, eg whenver I get around to adding TLS support.
* | | Merge GH #1128 Improve FFI exception safetyJack Lloyd2017-07-315-703/+368
|\ \ \
| * | | Add missing return in ffi_delete_objectJack Lloyd2017-07-251-4/+5
| | | | | | | | | | | | | | | | | | | | Somehow this still passed all the tests, downside of 0 as the success return I suppose.
| * | | Merge commit 'e015fd170' into ffi-fixesJack Lloyd2017-07-253-2/+13
| |\ \ \ | | | | | | | | | | | | | | | From PR #1097
| | * | | Don't crash if openssl can't allocate a new contextKirill A. Korinsky2017-06-293-2/+13
| | | | |
| * | | | In FFI, check the object magic before deletingJack Lloyd2017-07-251-30/+42
| | | | | | | | | | | | | | | | | | | | | | | | | Previously any X_destroy function would just delete its arg regardless of whatever the application passed in.