summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBernd Edlinger <bernd.edlinger@hotmail.de>2024-01-09 15:05:30 +0100
committerTomas Mraz <tomas@openssl.org>2024-01-10 18:14:27 +0100
commit490dfc04479b89f247a12087e90e44aafc0d1b89 (patch)
tree8f1c6ff2477bd0a3c1f4fb1240da15e7f48830f8
parent47ca80d96ed6242e06a02a7beda9c59759e408e3 (diff)
Fix a similar memory leak in SXNET_add_id_INTEGER
Even in the good case there was memory leak here. Add a simple test case to have at least some test coverage. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/23234) (cherry picked from commit 398011848468c7e8e481b295f7904afc30934217)
-rw-r--r--crypto/x509/v3_sxnet.c1
-rw-r--r--test/recipes/25-test_req.t3
2 files changed, 3 insertions, 1 deletions
diff --git a/crypto/x509/v3_sxnet.c b/crypto/x509/v3_sxnet.c
index b9ddfe3244..74209d3e3f 100644
--- a/crypto/x509/v3_sxnet.c
+++ b/crypto/x509/v3_sxnet.c
@@ -204,6 +204,7 @@ int SXNET_add_id_INTEGER(SXNET **psx, ASN1_INTEGER *zone, const char *user,
ERR_raise(ERR_LIB_X509V3, ERR_R_CRYPTO_LIB);
goto err;
}
+ ASN1_INTEGER_free(id->zone);
id->zone = zone;
*psx = sx;
return 1;
diff --git a/test/recipes/25-test_req.t b/test/recipes/25-test_req.t
index 20e338b46f..50188cbae5 100644
--- a/test/recipes/25-test_req.t
+++ b/test/recipes/25-test_req.t
@@ -15,7 +15,7 @@ use OpenSSL::Test qw/:DEFAULT srctop_file/;
setup("test_req");
-plan tests => 106;
+plan tests => 107;
require_ok(srctop_file('test', 'recipes', 'tconversion.pl'));
@@ -52,6 +52,7 @@ ok(!run(app([@addext_args, "-addext", $val, "-addext", $val])));
ok(!run(app([@addext_args, "-addext", $val, "-addext", $val2])));
ok(!run(app([@addext_args, "-addext", $val, "-addext", $val3])));
ok(!run(app([@addext_args, "-addext", $val2, "-addext", $val3])));
+ok(run(app([@addext_args, "-addext", "SXNetID=1:one, 2:two, 3:three"])));
# If a CSR is provided with neither of -key or -CA/-CAkey, this should fail.
ok(!run(app(["openssl", "req", "-x509",