• R/O
  • HTTP
  • SSH
  • HTTPS

コミット

タグ
未設定

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

TLS/SSL and crypto library


コミットメタ情報

リビジョンe144fd36ceb4d71a75b04503995a52ad6699fb22 (tree)
日時2020-09-13 19:09:45
作者Matt Caswell <matt@open...>
コミッターMatt Caswell

ログメッセージ

Fix safestack issues in x509v3.h

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/12781)

変更サマリ

差分

--- a/.gitignore
+++ b/.gitignore
@@ -27,6 +27,7 @@
2727 /include/openssl/fipskey.h
2828 /include/openssl/ssl.h
2929 /include/openssl/x509.h
30+/include/openssl/x509v3.h
3031
3132 # Auto generated doc files
3233 doc/man1/openssl-*.pod
--- a/apps/cms.c
+++ b/apps/cms.c
@@ -24,8 +24,6 @@
2424 # include <openssl/cms.h>
2525
2626 DEFINE_STACK_OF(CMS_SignerInfo)
27-DEFINE_STACK_OF(GENERAL_NAME)
28-DEFINE_STACK_OF(GENERAL_NAMES)
2927 DEFINE_STACK_OF_STRING()
3028
3129 static int save_certs(char *signerfile, STACK_OF(X509) *signers);
--- a/apps/lib/apps.c
+++ b/apps/lib/apps.c
@@ -63,9 +63,6 @@ static int WIN32_rename(const char *from, const char *to);
6363
6464 DEFINE_STACK_OF(CONF)
6565 DEFINE_STACK_OF(CONF_VALUE)
66-DEFINE_STACK_OF(X509_POLICY_NODE)
67-DEFINE_STACK_OF(GENERAL_NAME)
68-DEFINE_STACK_OF(DIST_POINT)
6966 DEFINE_STACK_OF_STRING()
7067
7168 typedef struct {
--- a/build.info
+++ b/build.info
@@ -17,6 +17,7 @@ DEPEND[]=include/openssl/configuration.h include/openssl/opensslv.h \
1717 include/openssl/fipskey.h \
1818 include/openssl/ssl.h \
1919 include/openssl/x509.h \
20+ include/openssl/x509v3.h \
2021 include/crypto/bn_conf.h include/crypto/dso_conf.h \
2122 doc/man7/openssl_user_macros.pod
2223
@@ -25,6 +26,7 @@ GENERATE[include/openssl/opensslv.h]=include/openssl/opensslv.h.in
2526 GENERATE[include/openssl/fipskey.h]=include/openssl/fipskey.h.in
2627 GENERATE[include/openssl/ssl.h]=include/openssl/ssl.h.in
2728 GENERATE[include/openssl/x509.h]=include/openssl/x509.h.in
29+GENERATE[include/openssl/x509v3.h]=include/openssl/x509v3.h.in
2830 GENERATE[include/crypto/bn_conf.h]=include/crypto/bn_conf.h.in
2931 GENERATE[include/crypto/dso_conf.h]=include/crypto/dso_conf.h.in
3032 GENERATE[doc/man7/openssl_user_macros.pod]=doc/man7/openssl_user_macros.pod.in
--- a/crypto/cmp/cmp_ctx.c
+++ b/crypto/cmp/cmp_ctx.c
@@ -21,9 +21,7 @@
2121 #include <openssl/crmf.h>
2222 #include <openssl/err.h>
2323
24-DEFINE_STACK_OF(POLICYINFO)
2524 DEFINE_STACK_OF(ASN1_UTF8STRING)
26-DEFINE_STACK_OF(GENERAL_NAME)
2725 DEFINE_STACK_OF(OSSL_CMP_ITAV)
2826
2927 /*
--- a/crypto/cmp/cmp_msg.c
+++ b/crypto/cmp/cmp_msg.c
@@ -23,7 +23,6 @@
2323
2424 DEFINE_STACK_OF(OSSL_CMP_CERTSTATUS)
2525 DEFINE_STACK_OF(OSSL_CMP_ITAV)
26-DEFINE_STACK_OF(GENERAL_NAME)
2726 DEFINE_STACK_OF(OSSL_CMP_PKISI)
2827 DEFINE_STACK_OF(OSSL_CRMF_MSG)
2928 DEFINE_STACK_OF(OSSL_CMP_CERTRESPONSE)
--- a/crypto/cms/cms_ess.c
+++ b/crypto/cms/cms_ess.c
@@ -20,7 +20,6 @@
2020 #include "crypto/x509.h"
2121 #include "cms_local.h"
2222
23-DEFINE_STACK_OF(GENERAL_NAMES)
2423 DEFINE_STACK_OF(CMS_SignerInfo)
2524 DEFINE_STACK_OF(ESS_CERT_ID)
2625 DEFINE_STACK_OF(ESS_CERT_ID_V2)
--- a/crypto/ess/ess_lib.c
+++ b/crypto/ess/ess_lib.c
@@ -16,7 +16,6 @@
1616
1717 DEFINE_STACK_OF(ESS_CERT_ID)
1818 DEFINE_STACK_OF(ESS_CERT_ID_V2)
19-DEFINE_STACK_OF(GENERAL_NAME)
2019
2120 static ESS_CERT_ID *ESS_CERT_ID_new_init(X509 *cert, int issuer_needed);
2221 static ESS_CERT_ID_V2 *ESS_CERT_ID_V2_new_init(const EVP_MD *hash_alg,
--- a/crypto/ocsp/ocsp_ext.c
+++ b/crypto/ocsp/ocsp_ext.c
@@ -17,7 +17,6 @@
1717 #include <openssl/x509v3.h>
1818
1919 DEFINE_STACK_OF(ASN1_OBJECT)
20-DEFINE_STACK_OF(ACCESS_DESCRIPTION)
2120
2221 /* Standard wrapper functions for extensions */
2322
--- a/crypto/ocsp/v3_ocsp.c
+++ b/crypto/ocsp/v3_ocsp.c
@@ -16,8 +16,6 @@
1616 # include <openssl/x509v3.h>
1717 # include "../x509/ext_dat.h"
1818
19-DEFINE_STACK_OF(ACCESS_DESCRIPTION)
20-
2119 /*
2220 * OCSP extensions and a couple of CRL entry extensions
2321 */
--- a/crypto/ts/ts_rsp_verify.c
+++ b/crypto/ts/ts_rsp_verify.c
@@ -19,7 +19,6 @@ DEFINE_STACK_OF(PKCS7_SIGNER_INFO)
1919 DEFINE_STACK_OF(ESS_CERT_ID)
2020 DEFINE_STACK_OF(ESS_CERT_ID_V2)
2121 DEFINE_STACK_OF(ASN1_UTF8STRING)
22-DEFINE_STACK_OF(GENERAL_NAME)
2322
2423 static int ts_verify_cert(X509_STORE *store, STACK_OF(X509) *untrusted,
2524 X509 *signer, STACK_OF(X509) **chain);
--- a/crypto/x509/pcy_cache.c
+++ b/crypto/x509/pcy_cache.c
@@ -14,8 +14,6 @@
1414
1515 #include "pcy_local.h"
1616
17-DEFINE_STACK_OF(POLICYINFO)
18-
1917 static int policy_data_cmp(const X509_POLICY_DATA *const *a,
2018 const X509_POLICY_DATA *const *b);
2119 static int policy_cache_set_int(long *out, ASN1_INTEGER *value);
--- a/crypto/x509/pcy_data.c
+++ b/crypto/x509/pcy_data.c
@@ -14,7 +14,6 @@
1414 #include "pcy_local.h"
1515
1616 DEFINE_STACK_OF(ASN1_OBJECT)
17-DEFINE_STACK_OF(POLICYQUALINFO)
1817
1918 /* Policy Node routines */
2019
--- a/crypto/x509/pcy_lib.c
+++ b/crypto/x509/pcy_lib.c
@@ -13,8 +13,6 @@
1313
1414 #include "pcy_local.h"
1515
16-DEFINE_STACK_OF(X509_POLICY_NODE)
17-
1816 /* accessor functions */
1917
2018 /* X509_POLICY_TREE stuff */
--- a/crypto/x509/pcy_map.c
+++ b/crypto/x509/pcy_map.c
@@ -14,7 +14,6 @@
1414
1515 #include "pcy_local.h"
1616
17-DEFINE_STACK_OF(POLICY_MAPPING)
1817 DEFINE_STACK_OF(ASN1_OBJECT)
1918
2019 /*
--- a/crypto/x509/pcy_node.c
+++ b/crypto/x509/pcy_node.c
@@ -14,7 +14,6 @@
1414
1515 #include "pcy_local.h"
1616
17-DEFINE_STACK_OF(X509_POLICY_NODE)
1817 DEFINE_STACK_OF(ASN1_OBJECT)
1918
2019 static int node_cmp(const X509_POLICY_NODE *const *a,
--- a/crypto/x509/pcy_tree.c
+++ b/crypto/x509/pcy_tree.c
@@ -15,7 +15,6 @@
1515 #include "pcy_local.h"
1616
1717 DEFINE_STACK_OF(ASN1_OBJECT)
18-DEFINE_STACK_OF(X509_POLICY_NODE)
1918
2019 static void expected_print(BIO *channel,
2120 X509_POLICY_LEVEL *lev, X509_POLICY_NODE *node,
--- a/crypto/x509/v3_addr.c
+++ b/crypto/x509/v3_addr.c
@@ -26,8 +26,6 @@
2626
2727 #ifndef OPENSSL_NO_RFC3779
2828
29-DEFINE_STACK_OF(IPAddressOrRange)
30-DEFINE_STACK_OF(IPAddressFamily)
3129 DEFINE_STACK_OF(CONF_VALUE)
3230
3331 /*
--- a/crypto/x509/v3_admis.c
+++ b/crypto/x509/v3_admis.c
@@ -20,9 +20,6 @@
2020 #include "v3_admis.h"
2121 #include "ext_dat.h"
2222
23-DEFINE_STACK_OF(ADMISSIONS)
24-DEFINE_STACK_OF(PROFESSION_INFO)
25-DEFINE_STACK_OF(ASN1_STRING)
2623 DEFINE_STACK_OF(ASN1_OBJECT)
2724
2825 ASN1_SEQUENCE(NAMING_AUTHORITY) = {
--- a/crypto/x509/v3_akey.c
+++ b/crypto/x509/v3_akey.c
@@ -16,7 +16,6 @@
1616 #include "ext_dat.h"
1717
1818 DEFINE_STACK_OF(CONF_VALUE)
19-DEFINE_STACK_OF(GENERAL_NAME)
2019
2120 static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_KEYID(X509V3_EXT_METHOD *method,
2221 AUTHORITY_KEYID *akeyid,
--- a/crypto/x509/v3_alt.c
+++ b/crypto/x509/v3_alt.c
@@ -15,7 +15,6 @@
1515 #include "ext_dat.h"
1616
1717 DEFINE_STACK_OF(CONF_VALUE)
18-DEFINE_STACK_OF(GENERAL_NAME)
1918
2019 static GENERAL_NAMES *v2i_subject_alt(X509V3_EXT_METHOD *method,
2120 X509V3_CTX *ctx,
--- a/crypto/x509/v3_asid.c
+++ b/crypto/x509/v3_asid.c
@@ -56,7 +56,6 @@ IMPLEMENT_ASN1_FUNCTIONS(ASIdOrRange)
5656 IMPLEMENT_ASN1_FUNCTIONS(ASIdentifierChoice)
5757 IMPLEMENT_ASN1_FUNCTIONS(ASIdentifiers)
5858
59-DEFINE_STACK_OF(ASIdOrRange)
6059 DEFINE_STACK_OF(CONF_VALUE)
6160
6261 /*
--- a/crypto/x509/v3_cpols.c
+++ b/crypto/x509/v3_cpols.c
@@ -19,8 +19,6 @@
1919 #include "ext_dat.h"
2020
2121 DEFINE_STACK_OF(CONF_VALUE)
22-DEFINE_STACK_OF(POLICYINFO)
23-DEFINE_STACK_OF(POLICYQUALINFO)
2422 DEFINE_STACK_OF(ASN1_INTEGER)
2523
2624 /* Certificate policies extension support: this one is a bit complex... */
--- a/crypto/x509/v3_crld.c
+++ b/crypto/x509/v3_crld.c
@@ -19,8 +19,6 @@
1919 #include "x509_local.h"
2020
2121 DEFINE_STACK_OF(CONF_VALUE)
22-DEFINE_STACK_OF(GENERAL_NAME)
23-DEFINE_STACK_OF(DIST_POINT)
2422
2523 static void *v2i_crld(const X509V3_EXT_METHOD *method,
2624 X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval);
--- a/crypto/x509/v3_info.c
+++ b/crypto/x509/v3_info.c
@@ -15,7 +15,6 @@
1515 #include <openssl/x509v3.h>
1616 #include "ext_dat.h"
1717
18-DEFINE_STACK_OF(ACCESS_DESCRIPTION)
1918 DEFINE_STACK_OF(CONF_VALUE)
2019
2120 static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD
--- a/crypto/x509/v3_lib.c
+++ b/crypto/x509/v3_lib.c
@@ -16,8 +16,6 @@
1616
1717 #include "ext_dat.h"
1818
19-DEFINE_STACK_OF(X509V3_EXT_METHOD)
20-
2119 static STACK_OF(X509V3_EXT_METHOD) *ext_list = NULL;
2220
2321 static int ext_cmp(const X509V3_EXT_METHOD *const *a,
--- a/crypto/x509/v3_ncons.c
+++ b/crypto/x509/v3_ncons.c
@@ -21,8 +21,6 @@
2121 #include "ext_dat.h"
2222
2323 DEFINE_STACK_OF(CONF_VALUE)
24-DEFINE_STACK_OF(GENERAL_NAME)
25-DEFINE_STACK_OF(GENERAL_SUBTREE)
2624
2725 static void *v2i_NAME_CONSTRAINTS(const X509V3_EXT_METHOD *method,
2826 X509V3_CTX *ctx,
--- a/crypto/x509/v3_pmaps.c
+++ b/crypto/x509/v3_pmaps.c
@@ -14,7 +14,6 @@
1414 #include <openssl/x509v3.h>
1515 #include "ext_dat.h"
1616
17-DEFINE_STACK_OF(POLICY_MAPPING)
1817 DEFINE_STACK_OF(CONF_VALUE)
1918
2019 static void *v2i_POLICY_MAPPINGS(const X509V3_EXT_METHOD *method,
--- a/crypto/x509/v3_purp.c
+++ b/crypto/x509/v3_purp.c
@@ -16,9 +16,6 @@
1616 #include "internal/tsan_assist.h"
1717 #include "x509_local.h"
1818
19-DEFINE_STACK_OF(GENERAL_NAME)
20-DEFINE_STACK_OF(DIST_POINT)
21-DEFINE_STACK_OF(X509_PURPOSE)
2219 DEFINE_STACK_OF(ASN1_OBJECT)
2320
2421 static int check_ssl_ca(const X509 *x);
--- a/crypto/x509/v3_sxnet.c
+++ b/crypto/x509/v3_sxnet.c
@@ -15,7 +15,6 @@
1515 #include <openssl/x509v3.h>
1616 #include "ext_dat.h"
1717
18-DEFINE_STACK_OF(SXNETID)
1918 DEFINE_STACK_OF(CONF_VALUE)
2019
2120 /* Support for Thawte strong extranet extension */
--- a/crypto/x509/v3_utl.c
+++ b/crypto/x509/v3_utl.c
@@ -22,8 +22,6 @@
2222 #include "x509_local.h"
2323
2424 DEFINE_STACK_OF(CONF_VALUE)
25-DEFINE_STACK_OF(GENERAL_NAME)
26-DEFINE_STACK_OF(ACCESS_DESCRIPTION)
2725 DEFINE_STACK_OF_STRING()
2826
2927 static char *strip_spaces(char *name);
--- a/crypto/x509/x509_vfy.c
+++ b/crypto/x509/x509_vfy.c
@@ -25,8 +25,6 @@
2525 #include "crypto/x509.h"
2626 #include "x509_local.h"
2727
28-DEFINE_STACK_OF(GENERAL_NAME)
29-DEFINE_STACK_OF(DIST_POINT)
3028 DEFINE_STACK_OF_STRING()
3129
3230 /* CRL score values */
--- a/crypto/x509/x_crl.c
+++ b/crypto/x509/x_crl.c
@@ -15,9 +15,6 @@
1515 #include <openssl/x509v3.h>
1616 #include "x509_local.h"
1717
18-DEFINE_STACK_OF(GENERAL_NAME)
19-DEFINE_STACK_OF(GENERAL_NAMES)
20-
2118 static int X509_REVOKED_cmp(const X509_REVOKED *const *a,
2219 const X509_REVOKED *const *b);
2320 static int setup_idp(X509_CRL *crl, ISSUING_DIST_POINT *idp);
--- a/crypto/x509/x_x509.c
+++ b/crypto/x509/x_x509.c
@@ -15,10 +15,6 @@
1515 #include <openssl/x509v3.h>
1616 #include "crypto/x509.h"
1717
18-#ifndef OPENSSL_NO_RFC3779
19-DEFINE_STACK_OF(IPAddressFamily)
20-#endif
21-
2218 ASN1_SEQUENCE_enc(X509_CINF, enc, 0) = {
2319 ASN1_EXP_OPT(X509_CINF, version, ASN1_INTEGER, 0),
2420 ASN1_EMBED(X509_CINF, serialNumber, ASN1_INTEGER),
--- a/include/openssl/x509.h.in
+++ b/include/openssl/x509.h.in
@@ -11,7 +11,7 @@
1111 */
1212
1313 {-
14-use OpenSSL::stackhash qw(generate_stack_macros generate_const_stack_macros);
14+use OpenSSL::stackhash qw(generate_stack_macros);
1515 -}
1616
1717 #ifndef OPENSSL_X509_H
--- a/include/openssl/x509v3.h
+++ b/include/openssl/x509v3.h.in
@@ -1,4 +1,6 @@
11 /*
2+ * {- join("\n * ", @autowarntext) -}
3+ *
24 * Copyright 1999-2020 The OpenSSL Project Authors. All Rights Reserved.
35 *
46 * Licensed under the Apache License 2.0 (the "License"). You may not use
@@ -7,6 +9,10 @@
79 * https://www.openssl.org/source/license.html
810 */
911
12+{-
13+use OpenSSL::stackhash qw(generate_stack_macros);
14+-}
15+
1016 #ifndef OPENSSL_X509V3_H
1117 # define OPENSSL_X509V3_H
1218 # pragma once
@@ -97,7 +103,9 @@ struct v3_ext_ctx {
97103
98104 typedef struct v3_ext_method X509V3_EXT_METHOD;
99105
100-DEFINE_OR_DECLARE_STACK_OF(X509V3_EXT_METHOD)
106+{-
107+ generate_stack_macros("X509V3_EXT_METHOD");
108+-}
101109
102110 /* ext_flags values */
103111 # define X509V3_EXT_DYNAMIC 0x1
@@ -163,15 +171,19 @@ typedef struct ACCESS_DESCRIPTION_st {
163171 GENERAL_NAME *location;
164172 } ACCESS_DESCRIPTION;
165173
166-DEFINE_OR_DECLARE_STACK_OF(ACCESS_DESCRIPTION)
167-DEFINE_OR_DECLARE_STACK_OF(GENERAL_NAME)
174+{-
175+ generate_stack_macros("ACCESS_DESCRIPTION")
176+ .generate_stack_macros("GENERAL_NAME");
177+-}
168178
169179 typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS;
170180 typedef STACK_OF(ASN1_OBJECT) EXTENDED_KEY_USAGE;
171181 typedef STACK_OF(ASN1_INTEGER) TLS_FEATURE;
172182 typedef STACK_OF(GENERAL_NAME) GENERAL_NAMES;
173183
174-DEFINE_OR_DECLARE_STACK_OF(GENERAL_NAMES)
184+{-
185+ generate_stack_macros("GENERAL_NAMES");
186+-}
175187
176188 typedef struct DIST_POINT_NAME_st {
177189 int type;
@@ -204,7 +216,9 @@ struct DIST_POINT_st {
204216 int dp_reasons;
205217 };
206218
207-DEFINE_OR_DECLARE_STACK_OF(DIST_POINT)
219+{-
220+ generate_stack_macros("DIST_POINT");
221+-}
208222
209223 typedef STACK_OF(DIST_POINT) CRL_DIST_POINTS;
210224
@@ -221,7 +235,10 @@ typedef struct SXNET_ID_st {
221235 ASN1_OCTET_STRING *user;
222236 } SXNETID;
223237
224-DEFINE_OR_DECLARE_STACK_OF(SXNETID)
238+{-
239+ generate_stack_macros("SXNETID");
240+-}
241+
225242
226243 typedef struct SXNET_st {
227244 ASN1_INTEGER *version;
@@ -254,14 +271,19 @@ typedef struct POLICYQUALINFO_st {
254271 } d;
255272 } POLICYQUALINFO;
256273
257-DEFINE_OR_DECLARE_STACK_OF(POLICYQUALINFO)
274+{-
275+ generate_stack_macros("POLICYQUALINFO");
276+-}
277+
258278
259279 typedef struct POLICYINFO_st {
260280 ASN1_OBJECT *policyid;
261281 STACK_OF(POLICYQUALINFO) *qualifiers;
262282 } POLICYINFO;
263283
264-DEFINE_OR_DECLARE_STACK_OF(POLICYINFO)
284+{-
285+ generate_stack_macros("POLICYINFO");
286+-}
265287
266288 typedef STACK_OF(POLICYINFO) CERTIFICATEPOLICIES;
267289
@@ -270,7 +292,9 @@ typedef struct POLICY_MAPPING_st {
270292 ASN1_OBJECT *subjectDomainPolicy;
271293 } POLICY_MAPPING;
272294
273-DEFINE_OR_DECLARE_STACK_OF(POLICY_MAPPING)
295+{-
296+ generate_stack_macros("POLICY_MAPPING");
297+-}
274298
275299 typedef STACK_OF(POLICY_MAPPING) POLICY_MAPPINGS;
276300
@@ -280,7 +304,9 @@ typedef struct GENERAL_SUBTREE_st {
280304 ASN1_INTEGER *maximum;
281305 } GENERAL_SUBTREE;
282306
283-DEFINE_OR_DECLARE_STACK_OF(GENERAL_SUBTREE)
307+{-
308+ generate_stack_macros("GENERAL_SUBTREE");
309+-}
284310
285311 struct NAME_CONSTRAINTS_st {
286312 STACK_OF(GENERAL_SUBTREE) *permittedSubtrees;
@@ -423,7 +449,10 @@ typedef struct x509_purpose_st {
423449 void *usr_data;
424450 } X509_PURPOSE;
425451
426-DEFINE_OR_DECLARE_STACK_OF(X509_PURPOSE)
452+{-
453+ generate_stack_macros("X509_PURPOSE");
454+-}
455+
427456
428457 # define X509_PURPOSE_SSL_CLIENT 1
429458 # define X509_PURPOSE_SSL_SERVER 2
@@ -735,7 +764,10 @@ int X509V3_NAME_from_section(X509_NAME *nm, STACK_OF(CONF_VALUE) *dn_sk,
735764 unsigned long chtype);
736765
737766 void X509_POLICY_NODE_print(BIO *out, X509_POLICY_NODE *node, int indent);
738-DEFINE_OR_DECLARE_STACK_OF(X509_POLICY_NODE)
767+{-
768+ generate_stack_macros("X509_POLICY_NODE");
769+-}
770+
739771
740772 #ifndef OPENSSL_NO_RFC3779
741773 typedef struct ASRange_st {
@@ -753,7 +785,9 @@ typedef struct ASIdOrRange_st {
753785 } u;
754786 } ASIdOrRange;
755787
756-DEFINE_OR_DECLARE_STACK_OF(ASIdOrRange)
788+{-
789+ generate_stack_macros("ASIdOrRange");
790+-}
757791
758792 typedef STACK_OF(ASIdOrRange) ASIdOrRanges;
759793
@@ -792,7 +826,9 @@ typedef struct IPAddressOrRange_st {
792826 } u;
793827 } IPAddressOrRange;
794828
795-DEFINE_OR_DECLARE_STACK_OF(IPAddressOrRange)
829+{-
830+ generate_stack_macros("IPAddressOrRange");
831+-}
796832
797833 typedef STACK_OF(IPAddressOrRange) IPAddressOrRanges;
798834
@@ -812,7 +848,10 @@ typedef struct IPAddressFamily_st {
812848 IPAddressChoice *ipAddressChoice;
813849 } IPAddressFamily;
814850
815-DEFINE_OR_DECLARE_STACK_OF(IPAddressFamily)
851+{-
852+ generate_stack_macros("IPAddressFamily");
853+-}
854+
816855
817856 typedef STACK_OF(IPAddressFamily) IPAddrBlocks;
818857
@@ -886,7 +925,9 @@ int X509v3_addr_validate_resource_set(STACK_OF(X509) *chain,
886925
887926 #endif /* OPENSSL_NO_RFC3779 */
888927
889-DEFINE_OR_DECLARE_STACK_OF(ASN1_STRING)
928+{-
929+ generate_stack_macros("ASN1_STRING");
930+-}
890931
891932 /*
892933 * Admission Syntax
@@ -899,8 +940,10 @@ DECLARE_ASN1_FUNCTIONS(NAMING_AUTHORITY)
899940 DECLARE_ASN1_FUNCTIONS(PROFESSION_INFO)
900941 DECLARE_ASN1_FUNCTIONS(ADMISSIONS)
901942 DECLARE_ASN1_FUNCTIONS(ADMISSION_SYNTAX)
902-DEFINE_OR_DECLARE_STACK_OF(PROFESSION_INFO)
903-DEFINE_OR_DECLARE_STACK_OF(ADMISSIONS)
943+{-
944+ generate_stack_macros("PROFESSION_INFO")
945+ .generate_stack_macros("ADMISSIONS");
946+-}
904947 typedef STACK_OF(PROFESSION_INFO) PROFESSION_INFOS;
905948
906949 const ASN1_OBJECT *NAMING_AUTHORITY_get0_authorityId(
--- a/test/cmp_ctx_test.c
+++ b/test/cmp_ctx_test.c
@@ -15,7 +15,6 @@
1515
1616 DEFINE_STACK_OF(ASN1_UTF8STRING)
1717 DEFINE_STACK_OF(OSSL_CMP_ITAV)
18-DEFINE_STACK_OF(POLICYINFO)
1918
2019 typedef struct test_fixture {
2120 const char *test_case_name;
--- a/test/v3nametest.c
+++ b/test/v3nametest.c
@@ -19,8 +19,6 @@
1919 # define strcasecmp _stricmp
2020 #endif
2121
22-DEFINE_STACK_OF(GENERAL_NAME)
23-
2422 static const char *const names[] = {
2523 "a", "b", ".", "*", "@",
2624 ".a", "a.", ".b", "b.", ".*", "*.", "*@", "@*", "a@", "@a", "b@", "..",