#
1266eefd |
| 07-Dec-2016 |
Matt Caswell |
Various style updates following extensions refactor Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rsalz@openssl.org>
Various style updates following extensions refactor Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
show more ...
|
#
1b0286a3 |
| 05-Dec-2016 |
Matt Caswell |
Fix a memory leak When we call tls_collect_extensions() we need to free up the raw extensions data later. Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by
Fix a memory leak When we call tls_collect_extensions() we need to free up the raw extensions data later. Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
show more ...
|
#
3434f40b |
| 28-Nov-2016 |
Matt Caswell |
Split ServerHello extensions In TLS1.3 some ServerHello extensions remain in the ServerHello, while others move to the EncryptedExtensions message. This commit performs that move.
Split ServerHello extensions In TLS1.3 some ServerHello extensions remain in the ServerHello, while others move to the EncryptedExtensions message. This commit performs that move. Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
show more ...
|
#
332eb390 |
| 28-Nov-2016 |
Matt Caswell |
Move ServerHello extension parsing into the new extension framework Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rsal
Move ServerHello extension parsing into the new extension framework Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
show more ...
|
#
ab83e314 |
| 25-Nov-2016 |
Matt Caswell |
Move client construction of ClientHello extensions into new framework Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rs
Move client construction of ClientHello extensions into new framework Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
show more ...
|
Revision tags: OpenSSL-fips-2_0_15 |
|
#
e46f2334 |
| 23-Nov-2016 |
Matt Caswell |
Add EncryptedExtensions message At this stage the message is just empty. We need to fill it in with extension data. Perl changes reviewed by Richard Levitte. Non-perl changes re
Add EncryptedExtensions message At this stage the message is just empty. We need to fill it in with extension data. Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
show more ...
|
Revision tags: OpenSSL-fips-2_0_14, OpenSSL_1_1_0c |
|
#
71728dd8 |
| 07-Nov-2016 |
Matt Caswell |
Send and Receive a TLSv1.3 format ServerHello There are some minor differences in the format of a ServerHello in TLSv1.3. Perl changes reviewed by Richard Levitte. Non-perl changes
Send and Receive a TLSv1.3 format ServerHello There are some minor differences in the format of a ServerHello in TLSv1.3. Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich Salz Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
show more ...
|
#
b599ce3b |
| 23-Nov-2016 |
Matt Caswell |
Fix missing NULL checks in CKE processing Reviewed-by: Rich Salz <rsalz@openssl.org>
|
#
7acb8b64 |
| 23-Nov-2016 |
Matt Caswell |
Use ClientHello.legacy_version for the RSA pre-master no matter what Don't use what is in supported_versions for the RSA pre-master Reviewed-by: Emilia Käsper <emilia@openssl.org>
|
#
6530c490 |
| 23-Nov-2016 |
Matt Caswell |
Fix some style issues with TLSv1.3 state machine PR Reviewed-by: Rich Salz <rsalz@openssl.org>
|
#
f5ca0b04 |
| 21-Nov-2016 |
Matt Caswell |
Fix some style issues identified during review Reviewed-by: Rich Salz <rsalz@openssl.org>
|
#
5abeaf35 |
| 15-Nov-2016 |
Matt Caswell |
Ensure unexpected messages are handled consistently In one case we weren't always sending an unexpected message alert if we don't get what we expect. Reviewed-by: Rich Salz <rsa
Ensure unexpected messages are handled consistently In one case we weren't always sending an unexpected message alert if we don't get what we expect. Reviewed-by: Rich Salz <rsalz@openssl.org>
show more ...
|
#
7776a36c |
| 15-Nov-2016 |
Matt Caswell |
Ensure the end of first server flight processing is done There is a set of miscellaneous processing for OCSP, CT etc at the end of the ServerDone processing. In TLS1.3 we don't have a Se
Ensure the end of first server flight processing is done There is a set of miscellaneous processing for OCSP, CT etc at the end of the ServerDone processing. In TLS1.3 we don't have a ServerDone, so this needs to move elsewhere. Reviewed-by: Rich Salz <rsalz@openssl.org>
show more ...
|
#
92760c21 |
| 09-Nov-2016 |
Matt Caswell |
Update state machine to be closer to TLS1.3 This is a major overhaul of the TLSv1.3 state machine. Currently it still looks like TLSv1.2. This commit changes things around so that it sta
Update state machine to be closer to TLS1.3 This is a major overhaul of the TLSv1.3 state machine. Currently it still looks like TLSv1.2. This commit changes things around so that it starts to look a bit less like TLSv1.2 and bit more like TLSv1.3. After this commit we have: ClientHello + key_share ----> ServerHello +key_share {CertificateRequest*} {Certificate*} {CertificateStatus*} <---- {Finished} {Certificate*} {CertificateVerify*} {Finished} ----> [ApplicationData] <---> [Application Data] Key differences between this intermediate position and the final TLSv1.3 position are: - No EncryptedExtensions message yet - No server side CertificateVerify message yet - CertificateStatus still exists as a separate message - A number of the messages are still in the TLSv1.2 format - Still running on the TLSv1.2 record layer Reviewed-by: Rich Salz <rsalz@openssl.org>
show more ...
|
#
9362c93e |
| 08-Nov-2016 |
Matt Caswell |
Remove old style NewSessionTicket from TLSv1.3 TLSv1.3 has a NewSessionTicket message, but it is *completely* different to the TLSv1.2 one and may as well have been called something else
Remove old style NewSessionTicket from TLSv1.3 TLSv1.3 has a NewSessionTicket message, but it is *completely* different to the TLSv1.2 one and may as well have been called something else. This commit removes the old style NewSessionTicket from TLSv1.3. We will have to add the new style one back in later. Reviewed-by: Rich Salz <rsalz@openssl.org>
show more ...
|
#
94ed2c67 |
| 14-Nov-2016 |
Matt Caswell |
Fixed various style issues in the key_share code Numerous style issues as well as references to TLS1_3_VERSION instead of SSL_IS_TLS13(s) Reviewed-by: Rich Salz <rsalz@openssl.o
Fixed various style issues in the key_share code Numerous style issues as well as references to TLS1_3_VERSION instead of SSL_IS_TLS13(s) Reviewed-by: Rich Salz <rsalz@openssl.org>
show more ...
|
#
0f1e51ea |
| 02-Nov-2016 |
Matt Caswell |
Start using the key_share data to derive the PMS The previous commits put in place the logic to exchange key_share data. We now need to do something with that information. In <= TLSv1.2
Start using the key_share data to derive the PMS The previous commits put in place the logic to exchange key_share data. We now need to do something with that information. In <= TLSv1.2 the equivalent of the key_share extension is the ServerKeyExchange and ClientKeyExchange messages. With key_share those two messages are no longer necessary. The commit removes the SKE and CKE messages from the TLSv1.3 state machine. TLSv1.3 is completely different to TLSv1.2 in the messages that it sends and the transitions that are allowed. Therefore, rather than extend the existing <=TLS1.2 state transition functions, we create a whole new set for TLSv1.3. Intially these are still based on the TLSv1.2 ones, but over time they will be amended. The new TLSv1.3 transitions remove SKE and CKE completely. There's also some cleanup for some stuff which is not relevant to TLSv1.3 and is easy to remove, e.g. the DTLS support (we're not doing DTLSv1.3 yet) and NPN. I also disable EXTMS for TLSv1.3. Using it was causing some added complexity, so rather than fix it I removed it, since eventually it will not be needed anyway. Reviewed-by: Rich Salz <rsalz@openssl.org>
show more ...
|
#
f2342b7a |
| 09-Nov-2016 |
Matt Caswell |
Address some supported_versions review comments Added some TODOs, refactored a couple of things and added a SSL_IS_TLS13() macro. Reviewed-by: Rich Salz <rsalz@openssl.org>
|
#
16bce0e0 |
| 31-Oct-2016 |
Matt Caswell |
Address some review feedback comments for supported_versions Reviewed-by: Rich Salz <rsalz@openssl.org>
|
#
cd998837 |
| 22-Oct-2016 |
Matt Caswell |
Add server side support for supported_versions extension Reviewed-by: Rich Salz <rsalz@openssl.org>
|
#
c8e2f98c |
| 27-Oct-2016 |
Matt Caswell |
Partial revert of "Fix client verify mode to check SSL_VERIFY_PEER" This partially reverts commit c636c1c47. It also tweaks the documentation and comments in this area. On the client sid
Partial revert of "Fix client verify mode to check SSL_VERIFY_PEER" This partially reverts commit c636c1c47. It also tweaks the documentation and comments in this area. On the client side the documented interface for SSL_CTX_set_verify()/SSL_set_verify() is that setting the flag SSL_VERIFY_PEER causes verfication of the server certificate to take place. Previously what was implemented was that if *any* flag was set then verification would take place. The above commit improved the semantics to be as per the documented interface. However, we have had a report of at least one application where an application was incorrectly using the interface and used *only* SSL_VERIFY_FAIL_IF_NO_PEER_CERT on the client side. In OpenSSL prior to the above commit this still caused verification of the server certificate to take place. After this commit the application silently failed to verify the server certificate. Ideally SSL_CTX_set_verify()/SSL_set_verify() could be modified to indicate if invalid flags were being used. However these are void functions! The simplest short term solution is to revert to the previous behaviour which at least means we "fail closed" rather than "fail open". Thanks to Cory Benfield for reporting this issue. Reviewed-by: Richard Levitte <levitte@openssl.org>
show more ...
|
#
56a26ce3 |
| 19-Oct-2016 |
Matt Caswell |
Now that we can use size_t in PACKET lets use it Reviewed-by: Rich Salz <rsalz@openssl.org>
|
#
348240c6 |
| 19-Oct-2016 |
Matt Caswell |
Fix misc size_t issues causing Windows warnings in 64 bit Reviewed-by: Rich Salz <rsalz@openssl.org>
|
#
8b0e934a |
| 06-Oct-2016 |
Matt Caswell |
Fix some missed size_t updates Reviewed-by: Rich Salz <rsalz@openssl.org>
|
#
d736bc1a |
| 04-Oct-2016 |
Matt Caswell |
Update misc function params in libssl for size_t Reviewed-by: Rich Salz <rsalz@openssl.org>
|