diff --git a/src/quic.c b/src/quic.c index d178f66bce..dcdec84afe 100644 --- a/src/quic.c +++ b/src/quic.c @@ -852,6 +852,11 @@ static int wolfSSL_quic_send_internal(WOLFSSL* ssl) rl = (RecordLayerHeader*)output; ato16(rl->length, &rlen); output += RECORD_HEADER_SZ; + if (length < RECORD_HEADER_SZ) { + WOLFSSL_MSG("WOLFSSL_QUIC_SEND application failed"); + ret = FWRITE_ERROR; + goto cleanup; + } length -= RECORD_HEADER_SZ; ssl->quic.output_rec_remain = rlen; ssl->quic.output_rec_level = ssl->quic.enc_level_write;