From 17bedbac67adf42397d8d71a0123e9d845b2569f Mon Sep 17 00:00:00 2001 From: Jacob Barthelmeh Date: Thu, 6 Feb 2020 11:53:42 -0700 Subject: [PATCH] fix return with error on process peer cert --- src/internal.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/internal.c b/src/internal.c index e88163632..f638dbbf7 100644 --- a/src/internal.c +++ b/src/internal.c @@ -9979,16 +9979,16 @@ int ProcessPeerCerts(WOLFSSL* ssl, byte* input, word32* inOutIdx, /* Certificate Request Context */ if ((args->idx - args->begin) + OPAQUE8_LEN > totalSz) - return BUFFER_ERROR; + ERROR_OUT(BUFFER_ERROR, exit_ppc); ctxSz = *(input + args->idx); args->idx++; if ((args->idx - args->begin) + ctxSz > totalSz) - return BUFFER_ERROR; + ERROR_OUT(BUFFER_ERROR, exit_ppc); #ifndef NO_WOLFSSL_CLIENT /* Must be empty when received from server. */ if (ssl->options.side == WOLFSSL_CLIENT_END) { if (ctxSz != 0) { - return INVALID_CERT_CTX_E; + ERROR_OUT(INVALID_CERT_CTX_E, exit_ppc); } } #endif @@ -9997,7 +9997,7 @@ int ProcessPeerCerts(WOLFSSL* ssl, byte* input, word32* inOutIdx, if (ssl->options.side == WOLFSSL_SERVER_END) { if (ssl->options.handShakeState != HANDSHAKE_DONE && ctxSz != 0) { - return INVALID_CERT_CTX_E; + ERROR_OUT(INVALID_CERT_CTX_E, exit_ppc); } else if (ssl->options.handShakeState == HANDSHAKE_DONE) { #ifdef WOLFSSL_POST_HANDSHAKE_AUTH @@ -10020,7 +10020,7 @@ int ProcessPeerCerts(WOLFSSL* ssl, byte* input, word32* inOutIdx, } if (curr == NULL) #endif - return INVALID_CERT_CTX_E; + ERROR_OUT(INVALID_CERT_CTX_E, exit_ppc); } } #endif