{
int decrypted_length;
opaque version[2];
- uint64 sequence;
+ uint64 dtls_sequence;
+ uint64 *decrypt_sequence;
content_type_t recv_type;
uint16_t length;
uint8_t *ciphertext;
if ((ret =
record_check_headers (session, data_enc.data, type, htype, &recv_type,
- version, &sequence, &length, &header_size)) < 0)
+ version, &dtls_sequence, &length, &header_size)) < 0)
{
gnutls_assert ();
return ret;
return ret;
}
+ decrypt_sequence =
+ _gnutls_is_dtls(session) ? &dtls_sequence : &record_state->sequence_number;
+
/* decrypt the data we got.
*/
ret =
_gnutls_decrypt (session, ciphertext, length, tmp.data, tmp.size,
- recv_type, record_params);
+ recv_type, record_params, decrypt_sequence);
if (ret < 0)
{
session_unresumable (session);