diff --git a/src/tls.c b/src/tls.c index 918ea3801..651f54280 100644 --- a/src/tls.c +++ b/src/tls.c @@ -10360,10 +10360,14 @@ int TLSX_Parse(WOLFSSL* ssl, byte* input, word16 length, byte msgType, case TLSX_STATUS_REQUEST: WOLFSSL_MSG("Certificate Status Request extension received"); -#ifdef WOLFSSL_TLS13 - if (IsAtLeastTLSv1_3(ssl->version)) - break; -#endif + #ifdef WOLFSSL_TLS13 + if (IsAtLeastTLSv1_3(ssl->version) && + msgType != client_hello && + msgType != certificate_request && + msgType != certificate) { + break; + } + #endif ret = CSR_PARSE(ssl, input + offset, size, isRequest); break;