264
262
if (!_gnutls_version_has_selectable_prf (gnutls_protocol_get_version(session)))
266
rc = _gnutls_hash_init (&td_sha, GNUTLS_DIG_SHA1);
268
return gnutls_assert_val(rc);
270
rc = _gnutls_hash_init (&td_md5, GNUTLS_DIG_MD5);
273
_gnutls_hash_deinit (&td_sha, NULL);
274
return gnutls_assert_val(rc);
276
_gnutls_hash(&td_sha, session->internals.handshake_hash_buffer.data, len);
277
_gnutls_hash(&td_md5, session->internals.handshake_hash_buffer.data, len);
279
_gnutls_hash_deinit (&td_md5, concat);
280
_gnutls_hash_deinit (&td_sha, &concat[16]);
264
rc = _gnutls_hash_fast( GNUTLS_DIG_SHA1, session->internals.handshake_hash_buffer.data, len, &concat[16]);
266
return gnutls_assert_val(rc);
268
rc = _gnutls_hash_fast( GNUTLS_DIG_MD5, session->internals.handshake_hash_buffer.data, len, concat);
270
return gnutls_assert_val(rc);
284
276
int algorithm = _gnutls_cipher_suite_get_prf(&session->security_parameters.current_cipher_suite);
286
rc = _gnutls_hash_init (&td_sha, algorithm);
278
rc = _gnutls_hash_fast( algorithm, session->internals.handshake_hash_buffer.data, len, concat);
288
280
return gnutls_assert_val(rc);
290
_gnutls_hash(&td_sha, session->internals.handshake_hash_buffer.data, len);
292
_gnutls_hash_deinit (&td_sha, concat);
293
282
hash_len = _gnutls_hash_get_algo_len (algorithm);