Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Let TLS serialization know which side we are sending as | Jack Lloyd | 2019-05-24 | 5 | -59/+56 |
| | | | | Since this matters for some extensions | ||||
* | Add support for supported versions extension from TLS 1.3 | Jack Lloyd | 2019-05-24 | 8 | -30/+174 |
| | |||||
* | Allow servers to prohibit renegotiation with fatal alert | Jack Lloyd | 2019-05-24 | 1 | -1/+4 |
| | |||||
* | Add script for running TLS fuzzer | Jack Lloyd | 2019-05-24 | 3 | -1/+8 |
| | | | | Fix a few minor issues found thereby | ||||
* | Avoid unnecessary copies during TLS handshake | Jack Lloyd | 2019-05-24 | 3 | -24/+28 |
| | |||||
* | Ignore large DTLS ciphertexts | Jack Lloyd | 2019-05-23 | 1 | -2/+6 |
| | |||||
* | Fix bugs when DTLS initial handshake messages are replayed | Jack Lloyd | 2019-05-23 | 3 | -0/+13 |
| | |||||
* | Fix some issues with DTLS version intolerance | Jack Lloyd | 2019-05-23 | 3 | -7/+21 |
| | |||||
* | Verify contents of DTLS CCS message | Jack Lloyd | 2019-05-23 | 1 | -0/+3 |
| | |||||
* | Merge GH #1968 Document TLS::Stream | Jack Lloyd | 2019-05-23 | 1 | -1/+1 |
|\ | |||||
| * | fix Stream::async_handshake documentation | Hannes Rantzsch | 2019-05-23 | 1 | -1/+1 |
| | | |||||
* | | Clean up extension decoding | Jack Lloyd | 2019-05-22 | 2 | -27/+11 |
| | | | | | | | | TLS_Reader handles the offset checks for us | ||||
* | | Shorten callback name | Jack Lloyd | 2019-05-22 | 2 | -3/+3 |
| | | |||||
* | | Add BoGo tests and fix resumption case | Jack Lloyd | 2019-05-22 | 2 | -5/+8 |
| | | |||||
* | | Formatting and post-rebase fixes | Jack Lloyd | 2019-05-22 | 4 | -34/+40 |
| | | |||||
* | | added status_request extension and cert chain to the stapling-reponse ↵ | Falko Strenzke | 2019-05-22 | 4 | -14/+56 |
| | | | | | | | | generating callback's signature | ||||
* | | implemented ocsp stapling (code not yet formatted properly) | Falko Strenzke | 2019-05-22 | 4 | -2/+36 |
| | | |||||
* | | Fix more BoGo tests | Jack Lloyd | 2019-05-22 | 1 | -0/+3 |
|/ | | | | | Now all tests either pass or are known to fail for some reason. Disable -allow-unimplemented | ||||
* | Fix DTLS MTU splitting | Jack Lloyd | 2019-05-21 | 1 | -19/+5 |
| | | | | We could/would send packets somewhat larger than MTU | ||||
* | Fix TLS CBC in DTLS when a bad packet is received. | Jack Lloyd | 2019-05-21 | 3 | -11/+25 |
| | | | | | | The Lucky13 countermeasure causes the mac state to become corrupted, due to the extra inputs. Then the next packet fails its mac check. This causes the Lucky13 countermeasure to go off again, ... | ||||
* | Fix various issues in TLS found using BoGo | Jack Lloyd | 2019-05-20 | 27 | -187/+469 |
| | | | | | | | | | | | | | | | | | | | | | | | | | - BoGo sends unparseable OCSP responses, so we have to accomodate for this by delaying decoding until verification and simply ignoring OCSP responses that we can't parse. - Check that there is no trailing garbage at the end of various messages. - Don't send empty SNI - Check the TLS record header versions (previously ignored) - For CBC 1/n-1 splitting split every record instead of just first. I think this is not a problem but it is what BoGo expects. - New Channel::application_protocol virtual (previously was implemented on both Client and Server but not shared). - Changes to resumption version handling. - Fix server version selection when newer versions are disabled. New policy hooks added in service of BoGo: - maximum_certificate_chain_size gives the maximum cert chain in bytes that we'll accept. - allow_resumption_for_renegotiation specifies if a renegotiation attempt can be simply (re-)resumed instead. - abort_handshake_on_undesired_renegotiation - previously we just ignored it with a warning alert. Now behavior is configurable. - request_client_certificate_authentication - require_client_certificate_authentication | ||||
* | make template friends compile on clang and MSVC | Hannes Rantzsch | 2019-05-03 | 2 | -4/+4 |
| | |||||
* | review: buffer accessors visibility, ignore ALERT::CLOSE_NOTIFY, docs | Hannes Rantzsch | 2019-04-29 | 2 | -72/+74 |
| | |||||
* | simplify read_some and shutdown | Hannes Rantzsch | 2019-04-26 | 1 | -36/+23 |
| | |||||
* | simplify error_code handling for handshake and write | Hannes Rantzsch | 2019-04-26 | 1 | -39/+16 |
| | |||||
* | Further cleanup of asio stream header files | Hannes Rantzsch | 2019-04-26 | 9 | -600/+473 |
| | | | | | | | * all async ops are now collected in one header and moved to the detail namespace * error categories are no longer a detail, as they are visible to the user * more documentation in asio_stream.h * remove asio_includes.h helper header | ||||
* | tidy up StreamCore as an implementation detail of Stream | Hannes Rantzsch | 2019-04-26 | 4 | -132/+131 |
| | |||||
* | start restructuring asio stream headers | Hannes Rantzsch | 2019-04-24 | 7 | -319/+176 |
| | | | | | | | | | | | | | | | StreamCore is now a nested class of Stream and will soon be hidden from the public interface. The goal is to offer buffer-handling methods (like CopyReceivedData) directly in Steam and have StreamCore be responsible for Botan::TLS::Callbacks implementation only. This will remove the need to provide StreamCore as a parameter for Async Ops construction. StreamBase has been removed. Stream no longer decides whether it is a Client or a Server when constructed, but when performing the handshake. This resembles the interface of boost::asio::ssl::stream and hides the implementation detail from the user. In order to allow testing with mocked TLS::Channels anyways, we use SPHINAE to setup either a real channel or a mocked channel. | ||||
* | remove convertException entirely | Hannes Rantzsch | 2019-04-23 | 4 | -36/+73 |
| | |||||
* | use ErrorType instead of TLS::error and remove convert_exceptions header | Hannes Rantzsch | 2019-04-23 | 7 | -232/+43 |
| | |||||
* | use existing TLS::Connection_Side instead of handshake_type | Hannes Rantzsch | 2019-04-23 | 2 | -31/+24 |
| | |||||
* | use class instead of struct | Hannes Rantzsch | 2019-04-23 | 5 | -5/+10 |
| | |||||
* | remove superfluous #ifdef guards | Hannes Rantzsch | 2019-04-23 | 10 | -30/+0 |
| | |||||
* | review: low hanging fruits | Hannes Rantzsch | 2019-04-16 | 5 | -26/+30 |
| | |||||
* | Apply comment suggestions from code review | René Meusel | 2019-04-16 | 4 | -5/+8 |
| | | | Co-Authored-By: hrantzsch <[email protected]> | ||||
* | include build.h in all headers to make sure definitions are available | Hannes Rantzsch | 2019-04-16 | 11 | -0/+22 |
| | |||||
* | documentation and minor fixes for async ops | Hannes Rantzsch | 2019-04-16 | 7 | -80/+149 |
| | |||||
* | fix: require boost 1.66 | Hannes Rantzsch | 2019-04-16 | 10 | -10/+10 |
| | |||||
* | FIX: async_base immediate completion | Hannes Rantzsch | 2019-04-16 | 1 | -1/+1 |
| | | | | see boostorg/beast#1557 | ||||
* | FIX: do not block when reading into zero-sized buffer | Hannes Rantzsch | 2019-04-16 | 1 | -3/+6 |
| | |||||
* | use boost::beast::flat_buffer instead of our own buffer type in core | Hannes Rantzsch | 2019-04-16 | 1 | -25/+16 |
| | |||||
* | handle exceptions directly where native_handle is used | Hannes Rantzsch | 2019-04-16 | 1 | -42/+33 |
| | |||||
* | improve constructor interface of Stream | Hannes Rantzsch | 2019-04-16 | 5 | -38/+64 |
| | |||||
* | add docs for asio_stream.h pulblic functions | Tim Oesterreich | 2019-04-16 | 1 | -0/+128 |
| | |||||
* | async_write_some returns amount of bytes commited to the core, instead of ↵ | Tim Oesterreich | 2019-04-16 | 3 | -4/+12 |
| | | | | bytes sent on the wire; do not use boost::asio::async_read/write | ||||
* | async ops will now call operator() from their constructor -> initiating ↵ | Tim Oesterreich | 2019-04-16 | 5 | -32/+25 |
| | | | | functions do not have to call async_read/write anymore | ||||
* | do not call completion_handler directly; allow async ops to be constructed ↵ | Tim Oesterreich | 2019-04-16 | 4 | -25/+35 |
| | | | | with optional error_code | ||||
* | don't pass int to size_t | Tim Oesterreich | 2019-04-16 | 1 | -3/+3 |
| | |||||
* | factor out template-independent code | Tim Oesterreich | 2019-04-16 | 1 | -37/+47 |
| | |||||
* | properly handle iterator access | Tim Oesterreich | 2019-04-16 | 1 | -5/+7 |
| |