From f08dfb4afc7e7eff841dffb0808acb848209f779 Mon Sep 17 00:00:00 2001 From: Sean Parkinson Date: Tue, 19 Nov 2019 13:03:20 +1000 Subject: [PATCH] ProcessPeerCerts allocating memory for exts with OPENSSL_EXTRA properly --- src/internal.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/internal.c b/src/internal.c index ef64900dd..71c1bded0 100644 --- a/src/internal.c +++ b/src/internal.c @@ -9956,12 +9956,21 @@ int ProcessPeerCerts(WOLFSSL* ssl, byte* input, word32* inOutIdx, #endif args->idx += ctxSz; + #ifdef OPENSSL_EXTRA + /* allocate buffer for cert extensions */ + args->exts = (buffer*)XMALLOC(sizeof(buffer) * + (ssl->verifyDepth + 1), ssl->heap, DYNAMIC_TYPE_CERT_EXT); + if (args->exts == NULL) { + ERROR_OUT(MEMORY_E, exit_ppc); + } + #else /* allocate buffer for cert extensions */ args->exts = (buffer*)XMALLOC(sizeof(buffer) * MAX_CHAIN_DEPTH, ssl->heap, DYNAMIC_TYPE_CERT_EXT); if (args->exts == NULL) { ERROR_OUT(MEMORY_E, exit_ppc); } + #endif } #endif