mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-07-30 10:47:28 +02:00
Increment the expected handshake number if the call to the handhsake
message processing function is successful, but not if the handshake message is the client_hello. Process client hello clears that counter and incrementing it breaks the handshake. Fixes issue #612.
This commit is contained in:
@ -8061,7 +8061,8 @@ static int DoDtlsHandShakeMsg(WOLFSSL* ssl, byte* input, word32* inOutIdx,
|
||||
/* This branch is in order next, and a complete message. */
|
||||
ret = DoHandShakeMsgType(ssl, input, inOutIdx, type, size, totalSz);
|
||||
if (ret == 0) {
|
||||
ssl->keys.dtls_expected_peer_handshake_number++;
|
||||
if (type != client_hello)
|
||||
ssl->keys.dtls_expected_peer_handshake_number++;
|
||||
if (ssl->dtls_rx_msg_list != NULL) {
|
||||
ret = DtlsMsgDrain(ssl);
|
||||
}
|
||||
|
Reference in New Issue
Block a user