Skip to content

Commit 5f1ce09

Browse files
authored
Merge pull request #6412 from JacobBarthelmeh/tls13
add tls extension sanity check
2 parents 0530ee7 + 00f1edd commit 5f1ce09

2 files changed

Lines changed: 13 additions & 0 deletions

File tree

src/tls.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8475,6 +8475,9 @@ int TLSX_KeyShare_Parse(WOLFSSL* ssl, const byte* input, word16 length,
84758475
if (!WOLFSSL_NAMED_GROUP_IS_PQC(group))
84768476
#endif
84778477
ret = TLSX_KeyShare_Use(ssl, group, 0, NULL, NULL, &ssl->extensions);
8478+
8479+
if (ret == 0)
8480+
ssl->session->namedGroup = ssl->namedGroup = group;
84788481
}
84798482
else {
84808483
/* Not a message type that is allowed to have this extension. */

src/tls13.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5236,8 +5236,18 @@ int DoTls13ServerHello(WOLFSSL* ssl, const byte* input, word32* inOutIdx,
52365236
}
52375237
#endif
52385238

5239+
/* sanity check on PSK / KSE */
5240+
if (
5241+
#if defined(HAVE_SESSION_TICKET) || !defined(NO_PSK)
5242+
ssl->options.pskNegotiated == 0 &&
5243+
#endif
5244+
ssl->session->namedGroup == 0) {
5245+
return EXT_MISSING;
5246+
}
5247+
52395248
ssl->keys.encryptionOn = 1;
52405249
ssl->options.serverState = SERVER_HELLO_COMPLETE;
5250+
52415251
}
52425252
else {
52435253
ssl->options.tls1_3 = 1;

0 commit comments

Comments
 (0)