/* expiration check is performed inside */
ret = gnutls_session_set_data (session, data.data, data.size);
+ gnutls_free (data.data);
+
if (ret < 0)
{
gnutls_assert ();
return ret;
}
- gnutls_free (data.data);
return 0;
}
return 0;
}
-
int
_gnutls_generate_session_id (uint8_t * session_id, uint8_t * len)
{
*len = TLS_MAX_SESSION_ID_SIZE;
- ret = _gnutls_rnd (GNUTLS_RND_NONCE, session_id, *len);
+ ret = _gnutls_rnd (GNUTLS_RND_NONCE, session_id, TLS_MAX_SESSION_ID_SIZE);
if (ret < 0)
{
gnutls_assert ();
timestamp = gnutls_time (0);
-
BUFFER_POP_NUM (ps, session->internals.resumed_security_parameters.entity);
BUFFER_POP_NUM (ps,
session->internals.resumed_security_parameters.kx_algorithm);
BUFFER_POP_NUM (ps,
session->internals.resumed_security_parameters.ecc_curve);
+ if (session->internals.resumed_security_parameters.max_record_recv_size == 0 ||
+ session->internals.resumed_security_parameters.max_record_send_size == 0)
+ {
+ return gnutls_assert_val(GNUTLS_E_INTERNAL_ERROR);
+ }
+
if (timestamp - session->internals.resumed_security_parameters.timestamp >
session->internals.expire_time
|| session->internals.resumed_security_parameters.timestamp > timestamp)