aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge mp_word64 into mp_genericlloyd2013-07-308-106/+61
| | | | | | Now 64-bit limbs can be used regardless of processor, though we continue to use 32-bit unless we know the processor natively supports 64-bit operations.
* Add a generic 64x64->128 multiplication op.lloyd2013-07-3016-214/+210
| | | | | | | Use it to merge mp_msvc64 (was using MSVC _umul128 intrinsic) and mp_asm64 (was using inline asm) into mp_word64, which calls the new mul64x64_128 function. That function wraps any available compiler intrinsics or CPU instructions.
* Remove unused fields. Thanks Clanglloyd2013-07-302-2/+0
|
* merge of '5f4aa843bb54591e6bcdf6db6efecf1cb5937638'lloyd2013-07-304-7/+16
|\ | | | | | | and 'bf98faaf2da19ead6fe6c795e488a7fae04804d2'
| * merge of '2139fa117e35116a6d728cc58b050fd5fa20994f'lloyd2013-07-296-11/+20
| |\ | | | | | | | | | and 'dd71537d67dd5adb9ab0859ba761ce2fd78c042b'
| | * merge of 'a25b72d98eb3f88fcf577fabfcd430ef0758debc'lloyd2013-07-294-7/+16
| | |\ | | | | | | | | | | | | and 'e94f646a2b2fe793b40067b09c95a5871e52a43a'
| | | * Add sending std::vector to TLS::Channellloyd2013-07-011-1/+10
| | | |
| | | * Namespace AEAD header guardslloyd2013-07-013-6/+6
| | | |
* | | | merge of '2139fa117e35116a6d728cc58b050fd5fa20994f'lloyd2013-07-302-4/+4
|\ \ \ \ | |/ / / |/| / / | |/ / and 'a25b72d98eb3f88fcf577fabfcd430ef0758debc'
| * | Update for 1.11.4 release1.11.4lloyd2013-07-252-4/+4
| | |
* | | Add build instructions for iOS, sent by Jeffery Walton.lloyd2013-07-261-1/+40
|/ /
* | Rewrite for benefit of Clang analyzerlloyd2013-07-191-6/+5
| |
* | Fix calling on deleted objectslloyd2013-07-192-4/+4
| |
* | Avoid uninitialized variable warning for rdrand output varlloyd2013-07-191-1/+1
| |
* | Change default policy to prohibit DTLS to minimize surprise.lloyd2013-07-1011-51/+106
| | | | | | | | | | | | | | | | | | | | Allow applications to send arbirary alert messages. Add a new optional parameter to Channel which specifies how large to make the IO buffers by default. Add Channel::reset_state, and reset the IO buffers and cipher specs after a fatal alert.
* | Fix ReST syntaxlloyd2013-07-101-3/+2
| |
* | Enable RDRAND in 32-bit buildslloyd2013-07-101-1/+1
|/
* Check for overflow when decoding OIDslloyd2013-06-271-0/+5
|
* Change same_mem to use XORs instead of equality operators.lloyd2013-06-131-3/+3
| | | | | | Potentially less prone to optimizer trickery wrt early exits, especially as it encourages a SIMD approach which modern compilers tend to prefer if they think they can get away with it.
* Add missing headerlloyd2013-06-111-0/+47
|
* Fix includelloyd2013-06-051-1/+1
|
* Move cryptobox/raw_key.cpp to new module cryptobox_psk which allows itlloyd2013-06-055-25/+12
| | | | | | to be used in TLS without requiring pulling in CTR, Serpent, PBKDF2 and other code required by password-based cryptobox but not needed for TLS session encryption.
* Have TLS::Ciphersuite::valid check that all algorithms are available,lloyd2013-06-042-21/+84
| | | | | | | | | | | | | which allows us to remove a number of algorithms as hard dependencies and instead simply allow their use if they are included in the build. Currently all key exchange algorithms (RSA, DH, ECDH, SRP) remain as hard dependencies as msg_{client,server}_key.cpp directly manipulate those types. While theoretically optional, MD5, SHA-1, SHA-2, and SSL3-MAC remain hard dependencies as their availability affects protocol support as well as ciphersuites, though in principle being able to disable MD5/SHA-1 and requiring v1.2 or higher would be useful.
* Upgrade report of modules loaded by config to info from debuglloyd2013-06-011-1/+1
|
* Merge pull from Christopher Dale <[email protected]>guywithcrookedface2013-06-011-0/+9
| | | | | | adding --list-modules option to configure.py Github pull request https://github.com/randombit/botan/pull/1
* Avoid SIGFPE if no providers during benchmarklloyd2013-05-301-4/+8
|
* Avoid unnecessary allocations during GCM multiply, 20-30% speeduplloyd2013-05-301-15/+12
|
* Remove mutation from GCM multiply looplloyd2013-05-301-4/+2
|
* Add Channel::send_warning_alert and send_fatal_alertlloyd2013-05-304-8/+18
|
* Fix RST syntaxlloyd2013-05-011-1/+1
|
* Fix Windows and static-only makefileslloyd2013-04-232-6/+4
|
* Change TLS::Ciphersuite constructor to be non-inline and to takelloyd2013-04-192-17/+37
| | | | | arguments by const char*. Reduces size of tls_suite_info.o by 80% on Linux with GCC 4.8
* Add missing dependencieslloyd2013-04-191-0/+2
|
* Avoid warninglloyd2013-04-191-2/+2
|
* Compile fixlloyd2013-04-191-1/+1
|
* Add a constant to make it more obvious that the clock pollinglloyd2013-04-192-9/+11
| | | | is not considered as contributing entropy to a rng poll.
* Some small TLS doc updateslloyd2013-04-193-29/+39
|
* Avoid using representable value for internal null alertlloyd2013-04-192-14/+7
|
* Rename ARC4 to RC4lloyd2013-04-1916-66/+68
|
* Initial notes for 1.11.4lloyd2013-04-181-0/+17
|
* Add more generalized runtime performance test, can check AEAD modeslloyd2013-04-172-135/+109
| | | | and for block ciphers will time both encrypt and decrypt.
* Always include modules requiring ISA extensions as long as thelloyd2013-04-1717-177/+140
| | | | | | | | | | | compiler and target platform might support it. For instance the AES SSSE3 code is now always in any x86 build, with just that specific file being compiled with -mssse3. Since we'll only call that code if cpuid confirms it works at runtime, we don't have portability issues, and it can be safely included in generic builds (eg for distributions). Tweak how machine specific compiler flags are generated to be a bit easier to maintain.
* Rewrite the TLS padding comparison to be constant timelloyd2013-04-161-6/+6
|
* Add a policy for Suite B 128-bitlloyd2013-04-122-12/+33
|
* Tick version to 1.10.4lloyd2013-04-122-5/+1
|
* Remove old/broken/highly incomplete CMS codelloyd2013-04-129-1337/+0
|
* Kill workaround for GCC 3.xlloyd2013-04-121-4/+0
|
* Kill off old GCC 3.x workaroundlloyd2013-04-121-8/+2
|
* Avoid null pointer deref if key was not set in AESlloyd2013-04-121-0/+4
|
* Move zero as null pointer warning to maintainer mode flagslloyd2013-04-121-2/+2
|