summaryrefslogtreecommitdiff
path: root/lib/secrets.c
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2017-11-08 13:13:31 +0100
committerNikos Mavrogiannopoulos <nmav@redhat.com>2018-02-19 15:29:36 +0100
commit1b12320a6938d327b07fc3c1e48ea6fe03d59a9b (patch)
tree9791f6bc4e1c559f949b7d12bdf58ae282bda02d /lib/secrets.c
parentdcf2a8d3bd69ed0b994bed1753fe47a83366786e (diff)
downloadgnutls-1b12320a6938d327b07fc3c1e48ea6fe03d59a9b.tar.gz
session state: TLS1.2 and TLS1.3 state is stored as union
That is, to reduce memory usage as these protocol cannot be used in parallel. Relates: #281 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
Diffstat (limited to 'lib/secrets.c')
-rw-r--r--lib/secrets.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/secrets.c b/lib/secrets.c
index 08c6e55686..73402f9e60 100644
--- a/lib/secrets.c
+++ b/lib/secrets.c
@@ -34,11 +34,11 @@ int _tls13_init_secret(gnutls_session_t session, const uint8_t *psk, size_t psk_
{
char buf[128];
- session->key.proto.kshare.temp_secret_size = session->security_parameters.prf->output_size;
+ session->key.proto.tls13.temp_secret_size = session->security_parameters.prf->output_size;
/* when no PSK, use the zero-value */
if (psk == NULL) {
- psk_size = session->key.proto.kshare.temp_secret_size;
+ psk_size = session->key.proto.tls13.temp_secret_size;
if (unlikely(psk_size >= sizeof(buf)))
return gnutls_assert_val(GNUTLS_E_INTERNAL_ERROR);
@@ -49,16 +49,16 @@ int _tls13_init_secret(gnutls_session_t session, const uint8_t *psk, size_t psk_
return gnutls_hmac_fast(session->security_parameters.prf->id,
"", 0,
psk, psk_size,
- session->key.proto.kshare.temp_secret);
+ session->key.proto.tls13.temp_secret);
}
/* HKDF-Extract(Prev-Secret, key) */
int _tls13_update_secret(gnutls_session_t session, const uint8_t *key, size_t key_size)
{
return gnutls_hmac_fast(session->security_parameters.prf->id,
- session->key.proto.kshare.temp_secret, session->key.proto.kshare.temp_secret_size,
+ session->key.proto.tls13.temp_secret, session->key.proto.tls13.temp_secret_size,
key, key_size,
- session->key.proto.kshare.temp_secret);
+ session->key.proto.tls13.temp_secret);
}
/* Derive-Secret(Secret, Label, Messages) */