Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Avoid saving a session to SQL database with empty hostname | Jack Lloyd | 2017-11-02 | 1 | -0/+3 |
| | | | | This happens if the hostname is unknown or specified as an IP. | ||||
* | Merge GH #1275 Avoid needless throw/catch during TLS handshake | Jack Lloyd | 2017-10-26 | 1 | -1/+2 |
|\ | |||||
| * | Added missing include. | Frank Schoenmann | 2017-10-25 | 1 | -0/+1 |
| | | |||||
| * | Perform OIDS lookup before to prevent a guaranteed exception in EC_Group. | Frank Schoenmann | 2017-10-25 | 1 | -1/+1 |
| | | |||||
* | | Avoid sending OCSP status request on resumption client hello | Jack Lloyd | 2017-10-25 | 1 | -2/+0 |
|/ | | | | | | | Causes the connection to break for some servers. Fixes GH #1276 Also avoid setting the same extension twice in the initial connection case. The extensions code dedups it so this wasn't a problem, but confusing. | ||||
* | Convert http:// links to https:// where possible | Jack Lloyd | 2017-10-24 | 1 | -1/+1 |
| | |||||
* | Merge GH #1263 Support FFDHE negotiation in TLS | Jack Lloyd | 2017-10-22 | 9 | -28/+206 |
|\ | |||||
| * | Remove check for negotiated DH group in TLS client | René Korthaus | 2017-10-20 | 1 | -29/+0 |
| | | | | | | | | | | | | | | The server may not support the supported groups extension and choose an arbitrary group. RFC 7919 permits clients to continue if the group is acceptable under local policy, which we do now. | ||||
| * | Fall back to default group if client does not send any DH groups | René Korthaus | 2017-10-20 | 2 | -2/+19 |
| | | |||||
| * | Add allowed values for allowed groups | René Korthaus | 2017-10-18 | 1 | -3/+13 |
| | | |||||
| * | Add supported groups TLS extension (RFC 7919) | René Korthaus | 2017-10-17 | 10 | -27/+207 |
| | | |||||
* | | Remove redundant check | Jack Lloyd | 2017-10-20 | 1 | -3/+0 |
| | | | | | | | | | | | | CBC mode already has this same size check. [ci skip] | ||||
* | | Use base CBC modes to implement TLS CBC ciphersuites | Jack Lloyd | 2017-10-19 | 3 | -49/+36 |
|/ | | | | | This reduces code and also lets TLS make use of parallel decryption which it was not doing before. | ||||
* | Additional final annotations | Jack Lloyd | 2017-10-15 | 1 | -2/+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 | ||||
* | Address various GCC warnings | Jack Lloyd | 2017-10-06 | 2 | -5/+5 |
| | | | | | Things like -Wconversion and -Wuseless-cast that are noisy and not on by default. | ||||
* | Avoid empty methods, use =default or add a comment | Jack Lloyd | 2017-10-03 | 3 | -3/+3 |
| | | | | Sonar | ||||
* | Add wrappers for reinterpret_cast between char* and uint8_t* | Jack Lloyd | 2017-10-03 | 3 | -8/+6 |
| | | | | | | | 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 | 1 | -1/+1 |
| | | | | Sonar | ||||
* | Remove various unused variables | Jack Lloyd | 2017-10-02 | 1 | -2/+0 |
| | | | | Sonar finds | ||||
* | Make TLS::Blocking_Client non-final | Jack Lloyd | 2017-10-02 | 1 | -1/+1 |
| | | | | It is intended for derivation! Just not tested... | ||||
* | Make kv in TLS_Text_Policy private, add protected setter | Jack Lloyd | 2017-10-02 | 2 | -0/+14 |
| | |||||
* | Use class instead of struct for objects with member functions | Jack Lloyd | 2017-09-30 | 1 | -3/+4 |
| | | | | Flagged by Sonar and quite reasonable | ||||
* | In TLS CBC padding check, only need to verify last 256 bytes | Jack Lloyd | 2017-09-29 | 1 | -8/+16 |
| | | | | | No reason to scan the entire record since it's assured at most 256 bytes of padding are used. Inspired by GH #1227 | ||||
* | Add a test of TLS CBC padding verification | Jack Lloyd | 2017-09-29 | 2 | -9/+12 |
| | | | | See also GH #1227 | ||||
* | Fixes for MSVC | Jack Lloyd | 2017-09-28 | 1 | -2/+1 |
| | | | | BOTAN_UNUSED "uses" the RNG :/ | ||||
* | Further header cleanups | Jack Lloyd | 2017-09-28 | 2 | -0/+3 |
| | |||||
* | More build fixes | Jack Lloyd | 2017-09-24 | 1 | -1/+2 |
| | |||||
* | Avoid deprecated warning in tls_blocking.cpp | Jack Lloyd | 2017-09-22 | 1 | -0/+6 |
| | | | | We don't care because the whole file is itself deprecated. | ||||
* | Apply final annotations to the library also | Jack Lloyd | 2017-09-22 | 18 | -25/+25 |
| | | | | | Done by a perl script which converted all classes to final, followed by selective reversion where it caused compilation failures. | ||||
* | De-inline TLS::Text_Policy | Jack Lloyd | 2017-09-21 | 4 | -122/+302 |
| | | | | | Getting a little large to be all defined in a header, and sticking it in a source file allows removing several includes from tls_policy.h | ||||
* | More include header cleanups | Jack Lloyd | 2017-09-21 | 32 | -30/+19 |
| | |||||
* | Header file cleanups | Jack Lloyd | 2017-09-21 | 4 | -0/+4 |
| | | | | Some help from include-what-you-use | ||||
* | Change header guard format to BOTAN_FOO_H_ | Jack Lloyd | 2017-09-20 | 28 | -56/+56 |
| | | | | | | ISO C++ reserves names with double underscores in them Closes #512 | ||||
* | More annotations | Jack Lloyd | 2017-09-19 | 2 | -9/+9 |
| | |||||
* | Add API stability annotations. | Jack Lloyd | 2017-09-19 | 20 | -35/+35 |
| | | | | | Defined in build.h, all equal to BOTAN_DLL so ties into existing system for exporting symbols. | ||||
* | Merge GH #872 Add ability for TLS servers to prohibit renegotiation | Jack Lloyd | 2017-09-19 | 3 | -2/+16 |
|\ | |||||
| * | Fix logic of renegotiation check | Jack Lloyd | 2017-02-20 | 3 | -4/+6 |
| | | | | | | | | | | | | Turning the policy off broke the server entirely. Expose the new flag to Text_Policy | ||||
| * | Add TLS::Policy::allow_client_initiated_renegotiation | Jack Lloyd | 2017-02-19 | 3 | -2/+14 |
| | | | | | | | | Parallel of the server policy flag. | ||||
* | | Use constant_time_compare instead of same_mem | Jack Lloyd | 2017-09-16 | 2 | -3/+3 |
| | | | | | | | | New name, same great operation | ||||
* | | Correct TLS::Policy::latest_supported_version | Jack Lloyd | 2017-09-04 | 1 | -2/+16 |
| | | | | | | | | | | This would do the wrong thing if TLS v1.2 was disabled but v1.0/v1.1 allowed. | ||||
* | | De-inline accessor functions in Client_Hello type | Jack Lloyd | 2017-09-01 | 2 | -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 ciphersuites | Jack Lloyd | 2017-09-01 | 1 | -1/+1 |
| | | | | | | | | Since we don't end up signing anything in any case. | ||||
* | | Enforce signature hash policy properly | Jack Lloyd | 2017-08-31 | 4 | -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. | ||||
* | | More MSVC warnings fixes | Jack Lloyd | 2017-08-31 | 2 | -6/+6 |
| | | |||||
* | | Fix various MSVC warnings | Jack Lloyd | 2017-08-31 | 2 | -4/+7 |
| | | | | | | | | Based on VC2017 output | ||||
* | | Avoid false positive valgrind in TLS CBC decryption | Jack Lloyd | 2017-08-29 | 1 | -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. | ||||
* | | Add support for ECDHE_PSK AEAD ciphersuites | Jack Lloyd | 2017-08-22 | 1 | -2/+6 |
| | | | | | | | | From draft-ietf-tls-ecdhe-psk-aead-05, now with official codepoints. | ||||
* | | Initialize member var in Certificate_Status_Request | Jack Lloyd | 2017-08-03 | 1 | -1/+2 |
| | | | | | | | | | | This var is only used when encoding so was never read from, but leaving it uninitialized is bad news. Flagged by Coverity. |