Commit Graph

18 Commits

Author SHA1 Message Date
Kevin Jacobs f1044f5aa9 Bug 1599514 - Update DTLS 1.3 support to draft-30 r=mt
This patch updates the DTLS 1.3 implementation to draft version 30, including unified header format and sequence number encryption.

Also added are new `SSL_CreateMask` experimental functions.

Differential Revision: https://phabricator.services.mozilla.com/D51014
2020-01-06 21:26:20 +00:00
Kevin Jacobs de43b349e8 Bug 1599545 - Fix assertion and add test for early Key Update message r=mt
Remove an overzealous assertion when a Key Update message is received too early, and add a test for the expected alert condition.

Also adds `TlsEncryptedHandshakeMessageReplacer` for replacing TLS 1.3 encrypted handshake messages. This is a simple implementation where only the first byte of the message is changed to the new type (so as to trigger the desired handler).

Differential Revision: https://phabricator.services.mozilla.com/D54998
2019-12-02 18:43:30 +00:00
Martin Thomson b9131ad456 Bug 1563078 - Set authKeyBits for delegated credentials, r=jcj
The delegated credentials patch left the channel info unmodified, which meant
that it reported the key strength of the end entity certificate and not the
delegated credential.  For a using application, this is problematic because it
can't access information about delegated credentials.  In this case, the only
omission was the strength of the key.

Firefox checks key strength for the entire certificate chain according to its
policies, but it also wants to apply the same sort of policy to the delegated
credential.  In particular, it wants to ensure that an RSA credential (which
shouldn't be used, but whatever...) has a long enough modulus, because the NSS
policy is less strict than the Firefox one.

To address this use case, SSLChannelInfo.authKeyBits is set to the length of the
delegated credential key when delegated credentials are in use.  This is
consistent with the definition of the parameter, but implies a different
understanding of its meaning when delegated credentials are enabled.

Differential Revision: https://phabricator.services.mozilla.com/D36699
2019-07-15 14:47:54 +10:00
Daiki Ueno 3f18261498 Bug 1532312, recognize certificate_required alert, r=mt
Summary: Some servers send a certificate_required alert when the client returns no certificate while it is required.  For server, it is not mandatory to send this alert, but it could make it easier for the client to distinguish bad_certificate and the declined cases.

Reviewers: mt

Reviewed By: mt

Bug #: 1532312

Differential Revision: https://phabricator.services.mozilla.com/D22083
2019-04-08 17:31:29 +02:00
Martin Thomson 998cd6a3d9 Bug 1471126 - Record layer separation, r=ekr
Summary:
Add functions for QUIC that provide the raw content of records to callback functions.

Reviewers: ekr

Reviewed By: ekr

Bug #: 1471126

Differential Revision: https://phabricator.services.mozilla.com/D1874
2019-02-17 13:07:04 -08:00
Martin Thomson af91265c42 Bug 1486667 - Test that rejecting a server certificate works, r=ueno 2018-05-01 16:57:51 +10:00
Martin Thomson 03f9b2aeef Bug 1471126 - Rename SSL3ContentType and make it public, r=ekr
The renaming here is less widespread than I expected.  I removed the
content_alt_handshake while I was at this; no point in putting that in a public
API.
2018-06-26 15:49:14 +10:00
EKR c21ede9e49 Bug 1446643 - Update to TLS 1.3 draft-26. r=mt
- Update version number

- Forbid negotiating < TLS 1.3 with supported_versions

- Change to version number 0303 after HRR. Plus test

- Update AAD.

https://phabricator.services.mozilla.com/D753
2018-03-17 15:34:06 +00:00
EKR a38480ff22 Bug 1429475: Tests for delayed failure and be more aggressive about making failures persistent. r=mt, wtc
Summary:
- Make any call to ssl3_GatherCompleteHandshake (which transitively
  means any read from the wire) return PR_IO_ERROR if an alert has
  been sent.

- Patch up a few of the tests to handle this new behavior properly.
  These tests actually were a bit harder to follow so they should
  also be a bit clearer.

- Add a new set of tests for certificate authentication failure.

Reviewers: mt

Differential Revision: https://phabricator.services.mozilla.com/D365
2018-01-21 10:33:29 -08:00
Martin Thomson 153b50d7df Bug 1396487 - Extra test case for ACK, fragmentation and reassembly, r=ekr
--HG--
branch : NSS_TLS13_DRAFT19_BRANCH
2017-09-07 20:12:30 +10:00
Martin Thomson 9034599475 Merge NSS trunk to NSS_TLS13_DRAFT19_BRANCH
--HG--
branch : NSS_TLS13_DRAFT19_BRANCH
2017-08-09 17:29:12 +10:00
Martin Thomson 2b21dbb496 Bug 1386191 - ClientHello callback for applications, r=ekr
--HG--
branch : NSS_TLS13_DRAFT19_BRANCH
2017-07-16 14:45:52 +02:00
EKR e636134f2f Bug 1385917 - Enable different Content Type for ServerHello. r=mt
Differential Revision: https://nss-review.dev.mozaws.net/D379
Differential Revision: https://nss-review.dev.mozaws.net/D385
2017-07-31 18:17:25 -07:00
Martin Thomson 792a0b8d15 Merge NSS tip, a=merge
--HG--
branch : NSS_TLS13_DRAFT19_BRANCH
2017-05-12 16:29:32 +10:00
Martin Thomson 07017abb62 Bug 1363981 - Update tests to use SSLProtocolVariant instead of Mode, r=ttaubert 2017-05-01 08:53:54 +10:00
Kai Engert 3057cd73bf Bug 1328318, Allow configuration of SSL/TLS version ranges to silenty succeed if a reduced range is selected because of policies or limitations, test part, partial r=ekr, final r=martin.thomson 2017-05-04 17:41:16 +02:00
Martin Thomson 410c70b4a9 Bug 1350502 - TLS 1.3 draft-19 - EndOfEarlyData message, r=ekr
--HG--
branch : NSS_TLS13_DRAFT19_BRANCH
2017-04-25 11:11:04 +10:00
Tim Taubert 943ddfe086 Bug 1348775 - Add custom TLS mutators for libFuzzer fuzzing targets r=franziskus
Differential Revision: https://nss-review.dev.mozaws.net/D261
2017-03-24 11:18:52 +01:00