forked from wolfSSL/wolfssl
Fix for async with OCSP non-blocking in ProcessPeerCerts
. ZD 14754.
This commit is contained in:
@ -12858,20 +12858,25 @@ int ProcessPeerCerts(WOLFSSL* ssl, byte* input, word32* inOutIdx,
|
|||||||
goto exit_ppc;
|
goto exit_ppc;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif
|
#endif /* WOLFSSL_ASYNC_CRYPT */
|
||||||
#ifdef WOLFSSL_NONBLOCK_OCSP
|
#ifdef WOLFSSL_NONBLOCK_OCSP
|
||||||
if (ssl->error == OCSP_WANT_READ) {
|
if (ssl->error == OCSP_WANT_READ) {
|
||||||
/* Re-entry after non-blocking OCSP */
|
/* Re-entry after non-blocking OCSP */
|
||||||
|
#ifdef WOLFSSL_ASYNC_CRYPT
|
||||||
|
/* if async operationg not pending, reset error code */
|
||||||
|
if (ret == WC_NOT_PENDING_E)
|
||||||
|
ret = 0;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif
|
#endif /* WOLFSSL_NONBLOCK_OCSP */
|
||||||
#elif defined(WOLFSSL_SMALL_STACK)
|
#elif defined(WOLFSSL_SMALL_STACK)
|
||||||
args = (ProcPeerCertArgs*)XMALLOC(
|
args = (ProcPeerCertArgs*)XMALLOC(
|
||||||
sizeof(ProcPeerCertArgs), ssl->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
sizeof(ProcPeerCertArgs), ssl->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
if (args == NULL) {
|
if (args == NULL) {
|
||||||
ERROR_OUT(MEMORY_E, exit_ppc);
|
ERROR_OUT(MEMORY_E, exit_ppc);
|
||||||
}
|
}
|
||||||
#endif
|
#endif /* WOLFSSL_ASYNC_CRYPT || WOLFSSL_NONBLOCK_OCSP */
|
||||||
{
|
{
|
||||||
/* Reset state */
|
/* Reset state */
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
Reference in New Issue
Block a user