Skip to content

Commit 67ebe0d

Browse files
committed
dtls13: fix don't reset nexthandshake num after being stateful
1 parent 5f387e9 commit 67ebe0d

1 file changed

Lines changed: 9 additions & 7 deletions

File tree

src/dtls13.c

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1872,13 +1872,15 @@ static int _Dtls13HandshakeRecv(WOLFSSL* ssl, byte* input, word32 size,
18721872
*processedSize = size;
18731873
return 0;
18741874
}
1875-
/* To be able to operate in stateless mode, we assume the ClientHello
1876-
* is in order and we use its Handshake Message number and Sequence
1877-
* Number for our Tx. */
1878-
ssl->keys.dtls_expected_peer_handshake_number =
1879-
ssl->keys.dtls_handshake_number =
1880-
ssl->keys.dtls_peer_handshake_number;
1881-
ssl->dtls13Epochs[0].nextSeqNumber = ssl->keys.curSeq;
1875+
if (!ssl->options.dtlsStateful) {
1876+
/* To be able to operate in stateless mode, we assume the
1877+
* ClientHello is in order and we use its Handshake Message number
1878+
* and Sequence Number for our Tx. */
1879+
ssl->keys.dtls_expected_peer_handshake_number =
1880+
ssl->keys.dtls_handshake_number =
1881+
ssl->keys.dtls_peer_handshake_number;
1882+
ssl->dtls13Epochs[0].nextSeqNumber = ssl->keys.curSeq;
1883+
}
18821884
}
18831885

18841886
if (idx + fragLength > size) {

0 commit comments

Comments
 (0)