if (((!SSL_CONNECTION_IS_DTLS13(s) && record_type == SSL3_RT_CHANGE_CIPHER_SPEC)
|| (SSL_CONNECTION_IS_DTLS13(s)
- && (msg_type == SSL3_MT_FINISHED || msg_type == SSL3_MT_KEY_UPDATE)))
+ && (msg_type == SSL3_MT_FINISHED
+ || msg_type == SSL3_MT_SERVER_HELLO
+ || msg_type == SSL3_MT_KEY_UPDATE)))
&& sent_msg->saved_retransmit_state.wrlmethod != NULL
&& s->rlayer.wrl != sent_msg->saved_retransmit_state.wrl) {
/*
if (type == SSL3_RT_HANDSHAKE && ret > 0 && SSL_CONNECTION_IS_DTLS13(sc)) {
pitem *item;
unsigned char prio[8];
+ dtls_sent_msg *sent_msg;
+ DTLS1_RECORD_NUMBER *rec_num;
dtls1_get_queue_priority(prio, sc->d1->w_msg.msg_seq, 0);
item = pqueue_find(&sc->d1->sent_messages, prio);
if (item == NULL)
return ret;
- if (dtls_msg_needs_ack(sc->server, sc->d1->w_msg.msg_type)) {
- dtls_sent_msg *sent_msg;
- DTLS1_RECORD_NUMBER *rec_num;
+ sent_msg = (dtls_sent_msg *) item->data;
+ rec_num = dtls1_record_number_new(tmpl.epoch, tmpl.sequence_number);
- sent_msg = (dtls_sent_msg *) item->data;
- rec_num = dtls1_record_number_new(tmpl.epoch, tmpl.sequence_number);
-
- if (rec_num == NULL)
- return -1;
+ if (rec_num == NULL)
+ return -1;
- ossl_list_record_number_insert_tail(&sent_msg->rec_nums, rec_num);
- }
+ ossl_list_record_number_insert_tail(&sent_msg->rec_nums, rec_num);
}
return ret;
}
/* We have moved to the next flight lets clear out old messages */
- if (direction == OSSL_RECORD_DIRECTION_READ) {
+ if (direction == OSSL_RECORD_DIRECTION_READ)
dtls1_clear_received_buffer(s);
- dtls1_acknowledge_sent_buffer(s, dtls1_get_epoch(s, which));
- }
dtls1_clear_sent_buffer(s, 1);
}