]>
git.ipfire.org Git - thirdparty/gnutls.git/log
Nikos Mavrogiannopoulos [Wed, 29 Nov 2017 13:04:30 +0000 (14:04 +0100)]
doc update
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 27 Nov 2017 10:07:40 +0000 (11:07 +0100)]
gnutls_prf_rfc5705: apply the context limits only under TLS1.2 or earlier
These limits do not exist under TLS1.3.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 27 Nov 2017 10:04:59 +0000 (11:04 +0100)]
gnutls_prf_raw: fail under TLS1.3
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 27 Nov 2017 08:10:24 +0000 (09:10 +0100)]
tests: included behavioral test of gnutls_prf under TLS1.3
Resolves #330
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 27 Nov 2017 08:03:31 +0000 (09:03 +0100)]
gnutls_prf: prevent usage under TLS1.3
Only allow its use when it is documented to have the same output
as gnutls_rfc5705() and in that case make it a wrapper to it.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Daiki Ueno [Fri, 24 Nov 2017 10:07:20 +0000 (11:07 +0100)]
gnutls_prf_rfc5705: calculate exporter using HKDF if TLS 1.3
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Daiki Ueno [Fri, 24 Nov 2017 09:55:43 +0000 (10:55 +0100)]
handshake-tls13: derive and store exporter_master_secret
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Daiki Ueno [Fri, 24 Nov 2017 09:34:26 +0000 (10:34 +0100)]
_tls13_derive_secret: define secret argument
TLS 1.3 exporters need to derive a secret from exporter_master_secret
or early_exporter_master_secret, not the handshake or application
secret stored in temp_secret. Add a new argument @secret to
_tls13_derive_secret to specify any secret.
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Nikos Mavrogiannopoulos [Wed, 8 Nov 2017 10:45:25 +0000 (11:45 +0100)]
session state: combined srp and dh prime bits variables
They were being used for the same purpose, and SRP as well as
DH, do not overlap to require two different variables.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 8 Nov 2017 10:41:59 +0000 (11:41 +0100)]
session state: mark mod_auth_st_int as constant
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 8 Nov 2017 10:39:53 +0000 (11:39 +0100)]
dtls: cookie is stored dynamically when needed rather than in pre-allocated size
That reduces the number of bytes used in cases where DTLS is not in use or
we are in server-side.
Relates #281
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 10 Oct 2017 07:54:13 +0000 (09:54 +0200)]
removed legacy/unused rsa-related structures/functions
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Dmitry Eremin-Solenikov [Sat, 23 Sep 2017 18:43:45 +0000 (21:43 +0300)]
lib: simplify adding groups according to prioritites
There is little point, remembering if EC or DHE came first and then
adding necessary groups checking that flag. Instead just add groups at
the time first EC or DHE ciphersuite is met.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Wed, 4 Oct 2017 07:21:06 +0000 (09:21 +0200)]
tests: added unit test for RDNs in cert callback
This verifies whether the RDNs received at the callbacks under
TLS1.2 and TLS1.3 have the expected values (corresponding to the
certificates used).
Resolves #297
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 13:59:14 +0000 (15:59 +0200)]
gnutls_auth*_get_type: use gnutls_kx_get to retrieve key exchange
That allows the functions to operate under TLS 1.3 which have
no key exchange as part of the ciphersuite.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 13:28:07 +0000 (15:28 +0200)]
tests: check certificate callbacks under TLS 1.2 and 1.3
Resolves #278
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 12:56:15 +0000 (14:56 +0200)]
tests: added unit tests for client certificate under TLS1.3
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 12:21:33 +0000 (14:21 +0200)]
handshake: handle the certificate authorities extension
That is, when sending or receiving the certificate request message.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 11:59:39 +0000 (13:59 +0200)]
handshake: added support for client certificates
That is, receive and parse a certificate request, certificate
verify, as well as certificate in server side.
That way, client certificates
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 09:48:28 +0000 (11:48 +0200)]
handshake: return GNUTLS_E_NO_CERTIFICATE_FOUND when no certificate is found in TLS1.3
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 09:43:45 +0000 (11:43 +0200)]
handshake: send certificate request when requested
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 6 Oct 2017 09:00:16 +0000 (11:00 +0200)]
tests: added check for client hello random value after HRR
That way we ensure that we follow the tls1.3 draft which requires
the second client hello to be identical to the initial one.
Resolves #299
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 6 Oct 2017 09:16:17 +0000 (11:16 +0200)]
handshake: treat reply to HRR as a reply to hello verify request
That is, re-use the client random value on the client hello which
is a reply to a hello retry request.
Relates #299
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 6 Oct 2017 08:18:33 +0000 (10:18 +0200)]
tests: added key share behavioral test
This verifies whether the gnutls_init() flags GNUTLS_KEY_SHARE_TOP,
GNUTLS_KEY_SHARE_TOP2, GNUTLS_KEY_SHARE_TOP3 behave as advertized.
Resolves #284
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 6 Oct 2017 07:05:20 +0000 (09:05 +0200)]
key share: added flags to gnutls_init() to modify its default behavior
That way the application can adjust the range of keys generated
during client hello attempting to guess the server's algorithm.
Applications are intentionally not given the option to select the
algorithm in the key share, but rather chose from the prioritized
list of groups, to avoid a disconnect between the prioritized
groups, and the key share sent.
Relates #284
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 2 Nov 2017 14:40:24 +0000 (15:40 +0100)]
handshake: initialize buffer prior to use
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 4 Oct 2017 08:55:48 +0000 (10:55 +0200)]
tests: added tests for TLS1.2- rollback detection
That is, tests which check
* whether the server's generated values under TLS1.2- match the expected
* whether the client would fail on negotiation if the rollback values are detected
Resolves #293
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 4 Oct 2017 08:33:11 +0000 (10:33 +0200)]
_gnutls_set_server_random: corrected TLS1.2 and TLS1.1 rollback detection
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 09:08:04 +0000 (11:08 +0200)]
extensions: renamed _gnutls_hello_ext_*sdata to _gnutls_hello_ext_*priv
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 07:35:52 +0000 (09:35 +0200)]
server_name: use the new API for ext data setting
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 06:58:59 +0000 (08:58 +0200)]
extensions: enhanced extension lib with pack and unpack functions
That allows the functionality to be used for the majority of extensions.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 06:41:51 +0000 (08:41 +0200)]
tests: check the correct handling of cookie extension in client side
Resolves #218
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 3 Oct 2017 06:39:58 +0000 (08:39 +0200)]
extensions: allow receiving and sending extensions which were not advertised by client side
That is needed due to the special treatment of the cookie extension,
which is sent by the server in HRR even if it was not advertised by
the client.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 14:41:09 +0000 (16:41 +0200)]
extensions: optimized gid_to_ext_entry() map on known extensions
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 14:23:10 +0000 (16:23 +0200)]
extensions: avoid double loop when parsing received extensions
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 13:40:36 +0000 (15:40 +0200)]
extensions: avoid looping to discover location of saved data
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 13:16:04 +0000 (15:16 +0200)]
handshake: added support for reading and sending cookie extension
That introduces an internal API to associate data to an extension.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 13 Nov 2017 07:45:09 +0000 (08:45 +0100)]
doc: document the GNUTLS_E_NO_COMMON_KEY_SHARE usage
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 09:58:25 +0000 (11:58 +0200)]
tests: added unit test for hello retry request support
Resolves #285
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 12:24:54 +0000 (14:24 +0200)]
tests: rehandshake tests were restricted to TLS1.2
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 12:11:34 +0000 (14:11 +0200)]
handshake: reduce assert printouts in common cases
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 08:10:48 +0000 (10:10 +0200)]
handshake: accept hello retry request in client side
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 07:08:59 +0000 (09:08 +0200)]
buf: _gnutls_buffer_pop_data made easier to use
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 07:01:41 +0000 (09:01 +0200)]
handshake: simplified version parsing
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 21 Sep 2017 14:40:43 +0000 (16:40 +0200)]
handshake: send hello retry request when no key share matches
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 10:54:38 +0000 (12:54 +0200)]
ext: do not advertize post handshake authentication
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 29 Sep 2017 06:21:54 +0000 (08:21 +0200)]
tests: check TLS1.3 record layer packet modification
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 28 Sep 2017 05:50:42 +0000 (07:50 +0200)]
handshake: split set_client_random to gen and set
This aligns with set_server_random() and gen_server_random().
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Thu, 28 Sep 2017 05:47:40 +0000 (07:47 +0200)]
handshake: only attempt to detect downgrade attacks if TLS1.3 is supported
Otherwise, connections under TLS 1.2 may fail, even if client never enabled
TLS 1.3 support.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Nikos Mavrogiannopoulos [Wed, 27 Sep 2017 13:10:07 +0000 (15:10 +0200)]
nettle/pk: explicitly mark intentional fallthrough in switch cases
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 22 Sep 2017 14:59:31 +0000 (16:59 +0200)]
key share: removed duplicate message
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 27 Sep 2017 06:20:10 +0000 (08:20 +0200)]
tests: fix warning in rng-sigint.c
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 27 Sep 2017 06:58:26 +0000 (08:58 +0200)]
tests: improved tls-session-supplemental
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 26 Sep 2017 14:44:39 +0000 (16:44 +0200)]
kx: moved to new buffer API
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 26 Sep 2017 13:38:58 +0000 (15:38 +0200)]
handshake: moved to the new mbuffer API
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 26 Sep 2017 10:54:18 +0000 (12:54 +0200)]
handshake: use the new buffer type in TLS 1.3
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 26 Sep 2017 09:57:18 +0000 (11:57 +0200)]
handshake: new helper functions to use gnutls_buffer_st to generate mbuffers
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 26 Sep 2017 08:29:15 +0000 (10:29 +0200)]
tlsfuzzer: disable non TLS1.3-ready tests
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 25 Sep 2017 14:28:38 +0000 (16:28 +0200)]
tests: added tests for TLS1.3 record generation / parsing
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 25 Sep 2017 07:47:52 +0000 (09:47 +0200)]
tests: introduced basic TLS1.3 key exchange test suite
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 25 Sep 2017 14:26:45 +0000 (16:26 +0200)]
record: adjusted overhead calculation for TLS1.3
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 25 Sep 2017 12:49:23 +0000 (14:49 +0200)]
priority: include groups into priority when having a TLS1.3-only session
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 25 Sep 2017 07:46:32 +0000 (09:46 +0200)]
priority: do include all the version's signature semantics
This resolves issue, which prevented handling certain types
of TLS1.3-only signatures, depending on the order of enabled
protocols.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 25 Sep 2017 07:32:25 +0000 (09:32 +0200)]
ext/key_share: corrected release of MPI parameters
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 25 Sep 2017 07:28:45 +0000 (09:28 +0200)]
ext/signature: explicitly prevent RSA/DSA and SHA1 signatures on TLS1.3
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 22 Sep 2017 14:55:36 +0000 (16:55 +0200)]
hello ext: reduce verbosity
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 22 Sep 2017 09:10:56 +0000 (11:10 +0200)]
constate.h: removed non-existing function
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 22 Sep 2017 08:55:43 +0000 (10:55 +0200)]
record: any alert is fatal under TLS1.3
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 18 Sep 2017 12:49:24 +0000 (14:49 +0200)]
extensions: introduced functions to obtain currently parsed message
This allows the extension handling code to operate differently
on different messages.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 21 Sep 2017 07:30:39 +0000 (09:30 +0200)]
supported_versions: print the received versions
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 21 Sep 2017 10:58:51 +0000 (12:58 +0200)]
handshake: introduced server side handshake [2/2]
That is, send server certificate verify and receive
certificate and certificate verify messages. In addition
introduced flags to mark the expected, or sent messages.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 21 Sep 2017 08:21:26 +0000 (10:21 +0200)]
cs: select certificate under TLS1.3
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 21 Sep 2017 07:53:47 +0000 (09:53 +0200)]
handshake: introduced server side handshake [1/2]
That is, send certificate request and certificate in server side
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 21 Sep 2017 07:50:10 +0000 (09:50 +0200)]
ciphersuites: introduce a maximum supported TLS/DTLS version
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 21 Sep 2017 07:41:37 +0000 (09:41 +0200)]
handshake: properly set the default record version
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 14:07:39 +0000 (16:07 +0200)]
handshake: send encrypted extensions handshake message
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 15 Sep 2017 11:54:25 +0000 (13:54 +0200)]
handshake: parse new session ticket message
That does not include extension handling.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 13:33:16 +0000 (15:33 +0200)]
str: added _gnutls_buffer_pop_prefix24 and _gnutls_buffer_pop_prefix8
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 27 Sep 2017 13:07:04 +0000 (15:07 +0200)]
str: use assert to mark impossible cases
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 13:21:16 +0000 (15:21 +0200)]
str: allow creating a read-only buffer
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 11:43:14 +0000 (13:43 +0200)]
gnutls_session_get_desc: more descriptive name for TLS1.3 ciphersuites
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 15 Sep 2017 07:11:37 +0000 (09:11 +0200)]
handshake: generate application keys
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 15 Sep 2017 06:30:52 +0000 (08:30 +0200)]
constate: added _gnutls_epoch_dup
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 15 Sep 2017 05:59:21 +0000 (07:59 +0200)]
constate: indentation fixes
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Thu, 14 Sep 2017 08:22:36 +0000 (10:22 +0200)]
handshake: added basic support for TLS 1.3 handshake in client side
That does not include support for client certificates as it
requires extension handling improvements in order for extensions
to be context sensitive (now they cannot distinguish whether the
parsing routine is called during client hello or certificate request
reading)
This does not include proper parsing of extensions present in
the certificate message.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 13 Sep 2017 12:19:12 +0000 (14:19 +0200)]
handshake: added parsing of encrypted extensions
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Mon, 25 Sep 2017 08:44:43 +0000 (10:44 +0200)]
crypto-api: introduce internal version of AEAD API
This allows to initialize the TLS 1.3 connection state without
additional allocations as required by the external API.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 11 Aug 2017 13:16:51 +0000 (15:16 +0200)]
record: added TLS 1.3 record parsing and key derivation
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 18 Jul 2017 11:48:13 +0000 (13:48 +0200)]
handshake: introduced TLS 1.3 handshake client state machine outline
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 09:56:28 +0000 (11:56 +0200)]
extensions: separate the hello extensions from others
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 09:51:10 +0000 (11:51 +0200)]
hello_ext.h: removed non-existant function definition
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 09:48:30 +0000 (11:48 +0200)]
extensions: files renamed to hello_ext
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 09:46:55 +0000 (11:46 +0200)]
extensions: renamed hello extension handling functions appropriately
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 09:40:54 +0000 (11:40 +0200)]
extensions: simplified semantics of store and check functions
That is, _gnutls_extension_list_check was made a boolean function,
and both were renamed to more appropriate names such as,
_gnutls_hello_ext_is_present, _gnutls_hello_ext_save.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 09:30:12 +0000 (11:30 +0200)]
extension: renamed functions to reflect purpose
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 08:05:53 +0000 (10:05 +0200)]
extensions: use the low-level extension parsing code for hello parsing
That's a step towards unification of TLS-type extension handling
for TLS 1.3.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Wed, 20 Sep 2017 07:46:34 +0000 (09:46 +0200)]
extv: introduced a low-level extension parsing code
This will simplify the parsing and handling of extensions throughout
the TLS 1.3 message contents.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 19 Sep 2017 10:58:56 +0000 (12:58 +0200)]
extensions: simplified the extension tracking
Instead of keep a list of the received TLS extension IDs, use the bits
in a variable to mark the received extensions. That reduces the
overall memory usage due to extension tracking.
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Tue, 19 Sep 2017 10:48:14 +0000 (12:48 +0200)]
extensions: use an internal extension ID independent of the TLS id
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikos Mavrogiannopoulos [Fri, 15 Sep 2017 12:46:13 +0000 (14:46 +0200)]
str: rename _gnutls_buffer_pop_prefix to _gnutls_buffer_pop_prefix32
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>