summaryrefslogtreecommitdiff
path: root/lib/session_pack.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/session_pack.c')
-rw-r--r--lib/session_pack.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/session_pack.c b/lib/session_pack.c
index a8659b5a2d..9fbd5b3ae8 100644
--- a/lib/session_pack.c
+++ b/lib/session_pack.c
@@ -1126,13 +1126,16 @@ gnutls_session_set_premaster(gnutls_session_t session, unsigned int entity,
return gnutls_assert_val(ret);
session->internals.resumed_security_parameters.cs = ciphersuite_to_entry(cs);
- if (cs == NULL)
+ if (session->internals.resumed_security_parameters.cs == NULL)
return gnutls_assert_val(GNUTLS_E_INVALID_REQUEST);
session->internals.resumed_security_parameters.cert_type =
DEFAULT_CERT_TYPE;
session->internals.resumed_security_parameters.pversion =
version_to_entry(version);
+ if (session->internals.resumed_security_parameters.pversion ==
+ NULL)
+ return gnutls_assert_val(GNUTLS_E_INVALID_REQUEST);
if (session->internals.resumed_security_parameters.pversion->selectable_prf)
session->internals.resumed_security_parameters.prf = mac_to_entry(session->internals.resumed_security_parameters.cs->prf);
@@ -1141,10 +1144,6 @@ gnutls_session_set_premaster(gnutls_session_t session, unsigned int entity,
if (session->internals.resumed_security_parameters.prf == NULL)
return gnutls_assert_val(GNUTLS_E_INVALID_REQUEST);
- if (session->internals.resumed_security_parameters.pversion ==
- NULL)
- return gnutls_assert_val(GNUTLS_E_INVALID_REQUEST);
-
if (master->size != GNUTLS_MASTER_SIZE)
return gnutls_assert_val(GNUTLS_E_INVALID_REQUEST);