From: Tomas Mraz Date: Thu, 11 Apr 2024 07:40:18 +0000 (+0200) Subject: make_addressPrefix(): Fix a memory leak in error case X-Git-Tag: openssl-3.1.6~55 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a6d9343ab5531b713193bb54f4f6294e9872862c;p=thirdparty%2Fopenssl.git make_addressPrefix(): Fix a memory leak in error case Fixes #24098 Reviewed-by: Tom Cosgrove Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/24102) (cherry picked from commit 682ed1b86ebe97036ab37897d528343d0e4def69) --- diff --git a/crypto/x509/v3_addr.c b/crypto/x509/v3_addr.c index 4930f331242..20f3d2ba70d 100644 --- a/crypto/x509/v3_addr.c +++ b/crypto/x509/v3_addr.c @@ -397,11 +397,11 @@ static int make_addressPrefix(IPAddressOrRange **result, unsigned char *addr, const int prefixlen, const int afilen) { int bytelen = (prefixlen + 7) / 8, bitlen = prefixlen % 8; - IPAddressOrRange *aor = IPAddressOrRange_new(); + IPAddressOrRange *aor; if (prefixlen < 0 || prefixlen > (afilen * 8)) return 0; - if (aor == NULL) + if ((aor = IPAddressOrRange_new()) == NULL) return 0; aor->type = IPAddressOrRange_addressPrefix; if (aor->u.addressPrefix == NULL &&