From: Dr. David von Oheimb Date: Mon, 8 Mar 2021 08:25:54 +0000 (+0100) Subject: http_client.c: Prevent spurious error queue entry on NULL mem argument X-Git-Tag: openssl-3.0.0-alpha14~73 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e1428c62a1588def5af25678583f1a0166adf924;p=thirdparty%2Fopenssl.git http_client.c: Prevent spurious error queue entry on NULL mem argument Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/14630) --- diff --git a/crypto/http/http_client.c b/crypto/http/http_client.c index 8e4f8e8c83b..eec13973fb7 100644 --- a/crypto/http/http_client.c +++ b/crypto/http/http_client.c @@ -734,13 +734,12 @@ static BIO *HTTP_new_bio(const char *server /* optionally includes ":port" */, static ASN1_VALUE *BIO_mem_d2i(BIO *mem, const ASN1_ITEM *it) { const unsigned char *p; - long len = BIO_get_mem_data(mem, &p); ASN1_VALUE *resp; if (mem == NULL) return NULL; - if ((resp = ASN1_item_d2i(NULL, &p, len, it)) == NULL) + if ((resp = ASN1_item_d2i(NULL, &p, BIO_get_mem_data(mem, &p), it)) == NULL) ERR_raise(ERR_LIB_HTTP, HTTP_R_RESPONSE_PARSE_ERROR); return resp; }