diff --git a/lib/vtls/vtls.c b/lib/vtls/vtls.c index fa2b0fe92b..3b335e2871 100644 --- a/lib/vtls/vtls.c +++ b/lib/vtls/vtls.c @@ -698,9 +698,12 @@ static CURLcode pubkey_pem_to_der(const char *pem, ++pem_count; } - result = curlx_base64_decode(curlx_dyn_ptr(&pbuf), der, der_len); - - curlx_dyn_free(&pbuf); + if(curlx_dyn_len(&pbuf)) { + result = curlx_base64_decode(curlx_dyn_ptr(&pbuf), der, der_len); + curlx_dyn_free(&pbuf); + } + else + result = CURLE_BAD_CONTENT_ENCODING; return result; }