From 2fe83097804f9643e928f00b466d285e31f25fd9 Mon Sep 17 00:00:00 2001 From: Hakase Date: Sat, 25 Apr 2020 21:08:49 +0900 Subject: [PATCH] Latest update. --- CHANGES.md | 5 --- Configurations/00-base-templates.conf | 4 +-- apps/asn1pars.c | 3 -- apps/ca.c | 5 --- apps/ciphers.c | 2 -- apps/cmp_mock_srv.c | 4 --- apps/cms.c | 6 ---- apps/crl2p7.c | 5 --- apps/dgst.c | 2 -- apps/engine.c | 3 -- apps/fipsinstall.c | 2 -- apps/kdf.c | 2 -- apps/lib/apps.c | 11 ------- apps/lib/names.c | 2 -- apps/lib/s_cb.c | 5 --- apps/list.c | 2 -- apps/mac.c | 2 -- apps/nseq.c | 2 -- apps/ocsp.c | 5 --- apps/pkcs12.c | 6 ---- apps/pkcs7.c | 3 -- apps/pkeyutl.c | 2 -- apps/provider.c | 2 -- apps/rehash.c | 2 -- apps/req.c | 2 -- apps/s_client.c | 6 ---- apps/s_server.c | 6 ---- apps/smime.c | 3 -- apps/verify.c | 4 --- apps/x509.c | 4 --- crypto/asn1/a_strnid.c | 2 -- crypto/asn1/asn1_gen.c | 3 -- crypto/asn1/asn1_lib.c | 2 -- crypto/asn1/asn_mime.c | 3 -- crypto/asn1/asn_moid.c | 2 -- crypto/asn1/asn_mstbl.c | 1 - crypto/asn1/d2i_pr.c | 1 - crypto/asn1/tasn_dec.c | 1 - crypto/asn1/tasn_fre.c | 2 -- crypto/asn1/tasn_new.c | 2 -- crypto/cmp/cmp_asn.c | 2 -- crypto/cmp/cmp_client.c | 6 ---- crypto/cmp/cmp_ctx.c | 11 +------ crypto/cmp/cmp_hdr.c | 3 -- crypto/cmp/cmp_http.c | 2 -- crypto/cmp/cmp_msg.c | 10 ------ crypto/cmp/cmp_protect.c | 2 -- crypto/cmp/cmp_server.c | 5 --- crypto/cmp/cmp_status.c | 2 -- crypto/cmp/cmp_util.c | 4 --- crypto/cmp/cmp_vfy.c | 2 -- crypto/cms/cms_env.c | 4 --- crypto/cms/cms_ess.c | 3 -- crypto/cms/cms_kari.c | 2 -- crypto/cms/cms_lib.c | 4 --- crypto/cms/cms_pwri.c | 2 -- crypto/cms/cms_sd.c | 6 ---- crypto/cms/cms_smime.c | 6 ---- crypto/conf/conf_api.c | 2 -- crypto/conf/conf_def.c | 2 -- crypto/conf/conf_mod.c | 4 --- crypto/conf/conf_ssl.c | 2 -- crypto/crmf/crmf_lib.c | 3 -- crypto/ct/ct_log.c | 2 -- crypto/ct/ct_oct.c | 2 -- crypto/ct/ct_prn.c | 2 -- crypto/ct/ct_sct.c | 2 -- crypto/ct/ct_x509v3.c | 2 -- crypto/dso/dso_dlfcn.c | 2 -- crypto/dso/dso_lib.c | 2 -- crypto/dso/dso_win32.c | 2 -- crypto/engine/eng_cnf.c | 2 -- crypto/engine/eng_dyn.c | 2 -- crypto/ess/ess_lib.c | 5 --- crypto/evp/evp_cnf.c | 2 -- crypto/evp/p_lib.c | 1 - crypto/ex_data.c | 2 -- crypto/http/http_client.c | 2 -- crypto/ocsp/ocsp_cl.c | 4 --- crypto/ocsp/ocsp_ext.c | 3 -- crypto/ocsp/ocsp_prn.c | 4 --- crypto/ocsp/ocsp_srv.c | 4 --- crypto/ocsp/ocsp_vfy.c | 4 --- crypto/ocsp/v3_ocsp.c | 2 -- crypto/pem/pem_info.c | 2 -- crypto/pkcs12/p12_crt.c | 4 --- crypto/pkcs12/p12_kiss.c | 4 --- crypto/pkcs12/p12_npas.c | 3 -- crypto/pkcs7/pk7_attr.c | 2 -- crypto/pkcs7/pk7_doit.c | 5 --- crypto/pkcs7/pk7_lib.c | 6 ---- crypto/pkcs7/pk7_smime.c | 6 +--- crypto/provider_conf.c | 4 +-- crypto/srp/srp_vfy.c | 4 --- crypto/store/loader_file.c | 2 -- crypto/ts/ts_conf.c | 4 --- crypto/ts/ts_req_utils.c | 2 -- crypto/ts/ts_rsp_print.c | 3 -- crypto/ts/ts_rsp_sign.c | 6 ---- crypto/ts/ts_rsp_utils.c | 2 -- crypto/ts/ts_rsp_verify.c | 7 ---- crypto/ts/ts_verify_ctx.c | 2 -- crypto/ui/ui_lib.c | 2 -- crypto/x509/by_dir.c | 2 -- crypto/x509/by_file.c | 2 -- crypto/x509/by_store.c | 2 -- crypto/x509/pcy_cache.c | 2 -- crypto/x509/pcy_data.c | 3 -- crypto/x509/pcy_lib.c | 2 -- crypto/x509/pcy_map.c | 3 -- crypto/x509/pcy_node.c | 3 -- crypto/x509/pcy_tree.c | 4 --- crypto/x509/t_crl.c | 2 -- crypto/x509/t_req.c | 2 -- crypto/x509/t_x509.c | 3 -- crypto/x509/v3_addr.c | 5 --- crypto/x509/v3_admis.c | 4 --- crypto/x509/v3_akey.c | 3 -- crypto/x509/v3_alt.c | 3 -- crypto/x509/v3_asid.c | 4 --- crypto/x509/v3_bcons.c | 2 -- crypto/x509/v3_bitst.c | 2 -- crypto/x509/v3_conf.c | 3 -- crypto/x509/v3_cpols.c | 5 --- crypto/x509/v3_crld.c | 5 --- crypto/x509/v3_extku.c | 3 -- crypto/x509/v3_info.c | 3 -- crypto/x509/v3_ist.c | 2 -- crypto/x509/v3_lib.c | 3 -- crypto/x509/v3_ncons.c | 4 --- crypto/x509/v3_pci.c | 2 -- crypto/x509/v3_pcons.c | 2 -- crypto/x509/v3_pmaps.c | 3 -- crypto/x509/v3_prn.c | 3 -- crypto/x509/v3_purp.c | 5 --- crypto/x509/v3_sxnet.c | 3 -- crypto/x509/v3_tlsf.c | 3 -- crypto/x509/v3_utl.c | 6 ---- crypto/x509/x509_att.c | 3 -- crypto/x509/x509_cmp.c | 2 -- crypto/x509/x509_lu.c | 5 --- crypto/x509/x509_obj.c | 2 -- crypto/x509/x509_r2x.c | 2 -- crypto/x509/x509_trs.c | 3 -- crypto/x509/x509_v3.c | 2 -- crypto/x509/x509_vfy.c | 7 ---- crypto/x509/x509_vpm.c | 4 --- crypto/x509/x509cset.c | 2 -- crypto/x509/x509name.c | 2 -- crypto/x509/x_attrib.c | 2 -- crypto/x509/x_crl.c | 5 --- crypto/x509/x_name.c | 3 -- crypto/x509/x_req.c | 2 -- crypto/x509/x_x509.c | 2 -- crypto/x509/x_x509a.c | 2 -- doc/man3/DEFINE_STACK_OF.pod | 32 ++++++++----------- engines/e_capi.c | 3 -- fuzz/client.c | 2 -- fuzz/cmp.c | 2 -- fuzz/server.c | 2 -- include/openssl/asn1.h | 26 ++++++++------- include/openssl/asn1t.h | 2 +- include/openssl/bio.h | 2 +- include/openssl/cmp.h | 11 +++---- include/openssl/cms.h | 9 +++--- include/openssl/conf.h | 7 ++-- include/openssl/crmf.h | 5 ++- include/openssl/crypto.h | 3 +- include/openssl/ct.h | 6 ++-- include/openssl/ess.h | 6 ++-- include/openssl/ocsp.h | 13 +++++--- include/openssl/pkcs12.h | 4 +-- include/openssl/pkcs7.h | 8 ++--- include/openssl/safestack.h | 34 +++----------------- include/openssl/srp.h | 9 +++--- include/openssl/ssl.h | 9 +++--- include/openssl/ts.h | 4 +-- include/openssl/types.h | 2 -- include/openssl/ui.h | 3 +- include/openssl/x509.h | 31 ++++++++++++------ include/openssl/x509_vfy.h | 6 ++-- include/openssl/x509v3.h | 46 ++++++++++++++++----------- ssl/d1_srtp.c | 2 -- ssl/s3_lib.c | 4 --- ssl/ssl_cert.c | 3 -- ssl/ssl_ciph.c | 3 -- ssl/ssl_conf.c | 2 -- ssl/ssl_lib.c | 8 ----- ssl/ssl_rsa.c | 2 -- ssl/ssl_sess.c | 2 -- ssl/statem/extensions.c | 2 -- ssl/statem/extensions_clnt.c | 4 --- ssl/statem/extensions_srvr.c | 4 --- ssl/statem/statem_clnt.c | 4 --- ssl/statem/statem_lib.c | 4 --- ssl/statem/statem_srvr.c | 4 --- ssl/t1_lib.c | 4 --- test/cipherbytes_test.c | 2 -- test/cipherlist_test.c | 2 -- test/ciphername_test.c | 2 -- test/cmp_client_test.c | 3 -- test/cmp_ctx_test.c | 6 ---- test/cmp_hdr_test.c | 3 -- test/cmp_msg_test.c | 2 -- test/cmp_protect_test.c | 2 -- test/cmp_status_test.c | 2 -- test/cmp_testlib.c | 2 -- test/cmp_vfy_test.c | 1 - test/cmsapitest.c | 2 -- test/confdump.c | 3 -- test/crltest.c | 3 -- test/ct_test.c | 3 -- test/danetest.c | 2 -- test/dtls_mtu_test.c | 2 -- test/evp_test.c | 2 -- test/handshake_helper.c | 2 -- test/http_test.c | 2 -- test/ocspapitest.c | 2 -- test/ssl_test.c | 2 -- test/ssl_test_ctx.c | 3 -- test/sslapitest.c | 6 ---- test/sslcorrupttest.c | 2 -- test/ssltest_old.c | 3 -- test/v3nametest.c | 2 -- test/verify_extra_test.c | 2 -- util/missingmacro.txt | 5 --- util/perl/OpenSSL/ParseC.pm | 22 ------------- 227 files changed, 140 insertions(+), 797 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 45789ed6..78e8f88c 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -417,11 +417,6 @@ OpenSSL 3.0 replaced with no-ops. *Rich Salz* - - * Added documentation for the STACK API. OpenSSL only defines the STACK - functions where they are used. - - *Rich Salz* * Introduced a new method type and API, OSSL_SERIALIZER, to represent generic serializers. An implementation is expected to diff --git a/Configurations/00-base-templates.conf b/Configurations/00-base-templates.conf index 821a211c..451a808f 100644 --- a/Configurations/00-base-templates.conf +++ b/Configurations/00-base-templates.conf @@ -10,7 +10,7 @@ my %targets=( includes => [], lib_cflags => "", lib_cppflags => "", - lib_defines => [], + lib_defines => [ 'OPENSSL_BUILDING_OPENSSL' ], thread_scheme => "(unknown)", # Assume we don't know thread_defines => [], @@ -47,7 +47,7 @@ my %targets=( defines => sub { - my @defs = ( 'OPENSSL_BUILDING_OPENSSL' ); + my @defs = (); push @defs, "ZLIB" unless $disabled{zlib}; push @defs, "ZLIB_SHARED" unless $disabled{"zlib-dynamic"}; return [ @defs ]; diff --git a/apps/asn1pars.c b/apps/asn1pars.c index 4b34e7e6..342e12d9 100644 --- a/apps/asn1pars.c +++ b/apps/asn1pars.c @@ -18,9 +18,6 @@ #include #include -DEFINE_STACK_OF(ASN1_OBJECT) -DEFINE_STACK_OF_STRING() - typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_INFORM, OPT_IN, OPT_OUT, OPT_INDENT, OPT_NOOUT, diff --git a/apps/ca.c b/apps/ca.c index a18ff099..2481ddc2 100644 --- a/apps/ca.c +++ b/apps/ca.c @@ -34,11 +34,6 @@ #include "apps.h" #include "progs.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF_STRING() - #ifndef W_OK # define F_OK 0 # define W_OK 2 diff --git a/apps/ciphers.c b/apps/ciphers.c index 380091f1..500b4160 100644 --- a/apps/ciphers.c +++ b/apps/ciphers.c @@ -15,8 +15,6 @@ #include #include -DEFINE_STACK_OF_CONST(SSL_CIPHER) - typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_STDNAME, diff --git a/apps/cmp_mock_srv.c b/apps/cmp_mock_srv.c index b45f9855..8ffe4ca5 100644 --- a/apps/cmp_mock_srv.c +++ b/apps/cmp_mock_srv.c @@ -15,10 +15,6 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(OSSL_CMP_ITAV) -DEFINE_STACK_OF(ASN1_UTF8STRING) - /* the context for the CMP mock server */ typedef struct { diff --git a/apps/cms.c b/apps/cms.c index 0c8af3da..0d89085c 100644 --- a/apps/cms.c +++ b/apps/cms.c @@ -23,12 +23,6 @@ # include # include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(CMS_SignerInfo) -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(GENERAL_NAMES) -DEFINE_STACK_OF_STRING() - static int save_certs(char *signerfile, STACK_OF(X509) *signers); static int cms_cb(int ok, X509_STORE_CTX *ctx); static void receipt_request_print(CMS_ContentInfo *cms); diff --git a/apps/crl2p7.c b/apps/crl2p7.c index e0de95a1..9137f872 100644 --- a/apps/crl2p7.c +++ b/apps/crl2p7.c @@ -19,11 +19,6 @@ #include #include -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_INFO) -DEFINE_STACK_OF_STRING() - static int add_certs_from_file(STACK_OF(X509) *stack, char *certfile); typedef enum OPTION_choice { diff --git a/apps/dgst.c b/apps/dgst.c index 90aaf982..23faa340 100644 --- a/apps/dgst.c +++ b/apps/dgst.c @@ -21,8 +21,6 @@ #include #include -DEFINE_STACK_OF_STRING() - #undef BUFSIZE #define BUFSIZE 1024*8 diff --git a/apps/engine.c b/apps/engine.c index 6d788ac8..2b295fde 100644 --- a/apps/engine.c +++ b/apps/engine.c @@ -19,9 +19,6 @@ #include #include -DEFINE_STACK_OF_STRING() -DEFINE_STACK_OF_CSTRING() - typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_C, OPT_T, OPT_TT, OPT_PRE, OPT_POST, diff --git a/apps/fipsinstall.c b/apps/fipsinstall.c index 1eb183f3..157f08b1 100644 --- a/apps/fipsinstall.c +++ b/apps/fipsinstall.c @@ -18,8 +18,6 @@ #include "apps.h" #include "progs.h" -DEFINE_STACK_OF_STRING() - #define BUFSIZE 4096 #define DEFAULT_MAC_NAME "HMAC" #define DEFAULT_FIPS_SECTION "fips_check_section" diff --git a/apps/kdf.c b/apps/kdf.c index 9a69682b..0b577b2b 100644 --- a/apps/kdf.c +++ b/apps/kdf.c @@ -17,8 +17,6 @@ #include #include -DEFINE_STACK_OF_STRING() - typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_KDFOPT, OPT_BIN, OPT_KEYLEN, OPT_OUT, diff --git a/apps/lib/apps.c b/apps/lib/apps.c index 1a23ae08..61e3ab19 100644 --- a/apps/lib/apps.c +++ b/apps/lib/apps.c @@ -57,17 +57,6 @@ static int WIN32_rename(const char *from, const char *to); #define PASS_SOURCE_SIZE_MAX 4 -DEFINE_STACK_OF(CONF) -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(X509_INFO) -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF(X509_POLICY_NODE) -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(DIST_POINT) -DEFINE_STACK_OF_STRING() - typedef struct { const char *name; unsigned long flag; diff --git a/apps/lib/names.c b/apps/lib/names.c index a1116d68..09ee16fd 100644 --- a/apps/lib/names.c +++ b/apps/lib/names.c @@ -12,8 +12,6 @@ #include #include "names.h" -DEFINE_STACK_OF_CSTRING() - #ifdef _WIN32 # define strcasecmp _stricmp #endif diff --git a/apps/lib/s_cb.c b/apps/lib/s_cb.c index 5f2f2792..16ce65d4 100644 --- a/apps/lib/s_cb.c +++ b/apps/lib/s_cb.c @@ -26,11 +26,6 @@ #define COOKIE_SECRET_LENGTH 16 -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(X509_NAME) -DEFINE_STACK_OF_STRING() - VERIFY_CB_ARGS verify_args = { -1, 0, X509_V_OK, 0 }; #ifndef OPENSSL_NO_SOCK diff --git a/apps/list.c b/apps/list.c index a28f6b67..b30632a6 100644 --- a/apps/list.c +++ b/apps/list.c @@ -19,8 +19,6 @@ #include "opt.h" #include "names.h" -DEFINE_STACK_OF_CSTRING() - static int verbose = 0; static void legacy_cipher_fn(const EVP_CIPHER *c, diff --git a/apps/mac.c b/apps/mac.c index 07a6e915..6e322fd2 100644 --- a/apps/mac.c +++ b/apps/mac.c @@ -16,8 +16,6 @@ #include #include -DEFINE_STACK_OF_STRING() - #undef BUFSIZE #define BUFSIZE 1024*8 diff --git a/apps/nseq.c b/apps/nseq.c index de189632..92ae7bd3 100644 --- a/apps/nseq.c +++ b/apps/nseq.c @@ -14,8 +14,6 @@ #include #include -DEFINE_STACK_OF(X509) - typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_TOSEQ, OPT_IN, OPT_OUT, diff --git a/apps/ocsp.c b/apps/ocsp.c index d8589220..7bd1765b 100644 --- a/apps/ocsp.c +++ b/apps/ocsp.c @@ -33,11 +33,6 @@ #include #include -DEFINE_STACK_OF(OCSP_CERTID) -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF_STRING() - #ifndef HAVE_FORK # if defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_WINDOWS) # define HAVE_FORK 0 diff --git a/apps/pkcs12.c b/apps/pkcs12.c index 18f9550d..69bbe94c 100644 --- a/apps/pkcs12.c +++ b/apps/pkcs12.c @@ -19,12 +19,6 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(PKCS7) -DEFINE_STACK_OF(PKCS12_SAFEBAG) -DEFINE_STACK_OF(X509_ATTRIBUTE) -DEFINE_STACK_OF_STRING() - #define NOKEYS 0x1 #define NOCERTS 0x2 #define INFO 0x4 diff --git a/apps/pkcs7.c b/apps/pkcs7.c index 2416584d..dba9751e 100644 --- a/apps/pkcs7.c +++ b/apps/pkcs7.c @@ -20,9 +20,6 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_CRL) - typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_INFORM, OPT_OUTFORM, OPT_IN, OPT_OUT, OPT_NOOUT, diff --git a/apps/pkeyutl.c b/apps/pkeyutl.c index 1e380204..34251d5a 100644 --- a/apps/pkeyutl.c +++ b/apps/pkeyutl.c @@ -15,8 +15,6 @@ #include #include -DEFINE_STACK_OF_STRING() - #define KEY_NONE 0 #define KEY_PRIVKEY 1 #define KEY_PUBKEY 2 diff --git a/apps/provider.c b/apps/provider.c index de8fd34c..87231cd2 100644 --- a/apps/provider.c +++ b/apps/provider.c @@ -20,8 +20,6 @@ #include #include -DEFINE_STACK_OF_CSTRING() - typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_V = 100, OPT_VV, OPT_VVV diff --git a/apps/rehash.c b/apps/rehash.c index 866b8cfe..e21b1b84 100644 --- a/apps/rehash.c +++ b/apps/rehash.c @@ -42,8 +42,6 @@ # include # include -DEFINE_STACK_OF(X509_INFO) -DEFINE_STACK_OF_STRING() # ifndef PATH_MAX # define PATH_MAX 4096 diff --git a/apps/req.c b/apps/req.c index cba6952c..848c8d4f 100644 --- a/apps/req.c +++ b/apps/req.c @@ -32,8 +32,6 @@ # include #endif -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF_STRING() #define BITS "default_bits" #define KEYFILE "default_keyfile" diff --git a/apps/s_client.c b/apps/s_client.c index eb4dbdca..0fdd85ce 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -56,12 +56,6 @@ typedef unsigned int u_int; # endif #endif -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(X509_NAME) -DEFINE_STACK_OF(SCT) -DEFINE_STACK_OF_STRING() - #undef BUFSIZZ #define BUFSIZZ 1024*8 #define S_CLIENT_IRC_READ_TIMEOUT 8 diff --git a/apps/s_server.c b/apps/s_server.c index 23c762ba..a5e15920 100644 --- a/apps/s_server.c +++ b/apps/s_server.c @@ -60,12 +60,6 @@ typedef unsigned int u_int; #endif #include "internal/sockets.h" -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(SSL_CIPHER) -DEFINE_STACK_OF_STRING() - static int not_resumable_sess_cb(SSL *s, int is_forward_secure); static int sv_body(int s, int stype, int prot, unsigned char *context); static int www_body(int s, int stype, int prot, unsigned char *context); diff --git a/apps/smime.c b/apps/smime.c index 50f03fdc..27fc7905 100644 --- a/apps/smime.c +++ b/apps/smime.c @@ -19,9 +19,6 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF_STRING() - static int save_certs(char *signerfile, STACK_OF(X509) *signers); static int smime_cb(int ok, X509_STORE_CTX *ctx); diff --git a/apps/verify.c b/apps/verify.c index 55886680..0e423ca8 100644 --- a/apps/verify.c +++ b/apps/verify.c @@ -18,10 +18,6 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF_STRING() - static int cb(int ok, X509_STORE_CTX *ctx); static int check(X509_STORE *ctx, const char *file, STACK_OF(X509) *uchain, STACK_OF(X509) *tchain, diff --git a/apps/x509.c b/apps/x509.c index a2a52e41..24e813cb 100644 --- a/apps/x509.c +++ b/apps/x509.c @@ -28,10 +28,6 @@ # include #endif -DEFINE_STACK_OF(ASN1_OBJECT) -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF_STRING() - #undef POSTFIX #define POSTFIX ".srl" #define DEF_DAYS 30 diff --git a/crypto/asn1/a_strnid.c b/crypto/asn1/a_strnid.c index 518d4089..ab547397 100644 --- a/crypto/asn1/a_strnid.c +++ b/crypto/asn1/a_strnid.c @@ -12,8 +12,6 @@ #include #include -DEFINE_STACK_OF(ASN1_STRING_TABLE) - static STACK_OF(ASN1_STRING_TABLE) *stable = NULL; static void st_free(ASN1_STRING_TABLE *tbl); static int sk_table_cmp(const ASN1_STRING_TABLE *const *a, diff --git a/crypto/asn1/asn1_gen.c b/crypto/asn1/asn1_gen.c index c5fb8f91..7b50a0ce 100644 --- a/crypto/asn1/asn1_gen.c +++ b/crypto/asn1/asn1_gen.c @@ -23,9 +23,6 @@ #define ASN1_GEN_STR(str,val) {str, sizeof(str) - 1, val} -DEFINE_STACK_OF(ASN1_TYPE) -DEFINE_STACK_OF(CONF_VALUE) - #define ASN1_FLAG_EXP_MAX 20 /* Maximum number of nested sequences */ #define ASN1_GEN_SEQ_MAX_DEPTH 50 diff --git a/crypto/asn1/asn1_lib.c b/crypto/asn1/asn1_lib.c index 47ae801b..1331f608 100644 --- a/crypto/asn1/asn1_lib.c +++ b/crypto/asn1/asn1_lib.c @@ -13,8 +13,6 @@ #include #include "asn1_local.h" -DEFINE_STACK_OF(ASN1_UTF8STRING) - static int asn1_get_length(const unsigned char **pp, int *inf, long *rl, long max); static void asn1_put_length(unsigned char **pp, int length); diff --git a/crypto/asn1/asn_mime.c b/crypto/asn1/asn_mime.c index 4eb92d68..30da0298 100644 --- a/crypto/asn1/asn_mime.c +++ b/crypto/asn1/asn_mime.c @@ -18,9 +18,6 @@ #include "internal/bio.h" #include "asn1_local.h" -DEFINE_STACK_OF(BIO) -DEFINE_STACK_OF(X509_ALGOR) - /* * Generalised MIME like utilities for streaming ASN1. Although many have a * PKCS7/CMS like flavour others are more general purpose. diff --git a/crypto/asn1/asn_moid.c b/crypto/asn1/asn_moid.c index 02ca99db..90f80760 100644 --- a/crypto/asn1/asn_moid.c +++ b/crypto/asn1/asn_moid.c @@ -16,8 +16,6 @@ #include "crypto/asn1.h" #include "crypto/objects.h" -DEFINE_STACK_OF(CONF_VALUE) - /* Simple ASN1 OID module: add all objects in a given section */ static int do_create(const char *value, const char *name); diff --git a/crypto/asn1/asn_mstbl.c b/crypto/asn1/asn_mstbl.c index dedf1c32..3139ab07 100644 --- a/crypto/asn1/asn_mstbl.c +++ b/crypto/asn1/asn_mstbl.c @@ -13,7 +13,6 @@ #include #include -DEFINE_STACK_OF(CONF_VALUE) /* Multi string module: add table entries from a given section */ static int do_tcreate(const char *value, const char *name); diff --git a/crypto/asn1/d2i_pr.c b/crypto/asn1/d2i_pr.c index c7346f54..a4f3dd53 100644 --- a/crypto/asn1/d2i_pr.c +++ b/crypto/asn1/d2i_pr.c @@ -18,7 +18,6 @@ #include "crypto/asn1.h" #include "crypto/evp.h" -DEFINE_STACK_OF(ASN1_TYPE) EVP_PKEY *d2i_PrivateKey_ex(int type, EVP_PKEY **a, const unsigned char **pp, long length, OPENSSL_CTX *libctx, const char *propq) { diff --git a/crypto/asn1/tasn_dec.c b/crypto/asn1/tasn_dec.c index 42199114..f720c602 100644 --- a/crypto/asn1/tasn_dec.c +++ b/crypto/asn1/tasn_dec.c @@ -17,7 +17,6 @@ #include "internal/numbers.h" #include "asn1_local.h" -DEFINE_STACK_OF(ASN1_VALUE) /* * Constructed types with a recursive definition (such as can be found in PKCS7) diff --git a/crypto/asn1/tasn_fre.c b/crypto/asn1/tasn_fre.c index a8cd914f..e8d57bda 100644 --- a/crypto/asn1/tasn_fre.c +++ b/crypto/asn1/tasn_fre.c @@ -13,8 +13,6 @@ #include #include "asn1_local.h" -DEFINE_STACK_OF(ASN1_VALUE) - /* Free up an ASN1 structure */ void ASN1_item_free(ASN1_VALUE *val, const ASN1_ITEM *it) diff --git a/crypto/asn1/tasn_new.c b/crypto/asn1/tasn_new.c index a6335691..155080dd 100644 --- a/crypto/asn1/tasn_new.c +++ b/crypto/asn1/tasn_new.c @@ -15,8 +15,6 @@ #include #include "asn1_local.h" -DEFINE_STACK_OF(ASN1_VALUE) - static int asn1_item_embed_new(ASN1_VALUE **pval, const ASN1_ITEM *it, int embed); static int asn1_primitive_new(ASN1_VALUE **pval, const ASN1_ITEM *it, diff --git a/crypto/cmp/cmp_asn.c b/crypto/cmp/cmp_asn.c index 703bd8cd..ae318db6 100644 --- a/crypto/cmp/cmp_asn.c +++ b/crypto/cmp/cmp_asn.c @@ -17,8 +17,6 @@ #include #include -DEFINE_STACK_OF(OSSL_CMP_ITAV) - /* ASN.1 declarations from RFC4210 */ ASN1_SEQUENCE(OSSL_CMP_REVANNCONTENT) = { /* OSSL_CMP_PKISTATUS is effectively ASN1_INTEGER so it is used directly */ diff --git a/crypto/cmp/cmp_client.c b/crypto/cmp/cmp_client.c index f561f72e..6e992902 100644 --- a/crypto/cmp/cmp_client.c +++ b/crypto/cmp/cmp_client.c @@ -21,12 +21,6 @@ #include "openssl/cmp_util.h" -DEFINE_STACK_OF(ASN1_UTF8STRING) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(OSSL_CMP_CERTRESPONSE) -DEFINE_STACK_OF(OSSL_CMP_PKISI) -DEFINE_STACK_OF(OSSL_CRMF_CERTID) - #define IS_CREP(t) ((t) == OSSL_CMP_PKIBODY_IP || (t) == OSSL_CMP_PKIBODY_CP \ || (t) == OSSL_CMP_PKIBODY_KUP) diff --git a/crypto/cmp/cmp_ctx.c b/crypto/cmp/cmp_ctx.c index aa18338d..e34ad847 100644 --- a/crypto/cmp/cmp_ctx.c +++ b/crypto/cmp/cmp_ctx.c @@ -20,16 +20,7 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF(POLICYINFO) -DEFINE_STACK_OF(ASN1_UTF8STRING) -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(OSSL_CMP_ITAV) - -/* - * Get current certificate store containing trusted root CA certs - */ +/* Get current certificate store containing trusted root CA certs */ X509_STORE *OSSL_CMP_CTX_get0_trustedStore(const OSSL_CMP_CTX *ctx) { if (ctx == NULL) { diff --git a/crypto/cmp/cmp_hdr.c b/crypto/cmp/cmp_hdr.c index c2493420..99953d9c 100644 --- a/crypto/cmp/cmp_hdr.c +++ b/crypto/cmp/cmp_hdr.c @@ -20,9 +20,6 @@ #include #include -DEFINE_STACK_OF(ASN1_UTF8STRING) -DEFINE_STACK_OF(OSSL_CMP_ITAV) - int ossl_cmp_hdr_set_pvno(OSSL_CMP_PKIHEADER *hdr, int pvno) { if (!ossl_assert(hdr != NULL)) diff --git a/crypto/cmp/cmp_http.c b/crypto/cmp/cmp_http.c index 4c9f542b..6b3849fc 100644 --- a/crypto/cmp/cmp_http.c +++ b/crypto/cmp/cmp_http.c @@ -28,8 +28,6 @@ #include #include -DEFINE_STACK_OF(CONF_VALUE) - /* * Send the PKIMessage req and on success return the response, else NULL. * Any previous error queue entries will likely be removed by ERR_clear_error(). diff --git a/crypto/cmp/cmp_msg.c b/crypto/cmp/cmp_msg.c index dc11b54d..d98cefe7 100644 --- a/crypto/cmp/cmp_msg.c +++ b/crypto/cmp/cmp_msg.c @@ -20,16 +20,6 @@ #include #include -DEFINE_STACK_OF(OSSL_CMP_CERTSTATUS) -DEFINE_STACK_OF(OSSL_CMP_ITAV) -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF(OSSL_CMP_PKISI) -DEFINE_STACK_OF(OSSL_CRMF_MSG) -DEFINE_STACK_OF(OSSL_CMP_CERTRESPONSE) -DEFINE_STACK_OF(OSSL_CRMF_CERTID) -DEFINE_STACK_OF(ASN1_UTF8STRING) - OSSL_CMP_PKIHEADER *OSSL_CMP_MSG_get0_header(const OSSL_CMP_MSG *msg) { if (msg == NULL) { diff --git a/crypto/cmp/cmp_protect.c b/crypto/cmp/cmp_protect.c index 3e0c22bb..e1dc8e5f 100644 --- a/crypto/cmp/cmp_protect.c +++ b/crypto/cmp/cmp_protect.c @@ -18,8 +18,6 @@ #include #include -DEFINE_STACK_OF(X509) - /* * This function is also used for verification from cmp_vfy. * diff --git a/crypto/cmp/cmp_server.c b/crypto/cmp/cmp_server.c index 4da9a443..2cb264a0 100644 --- a/crypto/cmp/cmp_server.c +++ b/crypto/cmp/cmp_server.c @@ -19,11 +19,6 @@ #include #include -DEFINE_STACK_OF(OSSL_CRMF_MSG) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(OSSL_CMP_ITAV) -DEFINE_STACK_OF(OSSL_CMP_CERTSTATUS) - /* the context for the generic CMP server */ struct ossl_cmp_srv_ctx_st { diff --git a/crypto/cmp/cmp_status.c b/crypto/cmp/cmp_status.c index 8f10a42f..c9809c5a 100644 --- a/crypto/cmp/cmp_status.c +++ b/crypto/cmp/cmp_status.c @@ -26,8 +26,6 @@ #include #include /* for ASN1_R_TOO_SMALL and ASN1_R_TOO_LARGE */ -DEFINE_STACK_OF(ASN1_UTF8STRING) - /* CMP functions related to PKIStatus */ int ossl_cmp_pkisi_get_status(const OSSL_CMP_PKISI *si) diff --git a/crypto/cmp/cmp_util.c b/crypto/cmp/cmp_util.c index 570e14cd..785a1bea 100644 --- a/crypto/cmp/cmp_util.c +++ b/crypto/cmp/cmp_util.c @@ -16,10 +16,6 @@ #include /* should be implied by cmperr.h */ #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_OBJECT) -DEFINE_STACK_OF(ASN1_UTF8STRING) - /* * use trace API for CMP-specific logging, prefixed by "CMP " and severity */ diff --git a/crypto/cmp/cmp_vfy.c b/crypto/cmp/cmp_vfy.c index c124b063..137b65b0 100644 --- a/crypto/cmp/cmp_vfy.c +++ b/crypto/cmp/cmp_vfy.c @@ -22,8 +22,6 @@ #include #include "crypto/x509.h" -DEFINE_STACK_OF(X509) - /* * Verify a message protected by signature according to section 5.1.3.3 * (sha1+RSA/DSA or any other algorithm supported by OpenSSL). diff --git a/crypto/cms/cms_env.c b/crypto/cms/cms_env.c index a5ef2dde..af53fc82 100644 --- a/crypto/cms/cms_env.c +++ b/crypto/cms/cms_env.c @@ -18,10 +18,6 @@ #include "crypto/asn1.h" #include "crypto/evp.h" -DEFINE_STACK_OF(CMS_RecipientInfo) -DEFINE_STACK_OF(CMS_RevocationInfoChoice) -DEFINE_STACK_OF(X509_ATTRIBUTE) - /* CMS EnvelopedData Utilities */ static void cms_env_set_version(CMS_EnvelopedData *env); diff --git a/crypto/cms/cms_ess.c b/crypto/cms/cms_ess.c index 12243dd8..00a08aaf 100644 --- a/crypto/cms/cms_ess.c +++ b/crypto/cms/cms_ess.c @@ -19,9 +19,6 @@ #include "crypto/ess.h" #include "crypto/cms.h" -DEFINE_STACK_OF(GENERAL_NAMES) -DEFINE_STACK_OF(CMS_SignerInfo) - IMPLEMENT_ASN1_FUNCTIONS(CMS_ReceiptRequest) /* ESS services */ diff --git a/crypto/cms/cms_kari.c b/crypto/cms/cms_kari.c index 4e837718..14a884ca 100644 --- a/crypto/cms/cms_kari.c +++ b/crypto/cms/cms_kari.c @@ -17,8 +17,6 @@ #include "cms_local.h" #include "crypto/asn1.h" -DEFINE_STACK_OF(CMS_RecipientEncryptedKey) - /* Key Agreement Recipient Info (KARI) routines */ int CMS_RecipientInfo_kari_get0_alg(CMS_RecipientInfo *ri, diff --git a/crypto/cms/cms_lib.c b/crypto/cms/cms_lib.c index 89dfc150..835e3488 100644 --- a/crypto/cms/cms_lib.c +++ b/crypto/cms/cms_lib.c @@ -16,10 +16,6 @@ #include #include "cms_local.h" -DEFINE_STACK_OF(CMS_RevocationInfoChoice) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_CRL) - IMPLEMENT_ASN1_FUNCTIONS(CMS_ContentInfo) IMPLEMENT_ASN1_PRINT_FUNCTION(CMS_ContentInfo) diff --git a/crypto/cms/cms_pwri.c b/crypto/cms/cms_pwri.c index dee4a53c..a4c32dcd 100644 --- a/crypto/cms/cms_pwri.c +++ b/crypto/cms/cms_pwri.c @@ -18,8 +18,6 @@ #include "cms_local.h" #include "crypto/asn1.h" -DEFINE_STACK_OF(CMS_RecipientInfo) - int CMS_RecipientInfo_set0_password(CMS_RecipientInfo *ri, unsigned char *pass, ossl_ssize_t passlen) { diff --git a/crypto/cms/cms_sd.c b/crypto/cms/cms_sd.c index a5342c4a..4a40226c 100644 --- a/crypto/cms/cms_sd.c +++ b/crypto/cms/cms_sd.c @@ -21,12 +21,6 @@ #include "crypto/cms.h" #include "crypto/ess.h" -DEFINE_STACK_OF(CMS_RevocationInfoChoice) -DEFINE_STACK_OF(CMS_SignerInfo) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_ALGOR) -DEFINE_STACK_OF(X509_ATTRIBUTE) - /* CMS SignedData Utilities */ static CMS_SignedData *cms_get0_signed(CMS_ContentInfo *cms) diff --git a/crypto/cms/cms_smime.c b/crypto/cms/cms_smime.c index dbdc815e..f07064ea 100644 --- a/crypto/cms/cms_smime.c +++ b/crypto/cms/cms_smime.c @@ -16,12 +16,6 @@ #include "cms_local.h" #include "crypto/asn1.h" -DEFINE_STACK_OF(CMS_SignerInfo) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(CMS_RecipientEncryptedKey) -DEFINE_STACK_OF(CMS_RecipientInfo) - static BIO *cms_get_text_bio(BIO *out, unsigned int flags) { BIO *rbio; diff --git a/crypto/conf/conf_api.c b/crypto/conf/conf_api.c index 827b4032..4c7349a3 100644 --- a/crypto/conf/conf_api.c +++ b/crypto/conf/conf_api.c @@ -16,8 +16,6 @@ #include #include -DEFINE_STACK_OF(CONF_VALUE) - static void value_free_hash(const CONF_VALUE *a, LHASH_OF(CONF_VALUE) *conf); static void value_free_stack_doall(CONF_VALUE *a); diff --git a/crypto/conf/conf_def.c b/crypto/conf/conf_def.c index 9dbda10e..9718b73a 100644 --- a/crypto/conf/conf_def.c +++ b/crypto/conf/conf_def.c @@ -27,8 +27,6 @@ # endif #endif -DEFINE_STACK_OF(BIO) - #ifndef S_ISDIR # define S_ISDIR(a) (((a) & S_IFMT) == S_IFDIR) #endif diff --git a/crypto/conf/conf_mod.c b/crypto/conf/conf_mod.c index 504d9b18..2bbf43b9 100644 --- a/crypto/conf/conf_mod.c +++ b/crypto/conf/conf_mod.c @@ -18,10 +18,6 @@ #include #include -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(CONF_MODULE) -DEFINE_STACK_OF(CONF_IMODULE) - #define DSO_mod_init_name "OPENSSL_init" #define DSO_mod_finish_name "OPENSSL_finish" diff --git a/crypto/conf/conf_ssl.c b/crypto/conf/conf_ssl.c index 14d5dc1d..5855c50c 100644 --- a/crypto/conf/conf_ssl.c +++ b/crypto/conf/conf_ssl.c @@ -14,8 +14,6 @@ #include "internal/sslconf.h" #include "conf_local.h" -DEFINE_STACK_OF(CONF_VALUE) - /* * SSL library configuration module placeholder. We load it here but defer * all decisions about its contents to libssl. diff --git a/crypto/crmf/crmf_lib.c b/crypto/crmf/crmf_lib.c index 89eb2c37..8c59e3d0 100644 --- a/crypto/crmf/crmf_lib.c +++ b/crypto/crmf/crmf_lib.c @@ -36,9 +36,6 @@ #include #include -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF(OSSL_CRMF_MSG) - /*- * atyp = Attribute Type * valt = Value Type diff --git a/crypto/ct/ct_log.c b/crypto/ct/ct_log.c index 73eeee9d..32a29ed6 100644 --- a/crypto/ct/ct_log.c +++ b/crypto/ct/ct_log.c @@ -18,8 +18,6 @@ #include "internal/cryptlib.h" -DEFINE_STACK_OF(CTLOG) - /* * Information about a CT log server. */ diff --git a/crypto/ct/ct_oct.c b/crypto/ct/ct_oct.c index dfc6e99e..bd8d1bb1 100644 --- a/crypto/ct/ct_oct.c +++ b/crypto/ct/ct_oct.c @@ -21,8 +21,6 @@ #include "ct_local.h" -DEFINE_STACK_OF(SCT) - int o2i_SCT_signature(SCT *sct, const unsigned char **in, size_t len) { size_t siglen; diff --git a/crypto/ct/ct_prn.c b/crypto/ct/ct_prn.c index e2ab6b2f..4c5760d6 100644 --- a/crypto/ct/ct_prn.c +++ b/crypto/ct/ct_prn.c @@ -16,8 +16,6 @@ #include "ct_local.h" -DEFINE_STACK_OF(SCT) - static void SCT_signature_algorithms_print(const SCT *sct, BIO *out) { int nid = SCT_get_signature_nid(sct); diff --git a/crypto/ct/ct_sct.c b/crypto/ct/ct_sct.c index f6c262c9..1b8e1dc6 100644 --- a/crypto/ct/ct_sct.c +++ b/crypto/ct/ct_sct.c @@ -19,8 +19,6 @@ #include "ct_local.h" -DEFINE_STACK_OF(SCT) - SCT *SCT_new(void) { SCT *sct = OPENSSL_zalloc(sizeof(*sct)); diff --git a/crypto/ct/ct_x509v3.c b/crypto/ct/ct_x509v3.c index 55190deb..1665b985 100644 --- a/crypto/ct/ct_x509v3.c +++ b/crypto/ct/ct_x509v3.c @@ -13,8 +13,6 @@ #include "ct_local.h" -DEFINE_STACK_OF(SCT) - static char *i2s_poison(const X509V3_EXT_METHOD *method, void *val) { return OPENSSL_strdup("NULL"); diff --git a/crypto/dso/dso_dlfcn.c b/crypto/dso/dso_dlfcn.c index 57fa43fa..b01c2f6a 100644 --- a/crypto/dso/dso_dlfcn.c +++ b/crypto/dso/dso_dlfcn.c @@ -19,8 +19,6 @@ #include "dso_local.h" #include "e_os.h" -DEFINE_STACK_OF(void) - #ifdef DSO_DLFCN # ifdef HAVE_DLFCN_H diff --git a/crypto/dso/dso_lib.c b/crypto/dso/dso_lib.c index 82215dde..a464c391 100644 --- a/crypto/dso/dso_lib.c +++ b/crypto/dso/dso_lib.c @@ -10,8 +10,6 @@ #include "dso_local.h" #include "internal/refcount.h" -DEFINE_STACK_OF(void) - static DSO_METHOD *default_DSO_meth = NULL; static DSO *DSO_new_method(DSO_METHOD *meth) diff --git a/crypto/dso/dso_win32.c b/crypto/dso/dso_win32.c index 5826d410..adf2e636 100644 --- a/crypto/dso/dso_win32.c +++ b/crypto/dso/dso_win32.c @@ -69,8 +69,6 @@ static void *win32_globallookup(const char *name); static const char *openssl_strnchr(const char *string, int c, size_t len); -DEFINE_STACK_OF(void) - static DSO_METHOD dso_meth_win32 = { "OpenSSL 'win32' shared library method", win32_load, diff --git a/crypto/engine/eng_cnf.c b/crypto/engine/eng_cnf.c index de215952..22198194 100644 --- a/crypto/engine/eng_cnf.c +++ b/crypto/engine/eng_cnf.c @@ -11,8 +11,6 @@ #include #include -DEFINE_STACK_OF(CONF_VALUE) - /* ENGINE config module */ static const char *skip_dot(const char *name) diff --git a/crypto/engine/eng_dyn.c b/crypto/engine/eng_dyn.c index f7595b74..15504410 100644 --- a/crypto/engine/eng_dyn.c +++ b/crypto/engine/eng_dyn.c @@ -17,8 +17,6 @@ * prototypes. */ -DEFINE_STACK_OF_STRING() - /* Our ENGINE handlers */ static int dynamic_init(ENGINE *e); static int dynamic_finish(ENGINE *e); diff --git a/crypto/ess/ess_lib.c b/crypto/ess/ess_lib.c index 9d9defa9..a2d6bfe7 100644 --- a/crypto/ess/ess_lib.c +++ b/crypto/ess/ess_lib.c @@ -13,11 +13,6 @@ #include #include "crypto/ess.h" -DEFINE_STACK_OF(ESS_CERT_ID) -DEFINE_STACK_OF(ESS_CERT_ID_V2) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(GENERAL_NAME) - static ESS_CERT_ID *ESS_CERT_ID_new_init(X509 *cert, int issuer_needed); static ESS_CERT_ID_V2 *ESS_CERT_ID_V2_new_init(const EVP_MD *hash_alg, X509 *cert, int issuer_needed); diff --git a/crypto/evp/evp_cnf.c b/crypto/evp/evp_cnf.c index fa35fd16..7cfa0a27 100644 --- a/crypto/evp/evp_cnf.c +++ b/crypto/evp/evp_cnf.c @@ -15,8 +15,6 @@ #include #include -DEFINE_STACK_OF(CONF_VALUE) - /* Algorithm configuration module. */ /* TODO(3.0): the config module functions should be passed a library context */ diff --git a/crypto/evp/p_lib.c b/crypto/evp/p_lib.c index 0b75777a..11d6babb 100644 --- a/crypto/evp/p_lib.c +++ b/crypto/evp/p_lib.c @@ -36,7 +36,6 @@ #include "internal/evp.h" #include "internal/provider.h" #include "evp_local.h" -DEFINE_STACK_OF(X509_ATTRIBUTE) #include "crypto/ec.h" diff --git a/crypto/ex_data.c b/crypto/ex_data.c index 6200d055..d672b464 100644 --- a/crypto/ex_data.c +++ b/crypto/ex_data.c @@ -10,8 +10,6 @@ #include "crypto/cryptlib.h" #include "internal/thread_once.h" -DEFINE_STACK_OF(void) - int do_ex_data_init(OPENSSL_CTX *ctx) { OSSL_EX_DATA_GLOBAL *global = openssl_ctx_get_ex_data_global(ctx); diff --git a/crypto/http/http_client.c b/crypto/http/http_client.c index 98be2c49..4c123f81 100644 --- a/crypto/http/http_client.c +++ b/crypto/http/http_client.c @@ -25,8 +25,6 @@ #include "http_local.h" -DEFINE_STACK_OF(CONF_VALUE) - #define HTTP_PREFIX "HTTP/" #define HTTP_VERSION_PATT "1." /* allow 1.x */ #define HTTP_VERSION_STR_LEN 3 diff --git a/crypto/ocsp/ocsp_cl.c b/crypto/ocsp/ocsp_cl.c index 95b16dce..ec657900 100644 --- a/crypto/ocsp/ocsp_cl.c +++ b/crypto/ocsp/ocsp_cl.c @@ -18,10 +18,6 @@ #include #include "ocsp_local.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(OCSP_ONEREQ) -DEFINE_STACK_OF(OCSP_SINGLERESP) - /* * Utility functions related to sending OCSP requests and extracting relevant * information from the response. diff --git a/crypto/ocsp/ocsp_ext.c b/crypto/ocsp/ocsp_ext.c index 77e67840..c2b61bd4 100644 --- a/crypto/ocsp/ocsp_ext.c +++ b/crypto/ocsp/ocsp_ext.c @@ -16,9 +16,6 @@ #include #include -DEFINE_STACK_OF(ASN1_OBJECT) -DEFINE_STACK_OF(ACCESS_DESCRIPTION) - /* Standard wrapper functions for extensions */ /* OCSP request extensions */ diff --git a/crypto/ocsp/ocsp_prn.c b/crypto/ocsp/ocsp_prn.c index 170fb275..6d527dfc 100644 --- a/crypto/ocsp/ocsp_prn.c +++ b/crypto/ocsp/ocsp_prn.c @@ -14,10 +14,6 @@ #include "internal/cryptlib.h" #include -DEFINE_STACK_OF(OCSP_ONEREQ) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(OCSP_SINGLERESP) - static int ocsp_certid_print(BIO *bp, OCSP_CERTID *a, int indent) { BIO_printf(bp, "%*sCertificate ID:\n", indent, ""); diff --git a/crypto/ocsp/ocsp_srv.c b/crypto/ocsp/ocsp_srv.c index 3cfe3649..b9253b36 100644 --- a/crypto/ocsp/ocsp_srv.c +++ b/crypto/ocsp/ocsp_srv.c @@ -16,10 +16,6 @@ #include #include "ocsp_local.h" -DEFINE_STACK_OF(OCSP_ONEREQ) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(OCSP_SINGLERESP) - /* * Utility functions related to sending OCSP responses and extracting * relevant information from the request. diff --git a/crypto/ocsp/ocsp_vfy.c b/crypto/ocsp/ocsp_vfy.c index 0dccb24e..c7a22a1f 100644 --- a/crypto/ocsp/ocsp_vfy.c +++ b/crypto/ocsp/ocsp_vfy.c @@ -12,10 +12,6 @@ #include #include -DEFINE_STACK_OF(OCSP_ONEREQ) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(OCSP_SINGLERESP) - static int ocsp_find_signer(X509 **psigner, OCSP_BASICRESP *bs, STACK_OF(X509) *certs, unsigned long flags); static X509 *ocsp_find_signer_sk(STACK_OF(X509) *certs, OCSP_RESPID *id); diff --git a/crypto/ocsp/v3_ocsp.c b/crypto/ocsp/v3_ocsp.c index 33451ec4..9648ba94 100644 --- a/crypto/ocsp/v3_ocsp.c +++ b/crypto/ocsp/v3_ocsp.c @@ -16,8 +16,6 @@ # include # include "../x509/ext_dat.h" -DEFINE_STACK_OF(ACCESS_DESCRIPTION) - /* * OCSP extensions and a couple of CRL entry extensions */ diff --git a/crypto/pem/pem_info.c b/crypto/pem/pem_info.c index f6a5dedc..90162d7d 100644 --- a/crypto/pem/pem_info.c +++ b/crypto/pem/pem_info.c @@ -23,8 +23,6 @@ #include #include -DEFINE_STACK_OF(X509_INFO) - #ifndef OPENSSL_NO_STDIO STACK_OF(X509_INFO) *PEM_X509_INFO_read(FILE *fp, STACK_OF(X509_INFO) *sk, pem_password_cb *cb, void *u) diff --git a/crypto/pkcs12/p12_crt.c b/crypto/pkcs12/p12_crt.c index f75b2437..0e8b419d 100644 --- a/crypto/pkcs12/p12_crt.c +++ b/crypto/pkcs12/p12_crt.c @@ -12,10 +12,6 @@ #include #include "p12_local.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(PKCS7) -DEFINE_STACK_OF(PKCS12_SAFEBAG) - static int pkcs12_add_bag(STACK_OF(PKCS12_SAFEBAG) **pbags, PKCS12_SAFEBAG *bag); diff --git a/crypto/pkcs12/p12_kiss.c b/crypto/pkcs12/p12_kiss.c index 9a12ef10..a9a3ff54 100644 --- a/crypto/pkcs12/p12_kiss.c +++ b/crypto/pkcs12/p12_kiss.c @@ -11,10 +11,6 @@ #include "internal/cryptlib.h" #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(PKCS7) -DEFINE_STACK_OF(PKCS12_SAFEBAG) - /* Simplified PKCS#12 routines */ static int parse_pk12(PKCS12 *p12, const char *pass, int passlen, diff --git a/crypto/pkcs12/p12_npas.c b/crypto/pkcs12/p12_npas.c index 838abe35..7c916d46 100644 --- a/crypto/pkcs12/p12_npas.c +++ b/crypto/pkcs12/p12_npas.c @@ -15,9 +15,6 @@ #include #include "p12_local.h" -DEFINE_STACK_OF(PKCS7) -DEFINE_STACK_OF(PKCS12_SAFEBAG) - /* PKCS#12 password change routine */ static int newpass_p12(PKCS12 *p12, const char *oldpass, const char *newpass); diff --git a/crypto/pkcs7/pk7_attr.c b/crypto/pkcs7/pk7_attr.c index 1c95a3cf..e7bc808c 100644 --- a/crypto/pkcs7/pk7_attr.c +++ b/crypto/pkcs7/pk7_attr.c @@ -17,8 +17,6 @@ #include #include -DEFINE_STACK_OF(X509_ALGOR) - int PKCS7_add_attrib_smimecap(PKCS7_SIGNER_INFO *si, STACK_OF(X509_ALGOR) *cap) { diff --git a/crypto/pkcs7/pk7_doit.c b/crypto/pkcs7/pk7_doit.c index 9fb3ffc1..2cf62b62 100644 --- a/crypto/pkcs7/pk7_doit.c +++ b/crypto/pkcs7/pk7_doit.c @@ -15,11 +15,6 @@ #include #include -DEFINE_STACK_OF(X509_ALGOR) -DEFINE_STACK_OF(X509_ATTRIBUTE) -DEFINE_STACK_OF(PKCS7_RECIP_INFO) -DEFINE_STACK_OF(PKCS7_SIGNER_INFO) - static int add_attribute(STACK_OF(X509_ATTRIBUTE) **sk, int nid, int atrtype, void *value); static ASN1_TYPE *get_attribute(STACK_OF(X509_ATTRIBUTE) *sk, int nid); diff --git a/crypto/pkcs7/pk7_lib.c b/crypto/pkcs7/pk7_lib.c index 0eb140e6..ca039656 100644 --- a/crypto/pkcs7/pk7_lib.c +++ b/crypto/pkcs7/pk7_lib.c @@ -14,12 +14,6 @@ #include "crypto/asn1.h" #include "crypto/evp.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(X509_ALGOR) -DEFINE_STACK_OF(PKCS7_RECIP_INFO) -DEFINE_STACK_OF(PKCS7_SIGNER_INFO) - long PKCS7_ctrl(PKCS7 *p7, int cmd, long larg, char *parg) { int nid; diff --git a/crypto/pkcs7/pk7_smime.c b/crypto/pkcs7/pk7_smime.c index 3ef59c57..43ad266a 100644 --- a/crypto/pkcs7/pk7_smime.c +++ b/crypto/pkcs7/pk7_smime.c @@ -14,12 +14,8 @@ #include #include -#define BUFFERSIZE 4096 -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_ATTRIBUTE) -DEFINE_STACK_OF(X509_ALGOR) -DEFINE_STACK_OF(PKCS7_SIGNER_INFO) +#define BUFFERSIZE 4096 static int pkcs7_copy_existing_digest(PKCS7 *p7, PKCS7_SIGNER_INFO *si); diff --git a/crypto/provider_conf.c b/crypto/provider_conf.c index ce09fae7..1dd5b1d1 100644 --- a/crypto/provider_conf.c +++ b/crypto/provider_conf.c @@ -14,11 +14,9 @@ #include #include "internal/provider.h" -DEFINE_STACK_OF(OSSL_PROVIDER) -DEFINE_STACK_OF(CONF_VALUE) - /* PROVIDER config module */ +DEFINE_STACK_OF(OSSL_PROVIDER) static STACK_OF(OSSL_PROVIDER) *activated_providers = NULL; static const char *skip_dot(const char *name) diff --git a/crypto/srp/srp_vfy.c b/crypto/srp/srp_vfy.c index f0ed6da6..6c50d064 100644 --- a/crypto/srp/srp_vfy.c +++ b/crypto/srp/srp_vfy.c @@ -25,10 +25,6 @@ # define SRP_RANDOM_SALT_LEN 20 # define MAX_LEN 2500 -DEFINE_STACK_OF(SRP_user_pwd) -DEFINE_STACK_OF(SRP_gN_cache) -DEFINE_STACK_OF(SRP_gN) - /* * Note that SRP uses its own variant of base 64 encoding. A different base64 * alphabet is used and no padding '=' characters are added. Instead we pad to diff --git a/crypto/store/loader_file.c b/crypto/store/loader_file.c index 02178b29..9b7f8fb8 100644 --- a/crypto/store/loader_file.c +++ b/crypto/store/loader_file.c @@ -32,8 +32,6 @@ #include "crypto/evp.h" #include "store_local.h" -DEFINE_STACK_OF(X509) - #ifdef _WIN32 # define stat _stat #endif diff --git a/crypto/ts/ts_conf.c b/crypto/ts/ts_conf.c index 8d2d7129..4117ccdd 100644 --- a/crypto/ts/ts_conf.c +++ b/crypto/ts/ts_conf.c @@ -15,10 +15,6 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_INFO) -DEFINE_STACK_OF(CONF_VALUE) - /* Macro definitions for the configuration file. */ #define BASE_SECTION "tsa" #define ENV_DEFAULT_TSA "default_tsa" diff --git a/crypto/ts/ts_req_utils.c b/crypto/ts/ts_req_utils.c index ec36868d..8b950979 100644 --- a/crypto/ts/ts_req_utils.c +++ b/crypto/ts/ts_req_utils.c @@ -14,8 +14,6 @@ #include #include "ts_local.h" -DEFINE_STACK_OF(X509_EXTENSION) - int TS_REQ_set_version(TS_REQ *a, long version) { return ASN1_INTEGER_set(a->version, version); diff --git a/crypto/ts/ts_rsp_print.c b/crypto/ts/ts_rsp_print.c index 5334cea5..8593e2d9 100644 --- a/crypto/ts/ts_rsp_print.c +++ b/crypto/ts/ts_rsp_print.c @@ -15,9 +15,6 @@ #include #include "ts_local.h" -DEFINE_STACK_OF(ASN1_UTF8STRING) -DEFINE_STACK_OF(CONF_VALUE) - struct status_map_st { int bit; const char *text; diff --git a/crypto/ts/ts_rsp_sign.c b/crypto/ts/ts_rsp_sign.c index ba69cbec..ed0979e5 100644 --- a/crypto/ts/ts_rsp_sign.c +++ b/crypto/ts/ts_rsp_sign.c @@ -17,12 +17,6 @@ #include "ts_local.h" #include "crypto/ess.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF(ASN1_UTF8STRING) -DEFINE_STACK_OF(ASN1_OBJECT) -DEFINE_STACK_OF_CONST(EVP_MD) - static ASN1_INTEGER *def_serial_cb(struct TS_resp_ctx *, void *); static int def_time_cb(struct TS_resp_ctx *, void *, long *sec, long *usec); static int def_extension_cb(struct TS_resp_ctx *, X509_EXTENSION *, void *); diff --git a/crypto/ts/ts_rsp_utils.c b/crypto/ts/ts_rsp_utils.c index b9ec82a2..6017e8d1 100644 --- a/crypto/ts/ts_rsp_utils.c +++ b/crypto/ts/ts_rsp_utils.c @@ -14,8 +14,6 @@ #include #include "ts_local.h" -DEFINE_STACK_OF(X509_EXTENSION) - int TS_RESP_set_status_info(TS_RESP *a, TS_STATUS_INFO *status_info) { TS_STATUS_INFO *new_status_info; diff --git a/crypto/ts/ts_rsp_verify.c b/crypto/ts/ts_rsp_verify.c index b872f75b..1f20fb9c 100644 --- a/crypto/ts/ts_rsp_verify.c +++ b/crypto/ts/ts_rsp_verify.c @@ -15,13 +15,6 @@ #include "ts_local.h" #include "crypto/ess.h" -DEFINE_STACK_OF(PKCS7_SIGNER_INFO) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(ESS_CERT_ID) -DEFINE_STACK_OF(ESS_CERT_ID_V2) -DEFINE_STACK_OF(ASN1_UTF8STRING) -DEFINE_STACK_OF(GENERAL_NAME) - static int ts_verify_cert(X509_STORE *store, STACK_OF(X509) *untrusted, X509 *signer, STACK_OF(X509) **chain); static int ts_check_signing_certs(PKCS7_SIGNER_INFO *si, diff --git a/crypto/ts/ts_verify_ctx.c b/crypto/ts/ts_verify_ctx.c index 2205345b..3c834013 100644 --- a/crypto/ts/ts_verify_ctx.c +++ b/crypto/ts/ts_verify_ctx.c @@ -12,8 +12,6 @@ #include #include "ts_local.h" -DEFINE_STACK_OF(X509) - TS_VERIFY_CTX *TS_VERIFY_CTX_new(void) { TS_VERIFY_CTX *ctx = OPENSSL_zalloc(sizeof(*ctx)); diff --git a/crypto/ui/ui_lib.c b/crypto/ui/ui_lib.c index 85bf8c1f..97a75eab 100644 --- a/crypto/ui/ui_lib.c +++ b/crypto/ui/ui_lib.c @@ -15,8 +15,6 @@ #include #include "ui_local.h" -DEFINE_STACK_OF(UI_STRING) - UI *UI_new(void) { return UI_new_method(NULL); diff --git a/crypto/x509/by_dir.c b/crypto/x509/by_dir.c index 43b175e2..4479d6ad 100644 --- a/crypto/x509/by_dir.c +++ b/crypto/x509/by_dir.c @@ -22,8 +22,6 @@ #include "crypto/x509.h" #include "x509_local.h" -DEFINE_STACK_OF(X509_OBJECT) - struct lookup_dir_hashes_st { unsigned long hash; int suffix; diff --git a/crypto/x509/by_file.c b/crypto/x509/by_file.c index 178ec2ae..93a1af87 100644 --- a/crypto/x509/by_file.c +++ b/crypto/x509/by_file.c @@ -17,8 +17,6 @@ #include #include "x509_local.h" -DEFINE_STACK_OF(X509_INFO) - static int by_file_ctrl(X509_LOOKUP *ctx, int cmd, const char *argc, long argl, char **ret); static X509_LOOKUP_METHOD x509_file_lookup = { diff --git a/crypto/x509/by_store.c b/crypto/x509/by_store.c index 7141c1bd..8a8c50b6 100644 --- a/crypto/x509/by_store.c +++ b/crypto/x509/by_store.c @@ -12,8 +12,6 @@ #include "crypto/x509.h" #include "x509_local.h" -DEFINE_STACK_OF_STRING() - /* Generic object loader, given expected type and criterion */ static int cache_objects(X509_LOOKUP *lctx, const char *uri, const OSSL_STORE_SEARCH *criterion, diff --git a/crypto/x509/pcy_cache.c b/crypto/x509/pcy_cache.c index a7bcfe60..e65931e4 100644 --- a/crypto/x509/pcy_cache.c +++ b/crypto/x509/pcy_cache.c @@ -14,8 +14,6 @@ #include "pcy_local.h" -DEFINE_STACK_OF(POLICYINFO) - static int policy_data_cmp(const X509_POLICY_DATA *const *a, const X509_POLICY_DATA *const *b); static int policy_cache_set_int(long *out, ASN1_INTEGER *value); diff --git a/crypto/x509/pcy_data.c b/crypto/x509/pcy_data.c index 0a98a111..cc3fc201 100644 --- a/crypto/x509/pcy_data.c +++ b/crypto/x509/pcy_data.c @@ -13,9 +13,6 @@ #include "pcy_local.h" -DEFINE_STACK_OF(ASN1_OBJECT) -DEFINE_STACK_OF(POLICYQUALINFO) - /* Policy Node routines */ void policy_data_free(X509_POLICY_DATA *data) diff --git a/crypto/x509/pcy_lib.c b/crypto/x509/pcy_lib.c index 23baa2db..c4740a0a 100644 --- a/crypto/x509/pcy_lib.c +++ b/crypto/x509/pcy_lib.c @@ -13,8 +13,6 @@ #include "pcy_local.h" -DEFINE_STACK_OF(X509_POLICY_NODE) - /* accessor functions */ /* X509_POLICY_TREE stuff */ diff --git a/crypto/x509/pcy_map.c b/crypto/x509/pcy_map.c index 76cca2f8..258792be 100644 --- a/crypto/x509/pcy_map.c +++ b/crypto/x509/pcy_map.c @@ -14,9 +14,6 @@ #include "pcy_local.h" -DEFINE_STACK_OF(POLICY_MAPPING) -DEFINE_STACK_OF(ASN1_OBJECT) - /* * Set policy mapping entries in cache. Note: this modifies the passed * POLICY_MAPPINGS structure diff --git a/crypto/x509/pcy_node.c b/crypto/x509/pcy_node.c index 5afd0812..fc06a31c 100644 --- a/crypto/x509/pcy_node.c +++ b/crypto/x509/pcy_node.c @@ -14,9 +14,6 @@ #include "pcy_local.h" -DEFINE_STACK_OF(X509_POLICY_NODE) -DEFINE_STACK_OF(ASN1_OBJECT) - static int node_cmp(const X509_POLICY_NODE *const *a, const X509_POLICY_NODE *const *b) { diff --git a/crypto/x509/pcy_tree.c b/crypto/x509/pcy_tree.c index f9519d3a..fa11e5e4 100644 --- a/crypto/x509/pcy_tree.c +++ b/crypto/x509/pcy_tree.c @@ -14,10 +14,6 @@ #include "pcy_local.h" -DEFINE_STACK_OF(ASN1_OBJECT) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_POLICY_NODE) - static void expected_print(BIO *channel, X509_POLICY_LEVEL *lev, X509_POLICY_NODE *node, int indent) diff --git a/crypto/x509/t_crl.c b/crypto/x509/t_crl.c index f6705286..33b871eb 100644 --- a/crypto/x509/t_crl.c +++ b/crypto/x509/t_crl.c @@ -15,8 +15,6 @@ #include #include -DEFINE_STACK_OF(X509_REVOKED) - #ifndef OPENSSL_NO_STDIO int X509_CRL_print_fp(FILE *fp, X509_CRL *x) { diff --git a/crypto/x509/t_req.c b/crypto/x509/t_req.c index 4cf6493b..8af6510b 100644 --- a/crypto/x509/t_req.c +++ b/crypto/x509/t_req.c @@ -17,8 +17,6 @@ #include #include -DEFINE_STACK_OF(X509_EXTENSION) - #ifndef OPENSSL_NO_STDIO int X509_REQ_print_fp(FILE *fp, X509_REQ *x) { diff --git a/crypto/x509/t_x509.c b/crypto/x509/t_x509.c index e3c21b08..5e953954 100644 --- a/crypto/x509/t_x509.c +++ b/crypto/x509/t_x509.c @@ -17,9 +17,6 @@ #include "crypto/asn1.h" #include "crypto/x509.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(ASN1_OBJECT) - #ifndef OPENSSL_NO_STDIO int X509_print_fp(FILE *fp, X509 *x) { diff --git a/crypto/x509/v3_addr.c b/crypto/x509/v3_addr.c index 51f5cd8f..766c5bc1 100644 --- a/crypto/x509/v3_addr.c +++ b/crypto/x509/v3_addr.c @@ -25,11 +25,6 @@ #ifndef OPENSSL_NO_RFC3779 -DEFINE_STACK_OF(IPAddressOrRange) -DEFINE_STACK_OF(IPAddressFamily) -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(X509) - /* * OpenSSL ASN.1 template translation of RFC 3779 2.2.3. */ diff --git a/crypto/x509/v3_admis.c b/crypto/x509/v3_admis.c index 4cccaf64..104b58f2 100644 --- a/crypto/x509/v3_admis.c +++ b/crypto/x509/v3_admis.c @@ -20,10 +20,6 @@ #include "v3_admis.h" #include "ext_dat.h" -DEFINE_STACK_OF(ADMISSIONS) -DEFINE_STACK_OF(PROFESSION_INFO) -DEFINE_STACK_OF(ASN1_STRING) -DEFINE_STACK_OF(ASN1_OBJECT) ASN1_SEQUENCE(NAMING_AUTHORITY) = { ASN1_OPT(NAMING_AUTHORITY, namingAuthorityId, ASN1_OBJECT), diff --git a/crypto/x509/v3_akey.c b/crypto/x509/v3_akey.c index bd231f65..4898869b 100644 --- a/crypto/x509/v3_akey.c +++ b/crypto/x509/v3_akey.c @@ -15,9 +15,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(GENERAL_NAME) - static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_KEYID(X509V3_EXT_METHOD *method, AUTHORITY_KEYID *akeyid, STACK_OF(CONF_VALUE) diff --git a/crypto/x509/v3_alt.c b/crypto/x509/v3_alt.c index 67d8acc8..a910d5d7 100644 --- a/crypto/x509/v3_alt.c +++ b/crypto/x509/v3_alt.c @@ -13,9 +13,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(GENERAL_NAME) - static GENERAL_NAMES *v2i_subject_alt(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval); diff --git a/crypto/x509/v3_asid.c b/crypto/x509/v3_asid.c index 798185a7..6cb5cd55 100644 --- a/crypto/x509/v3_asid.c +++ b/crypto/x509/v3_asid.c @@ -55,10 +55,6 @@ IMPLEMENT_ASN1_FUNCTIONS(ASIdOrRange) IMPLEMENT_ASN1_FUNCTIONS(ASIdentifierChoice) IMPLEMENT_ASN1_FUNCTIONS(ASIdentifiers) -DEFINE_STACK_OF(ASIdOrRange) -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(X509) - /* * i2r method for an ASIdentifierChoice. */ diff --git a/crypto/x509/v3_bcons.c b/crypto/x509/v3_bcons.c index 0ba3c0cc..02e30022 100644 --- a/crypto/x509/v3_bcons.c +++ b/crypto/x509/v3_bcons.c @@ -15,8 +15,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) - static STACK_OF(CONF_VALUE) *i2v_BASIC_CONSTRAINTS(X509V3_EXT_METHOD *method, BASIC_CONSTRAINTS *bcons, STACK_OF(CONF_VALUE) diff --git a/crypto/x509/v3_bitst.c b/crypto/x509/v3_bitst.c index b0a807d3..81cdcfb6 100644 --- a/crypto/x509/v3_bitst.c +++ b/crypto/x509/v3_bitst.c @@ -13,8 +13,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) - static BIT_STRING_BITNAME ns_cert_type_table[] = { {0, "SSL Client", "client"}, {1, "SSL Server", "server"}, diff --git a/crypto/x509/v3_conf.c b/crypto/x509/v3_conf.c index 38e36470..47b1cfc9 100644 --- a/crypto/x509/v3_conf.c +++ b/crypto/x509/v3_conf.c @@ -17,9 +17,6 @@ #include "crypto/x509.h" #include -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(X509_EXTENSION) - static int v3_check_critical(const char **value); static int v3_check_generic(const char **value); static X509_EXTENSION *do_ext_nconf(CONF *conf, X509V3_CTX *ctx, int ext_nid, diff --git a/crypto/x509/v3_cpols.c b/crypto/x509/v3_cpols.c index a5f14534..470088c9 100644 --- a/crypto/x509/v3_cpols.c +++ b/crypto/x509/v3_cpols.c @@ -17,11 +17,6 @@ #include "pcy_local.h" #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(POLICYINFO) -DEFINE_STACK_OF(POLICYQUALINFO) -DEFINE_STACK_OF(ASN1_INTEGER) - /* Certificate policies extension support: this one is a bit complex... */ static int i2r_certpol(X509V3_EXT_METHOD *method, STACK_OF(POLICYINFO) *pol, diff --git a/crypto/x509/v3_crld.c b/crypto/x509/v3_crld.c index 21a1bfcd..b23a9619 100644 --- a/crypto/x509/v3_crld.c +++ b/crypto/x509/v3_crld.c @@ -17,11 +17,6 @@ #include "crypto/x509.h" #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(DIST_POINT) -DEFINE_STACK_OF(X509_NAME_ENTRY) - static void *v2i_crld(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval); static int i2r_crldp(const X509V3_EXT_METHOD *method, void *pcrldp, BIO *out, diff --git a/crypto/x509/v3_extku.c b/crypto/x509/v3_extku.c index b60d9994..8d0dfcf3 100644 --- a/crypto/x509/v3_extku.c +++ b/crypto/x509/v3_extku.c @@ -14,9 +14,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(ASN1_OBJECT) -DEFINE_STACK_OF(CONF_VALUE) - static void *v2i_EXTENDED_KEY_USAGE(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval); diff --git a/crypto/x509/v3_info.c b/crypto/x509/v3_info.c index 4acc514a..c50cfd1f 100644 --- a/crypto/x509/v3_info.c +++ b/crypto/x509/v3_info.c @@ -15,9 +15,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(ACCESS_DESCRIPTION) -DEFINE_STACK_OF(CONF_VALUE) - static STACK_OF(CONF_VALUE) *i2v_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD *method, AUTHORITY_INFO_ACCESS *ainfo, STACK_OF(CONF_VALUE) diff --git a/crypto/x509/v3_ist.c b/crypto/x509/v3_ist.c index ceb127f6..6db4f199 100644 --- a/crypto/x509/v3_ist.c +++ b/crypto/x509/v3_ist.c @@ -15,8 +15,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) - /* * Issuer Sign Tool (1.2.643.100.112) The name of the tool used to signs the subject (ASN1_SEQUENCE) * This extention is required to obtain the status of a qualified certificate at Russian Federation. diff --git a/crypto/x509/v3_lib.c b/crypto/x509/v3_lib.c index a3bb8be8..71ba7a32 100644 --- a/crypto/x509/v3_lib.c +++ b/crypto/x509/v3_lib.c @@ -16,9 +16,6 @@ #include "ext_dat.h" -DEFINE_STACK_OF(X509V3_EXT_METHOD) -DEFINE_STACK_OF(X509_EXTENSION) - static STACK_OF(X509V3_EXT_METHOD) *ext_list = NULL; static int ext_cmp(const X509V3_EXT_METHOD *const *a, diff --git a/crypto/x509/v3_ncons.c b/crypto/x509/v3_ncons.c index 88ad8ba7..d6a286c0 100644 --- a/crypto/x509/v3_ncons.c +++ b/crypto/x509/v3_ncons.c @@ -19,10 +19,6 @@ #include "crypto/x509.h" #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(GENERAL_SUBTREE) - static void *v2i_NAME_CONSTRAINTS(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval); diff --git a/crypto/x509/v3_pci.c b/crypto/x509/v3_pci.c index 4e02f9c5..fb5f35a5 100644 --- a/crypto/x509/v3_pci.c +++ b/crypto/x509/v3_pci.c @@ -49,8 +49,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) - static int i2r_pci(X509V3_EXT_METHOD *method, PROXY_CERT_INFO_EXTENSION *ext, BIO *out, int indent); static PROXY_CERT_INFO_EXTENSION *r2i_pci(X509V3_EXT_METHOD *method, diff --git a/crypto/x509/v3_pcons.c b/crypto/x509/v3_pcons.c index 43e5bc55..33c08cfd 100644 --- a/crypto/x509/v3_pcons.c +++ b/crypto/x509/v3_pcons.c @@ -15,8 +15,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) - static STACK_OF(CONF_VALUE) *i2v_POLICY_CONSTRAINTS(const X509V3_EXT_METHOD *method, void *bcons, STACK_OF(CONF_VALUE) *extlist); diff --git a/crypto/x509/v3_pmaps.c b/crypto/x509/v3_pmaps.c index 9dcd4598..2b478402 100644 --- a/crypto/x509/v3_pmaps.c +++ b/crypto/x509/v3_pmaps.c @@ -14,9 +14,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(POLICY_MAPPING) -DEFINE_STACK_OF(CONF_VALUE) - static void *v2i_POLICY_MAPPINGS(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval); static STACK_OF(CONF_VALUE) *i2v_POLICY_MAPPINGS(const X509V3_EXT_METHOD diff --git a/crypto/x509/v3_prn.c b/crypto/x509/v3_prn.c index e5f062b6..2ef76c1b 100644 --- a/crypto/x509/v3_prn.c +++ b/crypto/x509/v3_prn.c @@ -14,9 +14,6 @@ #include #include -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(X509_EXTENSION) - /* Extension printing routines */ static int unknown_ext_print(BIO *out, const unsigned char *ext, int extlen, diff --git a/crypto/x509/v3_purp.c b/crypto/x509/v3_purp.c index b3401035..687d0653 100644 --- a/crypto/x509/v3_purp.c +++ b/crypto/x509/v3_purp.c @@ -15,11 +15,6 @@ #include "crypto/x509.h" #include "internal/tsan_assist.h" -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(DIST_POINT) -DEFINE_STACK_OF(X509_PURPOSE) -DEFINE_STACK_OF(ASN1_OBJECT) - static int check_ssl_ca(const X509 *x); static int check_purpose_ssl_client(const X509_PURPOSE *xp, const X509 *x, int ca); diff --git a/crypto/x509/v3_sxnet.c b/crypto/x509/v3_sxnet.c index 364348d9..072b8efe 100644 --- a/crypto/x509/v3_sxnet.c +++ b/crypto/x509/v3_sxnet.c @@ -15,9 +15,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(SXNETID) -DEFINE_STACK_OF(CONF_VALUE) - /* Support for Thawte strong extranet extension */ #define SXNET_TEST diff --git a/crypto/x509/v3_tlsf.c b/crypto/x509/v3_tlsf.c index 597e8eda..28e83bb2 100644 --- a/crypto/x509/v3_tlsf.c +++ b/crypto/x509/v3_tlsf.c @@ -15,9 +15,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(ASN1_INTEGER) -DEFINE_STACK_OF(CONF_VALUE) - static STACK_OF(CONF_VALUE) *i2v_TLS_FEATURE(const X509V3_EXT_METHOD *method, TLS_FEATURE *tls_feature, STACK_OF(CONF_VALUE) *ext_list); diff --git a/crypto/x509/v3_utl.c b/crypto/x509/v3_utl.c index 4be39539..c7f54aa0 100644 --- a/crypto/x509/v3_utl.c +++ b/crypto/x509/v3_utl.c @@ -20,12 +20,6 @@ #include #include "ext_dat.h" -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(ACCESS_DESCRIPTION) -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF_STRING() - static char *strip_spaces(char *name); static int sk_strcmp(const char *const *a, const char *const *b); static STACK_OF(OPENSSL_STRING) *get_email(const X509_NAME *name, diff --git a/crypto/x509/x509_att.c b/crypto/x509/x509_att.c index 03b90262..c8b2d0f8 100644 --- a/crypto/x509/x509_att.c +++ b/crypto/x509/x509_att.c @@ -17,9 +17,6 @@ #include #include "x509_local.h" -DEFINE_STACK_OF(X509_ATTRIBUTE) -DEFINE_STACK_OF(ASN1_TYPE) - int X509at_get_attr_count(const STACK_OF(X509_ATTRIBUTE) *x) { return sk_X509_ATTRIBUTE_num(x); diff --git a/crypto/x509/x509_cmp.c b/crypto/x509/x509_cmp.c index 05615c1e..654b7b5a 100644 --- a/crypto/x509/x509_cmp.c +++ b/crypto/x509/x509_cmp.c @@ -16,8 +16,6 @@ #include #include "crypto/x509.h" -DEFINE_STACK_OF(X509) - int X509_issuer_and_serial_cmp(const X509 *a, const X509 *b) { int i; diff --git a/crypto/x509/x509_lu.c b/crypto/x509/x509_lu.c index 421f26ba..64791f24 100644 --- a/crypto/x509/x509_lu.c +++ b/crypto/x509/x509_lu.c @@ -15,11 +15,6 @@ #include #include "x509_local.h" -DEFINE_STACK_OF(X509_LOOKUP) -DEFINE_STACK_OF(X509_OBJECT) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(X509) - X509_LOOKUP *X509_LOOKUP_new(X509_LOOKUP_METHOD *method) { X509_LOOKUP *ret = OPENSSL_zalloc(sizeof(*ret)); diff --git a/crypto/x509/x509_obj.c b/crypto/x509/x509_obj.c index 1229c01b..9d8f48d2 100644 --- a/crypto/x509/x509_obj.c +++ b/crypto/x509/x509_obj.c @@ -14,8 +14,6 @@ #include #include "crypto/x509.h" -DEFINE_STACK_OF(X509_NAME_ENTRY) - /* * Limit to ensure we don't overflow: much greater than * anything encountered in practice. diff --git a/crypto/x509/x509_r2x.c b/crypto/x509/x509_r2x.c index a284bf72..a03ba249 100644 --- a/crypto/x509/x509_r2x.c +++ b/crypto/x509/x509_r2x.c @@ -17,8 +17,6 @@ #include #include -DEFINE_STACK_OF(X509_ATTRIBUTE) - X509 *X509_REQ_to_X509(X509_REQ *r, int days, EVP_PKEY *pkey) { X509 *ret = NULL; diff --git a/crypto/x509/x509_trs.c b/crypto/x509/x509_trs.c index ebd45b68..10718c34 100644 --- a/crypto/x509/x509_trs.c +++ b/crypto/x509/x509_trs.c @@ -12,9 +12,6 @@ #include #include "crypto/x509.h" -DEFINE_STACK_OF(X509_TRUST) -DEFINE_STACK_OF(ASN1_OBJECT) - static int tr_cmp(const X509_TRUST *const *a, const X509_TRUST *const *b); static void trtable_free(X509_TRUST *p); diff --git a/crypto/x509/x509_v3.c b/crypto/x509/x509_v3.c index 31438d20..715c3594 100644 --- a/crypto/x509/x509_v3.c +++ b/crypto/x509/x509_v3.c @@ -17,8 +17,6 @@ #include #include "x509_local.h" -DEFINE_STACK_OF(X509_EXTENSION) - int X509v3_get_ext_count(const STACK_OF(X509_EXTENSION) *x) { if (x == NULL) diff --git a/crypto/x509/x509_vfy.c b/crypto/x509/x509_vfy.c index e5fbd2af..99479444 100644 --- a/crypto/x509/x509_vfy.c +++ b/crypto/x509/x509_vfy.c @@ -25,13 +25,6 @@ #include "crypto/x509.h" #include "x509_local.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_REVOKED) -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(X509_CRL) -DEFINE_STACK_OF(DIST_POINT) -DEFINE_STACK_OF_STRING() - /* CRL score values */ /* No unhandled critical extensions */ diff --git a/crypto/x509/x509_vpm.c b/crypto/x509/x509_vpm.c index c3af2d3d..f6555dd2 100644 --- a/crypto/x509/x509_vpm.c +++ b/crypto/x509/x509_vpm.c @@ -18,10 +18,6 @@ #include "x509_local.h" -DEFINE_STACK_OF(ASN1_OBJECT) -DEFINE_STACK_OF(X509_VERIFY_PARAM) -DEFINE_STACK_OF_STRING() - /* X509_VERIFY_PARAM functions */ #define SET_HOST 0 diff --git a/crypto/x509/x509cset.c b/crypto/x509/x509cset.c index d5b37780..22143da6 100644 --- a/crypto/x509/x509cset.c +++ b/crypto/x509/x509cset.c @@ -16,8 +16,6 @@ #include #include "crypto/x509.h" -DEFINE_STACK_OF(X509_REVOKED) - int X509_CRL_set_version(X509_CRL *x, long version) { if (x == NULL) diff --git a/crypto/x509/x509name.c b/crypto/x509/x509name.c index 7e2704fb..b00e5f5b 100644 --- a/crypto/x509/x509name.c +++ b/crypto/x509/x509name.c @@ -16,8 +16,6 @@ #include #include "crypto/x509.h" -DEFINE_STACK_OF(X509_NAME_ENTRY) - int X509_NAME_get_text_by_NID(const X509_NAME *name, int nid, char *buf, int len) { diff --git a/crypto/x509/x_attrib.c b/crypto/x509/x_attrib.c index 99609cfc..b3023411 100644 --- a/crypto/x509/x_attrib.c +++ b/crypto/x509/x_attrib.c @@ -14,8 +14,6 @@ #include #include "x509_local.h" -DEFINE_STACK_OF(ASN1_TYPE) - /*- * X509_ATTRIBUTE: this has the following form: * diff --git a/crypto/x509/x_crl.c b/crypto/x509/x_crl.c index 0d3e1fed..0f53be71 100644 --- a/crypto/x509/x_crl.c +++ b/crypto/x509/x_crl.c @@ -15,11 +15,6 @@ #include #include "x509_local.h" -DEFINE_STACK_OF(GENERAL_NAME) -DEFINE_STACK_OF(GENERAL_NAMES) -DEFINE_STACK_OF(X509_REVOKED) -DEFINE_STACK_OF(X509_EXTENSION) - static int X509_REVOKED_cmp(const X509_REVOKED *const *a, const X509_REVOKED *const *b); static int setup_idp(X509_CRL *crl, ISSUING_DIST_POINT *idp); diff --git a/crypto/x509/x_name.c b/crypto/x509/x_name.c index 2db9aa34..692bd656 100644 --- a/crypto/x509/x_name.c +++ b/crypto/x509/x_name.c @@ -16,9 +16,6 @@ #include "crypto/asn1.h" #include "x509_local.h" -DEFINE_STACK_OF(X509_NAME_ENTRY) -DEFINE_STACK_OF(ASN1_VALUE) - /* * Maximum length of X509_NAME: much larger than anything we should * ever see in practice. diff --git a/crypto/x509/x_req.c b/crypto/x509/x_req.c index 10b82df5..21215b47 100644 --- a/crypto/x509/x_req.c +++ b/crypto/x509/x_req.c @@ -13,8 +13,6 @@ #include #include "crypto/x509.h" -DEFINE_STACK_OF(X509_ATTRIBUTE) - /*- * X509_REQ_INFO is handled in an unusual way to get round * invalid encodings. Some broken certificate requests don't diff --git a/crypto/x509/x_x509.c b/crypto/x509/x_x509.c index 8cfdbc9f..e9317dc1 100644 --- a/crypto/x509/x_x509.c +++ b/crypto/x509/x_x509.c @@ -15,8 +15,6 @@ #include #include "crypto/x509.h" -DEFINE_STACK_OF(IPAddressFamily) - ASN1_SEQUENCE_enc(X509_CINF, enc, 0) = { ASN1_EXP_OPT(X509_CINF, version, ASN1_INTEGER, 0), ASN1_EMBED(X509_CINF, serialNumber, ASN1_INTEGER), diff --git a/crypto/x509/x_x509a.c b/crypto/x509/x_x509a.c index 957386b8..18d09e30 100644 --- a/crypto/x509/x_x509a.c +++ b/crypto/x509/x_x509a.c @@ -14,8 +14,6 @@ #include #include "crypto/x509.h" -DEFINE_STACK_OF(ASN1_OBJECT) - /* * X509_CERT_AUX routines. These are used to encode additional user * modifiable data about a certificate. This data is appended to the X509 diff --git a/doc/man3/DEFINE_STACK_OF.pod b/doc/man3/DEFINE_STACK_OF.pod index 6c165c00..4dd3de84 100644 --- a/doc/man3/DEFINE_STACK_OF.pod +++ b/doc/man3/DEFINE_STACK_OF.pod @@ -64,31 +64,27 @@ functions that wrap around the utility B API. In the description here, B> is used as a placeholder for any of the OpenSSL datatypes, such as B. -The STACK_OF() macro returns the name for a stack of the specified B>. -This is an opaque pointer to a structure declaration. -This can be used in every header file that references the stack. -There are several B macros that create static inline functions -for all of the functions described on this page. -This should normally be used in one source file, and the stack manipulation -is wrapped with application-specific functions. - -DEFINE_STACK_OF() creates set of functions for a stack of B> elements. -The type is referenced by +STACK_OF() returns the name for a stack of the specified B>. +DEFINE_STACK_OF() creates set of functions for a stack of B>. This +will mean that type B> is stored in each stack, the type is referenced by B(B>) and each function name begins with B_>. -DEFINE_STACK_OF_CONST() is identical to DEFINE_STACK_OF() except -each element is constant. +For example: - /* DEFINE_STACK_OF(TYPE) */ TYPE *sk_TYPE_value(STACK_OF(TYPE) *sk, int idx); - /* DEFINE_STACK_OF_CONST(TYPE) */ + +DEFINE_STACK_OF_CONST() is identical to DEFINE_STACK_OF() except +each element is constant. For example: + const TYPE *sk_TYPE_value(STACK_OF(TYPE) *sk, int idx); -DEFINE_SPECIAL_STACK_OF() and DEFINE_SPECIAL_STACK_OF_CONST() are similar -except B is used in the function names: +DEFINE_SPECIAL_STACK_OF() defines a stack of B> but +each function uses B in the function name. For example: - /* DEFINE_SPECIAL_STACK_OF(TYPE, FUNCNAME) */ TYPE *sk_FUNCNAME_value(STACK_OF(TYPE) *sk, int idx); - /* DEFINE_SPECIAL_STACK_OF(TYPE, FUNCNAME) */ + +DEFINE_SPECIAL_STACK_OF_CONST() is similar except that each element is +constant: + const TYPE *sk_FUNCNAME_value(STACK_OF(TYPE) *sk, int idx); B_num>() returns the number of elements in I or -1 if I is diff --git a/engines/e_capi.c b/engines/e_capi.c index c8d181c9..74b79e31 100644 --- a/engines/e_capi.c +++ b/engines/e_capi.c @@ -31,9 +31,6 @@ # include # include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_NAME) - /* * This module uses several "new" interfaces, among which is * CertGetCertificateContextProperty. CERT_KEY_PROV_INFO_PROP_ID is diff --git a/fuzz/client.c b/fuzz/client.c index f80e8a0a..45198977 100644 --- a/fuzz/client.c +++ b/fuzz/client.c @@ -20,8 +20,6 @@ #include "rand.inc" -DEFINE_STACK_OF(SSL_COMP) - /* unused, to avoid warning. */ static int idx; diff --git a/fuzz/cmp.c b/fuzz/cmp.c index 6883a286..0088dd94 100644 --- a/fuzz/cmp.c +++ b/fuzz/cmp.c @@ -18,8 +18,6 @@ #include "fuzzer.h" #include "rand.inc" -DEFINE_STACK_OF(OSSL_CMP_ITAV) - int FuzzerInitialize(int *argc, char ***argv) { OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL); diff --git a/fuzz/server.c b/fuzz/server.c index fe4fa5c7..335f1f16 100644 --- a/fuzz/server.c +++ b/fuzz/server.c @@ -24,8 +24,6 @@ #include "rand.inc" -DEFINE_STACK_OF(SSL_COMP) - static const uint8_t kCertificateDER[] = { 0x30, 0x82, 0x02, 0xff, 0x30, 0x82, 0x01, 0xe7, 0xa0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x11, 0x00, 0xb1, 0x84, 0xee, 0x34, 0x99, 0x98, 0x76, 0xfb, diff --git a/include/openssl/asn1.h b/include/openssl/asn1.h index a5b14152..f5878127 100644 --- a/include/openssl/asn1.h +++ b/include/openssl/asn1.h @@ -119,14 +119,8 @@ extern "C" { # define SMIME_OLDMIME 0x400 # define SMIME_CRLFEOL 0x800 # define SMIME_STREAM 0x1000 - -DEFINE_OR_DECLARE_STACK_OF(ASN1_GENERALSTRING) -DEFINE_OR_DECLARE_STACK_OF(ASN1_INTEGER) -DEFINE_OR_DECLARE_STACK_OF(ASN1_OBJECT) -DEFINE_OR_DECLARE_STACK_OF(ASN1_STRING_TABLE) -DEFINE_OR_DECLARE_STACK_OF(ASN1_UTF8STRING) -DEFINE_OR_DECLARE_STACK_OF(X509_ALGOR) -DEFINE_OR_DECLARE_STACK_OF(ASN1_TYPE) + struct X509_algor_st; +DEFINE_STACK_OF(X509_ALGOR) # define ASN1_STRING_FLAG_BITS_LEFT 0x08/* Set if 0x07 has bits left value */ /* @@ -193,14 +187,15 @@ typedef struct ASN1_ENCODING_st { (B_ASN1_PRINTABLESTRING|B_ASN1_T61STRING|B_ASN1_BMPSTRING|B_ASN1_UTF8STRING) # define PKCS9STRING_TYPE (DIRSTRING_TYPE|B_ASN1_IA5STRING) -struct asn1_string_table_st { +typedef struct asn1_string_table_st { int nid; long minsize; long maxsize; unsigned long mask; unsigned long flags; -}; +} ASN1_STRING_TABLE; +DEFINE_STACK_OF(ASN1_STRING_TABLE) /* size limits: this stuff is taken straight from RFC2459 */ @@ -424,8 +419,13 @@ typedef const ASN1_ITEM *ASN1_ITEM_EXP (void); ASN1_STRFLGS_DUMP_UNKNOWN | \ ASN1_STRFLGS_DUMP_DER) +DEFINE_STACK_OF(ASN1_INTEGER) -struct asn1_type_st { +DEFINE_STACK_OF(ASN1_GENERALSTRING) + +DEFINE_STACK_OF(ASN1_UTF8STRING) + +typedef struct asn1_type_st { int type; union { char *ptr; @@ -454,8 +454,9 @@ struct asn1_type_st { ASN1_STRING *sequence; ASN1_VALUE *asn1_value; } value; -}; +} ASN1_TYPE; +DEFINE_STACK_OF(ASN1_TYPE) typedef STACK_OF(ASN1_TYPE) ASN1_SEQUENCE_ANY; @@ -510,6 +511,7 @@ ASN1_TYPE *ASN1_TYPE_pack_sequence(const ASN1_ITEM *it, void *s, ASN1_TYPE **t); void *ASN1_TYPE_unpack_sequence(const ASN1_ITEM *it, const ASN1_TYPE *t); DECLARE_ASN1_FUNCTIONS(ASN1_OBJECT) +DEFINE_STACK_OF(ASN1_OBJECT) ASN1_STRING *ASN1_STRING_new(void); void ASN1_STRING_free(ASN1_STRING *a); diff --git a/include/openssl/asn1t.h b/include/openssl/asn1t.h index 286db9e2..837fd427 100644 --- a/include/openssl/asn1t.h +++ b/include/openssl/asn1t.h @@ -880,7 +880,7 @@ DECLARE_ASN1_ITEM(LONG) DECLARE_ASN1_ITEM(ZLONG) # endif -DEFINE_OR_DECLARE_STACK_OF(ASN1_VALUE) +DEFINE_STACK_OF(ASN1_VALUE) /* Functions used internally by the ASN1 code */ diff --git a/include/openssl/bio.h b/include/openssl/bio.h index b4047d55..edc9fbd6 100644 --- a/include/openssl/bio.h +++ b/include/openssl/bio.h @@ -286,7 +286,7 @@ int BIO_method_type(const BIO *b); typedef int BIO_info_cb(BIO *, int, int); typedef BIO_info_cb bio_info_cb; /* backward compatibility */ -DEFINE_OR_DECLARE_STACK_OF(BIO) +DEFINE_STACK_OF(BIO) /* Prefix and suffix callback in ASN1 BIO */ typedef int asn1_ps_func (BIO *b, unsigned char **pbuf, int *plen, diff --git a/include/openssl/cmp.h b/include/openssl/cmp.h index 76ba0e3b..6a5da278 100644 --- a/include/openssl/cmp.h +++ b/include/openssl/cmp.h @@ -202,12 +202,6 @@ DECLARE_ASN1_ITEM(OSSL_CMP_PKISTATUS) # define OSSL_CMP_CERTORENCCERT_CERTIFICATE 0 # define OSSL_CMP_CERTORENCCERT_ENCRYPTEDCERT 1 -DEFINE_OR_DECLARE_STACK_OF(OSSL_CMP_CERTSTATUS) -DEFINE_OR_DECLARE_STACK_OF(OSSL_CMP_ITAV) -DEFINE_OR_DECLARE_STACK_OF(OSSL_CMP_PKISI) -DEFINE_OR_DECLARE_STACK_OF(OSSL_CMP_CERTREPMESSAGE) -DEFINE_OR_DECLARE_STACK_OF(OSSL_CMP_CERTRESPONSE) - /* data type declarations */ typedef struct ossl_cmp_ctx_st OSSL_CMP_CTX; typedef struct ossl_cmp_pkiheader_st OSSL_CMP_PKIHEADER; @@ -216,16 +210,21 @@ typedef struct ossl_cmp_msg_st OSSL_CMP_MSG; DECLARE_ASN1_DUP_FUNCTION(OSSL_CMP_MSG) DECLARE_ASN1_ENCODE_FUNCTIONS(OSSL_CMP_MSG, OSSL_CMP_MSG, OSSL_CMP_MSG) typedef struct ossl_cmp_certstatus_st OSSL_CMP_CERTSTATUS; +DEFINE_STACK_OF(OSSL_CMP_CERTSTATUS) typedef struct ossl_cmp_itav_st OSSL_CMP_ITAV; DECLARE_ASN1_DUP_FUNCTION(OSSL_CMP_ITAV) +DEFINE_STACK_OF(OSSL_CMP_ITAV) typedef struct ossl_cmp_revrepcontent_st OSSL_CMP_REVREPCONTENT; typedef struct ossl_cmp_pkisi_st OSSL_CMP_PKISI; DECLARE_ASN1_FUNCTIONS(OSSL_CMP_PKISI) DECLARE_ASN1_DUP_FUNCTION(OSSL_CMP_PKISI) +DEFINE_STACK_OF(OSSL_CMP_PKISI) typedef struct ossl_cmp_certrepmessage_st OSSL_CMP_CERTREPMESSAGE; +DEFINE_STACK_OF(OSSL_CMP_CERTREPMESSAGE) typedef struct ossl_cmp_pollrep_st OSSL_CMP_POLLREP; typedef STACK_OF(OSSL_CMP_POLLREP) OSSL_CMP_POLLREPCONTENT; typedef struct ossl_cmp_certresponse_st OSSL_CMP_CERTRESPONSE; +DEFINE_STACK_OF(OSSL_CMP_CERTRESPONSE) typedef STACK_OF(ASN1_UTF8STRING) OSSL_CMP_PKIFREETEXT; /* diff --git a/include/openssl/cms.h b/include/openssl/cms.h index a0f4b6a0..c7e5abcf 100644 --- a/include/openssl/cms.h +++ b/include/openssl/cms.h @@ -36,11 +36,10 @@ typedef struct CMS_Receipt_st CMS_Receipt; typedef struct CMS_RecipientEncryptedKey_st CMS_RecipientEncryptedKey; typedef struct CMS_OtherKeyAttribute_st CMS_OtherKeyAttribute; -DEFINE_OR_DECLARE_STACK_OF(CMS_SignerInfo) -DEFINE_OR_DECLARE_STACK_OF(CMS_RecipientEncryptedKey) -DEFINE_OR_DECLARE_STACK_OF(CMS_RecipientInfo) -DEFINE_OR_DECLARE_STACK_OF(CMS_RevocationInfoChoice) - +DEFINE_STACK_OF(CMS_SignerInfo) +DEFINE_STACK_OF(CMS_RecipientEncryptedKey) +DEFINE_STACK_OF(CMS_RecipientInfo) +DEFINE_STACK_OF(CMS_RevocationInfoChoice) DECLARE_ASN1_FUNCTIONS(CMS_ContentInfo) DECLARE_ASN1_FUNCTIONS(CMS_ReceiptRequest) DECLARE_ASN1_PRINT_FUNCTION(CMS_ContentInfo) diff --git a/include/openssl/conf.h b/include/openssl/conf.h index 6a36a85b..d15d4787 100644 --- a/include/openssl/conf.h +++ b/include/openssl/conf.h @@ -33,9 +33,7 @@ typedef struct { char *value; } CONF_VALUE; -DEFINE_OR_DECLARE_STACK_OF(CONF_VALUE) -DEFINE_OR_DECLARE_STACK_OF(CONF_MODULE) - +DEFINE_STACK_OF(CONF_VALUE) DEFINE_LHASH_OF(CONF_VALUE); struct conf_st; @@ -60,7 +58,8 @@ struct conf_method_st { typedef struct conf_imodule_st CONF_IMODULE; typedef struct conf_module_st CONF_MODULE; -STACK_OF(CONF_IMODULE); +DEFINE_STACK_OF(CONF_MODULE) +DEFINE_STACK_OF(CONF_IMODULE) /* DSO module function typedefs */ typedef int conf_init_func (CONF_IMODULE *md, const CONF *cnf); diff --git a/include/openssl/crmf.h b/include/openssl/crmf.h index 4908ebd5..02ed3af7 100644 --- a/include/openssl/crmf.h +++ b/include/openssl/crmf.h @@ -30,9 +30,6 @@ extern "C" { # endif -DEFINE_OR_DECLARE_STACK_OF(OSSL_CRMF_MSG) -DEFINE_OR_DECLARE_STACK_OF(OSSL_CRMF_CERTID) - # define OSSL_CRMF_POPOPRIVKEY_THISMESSAGE 0 # define OSSL_CRMF_POPOPRIVKEY_SUBSEQUENTMESSAGE 1 # define OSSL_CRMF_POPOPRIVKEY_DHMAC 2 @@ -46,6 +43,7 @@ typedef struct ossl_crmf_encryptedvalue_st OSSL_CRMF_ENCRYPTEDVALUE; DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_ENCRYPTEDVALUE) typedef struct ossl_crmf_msg_st OSSL_CRMF_MSG; DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_MSG) +DEFINE_STACK_OF(OSSL_CRMF_MSG) typedef struct ossl_crmf_attributetypeandvalue_st OSSL_CRMF_ATTRIBUTETYPEANDVALUE; typedef struct ossl_crmf_pbmparameter_st OSSL_CRMF_PBMPARAMETER; DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_PBMPARAMETER) @@ -53,6 +51,7 @@ typedef struct ossl_crmf_poposigningkey_st OSSL_CRMF_POPOSIGNINGKEY; typedef struct ossl_crmf_certrequest_st OSSL_CRMF_CERTREQUEST; typedef struct ossl_crmf_certid_st OSSL_CRMF_CERTID; DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_CERTID) +DEFINE_STACK_OF(OSSL_CRMF_CERTID) typedef struct ossl_crmf_pkipublicationinfo_st OSSL_CRMF_PKIPUBLICATIONINFO; DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_PKIPUBLICATIONINFO) diff --git a/include/openssl/crypto.h b/include/openssl/crypto.h index 0b3a20df..e20d17b5 100644 --- a/include/openssl/crypto.h +++ b/include/openssl/crypto.h @@ -169,8 +169,7 @@ struct crypto_ex_data_st { OPENSSL_CTX *ctx; STACK_OF(void) *sk; }; - -DEFINE_OR_DECLARE_STACK_OF(void) +DEFINE_STACK_OF(void) /* * Per class, we have a STACK of function pointers. diff --git a/include/openssl/ct.h b/include/openssl/ct.h index 280f7cee..c3447004 100644 --- a/include/openssl/ct.h +++ b/include/openssl/ct.h @@ -34,9 +34,6 @@ extern "C" { /* All hashes are SHA256 in v1 of Certificate Transparency */ # define CT_V1_HASHLEN SHA256_DIGEST_LENGTH -DEFINE_OR_DECLARE_STACK_OF(SCT) -DEFINE_OR_DECLARE_STACK_OF(CTLOG) - typedef enum { CT_LOG_ENTRY_TYPE_NOT_SET = -1, CT_LOG_ENTRY_TYPE_X509 = 0, @@ -64,6 +61,9 @@ typedef enum { SCT_VALIDATION_STATUS_UNKNOWN_VERSION } sct_validation_status_t; +DEFINE_STACK_OF(SCT) +DEFINE_STACK_OF(CTLOG) + /****************************************** * CT policy evaluation context functions * ******************************************/ diff --git a/include/openssl/ess.h b/include/openssl/ess.h index 5a31f678..c20bf820 100644 --- a/include/openssl/ess.h +++ b/include/openssl/ess.h @@ -19,16 +19,16 @@ extern "C" { # include # include -DEFINE_OR_DECLARE_STACK_OF(ESS_CERT_ID) -DEFINE_OR_DECLARE_STACK_OF(ESS_CERT_ID_V2) - typedef struct ESS_issuer_serial ESS_ISSUER_SERIAL; typedef struct ESS_cert_id ESS_CERT_ID; typedef struct ESS_signing_cert ESS_SIGNING_CERT; +DEFINE_STACK_OF(ESS_CERT_ID) + typedef struct ESS_signing_cert_v2_st ESS_SIGNING_CERT_V2; typedef struct ESS_cert_id_v2_st ESS_CERT_ID_V2; +DEFINE_STACK_OF(ESS_CERT_ID_V2) DECLARE_ASN1_ALLOC_FUNCTIONS(ESS_ISSUER_SERIAL) DECLARE_ASN1_ENCODE_FUNCTIONS_only(ESS_ISSUER_SERIAL, ESS_ISSUER_SERIAL) diff --git a/include/openssl/ocsp.h b/include/openssl/ocsp.h index d40e843e..b9f55c01 100644 --- a/include/openssl/ocsp.h +++ b/include/openssl/ocsp.h @@ -102,13 +102,14 @@ extern "C" { # define OCSP_RESPID_KEY 0x400 # define OCSP_NOTIME 0x800 -DEFINE_OR_DECLARE_STACK_OF(OCSP_CERTID) -DEFINE_OR_DECLARE_STACK_OF(OCSP_ONEREQ) -DEFINE_OR_DECLARE_STACK_OF(OCSP_RESPID) -DEFINE_OR_DECLARE_STACK_OF(OCSP_SINGLERESP) - typedef struct ocsp_cert_id_st OCSP_CERTID; + +DEFINE_STACK_OF(OCSP_CERTID) + typedef struct ocsp_one_request_st OCSP_ONEREQ; + +DEFINE_STACK_OF(OCSP_ONEREQ) + typedef struct ocsp_req_info_st OCSP_REQINFO; typedef struct ocsp_signature_st OCSP_SIGNATURE; typedef struct ocsp_request_st OCSP_REQUEST; @@ -125,6 +126,7 @@ typedef struct ocsp_resp_bytes_st OCSP_RESPBYTES; # define V_OCSP_RESPID_NAME 0 # define V_OCSP_RESPID_KEY 1 +DEFINE_STACK_OF(OCSP_RESPID) typedef struct ocsp_revoked_info_st OCSP_REVOKEDINFO; @@ -135,6 +137,7 @@ typedef struct ocsp_revoked_info_st OCSP_REVOKEDINFO; typedef struct ocsp_cert_status_st OCSP_CERTSTATUS; typedef struct ocsp_single_response_st OCSP_SINGLERESP; +DEFINE_STACK_OF(OCSP_SINGLERESP) typedef struct ocsp_response_data_st OCSP_RESPDATA; diff --git a/include/openssl/pkcs12.h b/include/openssl/pkcs12.h index 474992e4..51d6e8a4 100644 --- a/include/openssl/pkcs12.h +++ b/include/openssl/pkcs12.h @@ -46,14 +46,14 @@ extern "C" { # define KEY_EX 0x10 # define KEY_SIG 0x80 -DEFINE_OR_DECLARE_STACK_OF(PKCS12_SAFEBAG) - typedef struct PKCS12_MAC_DATA_st PKCS12_MAC_DATA; typedef struct PKCS12_st PKCS12; typedef struct PKCS12_SAFEBAG_st PKCS12_SAFEBAG; +DEFINE_STACK_OF(PKCS12_SAFEBAG) + typedef struct pkcs12_bag_st PKCS12_BAGS; # define PKCS12_ERROR 0 diff --git a/include/openssl/pkcs7.h b/include/openssl/pkcs7.h index 4d114d75..7c079a2e 100644 --- a/include/openssl/pkcs7.h +++ b/include/openssl/pkcs7.h @@ -28,7 +28,6 @@ extern "C" { #endif - /*- Encryption_ID DES-CBC Digest_ID MD5 @@ -52,7 +51,8 @@ typedef struct pkcs7_signer_info_st { /* The private key to sign with */ EVP_PKEY *pkey; } PKCS7_SIGNER_INFO; -DEFINE_OR_DECLARE_STACK_OF(PKCS7_SIGNER_INFO) + +DEFINE_STACK_OF(PKCS7_SIGNER_INFO) typedef struct pkcs7_recip_info_st { ASN1_INTEGER *version; /* version 0 */ @@ -61,8 +61,8 @@ typedef struct pkcs7_recip_info_st { ASN1_OCTET_STRING *enc_key; X509 *cert; /* get the pub-key from this */ } PKCS7_RECIP_INFO; -DEFINE_OR_DECLARE_STACK_OF(PKCS7_RECIP_INFO) +DEFINE_STACK_OF(PKCS7_RECIP_INFO) typedef struct pkcs7_signed_st { ASN1_INTEGER *version; /* version 1 */ @@ -148,8 +148,8 @@ typedef struct pkcs7_st { ASN1_TYPE *other; } d; } PKCS7; -DEFINE_OR_DECLARE_STACK_OF(PKCS7) +DEFINE_STACK_OF(PKCS7) # define PKCS7_OP_SET_DETACHED_SIGNATURE 1 # define PKCS7_OP_GET_DETACHED_SIGNATURE 2 diff --git a/include/openssl/safestack.h b/include/openssl/safestack.h index 5d099e62..b8de23cf 100644 --- a/include/openssl/safestack.h +++ b/include/openssl/safestack.h @@ -132,11 +132,11 @@ extern "C" { return (sk_##t1##_compfunc)OPENSSL_sk_set_cmp_func((OPENSSL_STACK *)sk, (OPENSSL_sk_compfunc)compare); \ } -# define DEFINE_STACK_OF(t) SKM_DEFINE_STACK_OF(t, t, t) -# define DEFINE_STACK_OF_CONST(t) SKM_DEFINE_STACK_OF(t, const t, t) # define DEFINE_SPECIAL_STACK_OF(t1, t2) SKM_DEFINE_STACK_OF(t1, t2, t2) +# define DEFINE_STACK_OF(t) SKM_DEFINE_STACK_OF(t, t, t) # define DEFINE_SPECIAL_STACK_OF_CONST(t1, t2) \ SKM_DEFINE_STACK_OF(t1, const t2, t2) +# define DEFINE_STACK_OF_CONST(t) SKM_DEFINE_STACK_OF(t, const t, t) /*- * Strings are special: normally an lhash entry will point to a single @@ -155,28 +155,6 @@ extern "C" { typedef char *OPENSSL_STRING; typedef const char *OPENSSL_CSTRING; -# define DEFINE_STACK_OF_STRING() \ - DEFINE_SPECIAL_STACK_OF(OPENSSL_STRING, char) -# define DEFINE_STACK_OF_CSTRING() \ - DEFINE_SPECIAL_STACK_OF_CONST(OPENSSL_CSTRING, char) - -/* - * If we're building OpenSSL, or we have no-deprecated configured, - * then we don't define the inline functions (see |SKM_DEFINE_STACK_OF|, - * above), we just declare the stack datatypes. Otherwise, for compatibility - * and to not remove the API's, we define the functions. We have the - * trailing semicolon so that uses of this never need it. - */ -#if defined(OPENSSL_BUILDING_OPENSSL) || defined(OPENSSL_NO_DEPRECATED_3_0) -# define DEFINE_OR_DECLARE_STACK_OF(s) STACK_OF(s); -# define DEFINE_OR_DECLARE_STACK_OF_STRING() STACK_OF(OPENSSL_STRING); -# define DEFINE_OR_DECLARE_STACK_OF_CSTRING() STACK_OF(OPENSSL_CSTRING); -#else -# define DEFINE_OR_DECLARE_STACK_OF(s) DEFINE_STACK_OF(s) -# define DEFINE_OR_DECLARE_STACK_OF_STRING() DEFINE_STACK_OF_STRING() -# define DEFINE_OR_DECLARE_STACK_OF_CSTRING() DEFINE_STACK_OF_CSTRING() -#endif - /*- * Confusingly, LHASH_OF(STRING) deals with char ** throughout, but * STACK_OF(STRING) is really more like STACK_OF(char), only, as mentioned @@ -184,17 +162,15 @@ typedef const char *OPENSSL_CSTRING; * chars. So, we have to implement STRING specially for STACK_OF. This is * dealt with in the autogenerated macros below. */ -DEFINE_OR_DECLARE_STACK_OF_STRING() -DEFINE_OR_DECLARE_STACK_OF_CSTRING() +DEFINE_SPECIAL_STACK_OF(OPENSSL_STRING, char) +DEFINE_SPECIAL_STACK_OF_CONST(OPENSSL_CSTRING, char) -#if !defined(OPENSSL_NO_DEPRECATED_3_0) /* - * This is not used by OpenSSL. A block of bytes, NOT nul-terminated. + * Similarly, we sometimes use a block of characters, NOT nul-terminated. * These should also be distinguished from "normal" stacks. */ typedef void *OPENSSL_BLOCK; DEFINE_SPECIAL_STACK_OF(OPENSSL_BLOCK, void) -#endif /* * If called without higher optimization (min. -xO3) the Oracle Developer diff --git a/include/openssl/srp.h b/include/openssl/srp.h index dc7bce93..56d294b7 100644 --- a/include/openssl/srp.h +++ b/include/openssl/srp.h @@ -33,15 +33,14 @@ extern "C" { # endif -DEFINE_OR_DECLARE_STACK_OF(SRP_gN_cache) -DEFINE_OR_DECLARE_STACK_OF(SRP_user_pwd) -DEFINE_OR_DECLARE_STACK_OF(SRP_gN) - typedef struct SRP_gN_cache_st { char *b64_bn; BIGNUM *bn; } SRP_gN_cache; + +DEFINE_STACK_OF(SRP_gN_cache) + typedef struct SRP_user_pwd_st { /* Owned by us. */ char *id; @@ -61,6 +60,7 @@ void SRP_user_pwd_set_gN(SRP_user_pwd *user_pwd, const BIGNUM *g, const BIGNUM * int SRP_user_pwd_set1_ids(SRP_user_pwd *user_pwd, const char *id, const char *info); int SRP_user_pwd_set0_sv(SRP_user_pwd *user_pwd, BIGNUM *s, BIGNUM *v); +DEFINE_STACK_OF(SRP_user_pwd) typedef struct SRP_VBASE_st { STACK_OF(SRP_user_pwd) *users_pwd; @@ -80,6 +80,7 @@ typedef struct SRP_gN_st { const BIGNUM *N; } SRP_gN; +DEFINE_STACK_OF(SRP_gN) SRP_VBASE *SRP_VBASE_new(char *seed_key); void SRP_VBASE_free(SRP_VBASE *vb); diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index cfceb607..348f24f8 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -231,10 +231,8 @@ typedef struct tls_sigalgs_st TLS_SIGALGS; typedef struct ssl_conf_ctx_st SSL_CONF_CTX; typedef struct ssl_comp_st SSL_COMP; -DEFINE_OR_DECLARE_STACK_OF(SSL_CIPHER) -DEFINE_OR_DECLARE_STACK_OF(SSL_COMP) -DEFINE_OR_DECLARE_STACK_OF(SRTP_PROTECTION_PROFILE) -DEFINE_OR_DECLARE_STACK_OF(SSL_COMP) +STACK_OF(SSL_CIPHER); +STACK_OF(SSL_COMP); /* SRTP protection profiles for use with the use_srtp extension (RFC 5764)*/ typedef struct srtp_protection_profile_st { @@ -242,6 +240,7 @@ typedef struct srtp_protection_profile_st { unsigned long id; } SRTP_PROTECTION_PROFILE; +DEFINE_STACK_OF(SRTP_PROTECTION_PROFILE) typedef int (*tls_session_ticket_ext_cb_fn)(SSL *s, const unsigned char *data, int len, void *arg); @@ -981,6 +980,8 @@ extern "C" { * These need to be after the above set of includes due to a compiler bug * in VisualStudio 2015 */ +DEFINE_STACK_OF_CONST(SSL_CIPHER) +DEFINE_STACK_OF(SSL_COMP) /* compatibility */ # define SSL_set_app_data(s,arg) (SSL_set_ex_data(s,0,(char *)(arg))) diff --git a/include/openssl/ts.h b/include/openssl/ts.h index bf8f236c..1229838d 100644 --- a/include/openssl/ts.h +++ b/include/openssl/ts.h @@ -37,8 +37,6 @@ extern "C" { # include # include -DEFINE_OR_DECLARE_STACK_OF(EVP_MD) - typedef struct TS_msg_imprint_st TS_MSG_IMPRINT; typedef struct TS_req_st TS_REQ; typedef struct TS_accuracy_st TS_ACCURACY; @@ -266,6 +264,8 @@ typedef int (*TS_extension_cb) (struct TS_resp_ctx *, X509_EXTENSION *, typedef struct TS_resp_ctx TS_RESP_CTX; +DEFINE_STACK_OF_CONST(EVP_MD) + /* Creates a response context that can be used for generating responses. */ TS_RESP_CTX *TS_RESP_CTX_new(void); void TS_RESP_CTX_free(TS_RESP_CTX *ctx); diff --git a/include/openssl/types.h b/include/openssl/types.h index 27f90a7b..2b1d0820 100644 --- a/include/openssl/types.h +++ b/include/openssl/types.h @@ -60,9 +60,7 @@ typedef int ASN1_BOOLEAN; typedef int ASN1_NULL; # endif -typedef struct asn1_type_st ASN1_TYPE; typedef struct asn1_object_st ASN1_OBJECT; -typedef struct asn1_string_table_st ASN1_STRING_TABLE; typedef struct ASN1_ITEM_st ASN1_ITEM; typedef struct asn1_pctx_st ASN1_PCTX; diff --git a/include/openssl/ui.h b/include/openssl/ui.h index fa55d92a..254ec6c2 100644 --- a/include/openssl/ui.h +++ b/include/openssl/ui.h @@ -283,8 +283,7 @@ const UI_METHOD *UI_null(void); * about a string or a prompt, including test data for a verification prompt. */ typedef struct ui_string_st UI_STRING; - -DEFINE_OR_DECLARE_STACK_OF(UI_STRING) +DEFINE_STACK_OF(UI_STRING) /* * The different types of strings that are currently supported. This is only diff --git a/include/openssl/x509.h b/include/openssl/x509.h index 31098029..c54a91b6 100644 --- a/include/openssl/x509.h +++ b/include/openssl/x509.h @@ -78,24 +78,32 @@ typedef struct X509_sig_st X509_SIG; typedef struct X509_name_entry_st X509_NAME_ENTRY; -DEFINE_OR_DECLARE_STACK_OF(X509_NAME_ENTRY) -DEFINE_OR_DECLARE_STACK_OF(X509_NAME) -DEFINE_OR_DECLARE_STACK_OF(X509) -DEFINE_OR_DECLARE_STACK_OF(X509_REVOKED) -DEFINE_OR_DECLARE_STACK_OF(X509_CRL) +DEFINE_STACK_OF(X509_NAME_ENTRY) + +DEFINE_STACK_OF(X509_NAME) # define X509_EX_V_NETSCAPE_HACK 0x8000 # define X509_EX_V_INIT 0x0001 typedef struct X509_extension_st X509_EXTENSION; -DEFINE_OR_DECLARE_STACK_OF(X509_EXTENSION) + typedef STACK_OF(X509_EXTENSION) X509_EXTENSIONS; + +DEFINE_STACK_OF(X509_EXTENSION) + typedef struct x509_attributes_st X509_ATTRIBUTE; -DEFINE_OR_DECLARE_STACK_OF(X509_ATTRIBUTE) + +DEFINE_STACK_OF(X509_ATTRIBUTE) + typedef struct X509_req_info_st X509_REQ_INFO; + typedef struct X509_req_st X509_REQ; + typedef struct x509_cert_aux_st X509_CERT_AUX; + typedef struct x509_cinf_st X509_CINF; +DEFINE_STACK_OF(X509) + /* This is used for a table of trust checking functions */ typedef struct x509_trust_st { @@ -106,8 +114,8 @@ typedef struct x509_trust_st { int arg1; void *arg2; } X509_TRUST; -DEFINE_OR_DECLARE_STACK_OF(X509_TRUST) +DEFINE_STACK_OF(X509_TRUST) /* standard trust ids */ @@ -219,8 +227,12 @@ DEFINE_OR_DECLARE_STACK_OF(X509_TRUST) XN_FLAG_FN_LN | \ XN_FLAG_FN_ALIGN) +DEFINE_STACK_OF(X509_REVOKED) + typedef struct X509_crl_info_st X509_CRL_INFO; +DEFINE_STACK_OF(X509_CRL) + typedef struct private_key_st { int version; /* The PKCS#8 data types */ @@ -244,7 +256,8 @@ typedef struct X509_info_st { int enc_len; char *enc_data; } X509_INFO; -DEFINE_OR_DECLARE_STACK_OF(X509_INFO) + +DEFINE_STACK_OF(X509_INFO) /* * The next 2 structures and their 8 routines are used to manipulate Netscape's diff --git a/include/openssl/x509_vfy.h b/include/openssl/x509_vfy.h index 84b076a1..5822eab5 100644 --- a/include/openssl/x509_vfy.h +++ b/include/openssl/x509_vfy.h @@ -60,9 +60,9 @@ typedef enum { #define X509_LU_FAIL 0 #endif -DEFINE_OR_DECLARE_STACK_OF(X509_LOOKUP) -DEFINE_OR_DECLARE_STACK_OF(X509_OBJECT) -DEFINE_OR_DECLARE_STACK_OF(X509_VERIFY_PARAM) +DEFINE_STACK_OF(X509_LOOKUP) +DEFINE_STACK_OF(X509_OBJECT) +DEFINE_STACK_OF(X509_VERIFY_PARAM) int X509_STORE_set_depth(X509_STORE *store, int depth); diff --git a/include/openssl/x509v3.h b/include/openssl/x509v3.h index e4f09adf..6f4743d1 100644 --- a/include/openssl/x509v3.h +++ b/include/openssl/x509v3.h @@ -25,25 +25,6 @@ extern "C" { #endif -DEFINE_OR_DECLARE_STACK_OF(GENERAL_NAME) -DEFINE_OR_DECLARE_STACK_OF(X509V3_EXT_METHOD) -DEFINE_OR_DECLARE_STACK_OF(GENERAL_NAMES) -DEFINE_OR_DECLARE_STACK_OF(ACCESS_DESCRIPTION) -DEFINE_OR_DECLARE_STACK_OF(DIST_POINT) -DEFINE_OR_DECLARE_STACK_OF(SXNETID) -DEFINE_OR_DECLARE_STACK_OF(POLICYQUALINFO) -DEFINE_OR_DECLARE_STACK_OF(POLICYINFO) -DEFINE_OR_DECLARE_STACK_OF(POLICY_MAPPING) -DEFINE_OR_DECLARE_STACK_OF(GENERAL_SUBTREE) -DEFINE_OR_DECLARE_STACK_OF(X509_PURPOSE) -DEFINE_OR_DECLARE_STACK_OF(X509_POLICY_NODE) -DEFINE_OR_DECLARE_STACK_OF(ASIdOrRange) -DEFINE_OR_DECLARE_STACK_OF(IPAddressOrRange) -DEFINE_OR_DECLARE_STACK_OF(IPAddressFamily) -DEFINE_OR_DECLARE_STACK_OF(ASN1_STRING) -DEFINE_OR_DECLARE_STACK_OF(ADMISSIONS) -DEFINE_OR_DECLARE_STACK_OF(PROFESSION_INFO) - /* Forward reference */ struct v3_ext_method; struct v3_ext_ctx; @@ -116,6 +97,8 @@ struct v3_ext_ctx { typedef struct v3_ext_method X509V3_EXT_METHOD; +DEFINE_STACK_OF(X509V3_EXT_METHOD) + /* ext_flags values */ # define X509V3_EXT_DYNAMIC 0x1 # define X509V3_EXT_CTX_DEP 0x2 @@ -186,7 +169,11 @@ typedef STACK_OF(ASN1_OBJECT) EXTENDED_KEY_USAGE; typedef STACK_OF(ASN1_INTEGER) TLS_FEATURE; +DEFINE_STACK_OF(GENERAL_NAME) typedef STACK_OF(GENERAL_NAME) GENERAL_NAMES; +DEFINE_STACK_OF(GENERAL_NAMES) + +DEFINE_STACK_OF(ACCESS_DESCRIPTION) typedef struct DIST_POINT_NAME_st { int type; @@ -221,6 +208,8 @@ struct DIST_POINT_st { typedef STACK_OF(DIST_POINT) CRL_DIST_POINTS; +DEFINE_STACK_OF(DIST_POINT) + struct AUTHORITY_KEYID_st { ASN1_OCTET_STRING *keyid; GENERAL_NAMES *issuer; @@ -234,6 +223,8 @@ typedef struct SXNET_ID_st { ASN1_OCTET_STRING *user; } SXNETID; +DEFINE_STACK_OF(SXNETID) + typedef struct SXNET_st { ASN1_INTEGER *version; STACK_OF(SXNETID) *ids; @@ -265,6 +256,8 @@ typedef struct POLICYQUALINFO_st { } d; } POLICYQUALINFO; +DEFINE_STACK_OF(POLICYQUALINFO) + typedef struct POLICYINFO_st { ASN1_OBJECT *policyid; STACK_OF(POLICYQUALINFO) *qualifiers; @@ -272,11 +265,15 @@ typedef struct POLICYINFO_st { typedef STACK_OF(POLICYINFO) CERTIFICATEPOLICIES; +DEFINE_STACK_OF(POLICYINFO) + typedef struct POLICY_MAPPING_st { ASN1_OBJECT *issuerDomainPolicy; ASN1_OBJECT *subjectDomainPolicy; } POLICY_MAPPING; +DEFINE_STACK_OF(POLICY_MAPPING) + typedef STACK_OF(POLICY_MAPPING) POLICY_MAPPINGS; typedef struct GENERAL_SUBTREE_st { @@ -285,6 +282,8 @@ typedef struct GENERAL_SUBTREE_st { ASN1_INTEGER *maximum; } GENERAL_SUBTREE; +DEFINE_STACK_OF(GENERAL_SUBTREE) + struct NAME_CONSTRAINTS_st { STACK_OF(GENERAL_SUBTREE) *permittedSubtrees; STACK_OF(GENERAL_SUBTREE) *excludedSubtrees; @@ -459,6 +458,8 @@ typedef struct x509_purpose_st { # define X509V3_ADD_DELETE 5L # define X509V3_ADD_SILENT 0x10 +DEFINE_STACK_OF(X509_PURPOSE) + DECLARE_ASN1_FUNCTIONS(BASIC_CONSTRAINTS) DECLARE_ASN1_FUNCTIONS(SXNET) @@ -735,6 +736,7 @@ int X509V3_NAME_from_section(X509_NAME *nm, STACK_OF(CONF_VALUE) *dn_sk, unsigned long chtype); void X509_POLICY_NODE_print(BIO *out, X509_POLICY_NODE *node, int indent); +DEFINE_STACK_OF(X509_POLICY_NODE) #ifndef OPENSSL_NO_RFC3779 typedef struct ASRange_st { @@ -753,6 +755,7 @@ typedef struct ASIdOrRange_st { } ASIdOrRange; typedef STACK_OF(ASIdOrRange) ASIdOrRanges; +DEFINE_STACK_OF(ASIdOrRange) # define ASIdentifierChoice_inherit 0 # define ASIdentifierChoice_asIdsOrRanges 1 @@ -790,6 +793,7 @@ typedef struct IPAddressOrRange_st { } IPAddressOrRange; typedef STACK_OF(IPAddressOrRange) IPAddressOrRanges; +DEFINE_STACK_OF(IPAddressOrRange) # define IPAddressChoice_inherit 0 # define IPAddressChoice_addressesOrRanges 1 @@ -808,6 +812,7 @@ typedef struct IPAddressFamily_st { } IPAddressFamily; typedef STACK_OF(IPAddressFamily) IPAddrBlocks; +DEFINE_STACK_OF(IPAddressFamily) DECLARE_ASN1_FUNCTIONS(IPAddressRange) DECLARE_ASN1_FUNCTIONS(IPAddressOrRange) @@ -879,6 +884,7 @@ int X509v3_addr_validate_resource_set(STACK_OF(X509) *chain, #endif /* OPENSSL_NO_RFC3779 */ +DEFINE_STACK_OF(ASN1_STRING) /* * Admission Syntax @@ -891,6 +897,8 @@ DECLARE_ASN1_FUNCTIONS(NAMING_AUTHORITY) DECLARE_ASN1_FUNCTIONS(PROFESSION_INFO) DECLARE_ASN1_FUNCTIONS(ADMISSIONS) DECLARE_ASN1_FUNCTIONS(ADMISSION_SYNTAX) +DEFINE_STACK_OF(ADMISSIONS) +DEFINE_STACK_OF(PROFESSION_INFO) typedef STACK_OF(PROFESSION_INFO) PROFESSION_INFOS; const ASN1_OBJECT *NAMING_AUTHORITY_get0_authorityId( diff --git a/ssl/d1_srtp.c b/ssl/d1_srtp.c index c46bc2e6..6498f84d 100644 --- a/ssl/d1_srtp.c +++ b/ssl/d1_srtp.c @@ -19,8 +19,6 @@ #ifndef OPENSSL_NO_SRTP -DEFINE_STACK_OF(SRTP_PROTECTION_PROFILE) - static SRTP_PROTECTION_PROFILE srtp_known_profiles[] = { { "SRTP_AES128_CM_SHA1_80", diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c index 70802a45..0709f59e 100644 --- a/ssl/s3_lib.c +++ b/ssl/s3_lib.c @@ -20,10 +20,6 @@ #include #include "internal/cryptlib.h" -DEFINE_STACK_OF(X509_NAME) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF_CONST(SSL_CIPHER) - #define TLS13_NUM_CIPHERS OSSL_NELEM(tls13_ciphers) #define SSL3_NUM_CIPHERS OSSL_NELEM(ssl3_ciphers) #define SSL3_NUM_SCSVS OSSL_NELEM(ssl3_scsvs) diff --git a/ssl/ssl_cert.c b/ssl/ssl_cert.c index 51bfa439..b2ef4759 100644 --- a/ssl/ssl_cert.c +++ b/ssl/ssl_cert.c @@ -25,9 +25,6 @@ #include "ssl_cert_table.h" #include "internal/thread_once.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_NAME) - static int ssl_security_default_callback(const SSL *s, const SSL_CTX *ctx, int op, int bits, int nid, void *other, void *ex); diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c index 44225752..c7c4dd1d 100644 --- a/ssl/ssl_ciph.c +++ b/ssl/ssl_ciph.c @@ -22,9 +22,6 @@ #include "internal/thread_once.h" #include "internal/cryptlib.h" -DEFINE_STACK_OF(SSL_COMP) -DEFINE_STACK_OF_CONST(SSL_CIPHER) - #define SSL_ENC_DES_IDX 0 #define SSL_ENC_3DES_IDX 1 #define SSL_ENC_RC4_IDX 2 diff --git a/ssl/ssl_conf.c b/ssl/ssl_conf.c index 9408acc8..cccda866 100644 --- a/ssl/ssl_conf.c +++ b/ssl/ssl_conf.c @@ -14,8 +14,6 @@ #include #include "internal/nelem.h" -DEFINE_STACK_OF(X509_NAME) - /* * structure holding name tables. This is used for permitted elements in lists * such as TLSv1. diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 7be75237..5f510351 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -26,14 +26,6 @@ #include "internal/refcount.h" #include "internal/ktls.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_NAME) -DEFINE_STACK_OF_CONST(SSL_CIPHER) -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF(OCSP_RESPID) -DEFINE_STACK_OF(SRTP_PROTECTION_PROFILE) -DEFINE_STACK_OF(SCT) - static int ssl_undefined_function_1(SSL *ssl, SSL3_RECORD *r, size_t s, int t) { (void)r; diff --git a/ssl/ssl_rsa.c b/ssl/ssl_rsa.c index 7a699747..e0b48870 100644 --- a/ssl/ssl_rsa.c +++ b/ssl/ssl_rsa.c @@ -17,8 +17,6 @@ #include #include -DEFINE_STACK_OF(X509) - static int ssl_set_cert(CERT *c, X509 *x509); static int ssl_set_pkey(CERT *c, EVP_PKEY *pkey); diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c index 8b8c59a9..c3779368 100644 --- a/ssl/ssl_sess.c +++ b/ssl/ssl_sess.c @@ -16,8 +16,6 @@ #include "ssl_local.h" #include "statem/statem_local.h" -DEFINE_STACK_OF(X509) - static void SSL_SESSION_list_remove(SSL_CTX *ctx, SSL_SESSION *s); static void SSL_SESSION_list_add(SSL_CTX *ctx, SSL_SESSION *s); static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck); diff --git a/ssl/statem/extensions.c b/ssl/statem/extensions.c index 3c023486..6bd16091 100644 --- a/ssl/statem/extensions.c +++ b/ssl/statem/extensions.c @@ -14,8 +14,6 @@ #include "statem_local.h" #include "internal/cryptlib.h" -DEFINE_STACK_OF(X509_NAME) - static int final_renegotiate(SSL *s, unsigned int context, int sent); static int init_server_name(SSL *s, unsigned int context); static int final_server_name(SSL *s, unsigned int context, int sent); diff --git a/ssl/statem/extensions_clnt.c b/ssl/statem/extensions_clnt.c index e3b51729..e983cb18 100644 --- a/ssl/statem/extensions_clnt.c +++ b/ssl/statem/extensions_clnt.c @@ -12,10 +12,6 @@ #include "internal/cryptlib.h" #include "statem_local.h" -DEFINE_STACK_OF(SRTP_PROTECTION_PROFILE) -DEFINE_STACK_OF_CONST(SSL_CIPHER) -DEFINE_STACK_OF(OCSP_RESPID) - EXT_RETURN tls_construct_ctos_renegotiate(SSL *s, WPACKET *pkt, unsigned int context, X509 *x, size_t chainidx) diff --git a/ssl/statem/extensions_srvr.c b/ssl/statem/extensions_srvr.c index fc11a1c9..c5fa96d6 100644 --- a/ssl/statem/extensions_srvr.c +++ b/ssl/statem/extensions_srvr.c @@ -12,10 +12,6 @@ #include "statem_local.h" #include "internal/cryptlib.h" -DEFINE_STACK_OF(SRTP_PROTECTION_PROFILE) -DEFINE_STACK_OF(OCSP_RESPID) -DEFINE_STACK_OF(X509_EXTENSION) - #define COOKIE_STATE_FORMAT_VERSION 0 /* diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index 3e65f971..a0050387 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -25,10 +25,6 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(SSL_COMP) -DEFINE_STACK_OF_CONST(SSL_CIPHER) - static MSG_PROCESS_RETURN tls_process_as_hello_retry_request(SSL *s, PACKET *pkt); static MSG_PROCESS_RETURN tls_process_encrypted_extensions(SSL *s, PACKET *pkt); diff --git a/ssl/statem/statem_lib.c b/ssl/statem/statem_lib.c index f6d0c6be..30e994da 100644 --- a/ssl/statem/statem_lib.c +++ b/ssl/statem/statem_lib.c @@ -21,10 +21,6 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_NAME) -DEFINE_STACK_OF_CONST(SSL_CIPHER) - /* * Map error codes to TLS/SSL alart types. */ diff --git a/ssl/statem/statem_srvr.c b/ssl/statem/statem_srvr.c index 61fdaccc..1da07cf3 100644 --- a/ssl/statem/statem_srvr.c +++ b/ssl/statem/statem_srvr.c @@ -26,10 +26,6 @@ #include #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(SSL_COMP) -DEFINE_STACK_OF_CONST(SSL_CIPHER) - #define TICKET_NONCE_SIZE 8 typedef struct { diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 8e230849..951e2821 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -26,10 +26,6 @@ #include "ssl_local.h" #include -DEFINE_STACK_OF_CONST(SSL_CIPHER) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_NAME) - static const SIGALG_LOOKUP *find_sig_alg(SSL *s, X509 *x, EVP_PKEY *pkey); static int tls12_sigalg_allowed(const SSL *s, int op, const SIGALG_LOOKUP *lu); diff --git a/test/cipherbytes_test.c b/test/cipherbytes_test.c index 9e2c5eaa..370d033a 100644 --- a/test/cipherbytes_test.c +++ b/test/cipherbytes_test.c @@ -21,8 +21,6 @@ #include "internal/nelem.h" #include "testutil.h" -DEFINE_STACK_OF(SSL_CIPHER) - static SSL_CTX *ctx; static SSL *s; diff --git a/test/cipherlist_test.c b/test/cipherlist_test.c index 3bc103c7..b950411c 100644 --- a/test/cipherlist_test.c +++ b/test/cipherlist_test.c @@ -21,8 +21,6 @@ #include "internal/nelem.h" #include "testutil.h" -DEFINE_STACK_OF_CONST(SSL_CIPHER) - typedef struct cipherlist_test_fixture { const char *test_case_name; SSL_CTX *server; diff --git a/test/ciphername_test.c b/test/ciphername_test.c index c82a1648..c4ec6cad 100644 --- a/test/ciphername_test.c +++ b/test/ciphername_test.c @@ -22,8 +22,6 @@ #include "internal/nelem.h" #include "testutil.h" -DEFINE_STACK_OF(SSL_CIPHER) - typedef struct cipher_id_name { int id; const char *name; diff --git a/test/cmp_client_test.c b/test/cmp_client_test.c index b1066234..44d09e04 100644 --- a/test/cmp_client_test.c +++ b/test/cmp_client_test.c @@ -15,9 +15,6 @@ #ifndef NDEBUG /* tests need mock server, which is available only if !NDEBUG */ -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(OSSL_CMP_ITAV) - static const char *server_key_f; static const char *server_cert_f; static const char *client_key_f; diff --git a/test/cmp_ctx_test.c b/test/cmp_ctx_test.c index a2a8adc8..470ab63b 100644 --- a/test/cmp_ctx_test.c +++ b/test/cmp_ctx_test.c @@ -13,12 +13,6 @@ #include -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(ASN1_UTF8STRING) -DEFINE_STACK_OF(X509_EXTENSION) -DEFINE_STACK_OF(OSSL_CMP_ITAV) -DEFINE_STACK_OF(POLICYINFO) - typedef struct test_fixture { const char *test_case_name; OSSL_CMP_CTX *ctx; diff --git a/test/cmp_hdr_test.c b/test/cmp_hdr_test.c index cd30c497..6e78432d 100644 --- a/test/cmp_hdr_test.c +++ b/test/cmp_hdr_test.c @@ -11,9 +11,6 @@ #include "cmp_testlib.h" -DEFINE_STACK_OF(OSSL_CMP_ITAV) -DEFINE_STACK_OF(ASN1_UTF8STRING) - static unsigned char rand_data[OSSL_CMP_TRANSACTIONID_LENGTH]; typedef struct test_fixture { diff --git a/test/cmp_msg_test.c b/test/cmp_msg_test.c index 413e284f..6aadd439 100644 --- a/test/cmp_msg_test.c +++ b/test/cmp_msg_test.c @@ -11,8 +11,6 @@ #include "cmp_testlib.h" -DEFINE_STACK_OF(OSSL_CMP_CERTRESPONSE) - static const char *server_cert_f; static const char *pkcs10_f; diff --git a/test/cmp_protect_test.c b/test/cmp_protect_test.c index ce5a6cb4..fc006ac6 100644 --- a/test/cmp_protect_test.c +++ b/test/cmp_protect_test.c @@ -11,8 +11,6 @@ #include "cmp_testlib.h" -DEFINE_STACK_OF(X509) - static const char *ir_protected_f; static const char *ir_unprotected_f; static const char *ip_PBM_f; diff --git a/test/cmp_status_test.c b/test/cmp_status_test.c index bf6699a2..7358f158 100644 --- a/test/cmp_status_test.c +++ b/test/cmp_status_test.c @@ -11,8 +11,6 @@ #include "cmp_testlib.h" -DEFINE_STACK_OF(ASN1_UTF8STRING) - typedef struct test_fixture { const char *test_case_name; int pkistatus; diff --git a/test/cmp_testlib.c b/test/cmp_testlib.c index d25ab746..bb3351b4 100644 --- a/test/cmp_testlib.c +++ b/test/cmp_testlib.c @@ -12,8 +12,6 @@ #include "cmp_testlib.h" #include /* needed in case config no-deprecated */ -DEFINE_STACK_OF(X509) - EVP_PKEY *load_pem_key(const char *file) { EVP_PKEY *key = NULL; diff --git a/test/cmp_vfy_test.c b/test/cmp_vfy_test.c index c74dd2fa..5f43f1e2 100644 --- a/test/cmp_vfy_test.c +++ b/test/cmp_vfy_test.c @@ -11,7 +11,6 @@ #include "cmp_testlib.h" #include "../crypto/crmf/crmf_local.h" /* for manipulating POPO signature */ -DEFINE_STACK_OF(OSSL_CRMF_MSG) static const char *server_f; static const char *client_f; diff --git a/test/cmsapitest.c b/test/cmsapitest.c index 2ac330a8..ad1cbd1c 100644 --- a/test/cmsapitest.c +++ b/test/cmsapitest.c @@ -16,8 +16,6 @@ #include "testutil.h" -DEFINE_STACK_OF(X509) - static X509 *cert = NULL; static EVP_PKEY *privkey = NULL; diff --git a/test/confdump.c b/test/confdump.c index 48b3779d..dbf62446 100644 --- a/test/confdump.c +++ b/test/confdump.c @@ -14,9 +14,6 @@ #include #include -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF_CSTRING() - static STACK_OF(OPENSSL_CSTRING) *section_names = NULL; static void collect_section_name(CONF_VALUE *v) diff --git a/test/crltest.c b/test/crltest.c index ac2d27b3..6a2ef4e9 100644 --- a/test/crltest.c +++ b/test/crltest.c @@ -17,9 +17,6 @@ #include "testutil.h" -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_CRL) - #define PARAM_TIME 1474934400 /* Sep 27th, 2016 */ static const char *kCRLTestRoot[] = { diff --git a/test/ct_test.c b/test/ct_test.c index 79ffcbf9..bd098c5d 100644 --- a/test/ct_test.c +++ b/test/ct_test.c @@ -21,9 +21,6 @@ #include #ifndef OPENSSL_NO_CT - -DEFINE_STACK_OF(SCT) - /* Used when declaring buffers to read text files into */ # define CT_TEST_MAX_FILE_SIZE 8096 diff --git a/test/danetest.c b/test/danetest.c index 96b9579f..b0d6ffe5 100644 --- a/test/danetest.c +++ b/test/danetest.c @@ -26,8 +26,6 @@ #include "internal/nelem.h" -DEFINE_STACK_OF(X509) - #define _UC(c) ((unsigned char)(c)) static const char *basedomain; diff --git a/test/dtls_mtu_test.c b/test/dtls_mtu_test.c index b45df8a2..33603bae 100644 --- a/test/dtls_mtu_test.c +++ b/test/dtls_mtu_test.c @@ -20,8 +20,6 @@ /* for SSL_READ_ETM() */ #include "../ssl/ssl_local.h" -DEFINE_STACK_OF(SSL_CIPHER) - static int debug = 0; static unsigned int clnt_psk_callback(SSL *ssl, const char *hint, diff --git a/test/evp_test.c b/test/evp_test.c index 6727a007..71e47162 100644 --- a/test/evp_test.c +++ b/test/evp_test.c @@ -25,8 +25,6 @@ #include "testutil.h" #include "evp_test.h" -DEFINE_STACK_OF_STRING() - #define AAD_NUM 4 typedef struct evp_test_method_st EVP_TEST_METHOD; diff --git a/test/handshake_helper.c b/test/handshake_helper.c index 32aa12c4..d46db3f2 100644 --- a/test/handshake_helper.c +++ b/test/handshake_helper.c @@ -26,8 +26,6 @@ #include #endif -DEFINE_STACK_OF(X509_NAME) - HANDSHAKE_RESULT *HANDSHAKE_RESULT_new(void) { HANDSHAKE_RESULT *ret; diff --git a/test/http_test.c b/test/http_test.c index f0b12a7d..6449c6f6 100644 --- a/test/http_test.c +++ b/test/http_test.c @@ -15,8 +15,6 @@ #include "testutil.h" -DEFINE_STACK_OF(CONF_VALUE) - static const ASN1_ITEM *x509_it = NULL; static X509 *x509 = NULL; #define SERVER "mock.server" diff --git a/test/ocspapitest.c b/test/ocspapitest.c index 4ea6c636..9e8c3062 100644 --- a/test/ocspapitest.c +++ b/test/ocspapitest.c @@ -18,8 +18,6 @@ #include "testutil.h" -DEFINE_STACK_OF(X509) - static const char *certstr; static const char *privkeystr; diff --git a/test/ssl_test.c b/test/ssl_test.c index 731f5697..c671feaf 100644 --- a/test/ssl_test.c +++ b/test/ssl_test.c @@ -19,8 +19,6 @@ #include "ssl_test_ctx.h" #include "testutil.h" -DEFINE_STACK_OF(X509_NAME) - static CONF *conf = NULL; static OSSL_PROVIDER *defctxnull = NULL, *thisprov = NULL; static OPENSSL_CTX *libctx = NULL; diff --git a/test/ssl_test_ctx.c b/test/ssl_test_ctx.c index f591adf9..6a3b66bc 100644 --- a/test/ssl_test_ctx.c +++ b/test/ssl_test_ctx.c @@ -20,9 +20,6 @@ # define strcasecmp _stricmp #endif -DEFINE_STACK_OF(CONF_VALUE) -DEFINE_STACK_OF(X509_NAME) - static const int default_app_data_size = 256; /* Default set to be as small as possible to exercise fragmentation. */ static const int default_max_fragment_size = 512; diff --git a/test/sslapitest.c b/test/sslapitest.c index f9349bc5..d1635585 100644 --- a/test/sslapitest.c +++ b/test/sslapitest.c @@ -37,10 +37,6 @@ #include "internal/ktls.h" #include "../ssl/ssl_local.h" -DEFINE_STACK_OF(OCSP_RESPID) -DEFINE_STACK_OF(X509) -DEFINE_STACK_OF(X509_NAME) - static OPENSSL_CTX *libctx = NULL; static OSSL_PROVIDER *defctxnull = NULL; @@ -5522,8 +5518,6 @@ static int test_pha_key_update(void) static SRP_VBASE *vbase = NULL; -DEFINE_STACK_OF(SRP_user_pwd) - static int ssl_srp_cb(SSL *s, int *ad, void *arg) { int ret = SSL3_AL_FATAL; diff --git a/test/sslcorrupttest.c b/test/sslcorrupttest.c index 476a1758..135fe485 100644 --- a/test/sslcorrupttest.c +++ b/test/sslcorrupttest.c @@ -11,8 +11,6 @@ #include "ssltestlib.h" #include "testutil.h" -DEFINE_STACK_OF(SSL_CIPHER) - static int docorrupt = 0; static void copy_flags(BIO *bio) diff --git a/test/ssltest_old.c b/test/ssltest_old.c index d45b2786..dca0694e 100644 --- a/test/ssltest_old.c +++ b/test/ssltest_old.c @@ -81,9 +81,6 @@ # include #endif -DEFINE_STACK_OF(SSL_COMP) -DEFINE_STACK_OF_STRING() - static SSL_CTX *s_ctx = NULL; static SSL_CTX *s_ctx2 = NULL; diff --git a/test/v3nametest.c b/test/v3nametest.c index 507b0fcf..d17ab714 100644 --- a/test/v3nametest.c +++ b/test/v3nametest.c @@ -19,8 +19,6 @@ # define strcasecmp _stricmp #endif -DEFINE_STACK_OF(GENERAL_NAME) - static const char *const names[] = { "a", "b", ".", "*", "@", ".a", "a.", ".b", "b.", ".*", "*.", "*@", "@*", "a@", "@a", "b@", "..", diff --git a/test/verify_extra_test.c b/test/verify_extra_test.c index 6cce6260..3dd45627 100644 --- a/test/verify_extra_test.c +++ b/test/verify_extra_test.c @@ -16,8 +16,6 @@ #include #include "testutil.h" -DEFINE_STACK_OF(X509) - static const char *roots_f; static const char *untrusted_f; static const char *bad_f; diff --git a/util/missingmacro.txt b/util/missingmacro.txt index 2b02fef5..ed0f6105 100644 --- a/util/missingmacro.txt +++ b/util/missingmacro.txt @@ -124,11 +124,6 @@ PKCS7_get_detached(3) PKCS7_is_detached(3) STACK_OF(3) SKM_DEFINE_STACK_OF(3) -DEFINE_OR_DECLARE_STACK_OF(3) -DEFINE_OR_DECLARE_STACK_OF_STRING(3) -DEFINE_OR_DECLARE_STACK_OF_CSTRING(3) -DEFINE_STACK_OF_STRING(3) -DEFINE_STACK_OF_CSTRING(3) U64(3) SSL_set_mtu(3) DTLS_set_link_mtu(3) diff --git a/util/perl/OpenSSL/ParseC.pm b/util/perl/OpenSSL/ParseC.pm index 6d060bb7..6d615016 100644 --- a/util/perl/OpenSSL/ParseC.pm +++ b/util/perl/OpenSSL/ParseC.pm @@ -372,28 +372,6 @@ EOF { regexp => qr/DEFINE_STACK_OF_CONST<<<\((.*)\)>>>/, massager => sub { return ("SKM_DEFINE_STACK_OF($1,const $1,$1)"); }, }, - { regexp => qr/DEFINE_STACK_OF_STRING<<<\((.*?)\)>>>/, - massager => sub { - return ("DEFINE_SPECIAL_STACK_OF(OPENSSL_STRING, char)"); - } - }, - { regexp => qr/DEFINE_STACK_OF_CSTRING<<<\((.*?)\)>>>/, - massager => sub { - return ("DEFINE_SPECIAL_STACK_OF_CONST(OPENSSL_CSTRING, char)"); - } - }, - # DEFINE_OR_DECLARE macro calls must be interpretted as DEFINE macro - # calls, because that's what they look like to the external apps. - # (if that ever changes, we must change the substitutions to STACK_OF) - { regexp => qr/DEFINE_OR_DECLARE_STACK_OF<<<\((.*?)\)>>>/, - massager => sub { return ("DEFINE_STACK_OF($1)"); } - }, - { regexp => qr/DEFINE_OR_DECLARE_STACK_OF_STRING<<<\(\)>>>/, - massager => sub { return ("DEFINE_STACK_OF_STRING()"); }, - }, - { regexp => qr/DEFINE_OR_DECLARE_STACK_OF_CSTRING<<<\(\)>>>/, - massager => sub { return ("DEFINE_STACK_OF_CSTRING()"); }, - }, ##### # ASN1 stuff