diff options
-rw-r--r-- | CHANGES | 34 | ||||
-rwxr-xr-x | Configure | 7 | ||||
-rw-r--r-- | crypto/asn1/asn1.h | 2 | ||||
-rw-r--r-- | crypto/asn1/asn1t.h | 6 | ||||
-rw-r--r-- | crypto/des/des.h | 6 | ||||
-rw-r--r-- | crypto/des/enc_read.c | 2 | ||||
-rw-r--r-- | crypto/des/set_key.c | 2 | ||||
-rw-r--r-- | crypto/opensslconf.h.in | 2 | ||||
-rw-r--r-- | e_os2.h | 22 | ||||
-rwxr-xr-x | makevms.com | 5 | ||||
-rwxr-xr-x | util/libeay.num | 357 | ||||
-rwxr-xr-x | util/mkdef.pl | 509 | ||||
-rwxr-xr-x | util/ssleay.num | 6 |
13 files changed, 695 insertions, 265 deletions
@@ -3,6 +3,40 @@ Changes between 0.9.6 and 0.9.7 [xx XXX 2000] + *) Introduce the possibility to access global variables through + functions on platform were that's the best way to handle exporting + global variables in shared libraries. To enable this functionality, + one must configure with "EXPORT_VAR_AS_FN" or defined the C macro + "OPENSSL_EXPORT_VAR_AS_FUNCTION" in crypto/opensslconf.h (the latter + is normally done by Configure or something similar). + + To implement a global variable, use the macro OPENSSL_IMPLEMENT_GLOBAL + in the source file (foo.c) like this: + + OPENSSL_IMPLEMENT_GLOBAL(int,foo)=1; + OPENSSL_IMPLEMENT_GLOBAL(double,bar); + + To declare a global variable, use the macros OPENSSL_DECLARE_GLOBAL + and OPENSSL_GLOBAL_REF in the header file (foo.h) like this: + + OPENSSL_DECLARE_GLOBAL(int,foo); + #define foo OPENSSL_GLOBAL_REF(foo) + OPENSSL_DECLARE_GLOBAL(double,bar); + #define bar OPENSSL_GLOBAL_REF(bar) + + The #defines are very important, and therefore so is including the + header file everywere where the defined globals are used. + + The macro OPENSSL_EXPORT_VAR_AS_FUNCTION also affects the definition + of ASN.1 items, but that structure is a bt different. + + The largest change is in util/mkdef.pl which has been enhanced with + better and easier to understand logic to choose which symbols should + go into the Windows .def files as well as a number of fixes and code + cleanup (among others, algorithm keywords are now sorted + lexicographically to avoid constant rewrites). + [Richard Levitte] + *) In copy_email() check for >= 0 as a return value for X509_NAME_get_index_by_NID() since 0 is a valid index. [Steve Henson reported by Massimiliano Pala <madwolf@opensca.org>] @@ -968,6 +968,7 @@ my $rc4_chunk=0; my $bf_ptr=0; my @type=("char","short","int","long"); my ($b64l,$b64,$b32,$b16,$b8)=(0,0,1,0,0); +my $export_var_as_fn=0; my $des_int; @@ -997,6 +998,7 @@ foreach (sort split(/\s+/,$bn_ops)) ($b64l,$b64,$b32,$b16,$b8)=(0,0,1,0,0) if /THIRTY_TWO_BIT/; ($b64l,$b64,$b32,$b16,$b8)=(0,0,0,1,0) if /SIXTEEN_BIT/; ($b64l,$b64,$b32,$b16,$b8)=(0,0,0,0,1) if /EIGHT_BIT/; + $export_var_as_fn=1 if /EXPORT_VAR_AS_FN/; } open(IN,'<crypto/opensslconf.h.in') || die "unable to read crypto/opensslconf.h.in:$!\n"; @@ -1029,6 +1031,11 @@ while (<IN>) { if (/^#define\s+OPENSSLDIR/) { print OUT "#define OPENSSLDIR \"$openssldir\"\n"; } + elsif (/^#((define)|(undef))\s+OPENSSL_EXPORT_VAR_AS_FUNCTION/) + { printf OUT "#undef OPENSSL_EXPORT_VAR_AS_FUNCTION\n" + if $export_var_as_fn; + printf OUT "#%s OPENSSL_EXPORT_VAR_AS_FUNCTION\n", + ($export_var_as_fn)?"define":"undef"; } elsif (/^#define\s+OPENSSL_UNISTD/) { $unistd = "<unistd.h>" if $unistd eq ""; diff --git a/crypto/asn1/asn1.h b/crypto/asn1/asn1.h index a3b992ff93..ae92ad9954 100644 --- a/crypto/asn1/asn1.h +++ b/crypto/asn1/asn1.h @@ -357,7 +357,7 @@ typedef struct ASN1_VALUE_st ASN1_VALUE; * */ -#ifndef ASN1_ITEM_FUNCTIONS +#ifndef OPENSSL_EXPORT_VAR_AS_FUNCTION /* ASN1_ITEM pointer exported type */ typedef const ASN1_ITEM ASN1_ITEM_EXP; diff --git a/crypto/asn1/asn1t.h b/crypto/asn1/asn1t.h index 7d01df0674..6e1bf87e5c 100644 --- a/crypto/asn1/asn1t.h +++ b/crypto/asn1/asn1t.h @@ -74,7 +74,7 @@ extern "C" { #endif -#ifndef ASN1_ITEM_FUNCTIONS +#ifndef OPENSSL_EXPORT_VAR_AS_FUNCTION /* Macro to obtain ASN1_ADB pointer from a type (only used internally) */ #define ASN1_ADB_ptr(iptr) ((const ASN1_ADB *)(iptr)) @@ -287,7 +287,7 @@ extern "C" { /* Any defined by macros: the field used is in the table itself */ -#ifndef ASN1_ITEM_FUNCTIONS +#ifndef OPENSSL_EXPORT_VAR_AS_FUNCTION #define ASN1_ADB_OBJECT(tblname) { ASN1_TFLG_ADB_OID, -1, 0, #tblname, (const ASN1_ITEM *)&(tblname##_adb) } #define ASN1_ADB_INTEGER(tblname) { ASN1_TFLG_ADB_INT, -1, 0, #tblname, (const ASN1_ITEM *)&(tblname##_adb) } #else @@ -358,7 +358,7 @@ extern "C" { #define ASN1_ADB(name) \ const static ASN1_ADB_TABLE name##_adbtbl[] -#ifndef ASN1_ITEM_FUNCTIONS +#ifndef OPENSSL_EXPORT_VAR_AS_FUNCTION #define ASN1_ADB_END(name, flags, field, app_table, def, none) \ ;\ diff --git a/crypto/des/des.h b/crypto/des/des.h index 5fa6aef27b..dc627189b4 100644 --- a/crypto/des/des.h +++ b/crypto/des/des.h @@ -116,8 +116,10 @@ typedef struct des_ks_struct #define des_ede2_ofb64_encrypt(i,o,l,k1,k2,iv,n) \ des_ede3_ofb64_encrypt((i),(o),(l),(k1),(k2),(k1),(iv),(n)) -OPENSSL_EXTERN int des_check_key; /* defaults to false */ -OPENSSL_EXTERN int des_rw_mode; /* defaults to DES_PCBC_MODE */ +OPENSSL_DECLARE_GLOBAL(int,des_check_key); /* defaults to false */ +#define des_check_key OPENSSL_GLOBAL_REF(des_check_key) +OPENSSL_DECLARE_GLOBAL(int,des_rw_mode); /* defaults to DES_PCBC_MODE */ +#define des_rw_mode OPENSSL_GLOBAL_REF(des_rw_mode) const char *des_options(void); void des_ecb3_encrypt(const_des_cblock *input, des_cblock *output, diff --git a/crypto/des/enc_read.c b/crypto/des/enc_read.c index af2d9177d2..e8a5763abf 100644 --- a/crypto/des/enc_read.c +++ b/crypto/des/enc_read.c @@ -63,7 +63,7 @@ /* This has some uglies in it but it works - even over sockets. */ /*extern int errno;*/ -OPENSSL_GLOBAL int des_rw_mode=DES_PCBC_MODE; +OPENSSL_IMPLEMENT_GLOBAL(int,des_rw_mode)=DES_PCBC_MODE; /* diff --git a/crypto/des/set_key.c b/crypto/des/set_key.c index 6df3ba9a64..0dc79c9461 100644 --- a/crypto/des/set_key.c +++ b/crypto/des/set_key.c @@ -65,7 +65,7 @@ */ #include "des_locl.h" -OPENSSL_GLOBAL int des_check_key=0; +OPENSSL_IMPLEMENT_GLOBAL(int,des_check_key); /* defaults to false */ static const unsigned char odd_parity[256]={ 1, 1, 2, 2, 4, 4, 7, 7, 8, 8, 11, 11, 13, 13, 14, 14, diff --git a/crypto/opensslconf.h.in b/crypto/opensslconf.h.in index 5da5911228..a06861b96e 100644 --- a/crypto/opensslconf.h.in +++ b/crypto/opensslconf.h.in @@ -12,6 +12,8 @@ #undef OPENSSL_UNISTD #define OPENSSL_UNISTD <unistd.h> +#undef OPENSSL_EXPORT_VAR_AS_FUNCTIONS + #if defined(HEADER_IDEA_H) && !defined(IDEA_INT) #define IDEA_INT unsigned int #endif @@ -200,6 +200,28 @@ extern "C" { #endif #define OPENSSL_EXTERN OPENSSL_IMPORT +/* Macros to allow global variables to be reached through function calls when + required (if a shared library version requvres it, for example. + The way it's done allows definitions like this: + + // in foobar.c + OPENSSL_IMPLEMENT_GLOBAL(int,foobar) = 0; + // in foobar.h + OPENSSL_DECLARE_GLOBAL(int,foobar); + #define foobar OPENSSL_GLOBAL_REF(foobar) +*/ +#ifdef OPENSSL_EXPORT_VAR_AS_FUNCTION +# define OPENSSL_IMPLEMENT_GLOBAL(type,name) extern static type _hide_##name; \ + type *_shadow_##name(void) { static type local_var; return &local_var; } \ + static type _hide_##name +# define OPENSSL_DECLARE_GLOBAL(type,name) type *_shadow_##name(void) +# define OPENSSL_GLOBAL_REF(name) (*(_shadow_##name())) +#else +# define OPENSSL_IMPLEMENT_GLOBAL(type,name) OPENSSL_GLOBAL type _shadow_##name +# define OPENSSL_DECLARE_GLOBAL(type,name) OPENSSL_EXPORT type _shadow_##name +# define OPENSSL_GLOBAL_REF(name) _shadow_##name +#endif + #ifdef __cplusplus } #endif diff --git a/makevms.com b/makevms.com index 194e485732..579fcae5a3 100755 --- a/makevms.com +++ b/makevms.com @@ -285,6 +285,8 @@ $ WRITE H_FILE "#undef THIRTY_TWO_BIT" $ WRITE H_FILE "#undef SIXTEEN_BIT" $ WRITE H_FILE "#undef EIGHT_BIT" $ WRITE H_FILE "#endif" +$ +$ WRITE H_FILE "#undef OPENSSL_EXPORT_VAR_AS_FUNCTION" $! $! Else... $! @@ -317,6 +319,9 @@ $ WRITE H_FILE "#define THIRTY_TWO_BIT" $ WRITE H_FILE "#undef SIXTEEN_BIT" $ WRITE H_FILE "#undef EIGHT_BIT" $ WRITE H_FILE "#endif" +$ +$ WRITE H_FILE "#undef OPENSSL_EXPORT_VAR_AS_FUNCTION" +$ WRITE H_FILE "#define OPENSSL_EXPORT_VAR_AS_FUNCTION" $! $! End $! diff --git a/util/libeay.num b/util/libeay.num index 6c76287f5f..92de2a8f5f 100755 --- a/util/libeay.num +++ b/util/libeay.num @@ -203,13 +203,13 @@ DSA_generate_key 210 EXIST::FUNCTION:DSA DSA_generate_parameters 211 EXIST::FUNCTION:DSA DSA_is_prime 212 NOEXIST::FUNCTION: DSA_new 213 EXIST::FUNCTION:DSA -DSA_print 214 EXIST::FUNCTION:DSA,BIO +DSA_print 214 EXIST::FUNCTION:BIO,DSA DSA_print_fp 215 EXIST::FUNCTION:DSA,FP_API DSA_sign 216 EXIST::FUNCTION:DSA DSA_sign_setup 217 EXIST::FUNCTION:DSA DSA_size 218 EXIST::FUNCTION:DSA DSA_verify 219 EXIST::FUNCTION:DSA -DSAparams_print 220 EXIST::FUNCTION:DSA,BIO +DSAparams_print 220 EXIST::FUNCTION:BIO,DSA DSAparams_print_fp 221 EXIST::FUNCTION:DSA,FP_API ERR_clear_error 222 EXIST::FUNCTION: ERR_error_string 223 EXIST::FUNCTION: @@ -478,7 +478,7 @@ RSA_generate_key 485 EXIST::FUNCTION:RSA RSA_new 486 EXIST::FUNCTION:RSA RSA_new_method 487 EXIST::FUNCTION:RSA RSA_print 488 EXIST::FUNCTION:BIO,RSA -RSA_print_fp 489 EXIST::FUNCTION:RSA,FP_API +RSA_print_fp 489 EXIST::FUNCTION:FP_API,RSA RSA_private_decrypt 490 EXIST::FUNCTION:RSA RSA_private_encrypt 491 EXIST::FUNCTION:RSA RSA_public_decrypt 492 EXIST::FUNCTION:RSA @@ -489,14 +489,14 @@ RSA_sign_ASN1_OCTET_STRING 496 EXIST::FUNCTION:RSA RSA_size 497 EXIST::FUNCTION:RSA RSA_verify 498 EXIST::FUNCTION:RSA RSA_verify_ASN1_OCTET_STRING 499 EXIST::FUNCTION:RSA -SHA 500 EXIST::FUNCTION:SHA0,SHA +SHA 500 EXIST::FUNCTION:SHA,SHA0 SHA1 501 EXIST::FUNCTION:SHA,SHA1 SHA1_Final 502 EXIST::FUNCTION:SHA,SHA1 SHA1_Init 503 EXIST::FUNCTION:SHA,SHA1 SHA1_Update 504 EXIST::FUNCTION:SHA,SHA1 -SHA_Final 505 EXIST::FUNCTION:SHA0,SHA -SHA_Init 506 EXIST::FUNCTION:SHA0,SHA -SHA_Update 507 EXIST::FUNCTION:SHA0,SHA +SHA_Final 505 EXIST::FUNCTION:SHA,SHA0 +SHA_Init 506 EXIST::FUNCTION:SHA,SHA0 +SHA_Update 507 EXIST::FUNCTION:SHA,SHA0 OpenSSL_add_all_algorithms 508 EXIST::FUNCTION: OpenSSL_add_all_ciphers 509 EXIST::FUNCTION: OpenSSL_add_all_digests 510 EXIST::FUNCTION: @@ -719,7 +719,7 @@ d2i_ASN1_bytes 725 EXIST::FUNCTION: d2i_ASN1_type_bytes 726 EXIST::FUNCTION: d2i_DHparams 727 EXIST::FUNCTION:DH d2i_DSAPrivateKey 728 EXIST::FUNCTION:DSA -d2i_DSAPrivateKey_bio 729 EXIST::FUNCTION:DSA,BIO +d2i_DSAPrivateKey_bio 729 EXIST::FUNCTION:BIO,DSA d2i_DSAPrivateKey_fp 730 EXIST::FUNCTION:DSA,FP_API d2i_DSAPublicKey 731 EXIST::FUNCTION:DSA d2i_DSAparams 732 EXIST::FUNCTION:DSA @@ -742,7 +742,7 @@ d2i_PrivateKey 748 EXIST::FUNCTION: d2i_PublicKey 749 EXIST::FUNCTION: d2i_RSAPrivateKey 750 EXIST::FUNCTION:RSA d2i_RSAPrivateKey_bio 751 EXIST::FUNCTION:BIO,RSA -d2i_RSAPrivateKey_fp 752 EXIST::FUNCTION:RSA,FP_API +d2i_RSAPrivateKey_fp 752 EXIST::FUNCTION:FP_API,RSA d2i_RSAPublicKey 753 EXIST::FUNCTION:RSA d2i_X509 754 EXIST::FUNCTION: d2i_X509_ALGOR 755 EXIST::FUNCTION: @@ -821,7 +821,7 @@ i2d_ASN1_UTCTIME 828 EXIST::FUNCTION: i2d_ASN1_bytes 829 EXIST::FUNCTION: i2d_DHparams 830 EXIST::FUNCTION:DH i2d_DSAPrivateKey 831 EXIST::FUNCTION:DSA -i2d_DSAPrivateKey_bio 832 EXIST::FUNCTION:DSA,BIO +i2d_DSAPrivateKey_bio 832 EXIST::FUNCTION:BIO,DSA i2d_DSAPrivateKey_fp 833 EXIST::FUNCTION:DSA,FP_API i2d_DSAPublicKey 834 EXIST::FUNCTION:DSA i2d_DSAparams 835 EXIST::FUNCTION:DSA @@ -844,7 +844,7 @@ i2d_PrivateKey 851 EXIST::FUNCTION: i2d_PublicKey 852 EXIST::FUNCTION: i2d_RSAPrivateKey 853 EXIST::FUNCTION:RSA i2d_RSAPrivateKey_bio 854 EXIST::FUNCTION:BIO,RSA -i2d_RSAPrivateKey_fp 855 EXIST::FUNCTION:RSA,FP_API +i2d_RSAPrivateKey_fp 855 EXIST::FUNCTION:FP_API,RSA i2d_RSAPublicKey 856 EXIST::FUNCTION:RSA i2d_X509 857 EXIST::FUNCTION: i2d_X509_ALGOR 858 EXIST::FUNCTION: @@ -933,8 +933,8 @@ d2i_RSAPublicKey_bio 945 EXIST::FUNCTION:BIO,RSA i2d_RSAPublicKey_bio 946 EXIST::FUNCTION:BIO,RSA PEM_read_RSAPublicKey 947 EXIST:!WIN16:FUNCTION:RSA PEM_write_RSAPublicKey 949 EXIST:!WIN16:FUNCTION:RSA -d2i_RSAPublicKey_fp 952 EXIST::FUNCTION:RSA,FP_API -i2d_RSAPublicKey_fp 954 EXIST::FUNCTION:RSA,FP_API +d2i_RSAPublicKey_fp 952 EXIST::FUNCTION:FP_API,RSA +i2d_RSAPublicKey_fp 954 EXIST::FUNCTION:FP_API,RSA BIO_copy_next_retry 955 EXIST::FUNCTION: RSA_flags 956 EXIST::FUNCTION:RSA X509_STORE_add_crl 957 EXIST::FUNCTION: @@ -989,7 +989,7 @@ ERR_load_CRYPTOlib_strings 1009 EXIST:WIN16,VMS:FUNCTION: EVP_PKEY_bits 1010 EXIST::FUNCTION: MD5_Transform 1011 EXIST::FUNCTION:MD5 SHA1_Transform 1012 EXIST::FUNCTION:SHA,SHA1 -SHA_Transform 1013 EXIST::FUNCTION:SHA0,SHA +SHA_Transform 1013 EXIST::FUNCTION:SHA,SHA0 X509_STORE_CTX_get_chain 1014 EXIST::FUNCTION: X509_STORE_CTX_get_current_cert 1015 EXIST::FUNCTION: X509_STORE_CTX_get_error 1016 EXIST::FUNCTION: @@ -1216,7 +1216,7 @@ name_cmp 1239 EXIST::FUNCTION: str_dup 1240 NOEXIST::FUNCTION: i2s_ASN1_ENUMERATED 1241 EXIST::FUNCTION: i2s_ASN1_ENUMERATED_TABLE 1242 EXIST::FUNCTION: -BIO_s_log 1243 EXIST:!WIN32,!WIN16,!macintosh:FUNCTION: +BIO_s_log 1243 EXIST:!WIN16,!WIN32,!macintosh:FUNCTION: BIO_f_reliable 1244 EXIST::FUNCTION:BIO PKCS7_dataFinal 1245 EXIST::FUNCTION: PKCS7_dataDecode 1246 EXIST::FUNCTION: @@ -1468,7 +1468,7 @@ RSA_get_method 1847 EXIST::FUNCTION:RSA RSA_get_default_method 1848 NOEXIST::FUNCTION: RSA_check_key 1869 EXIST::FUNCTION:RSA OBJ_obj2txt 1870 EXIST::FUNCTION: -DSA_dup_DH 1871 EXIST::FUNCTION:DSA,DH +DSA_dup_DH 1871 EXIST::FUNCTION:DH,DSA X509_REQ_get_extensions 1872 EXIST::FUNCTION: X509_REQ_set_extension_nids 1873 EXIST::FUNCTION: BIO_nwrite 1874 EXIST::FUNCTION: @@ -1543,7 +1543,7 @@ ASN1_STRING_set_default_mask_asc 1960 EXIST:!VMS:FUNCTION: ASN1_STRING_set_def_mask_asc 1960 EXIST:VMS:FUNCTION: PEM_write_bio_RSA_PUBKEY 1961 EXIST::FUNCTION:RSA ASN1_INTEGER_cmp 1963 EXIST::FUNCTION: -d2i_RSA_PUBKEY_fp 1964 EXIST::FUNCTION:RSA,FP_API +d2i_RSA_PUBKEY_fp 1964 EXIST::FUNCTION:FP_API,RSA X509_trust_set_bit_asc 1967 NOEXIST::FUNCTION: PEM_write_bio_DSA_PUBKEY 1968 EXIST::FUNCTION:DSA X509_STORE_CTX_free 1969 EXIST::FUNCTION: @@ -1576,7 +1576,7 @@ X509_NAME_add_entry_by_OBJ 2008 EXIST::FUNCTION: X509_CRL_get_ext_d2i 2009 EXIST::FUNCTION: X509_PURPOSE_get0_name 2011 EXIST::FUNCTION: PEM_read_PUBKEY 2012 EXIST:!WIN16:FUNCTION: -i2d_DSA_PUBKEY_bio 2014 EXIST::FUNCTION:DSA,BIO +i2d_DSA_PUBKEY_bio 2014 EXIST::FUNCTION:BIO,DSA i2d_OTHERNAME 2015 EXIST::FUNCTION: ASN1_OCTET_STRING_free 2016 EXIST::FUNCTION: ASN1_BIT_STRING_set_asc 2017 EXIST::FUNCTION: @@ -1634,7 +1634,7 @@ PEM_read_bio_DSA_PUBKEY 2088 EXIST::FUNCTION:DSA X509_PURPOSE_add 2090 EXIST::FUNCTION: ASN1_STRING_TABLE_get 2091 EXIST::FUNCTION: ASN1_UTF8STRING_free 2092 EXIST::FUNCTION: -d2i_DSA_PUBKEY_bio 2093 EXIST::FUNCTION:DSA,BIO +d2i_DSA_PUBKEY_bio 2093 EXIST::FUNCTION:BIO,DSA PEM_write_RSA_PUBKEY 2095 EXIST:!WIN16:FUNCTION:RSA d2i_OTHERNAME 2096 EXIST::FUNCTION: X509_reject_set_bit 2098 NOEXIST::FUNCTION: @@ -1646,7 +1646,7 @@ ASN1_BIT_STRING_set 2109 EXIST::FUNCTION: X509_TRUST_get_count 2110 EXIST::FUNCTION: ASN1_INTEGER_free 2111 EXIST::FUNCTION: OTHERNAME_free 2112 EXIST::FUNCTION: -i2d_RSA_PUBKEY_fp 2113 EXIST::FUNCTION:RSA,FP_API +i2d_RSA_PUBKEY_fp 2113 EXIST::FUNCTION:FP_API,RSA ASN1_INTEGER_dup 2114 EXIST::FUNCTION: d2i_X509_CERT_AUX 2115 EXIST::FUNCTION: PEM_write_bio_PUBKEY 2117 EXIST::FUNCTION: @@ -1871,8 +1871,10 @@ X509_time_adj 2453 EXIST::FUNCTION: X509_check_issued 2454 EXIST::FUNCTION: ASN1_UTCTIME_cmp_time_t 2455 EXIST::FUNCTION: des_set_weak_key_flag 2456 NOEXIST::FUNCTION: -des_check_key 2457 EXIST::VARIABLE:DES -des_rw_mode 2458 EXIST::VARIABLE:DES +_shadow_des_check_key 2457 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:DES +_shadow_des_check_key 2457 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:DES +_shadow_des_rw_mode 2458 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:DES +_shadow_des_rw_mode 2458 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:DES RSA_PKCS1_RSAref 2459 NOEXIST::FUNCTION: X509_keyid_set1 2460 EXIST::FUNCTION: BIO_next 2461 EXIST::FUNCTION: @@ -2077,95 +2079,141 @@ BN_mod_lshift1_quick 2656 EXIST::FUNCTION: BN_mod_lshift_quick 2657 EXIST::FUNCTION: BN_mod_add_quick 2658 EXIST::FUNCTION: BN_mod_sub 2659 EXIST::FUNCTION: -ASN1_UTF8STRING_it 2660 EXIST::VARIABLE: +ASN1_UTF8STRING_it 2660 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_UTF8STRING_it 2660 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: ASN1_item_ex_i2d 2661 EXIST::FUNCTION: X509V3_add1_i2d 2662 EXIST::FUNCTION: -PKCS7_ENVELOPE_it 2663 EXIST::VARIABLE: +PKCS7_ENVELOPE_it 2663 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_ENVELOPE_it 2663 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_ONEREQ_get1_ext_d2i 2664 EXIST::FUNCTION: -PBKDF2PARAM_it 2665 EXIST::VARIABLE: +PBKDF2PARAM_it 2665 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PBKDF2PARAM_it 2665 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: EXTENDED_KEY_USAGE_new 2666 EXIST::FUNCTION: OCSP_BASICRESP_delete_ext 2667 EXIST::FUNCTION: -X509_CRL_it 2668 EXIST::VARIABLE: +X509_CRL_it 2668 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_CRL_it 2668 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_BASICRESP_add_ext 2669 EXIST::FUNCTION: OCSP_REQUEST_get_ext_by_OBJ 2670 EXIST::FUNCTION: -ASN1_T61STRING_it 2671 EXIST::VARIABLE: +ASN1_T61STRING_it 2671 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_T61STRING_it 2671 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_BASICRESP_get_ext_by_OBJ 2672 EXIST::FUNCTION: OCSP_SINGLERESP_get_ext_count 2673 EXIST::FUNCTION: asn1_do_adb 2674 EXIST::FUNCTION: ASN1_template_i2d 2675 EXIST::FUNCTION: -GENERAL_NAME_it 2676 EXIST::VARIABLE: -ASN1_GENERALIZEDTIME_it 2677 EXIST::VARIABLE: -SXNET_it 2678 EXIST::VARIABLE: -POLICYQUALINFO_it 2679 EXIST::VARIABLE: +GENERAL_NAME_it 2676 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +GENERAL_NAME_it 2676 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ASN1_GENERALIZEDTIME_it 2677 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_GENERALIZEDTIME_it 2677 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +SXNET_it 2678 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +SXNET_it 2678 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +POLICYQUALINFO_it 2679 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +POLICYQUALINFO_it 2679 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: ASN1_item_free 2680 EXIST::FUNCTION: -AUTHORITY_KEYID_it 2681 EXIST::VARIABLE: +AUTHORITY_KEYID_it 2681 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +AUTHORITY_KEYID_it 2681 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: EXTENDED_KEY_USAGE_free 2682 EXIST::FUNCTION: OCSP_REQUEST_get_ext 2683 EXIST::FUNCTION: ENGINE_load_ubsec 2684 EXIST::FUNCTION: -PKEY_USAGE_PERIOD_it 2685 EXIST::VARIABLE: -NETSCAPE_SPKAC_it 2686 EXIST::VARIABLE: -X509_REVOKED_it 2687 EXIST::VARIABLE: +PKEY_USAGE_PERIOD_it 2685 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKEY_USAGE_PERIOD_it 2685 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +NETSCAPE_SPKAC_it 2686 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +NETSCAPE_SPKAC_it 2686 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_REVOKED_it 2687 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_REVOKED_it 2687 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_BASICRESP_get_ext_by_critical 2688 EXIST:!VMS:FUNCTION: OCSP_BASICRESP_get_ext_by_crit 2688 EXIST:VMS:FUNCTION: -PKCS12_it 2689 EXIST::VARIABLE: +PKCS12_it 2689 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS12_it 2689 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_SINGLERESP_get_ext_by_critical 2690 EXIST:!VMS:FUNCTION: OCSP_SINGLERESP_get_ext_by_crit 2690 EXIST:VMS:FUNCTION: ASN1_item_i2d 2691 EXIST::FUNCTION: asn1_ex_i2c 2692 EXIST::FUNCTION: -X509_EXTENSION_it 2693 EXIST::VARIABLE: -SXNETID_it 2694 EXIST::VARIABLE: +X509_EXTENSION_it 2693 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_EXTENSION_it 2693 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +SXNETID_it 2694 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +SXNETID_it 2694 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: EDIPARTYNAME_new 2695 EXIST::FUNCTION: d2i_EXTENDED_KEY_USAGE 2696 EXIST::FUNCTION: -X509_PUBKEY_it 2697 EXIST::VARIABLE: -PKCS7_ENCRYPT_it 2698 EXIST::VARIABLE: +X509_PUBKEY_it 2697 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_PUBKEY_it 2697 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS7_ENCRYPT_it 2698 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_ENCRYPT_it 2698 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: X509_add1_ext_i2d 2699 EXIST::FUNCTION: -PKCS7_SIGNER_INFO_it 2700 EXIST::VARIABLE: -PKCS12_SAFEBAG_it 2701 EXIST::VARIABLE: +PKCS7_SIGNER_INFO_it 2700 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_SIGNER_INFO_it 2700 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS12_SAFEBAG_it 2701 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS12_SAFEBAG_it 2701 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: X509_signature_print 2702 EXIST::FUNCTION:EVP OCSP_REQUEST_add_ext 2703 EXIST::FUNCTION: -X509_ALGOR_it 2704 EXIST::VARIABLE: -ASN1_TIME_it 2705 EXIST::VARIABLE: +X509_ALGOR_it 2704 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_ALGOR_it 2704 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ASN1_TIME_it 2705 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_TIME_it 2705 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_ONEREQ_get_ext_count 2706 EXIST::FUNCTION: -ASN1_IA5STRING_it 2707 EXIST::VARIABLE: -X509_CERT_AUX_it 2708 EXIST::VARIABLE: -CERTIFICATEPOLICIES_it 2709 EXIST::VARIABLE: +ASN1_IA5STRING_it 2707 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_IA5STRING_it 2707 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_CERT_AUX_it 2708 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_CERT_AUX_it 2708 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +CERTIFICATEPOLICIES_it 2709 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +CERTIFICATEPOLICIES_it 2709 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: BN_bntest_rand 2710 EXIST::FUNCTION: -X509_ATTRIBUTE_it 2711 EXIST::VARIABLE: +X509_ATTRIBUTE_it 2711 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_ATTRIBUTE_it 2711 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_ONEREQ_get_ext_by_NID 2712 EXIST::FUNCTION: -OCSP_SERVICELOC_it 2713 EXIST::VARIABLE: -ACCESS_DESCRIPTION_it 2714 EXIST::VARIABLE: -PKCS7_ISSUER_AND_SERIAL_it 2715 EXIST::VARIABLE: -PBE2PARAM_it 2716 EXIST::VARIABLE: -PKCS7_SIGNED_it 2717 EXIST::VARIABLE: -X509_it 2718 EXIST::VARIABLE: -ASN1_BMPSTRING_it 2719 EXIST::VARIABLE: +OCSP_SERVICELOC_it 2713 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +OCSP_SERVICELOC_it 2713 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ACCESS_DESCRIPTION_it 2714 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ACCESS_DESCRIPTION_it 2714 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS7_ISSUER_AND_SERIAL_it 2715 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_ISSUER_AND_SERIAL_it 2715 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PBE2PARAM_it 2716 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PBE2PARAM_it 2716 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS7_SIGNED_it 2717 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_SIGNED_it 2717 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_it 2718 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_it 2718 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ASN1_BMPSTRING_it 2719 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_BMPSTRING_it 2719 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: ASN1_tag2bit 2720 EXIST::FUNCTION: OCSP_REQUEST_delete_ext 2721 EXIST::FUNCTION: -ASN1_PRINTABLESTRING_it 2722 EXIST::VARIABLE: +ASN1_PRINTABLESTRING_it 2722 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_PRINTABLESTRING_it 2722 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: BN_mod_sqr 2723 EXIST::FUNCTION: -NETSCAPE_CERT_SEQUENCE_it 2724 EXIST::VARIABLE: -GENERAL_NAMES_it 2725 EXIST::VARIABLE: -AUTHORITY_INFO_ACCESS_it 2726 EXIST::VARIABLE: -X509_CINF_it 2727 EXIST::VARIABLE: +NETSCAPE_CERT_SEQUENCE_it 2724 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +NETSCAPE_CERT_SEQUENCE_it 2724 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +GENERAL_NAMES_it 2725 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +GENERAL_NAMES_it 2725 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +AUTHORITY_INFO_ACCESS_it 2726 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +AUTHORITY_INFO_ACCESS_it 2726 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_CINF_it 2727 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_CINF_it 2727 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: d2i_EDIPARTYNAME 2728 EXIST::FUNCTION: -OTHERNAME_it 2729 EXIST::VARIABLE: +OTHERNAME_it 2729 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +OTHERNAME_it 2729 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_SINGLERESP_get_ext_by_NID 2730 EXIST::FUNCTION: OCSP_REQUEST_add1_ext_i2d 2731 EXIST::FUNCTION: -X509_VAL_it 2732 EXIST::VARIABLE: +X509_VAL_it 2732 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_VAL_it 2732 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: X509_CRL_add1_ext_i2d 2733 EXIST::FUNCTION: OCSP_BASICRESP_add1_ext_i2d 2734 EXIST::FUNCTION: -X509_SIG_it 2735 EXIST::VARIABLE: +X509_SIG_it 2735 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_SIG_it 2735 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_ONEREQ_get_ext 2736 EXIST::FUNCTION: OCSP_ONEREQ_get_ext_by_OBJ 2737 EXIST::FUNCTION: ASN1_primitive_new 2738 EXIST::FUNCTION: -ASN1_VISIBLESTRING_it 2739 EXIST::VARIABLE: +ASN1_VISIBLESTRING_it 2739 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_VISIBLESTRING_it 2739 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_SINGLERESP_add1_ext_i2d 2740 EXIST::FUNCTION: -CRL_DIST_POINTS_it 2741 EXIST::VARIABLE: +CRL_DIST_POINTS_it 2741 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +CRL_DIST_POINTS_it 2741 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: GENERAL_NAME_print 2742 EXIST::FUNCTION: OCSP_SINGLERESP_delete_ext 2743 EXIST::FUNCTION: -ASN1_BIT_STRING_it 2744 EXIST::VARIABLE: -X509_REQ_it 2745 EXIST::VARIABLE: -PKCS7_SIGN_ENVELOPE_it 2746 EXIST::VARIABLE: +ASN1_BIT_STRING_it 2744 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_BIT_STRING_it 2744 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_REQ_it 2745 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_REQ_it 2745 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS7_SIGN_ENVELOPE_it 2746 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_SIGN_ENVELOPE_it 2746 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: EDIPARTYNAME_free 2747 EXIST::FUNCTION: OCSP_REQUEST_get1_ext_d2i 2748 EXIST::FUNCTION: asn1_ex_c2i 2749 EXIST::FUNCTION: @@ -2173,68 +2221,98 @@ asn1_enc_restore 2750 EXIST::FUNCTION: OCSP_SINGLERESP_get_ext 2751 EXIST::FUNCTION: OCSP_BASICRESP_get1_ext_d2i 2752 EXIST::FUNCTION: i2d_EDIPARTYNAME 2753 EXIST::FUNCTION: -ASN1_INTEGER_it 2754 EXIST::VARIABLE: +ASN1_INTEGER_it 2754 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_INTEGER_it 2754 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_ONEREQ_get_ext_by_critical 2755 EXIST::FUNCTION: -BASIC_CONSTRAINTS_it 2756 EXIST::VARIABLE: +BASIC_CONSTRAINTS_it 2756 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +BASIC_CONSTRAINTS_it 2756 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_SINGLERESP_get1_ext_d2i 2757 EXIST::FUNCTION: -X509_NAME_ENTRY_it 2758 EXIST::VARIABLE: +X509_NAME_ENTRY_it 2758 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_NAME_ENTRY_it 2758 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: OCSP_ONEREQ_add_ext 2759 EXIST::FUNCTION: -DIST_POINT_it 2760 EXIST::VARIABLE: -OCSP_SINGLERESP_it 2761 EXIST::VARIABLE: +DIST_POINT_it 2760 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +DIST_POINT_it 2760 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +OCSP_SINGLERESP_it 2761 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +OCSP_SINGLERESP_it 2761 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: ASN1_item_ex_d2i 2762 EXIST::FUNCTION: BN_mod_sqrt 2763 EXIST::FUNCTION: OCSP_SINGLERESP_get_ext_by_OBJ 2764 EXIST::FUNCTION: -PKCS12_BAGS_it 2765 EXIST::VARIABLE: +PKCS12_BAGS_it 2765 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS12_BAGS_it 2765 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: ASN1_template_free 2766 EXIST::FUNCTION: OCSP_SINGLERESP_add_ext 2767 EXIST::FUNCTION: ASN1_template_d2i 2768 EXIST::FUNCTION: -POLICYINFO_it 2769 EXIST::VARIABLE: +POLICYINFO_it 2769 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +POLICYINFO_it 2769 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: asn1_enc_free 2770 EXIST::FUNCTION: -PKCS8_PRIV_KEY_INFO_it 2771 EXIST::VARIABLE: -OCSP_REQINFO_it 2772 EXIST::VARIABLE: -PBEPARAM_it 2773 EXIST::VARIABLE: +PKCS8_PRIV_KEY_INFO_it 2771 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS8_PRIV_KEY_INFO_it 2771 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +OCSP_REQINFO_it 2772 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +OCSP_REQINFO_it 2772 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PBEPARAM_it 2773 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PBEPARAM_it 2773 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: X509_CRL_add0_revoked 2774 EXIST::FUNCTION: -EDIPARTYNAME_it 2775 EXIST::VARIABLE: -NETSCAPE_SPKI_it 2776 EXIST::VARIABLE: +EDIPARTYNAME_it |