summaryrefslogtreecommitdiffstats
path: root/lib/libcrypto/util
diff options
context:
space:
mode:
authordjm <djm@openbsd.org>2008-09-06 12:17:47 +0000
committerdjm <djm@openbsd.org>2008-09-06 12:17:47 +0000
commit4fcf65c5c59fcf6124cf9f1fd81aa546850f974c (patch)
tree3c0b4c46d91bcb87c8eef7a1e84711159b17f71b /lib/libcrypto/util
parentimport of OpenSSL 0.9.8h (diff)
downloadwireguard-openbsd-4fcf65c5c59fcf6124cf9f1fd81aa546850f974c.tar.xz
wireguard-openbsd-4fcf65c5c59fcf6124cf9f1fd81aa546850f974c.zip
resolve conflicts
Diffstat (limited to 'lib/libcrypto/util')
-rw-r--r--lib/libcrypto/util/ck_errf.pl13
-rw-r--r--lib/libcrypto/util/clean-depend.pl7
-rw-r--r--lib/libcrypto/util/cygwin.sh22
-rw-r--r--lib/libcrypto/util/domd2
-rw-r--r--lib/libcrypto/util/libeay.num915
-rw-r--r--lib/libcrypto/util/mk1mf.pl590
-rw-r--r--lib/libcrypto/util/mkdef.pl142
-rw-r--r--lib/libcrypto/util/mkerr.pl135
-rw-r--r--lib/libcrypto/util/mkfiles.pl17
-rw-r--r--lib/libcrypto/util/mklink.pl1
-rw-r--r--lib/libcrypto/util/mkstack.pl1
-rw-r--r--lib/libcrypto/util/pl/BC-32.pl13
-rw-r--r--lib/libcrypto/util/pl/Mingw32.pl17
-rw-r--r--lib/libcrypto/util/pl/OS2-EMX.pl11
-rw-r--r--lib/libcrypto/util/pl/VC-32.pl294
-rw-r--r--lib/libcrypto/util/pl/linux.pl11
-rw-r--r--lib/libcrypto/util/pl/ultrix.pl11
-rw-r--r--lib/libcrypto/util/pl/unix.pl9
-rw-r--r--lib/libcrypto/util/ssleay.num28
19 files changed, 1579 insertions, 660 deletions
diff --git a/lib/libcrypto/util/ck_errf.pl b/lib/libcrypto/util/ck_errf.pl
index 7a24d6c5a2e..344b422c340 100644
--- a/lib/libcrypto/util/ck_errf.pl
+++ b/lib/libcrypto/util/ck_errf.pl
@@ -13,16 +13,21 @@ foreach $file (@ARGV)
$func="";
while (<IN>)
{
- if (/^[a-zA-Z].+[\s*]([A-Za-z_0-9]+)\(.*\)/)
+ if (!/;$/ && /^([a-zA-Z].*[\s*])?([A-Za-z_0-9]+)\(.*[),]/)
{
- $func=$1;
+ /^([^()]*(\([^()]*\)[^()]*)*)\(/;
+ $1 =~ /([A-Za-z_0-9]*)$/;
+ $func = $1;
$func =~ tr/A-Z/a-z/;
}
if (/([A-Z0-9]+)err\(([^,]+)/)
{
- next if ($func eq "");
$errlib=$1;
$n=$2;
+
+ if ($func eq "")
+ { print "$file:$.:???:$n\n"; next; }
+
if ($n !~ /([^_]+)_F_(.+)$/)
{
# print "check -$file:$.:$func:$n\n";
@@ -32,7 +37,7 @@ foreach $file (@ARGV)
$n=$2;
if ($lib ne $errlib)
- { print "$file:$.:$func:$n\n"; next; }
+ { print "$file:$.:$func:$n [${errlib}err]\n"; next; }
$n =~ tr/A-Z/a-z/;
if (($n ne $func) && ($errlib ne "SYS"))
diff --git a/lib/libcrypto/util/clean-depend.pl b/lib/libcrypto/util/clean-depend.pl
index 6c485d1e2fb..2b2bdb40488 100644
--- a/lib/libcrypto/util/clean-depend.pl
+++ b/lib/libcrypto/util/clean-depend.pl
@@ -37,8 +37,11 @@ foreach $file (sort keys %files) {
$file=~s/^\.\///;
push @{$files{$file}},$origfile;
my $prevdep="";
- foreach $dep (sort @{$files{$file}}) {
- $dep=~s/^\.\///;
+
+ # Remove leading ./ before sorting
+ my @deps = map { $_ =~ s/^\.\///; $_ } @{$files{$file}};
+
+ foreach $dep (sort @deps) {
next if $prevdep eq $dep; # to exterminate duplicates...
$prevdep = $dep;
$len=0 if $len+length($dep)+1 >= 80;
diff --git a/lib/libcrypto/util/cygwin.sh b/lib/libcrypto/util/cygwin.sh
index 7f791d47f4b..89d1dda95b5 100644
--- a/lib/libcrypto/util/cygwin.sh
+++ b/lib/libcrypto/util/cygwin.sh
@@ -47,6 +47,14 @@ function doc_install()
create_cygwin_readme
}
+function certs_install()
+{
+ CERTS_DIR=${INSTALL_PREFIX}/usr/ssl/certs
+
+ mkdir -p ${CERTS_DIR}
+ cp -rp certs/* ${CERTS_DIR}
+}
+
function create_cygwin_readme()
{
README_DIR=${INSTALL_PREFIX}/usr/share/doc/Cygwin
@@ -104,19 +112,25 @@ base_install
doc_install
+certs_install
+
create_cygwin_readme
create_profile_files
cd ${INSTALL_PREFIX}
-strip usr/bin/*.exe usr/bin/*.dll
+chmod u+w usr/lib/engines/*.so
+strip usr/bin/*.exe usr/bin/*.dll usr/lib/engines/*.so
+chmod u-w usr/lib/engines/*.so
# Runtime package
-find etc usr/bin usr/share/doc usr/ssl/certs usr/ssl/man/man[157] \
- usr/ssl/misc usr/ssl/openssl.cnf usr/ssl/private -empty -o \! -type d |
+find etc usr/bin usr/lib/engines usr/share/doc usr/ssl/certs \
+ usr/ssl/man/man[157] usr/ssl/misc usr/ssl/openssl.cnf usr/ssl/private \
+ -empty -o \! -type d |
tar cjfT openssl-${VERSION}-${SUBVERSION}.tar.bz2 -
# Development package
-find usr/include usr/lib usr/ssl/man/man3 -empty -o \! -type d |
+find usr/include usr/lib/*.a usr/lib/pkgconfig usr/ssl/man/man3 \
+ -empty -o \! -type d |
tar cjfT openssl-devel-${VERSION}-${SUBVERSION}.tar.bz2 -
ls -l openssl-${VERSION}-${SUBVERSION}.tar.bz2
diff --git a/lib/libcrypto/util/domd b/lib/libcrypto/util/domd
index 5610521f0b8..691be7a440a 100644
--- a/lib/libcrypto/util/domd
+++ b/lib/libcrypto/util/domd
@@ -26,7 +26,7 @@ if [ "$MAKEDEPEND" = "gcc" ]; then
${PERL} $TOP/util/clean-depend.pl < Makefile.tmp > Makefile.new
rm -f Makefile.tmp
else
- ${MAKEDEPEND} -D OPENSSL_DOING_MAKEDEPEND -f Makefile $@
+ ${MAKEDEPEND} -D OPENSSL_DOING_MAKEDEPEND $@
${PERL} $TOP/util/clean-depend.pl < Makefile > Makefile.new
fi
mv Makefile.new Makefile
diff --git a/lib/libcrypto/util/libeay.num b/lib/libcrypto/util/libeay.num
index 4222bef6d6c..2989500c4ba 100644
--- a/lib/libcrypto/util/libeay.num
+++ b/lib/libcrypto/util/libeay.num
@@ -123,10 +123,10 @@ BN_dup 128 EXIST::FUNCTION:
BN_free 129 EXIST::FUNCTION:
BN_from_montgomery 130 EXIST::FUNCTION:
BN_gcd 131 EXIST::FUNCTION:
-BN_generate_prime 132 EXIST::FUNCTION:
+BN_generate_prime 132 EXIST::FUNCTION:DEPRECATED
BN_get_word 133 EXIST::FUNCTION:
BN_is_bit_set 134 EXIST::FUNCTION:
-BN_is_prime 135 EXIST::FUNCTION:
+BN_is_prime 135 EXIST::FUNCTION:DEPRECATED
BN_lshift 136 EXIST::FUNCTION:
BN_lshift1 137 EXIST::FUNCTION:
BN_mask_bits 138 EXIST::FUNCTION:
@@ -193,14 +193,14 @@ DH_check 200 EXIST::FUNCTION:DH
DH_compute_key 201 EXIST::FUNCTION:DH
DH_free 202 EXIST::FUNCTION:DH
DH_generate_key 203 EXIST::FUNCTION:DH
-DH_generate_parameters 204 EXIST::FUNCTION:DH
+DH_generate_parameters 204 EXIST::FUNCTION:DEPRECATED,DH
DH_new 205 EXIST::FUNCTION:DH
DH_size 206 EXIST::FUNCTION:DH
DHparams_print 207 EXIST::FUNCTION:BIO,DH
DHparams_print_fp 208 EXIST::FUNCTION:DH,FP_API
DSA_free 209 EXIST::FUNCTION:DSA
DSA_generate_key 210 EXIST::FUNCTION:DSA
-DSA_generate_parameters 211 EXIST::FUNCTION:DSA
+DSA_generate_parameters 211 EXIST::FUNCTION:DEPRECATED,DSA
DSA_is_prime 212 NOEXIST::FUNCTION:
DSA_new 213 EXIST::FUNCTION:DSA
DSA_print 214 EXIST::FUNCTION:BIO,DSA
@@ -474,7 +474,7 @@ RSAPrivateKey_dup 481 EXIST::FUNCTION:RSA
RSAPublicKey_dup 482 EXIST::FUNCTION:RSA
RSA_PKCS1_SSLeay 483 EXIST::FUNCTION:RSA
RSA_free 484 EXIST::FUNCTION:RSA
-RSA_generate_key 485 EXIST::FUNCTION:RSA
+RSA_generate_key 485 EXIST::FUNCTION:DEPRECATED,RSA
RSA_new 486 EXIST::FUNCTION:RSA
RSA_new_method 487 EXIST::FUNCTION:RSA
RSA_print 488 EXIST::FUNCTION:BIO,RSA
@@ -802,7 +802,7 @@ DES_set_odd_parity 809 EXIST::FUNCTION:DES
DES_string_to_2keys 810 EXIST::FUNCTION:DES
DES_string_to_key 811 EXIST::FUNCTION:DES
DES_xcbc_encrypt 812 EXIST::FUNCTION:DES
-DES_xwhite_in2out 813 EXIST::FUNCTION:DES
+DES_xwhite_in2out 813 NOEXIST::FUNCTION:
fcrypt_body 814 NOEXIST::FUNCTION:
i2a_ASN1_INTEGER 815 EXIST::FUNCTION:BIO
i2a_ASN1_OBJECT 816 EXIST::FUNCTION:BIO
@@ -1104,7 +1104,7 @@ BN_RECP_CTX_set 1131 EXIST::FUNCTION:
BN_mod_mul_reciprocal 1132 EXIST::FUNCTION:
BN_mod_exp_recp 1133 EXIST::FUNCTION:
BN_div_recp 1134 EXIST::FUNCTION:
-BN_CTX_init 1135 EXIST::FUNCTION:
+BN_CTX_init 1135 EXIST::FUNCTION:DEPRECATED
BN_MONT_CTX_init 1136 EXIST::FUNCTION:
RAND_get_rand_method 1137 EXIST::FUNCTION:
PKCS7_add_attribute 1138 EXIST::FUNCTION:
@@ -1221,8 +1221,8 @@ BIO_f_reliable 1244 EXIST::FUNCTION:BIO
PKCS7_dataFinal 1245 EXIST::FUNCTION:
PKCS7_dataDecode 1246 EXIST::FUNCTION:
X509V3_EXT_CRL_add_conf 1247 EXIST::FUNCTION:
-BN_set_params 1248 EXIST::FUNCTION:
-BN_get_params 1249 EXIST::FUNCTION:
+BN_set_params 1248 EXIST::FUNCTION:DEPRECATED
+BN_get_params 1249 EXIST::FUNCTION:DEPRECATED
BIO_get_ex_num 1250 NOEXIST::FUNCTION:
BIO_set_ex_free_func 1251 NOEXIST::FUNCTION:
EVP_ripemd160 1252 EXIST::FUNCTION:RIPEMD
@@ -1744,7 +1744,7 @@ X509_REQ_add1_attr_by_txt 2217 EXIST::FUNCTION:
X509_ATTRIBUTE_create_by_txt 2218 EXIST::FUNCTION:
X509at_add1_attr_by_txt 2219 EXIST::FUNCTION:
BN_pseudo_rand 2239 EXIST::FUNCTION:
-BN_is_prime_fasttest 2240 EXIST::FUNCTION:
+BN_is_prime_fasttest 2240 EXIST::FUNCTION:DEPRECATED
BN_CTX_end 2241 EXIST::FUNCTION:
BN_CTX_start 2242 EXIST::FUNCTION:
BN_CTX_get 2243 EXIST::FUNCTION:
@@ -2071,7 +2071,7 @@ PKCS7_ATTR_SIGN_it 2632 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTI
UI_add_error_string 2633 EXIST::FUNCTION:
KRB5_CHECKSUM_free 2634 EXIST::FUNCTION:
OCSP_REQUEST_get_ext 2635 EXIST::FUNCTION:
-ENGINE_load_ubsec 2636 EXIST::FUNCTION:ENGINE
+ENGINE_load_ubsec 2636 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
ENGINE_register_all_digests 2637 EXIST::FUNCTION:ENGINE
PKEY_USAGE_PERIOD_it 2638 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
PKEY_USAGE_PERIOD_it 2638 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
@@ -2089,7 +2089,7 @@ OCSP_BASICRESP_get_ext_by_crit 2646 EXIST:VMS:FUNCTION:
OCSP_cert_status_str 2647 EXIST::FUNCTION:
d2i_OCSP_REQUEST 2648 EXIST::FUNCTION:
UI_dup_info_string 2649 EXIST::FUNCTION:
-_ossl_old_des_xwhite_in2out 2650 EXIST::FUNCTION:DES
+_ossl_old_des_xwhite_in2out 2650 NOEXIST::FUNCTION:
PKCS12_it 2651 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
PKCS12_it 2651 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
OCSP_SINGLERESP_get_ext_by_critical 2652 EXIST:!VMS:FUNCTION:
@@ -2419,7 +2419,7 @@ UI_get_string_type 2916 EXIST::FUNCTION:
ENGINE_unregister_DH 2917 EXIST::FUNCTION:ENGINE
ENGINE_register_all_DSA 2918 EXIST::FUNCTION:ENGINE
OCSP_ONEREQ_get_ext_by_critical 2919 EXIST::FUNCTION:
-bn_dup_expand 2920 EXIST::FUNCTION:
+bn_dup_expand 2920 EXIST::FUNCTION:DEPRECATED
OCSP_cert_id_new 2921 EXIST::FUNCTION:
BASIC_CONSTRAINTS_it 2922 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
BASIC_CONSTRAINTS_it 2922 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
@@ -2545,7 +2545,7 @@ OCSP_RESPONSE_new 3023 EXIST::FUNCTION:
AES_set_encrypt_key 3024 EXIST::FUNCTION:AES
OCSP_resp_count 3025 EXIST::FUNCTION:
KRB5_CHECKSUM_new 3026 EXIST::FUNCTION:
-ENGINE_load_cswift 3027 EXIST::FUNCTION:ENGINE
+ENGINE_load_cswift 3027 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
OCSP_onereq_get0_id 3028 EXIST::FUNCTION:
ENGINE_set_default_ciphers 3029 EXIST::FUNCTION:ENGINE
NOTICEREF_it 3030 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
@@ -2576,7 +2576,7 @@ ASN1_primitive_free 3051 EXIST::FUNCTION:
i2d_EXTENDED_KEY_USAGE 3052 EXIST::FUNCTION:
i2d_OCSP_SIGNATURE 3053 EXIST::FUNCTION:
asn1_enc_save 3054 EXIST::FUNCTION:
-ENGINE_load_nuron 3055 EXIST::FUNCTION:ENGINE
+ENGINE_load_nuron 3055 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
_ossl_old_des_pcbc_encrypt 3056 EXIST::FUNCTION:DES
PKCS12_MAC_DATA_it 3057 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
PKCS12_MAC_DATA_it 3057 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
@@ -2600,7 +2600,7 @@ asn1_get_choice_selector 3071 EXIST::FUNCTION:
i2d_KRB5_CHECKSUM 3072 EXIST::FUNCTION:
ENGINE_set_table_flags 3073 EXIST::FUNCTION:ENGINE
AES_options 3074 EXIST::FUNCTION:AES
-ENGINE_load_chil 3075 EXIST::FUNCTION:ENGINE
+ENGINE_load_chil 3075 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
OCSP_id_cmp 3076 EXIST::FUNCTION:
OCSP_BASICRESP_new 3077 EXIST::FUNCTION:
OCSP_REQUEST_get_ext_by_NID 3078 EXIST::FUNCTION:
@@ -2667,7 +2667,7 @@ OCSP_CRLID_it 3127 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIA
OCSP_CRLID_it 3127 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
i2d_KRB5_AUTHENTBODY 3128 EXIST::FUNCTION:
OCSP_REQUEST_get_ext_count 3129 EXIST::FUNCTION:
-ENGINE_load_atalla 3130 EXIST::FUNCTION:ENGINE
+ENGINE_load_atalla 3130 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
X509_NAME_it 3131 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
X509_NAME_it 3131 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
USERNOTICE_it 3132 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
@@ -2762,8 +2762,8 @@ DES_read_2passwords 3206 EXIST::FUNCTION:DES
DES_read_password 3207 EXIST::FUNCTION:DES
UI_UTIL_read_pw 3208 EXIST::FUNCTION:
UI_UTIL_read_pw_string 3209 EXIST::FUNCTION:
-ENGINE_load_aep 3210 EXIST::FUNCTION:ENGINE
-ENGINE_load_sureware 3211 EXIST::FUNCTION:ENGINE
+ENGINE_load_aep 3210 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
+ENGINE_load_sureware 3211 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
OPENSSL_add_all_algorithms_noconf 3212 EXIST:!VMS:FUNCTION:
OPENSSL_add_all_algo_noconf 3212 EXIST:VMS:FUNCTION:
OPENSSL_add_all_algorithms_conf 3213 EXIST:!VMS:FUNCTION:
@@ -2772,7 +2772,7 @@ OPENSSL_load_builtin_modules 3214 EXIST::FUNCTION:
AES_ofb128_encrypt 3215 EXIST::FUNCTION:AES
AES_ctr128_encrypt 3216 EXIST::FUNCTION:AES
AES_cfb128_encrypt 3217 EXIST::FUNCTION:AES
-ENGINE_load_4758cca 3218 EXIST::FUNCTION:ENGINE
+ENGINE_load_4758cca 3218 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
_ossl_096_des_random_seed 3219 EXIST::FUNCTION:DES
EVP_aes_256_ofb 3220 EXIST::FUNCTION:AES
EVP_aes_192_ofb 3221 EXIST::FUNCTION:AES
@@ -2804,57 +2804,57 @@ OPENSSL_cleanse 3245 EXIST::FUNCTION:
ENGINE_setup_bsd_cryptodev 3246 EXIST:__FreeBSD__:FUNCTION:ENGINE
ERR_release_err_state_table 3247 EXIST::FUNCTION:LHASH
EVP_aes_128_cfb8 3248 EXIST::FUNCTION:AES
-FIPS_corrupt_rsa 3249 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_selftest_des 3250 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_corrupt_rsa 3249 NOEXIST::FUNCTION:
+FIPS_selftest_des 3250 NOEXIST::FUNCTION:
EVP_aes_128_cfb1 3251 EXIST::FUNCTION:AES
EVP_aes_192_cfb8 3252 EXIST::FUNCTION:AES
-FIPS_mode_set 3253 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_selftest_dsa 3254 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_mode_set 3253 NOEXIST::FUNCTION:
+FIPS_selftest_dsa 3254 NOEXIST::FUNCTION:
EVP_aes_256_cfb8 3255 EXIST::FUNCTION:AES
FIPS_allow_md5 3256 NOEXIST::FUNCTION:
DES_ede3_cfb_encrypt 3257 EXIST::FUNCTION:DES
EVP_des_ede3_cfb8 3258 EXIST::FUNCTION:DES
-FIPS_rand_seeded 3259 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_rand_seeded 3259 NOEXIST::FUNCTION:
AES_cfbr_encrypt_block 3260 EXIST::FUNCTION:AES
AES_cfb8_encrypt 3261 EXIST::FUNCTION:AES
-FIPS_rand_seed 3262 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_corrupt_des 3263 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_rand_seed 3262 NOEXIST::FUNCTION:
+FIPS_corrupt_des 3263 NOEXIST::FUNCTION:
EVP_aes_192_cfb1 3264 EXIST::FUNCTION:AES
-FIPS_selftest_aes 3265 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_set_prng_key 3266 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_selftest_aes 3265 NOEXIST::FUNCTION:
+FIPS_set_prng_key 3266 NOEXIST::FUNCTION:
EVP_des_cfb8 3267 EXIST::FUNCTION:DES
-FIPS_corrupt_dsa 3268 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_test_mode 3269 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_rand_method 3270 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_corrupt_dsa 3268 NOEXIST::FUNCTION:
+FIPS_test_mode 3269 NOEXIST::FUNCTION:
+FIPS_rand_method 3270 NOEXIST::FUNCTION:
EVP_aes_256_cfb1 3271 EXIST::FUNCTION:AES
-ERR_load_FIPS_strings 3272 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_corrupt_aes 3273 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_selftest_sha1 3274 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_selftest_rsa 3275 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_corrupt_sha1 3276 EXIST:OPENSSL_FIPS:FUNCTION:
+ERR_load_FIPS_strings 3272 NOEXIST::FUNCTION:
+FIPS_corrupt_aes 3273 NOEXIST::FUNCTION:
+FIPS_selftest_sha1 3274 NOEXIST::FUNCTION:
+FIPS_selftest_rsa 3275 NOEXIST::FUNCTION:
+FIPS_corrupt_sha1 3276 NOEXIST::FUNCTION:
EVP_des_cfb1 3277 EXIST::FUNCTION:DES
-FIPS_dsa_check 3278 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_dsa_check 3278 NOEXIST::FUNCTION:
AES_cfb1_encrypt 3279 EXIST::FUNCTION:AES
EVP_des_ede3_cfb1 3280 EXIST::FUNCTION:DES
-FIPS_rand_check 3281 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_rand_check 3281 NOEXIST::FUNCTION:
FIPS_md5_allowed 3282 NOEXIST::FUNCTION:
-FIPS_mode 3283 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_selftest_failed 3284 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_mode 3283 NOEXIST::FUNCTION:
+FIPS_selftest_failed 3284 NOEXIST::FUNCTION:
sk_is_sorted 3285 EXIST::FUNCTION:
X509_check_ca 3286 EXIST::FUNCTION:
-private_idea_set_encrypt_key 3287 EXIST:OPENSSL_FIPS:FUNCTION:IDEA
-HMAC_CTX_set_flags 3288 EXIST::FUNCTION:HMAC
-private_SHA_Init 3289 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA0
-private_CAST_set_key 3290 EXIST:OPENSSL_FIPS:FUNCTION:CAST
-private_RIPEMD160_Init 3291 EXIST:OPENSSL_FIPS:FUNCTION:RIPEMD
-private_RC5_32_set_key 3292 EXIST:OPENSSL_FIPS:FUNCTION:RC5
-private_MD5_Init 3293 EXIST:OPENSSL_FIPS:FUNCTION:MD5
-private_RC4_set_key 3294 EXIST:OPENSSL_FIPS:FUNCTION:RC4
-private_MDC2_Init 3295 EXIST:OPENSSL_FIPS:FUNCTION:MDC2
-private_RC2_set_key 3296 EXIST:OPENSSL_FIPS:FUNCTION:RC2
-private_MD4_Init 3297 EXIST:OPENSSL_FIPS:FUNCTION:MD4
-private_BF_set_key 3298 EXIST:OPENSSL_FIPS:FUNCTION:BF
-private_MD2_Init 3299 EXIST:OPENSSL_FIPS:FUNCTION:MD2
+private_idea_set_encrypt_key 3287 NOEXIST::FUNCTION:
+HMAC_CTX_set_flags 3288 NOEXIST::FUNCTION:
+private_SHA_Init 3289 NOEXIST::FUNCTION:
+private_CAST_set_key 3290 NOEXIST::FUNCTION:
+private_RIPEMD160_Init 3291 NOEXIST::FUNCTION:
+private_RC5_32_set_key 3292 NOEXIST::FUNCTION:
+private_MD5_Init 3293 NOEXIST::FUNCTION:
+private_RC4_set_key 3294 NOEXIST::FUNCTION:
+private_MDC2_Init 3295 NOEXIST::FUNCTION:
+private_RC2_set_key 3296 NOEXIST::FUNCTION:
+private_MD4_Init 3297 NOEXIST::FUNCTION:
+private_BF_set_key 3298 NOEXIST::FUNCTION:
+private_MD2_Init 3299 NOEXIST::FUNCTION:
d2i_PROXY_CERT_INFO_EXTENSION 3300 EXIST::FUNCTION:
PROXY_POLICY_it 3301 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
PROXY_POLICY_it 3301 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
@@ -2868,13 +2868,13 @@ PROXY_CERT_INFO_EXTENSION_it 3307 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTI
PROXY_POLICY_free 3308 EXIST::FUNCTION:
PROXY_POLICY_new 3309 EXIST::FUNCTION:
BN_MONT_CTX_set_locked 3310 EXIST::FUNCTION:
-FIPS_selftest_rng 3311 EXIST:OPENSSL_FIPS:FUNCTION:
-EVP_sha384 3312 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-EVP_sha512 3313 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-EVP_sha224 3314 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-EVP_sha256 3315 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-FIPS_selftest_hmac 3316 EXIST:OPENSSL_FIPS:FUNCTION:
-FIPS_corrupt_rng 3317 EXIST:OPENSSL_FIPS:FUNCTION:
+FIPS_selftest_rng 3311 NOEXIST::FUNCTION:
+EVP_sha384 3312 EXIST::FUNCTION:SHA,SHA512
+EVP_sha512 3313 EXIST::FUNCTION:SHA,SHA512
+EVP_sha224 3314 EXIST::FUNCTION:SHA,SHA256
+EVP_sha256 3315 EXIST::FUNCTION:SHA,SHA256
+FIPS_selftest_hmac 3316 NOEXIST::FUNCTION:
+FIPS_corrupt_rng 3317 NOEXIST::FUNCTION:
BN_mod_exp_mont_consttime 3318 EXIST::FUNCTION:
RSA_X931_hash_id 3319 EXIST::FUNCTION:RSA
RSA_padding_check_X931 3320 EXIST::FUNCTION:RSA
@@ -2882,26 +2882,773 @@ RSA_verify_PKCS1_PSS 3321 EXIST::FUNCTION:RSA
RSA_padding_add_X931 3322 EXIST::FUNCTION:RSA
RSA_padding_add_PKCS1_PSS 3323 EXIST::FUNCTION:RSA
PKCS1_MGF1 3324 EXIST::FUNCTION:RSA
-BN_X931_generate_Xpq 3325 EXIST:OPENSSL_FIPS:FUNCTION:
-RSA_X931_generate_key 3326 EXIST:OPENSSL_FIPS:FUNCTION:RSA
-BN_X931_derive_prime 3327 EXIST:OPENSSL_FIPS:FUNCTION:
-BN_X931_generate_prime 3328 EXIST:OPENSSL_FIPS:FUNCTION:
-RSA_X931_derive 3329 EXIST:OPENSSL_FIPS:FUNCTION:RSA
-SHA512_Update 3356 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-SHA256_Init 3479 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-SHA224 3510 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-SHA384_Update 3551 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-SHA224_Final 3560 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-SHA224_Update 3562 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-SHA512_Final 3581 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-SHA224_Init 3631 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-SHA512_Init 3633 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-SHA256 3654 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-SHA256_Transform 3664 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-SHA512 3669 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-SHA512_Transform 3675 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-SHA256_Final 3712 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
-SHA384_Init 3737 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-SHA384_Final 3740 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-SHA384 3745 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
-SHA256_Update 3765 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
+BN_X931_generate_Xpq 3325 NOEXIST::FUNCTION:
+RSA_X931_generate_key 3326 NOEXIST::FUNCTION:
+BN_X931_derive_prime 3327 NOEXIST::FUNCTION:
+BN_X931_generate_prime 3328 NOEXIST::FUNCTION:
+RSA_X931_derive 3329 NOEXIST::FUNCTION:
+BIO_new_dgram 3330 EXIST::FUNCTION:
+BN_get0_nist_prime_384 3331 EXIST::FUNCTION:
+ERR_set_mark 3332 EXIST::FUNCTION:
+X509_STORE_CTX_set0_crls 3333 EXIST::FUNCTION:
+ENGINE_set_STORE 3334 EXIST::FUNCTION:ENGINE
+ENGINE_register_ECDSA 3335 EXIST::FUNCTION:ENGINE
+STORE_method_set_list_start_function 3336 EXIST:!VMS:FUNCTION:
+STORE_meth_set_list_start_fn 3336 EXIST:VMS:FUNCTION:
+BN_BLINDING_invert_ex 3337 EXIST::FUNCTION:
+NAME_CONSTRAINTS_free 3338 EXIST::FUNCTION:
+STORE_ATTR_INFO_set_number 3339 EXIST::FUNCTION:
+BN_BLINDING_get_thread_id 3340 EXIST::FUNCTION:
+X509_STORE_CTX_set0_param 3341 EXIST::FUNCTION:
+POLICY_MAPPING_it 3342 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
+POLICY_MAPPING_it 3342 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
+STORE_parse_attrs_start 3343 EXIST::FUNCTION:
+POLICY_CONSTRAINTS_free 3344 EXIST::FUNCTION:
+EVP_PKEY_add1_attr_by_NID 3345 EXIST::FUNCTION:
+BN_nist_mod_192 3346 EXIST::FUNCTION:
+EC_GROUP_get_trinomial_basis 3347 EXIST::FUNCTION:EC
+STORE_set_method 3348 EXIST::FUNCTION:
+GENERAL_SUBTREE_free 3349 EXIST::FUNCTION:
+NAME_CONSTRAINTS_it 3350 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
+NAME_CONSTRAINTS_it 3350 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
+ECDH_get_default_method 3351 EXIST::FUNCTION:ECDH
+PKCS12_add_safe 3352 EXIST::FUNCTION:
+EC_KEY_new_by_curve_name 3353 EXIST::FUNCTION:EC
+STORE_method_get_update_store_function 3354 EXIST:!VMS:FUNCTION:
+STORE_meth_get_update_store_fn 3354 EXIST:VMS:FUNCTION:
+ENGINE_register_ECDH 3355 EXIST::FUNCTION:ENGINE
+SHA512_Update 3356 EXIST::FUNCTION:SHA,SHA512
+i2d_ECPrivateKey 3357 EXIST::FUNCTION:EC
+BN_get0_nist_prime_192 3358 EXIST::FUNCTION:
+STORE_modify_certificate 3359 EXIST::FUNCTION:
+EC_POINT_set_affine_coordinates_GF2m 3360 EXIST:!VMS:FUNCTION:EC
+EC_POINT_set_affine_coords_GF2m 3360 EXIST:VMS:FUNCTION:EC
+BN_GF2m_mod_exp_arr 3361 EXIST::FUNCTION:
+STORE_ATTR_INFO_modify_number 3362 EXIST::FUNCTION:
+X509_keyid_get0 3363 EXIST::FUNCTION:
+ENGINE_load_gmp 3364 EXIST::FUNCTION:ENGINE,GMP,STATIC_ENGINE
+pitem_new 3365 EXIST::FUNCTION:
+BN_GF2m_mod_mul_arr 3366 EXIST::FUNCTION:
+STORE_list_public_key_endp 3367 EXIST::FUNCTION:
+o2i_ECPublicKey 3368 EXIST::FUNCTION:EC
+EC_KEY_copy 3369 EXIST::FUNCTION:EC
+BIO_dump_fp 3370 EXIST::FUNCTION:FP_API
+X509_policy_node_get0_parent 3371 EXIST::FUNCTION:
+EC_GROUP_check_discriminant 3372 EXIST::FUNCTION:EC
+i2o_ECPublicKey 3373 EXIST::FUNCTION:EC
+EC_KEY_precompute_mult 3374 EXIST::FUNCTION:EC
+a2i_IPADDRESS 3375 EXIST::FUNCTION:
+STORE_method_set_initialise_function 3376 EXIST:!VMS:FUNCTION:
+STORE_meth_set_initialise_fn 3376 EXIST:VMS:FUNCTION:
+X509_STORE_CTX_set_depth 3377 EXIST::FUNCTION:
+X509_VERIFY_PARAM_inherit 3378 EXIST::FUNCTION:
+EC_POINT_point2bn 3379 EXIST::FUNCTION:EC
+STORE_ATTR_INFO_set_dn 3380 EXIST::FUNCTION:
+X509_policy_tree_get0_policies 3381 EXIST::FUNCTION:
+EC_GROUP_new_curve_GF2m 3382 EXIST::FUNCTION:EC
+STORE_destroy_method 3383 EXIST::FUNCTION:
+ENGINE_unregister_STORE 3384 EXIST::FUNCTION:ENGINE
+EVP_PKEY_get1_EC_KEY 3385 EXIST::FUNCTION:EC
+STORE_ATTR_INFO_get0_number 3386 EXIST::FUNCTION:
+ENGINE_get_default_ECDH 3387 EXIST::FUNCTION:ENGINE
+EC_KEY_get_conv_form 3388 EXIST::FUNCTION:EC
+ASN1_OCTET_STRING_NDEF_it 3389 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
+ASN1_OCTET_STRING_NDEF_it 3389 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
+STORE_delete_public_key 3390 EXIST::FUNCTION:
+STORE_get_public_key 3391 EXIST::FUNCTION:
+STORE_modify_arbitrary 3392 EXIST::FUNCTION:
+ENGINE_get_static_state 3393 EXIST::FUNCTION:ENGINE
+pqueue_iterator 3394 EXIST::FUNCTION:
+ECDSA_SIG_new 3395 EXIST::FUNCTION:ECDSA
+OPENSSL_DIR_end 3396 EXIST::FUNCTION:
+BN_GF2m_mod_sqr 3397 EXIST::FUNCTION:
+EC_POINT_bn2point 3398 EXIST::FUNCTION:EC
+X509_VERIFY_PARAM_set_depth 3399 EXIST::FUNCTION:
+EC_KEY_set_asn1_flag 3400 EXIST::FUNCTION:EC
+STORE_get_method 3401 EXIST::FUNCTION:
+EC_KEY_get_key_method_data 3402 EXIST::FUNCTION:EC
+ECDSA_sign_ex 3403 EXIST::FUNCTION:ECDSA
+STORE_parse_attrs_end 3404 EXIST::FUNCTION:
+EC_GROUP_get_point_conversion_form 3405 EXIST:!VMS:FUNCTION:EC
+EC_GROUP_get_point_conv_form 3405 EXIST:VMS:FUNCTION:EC
+STORE_method_set_store_function 3406 EXIST::FUNCTION:
+STORE_ATTR_INFO_in 3407 EXIST::FUNCTION:
+PEM_read_bio_ECPKParameters 3408 EXIST::FUNCTION:EC
+EC_GROUP_get_pentanomial_basis 3409 EXIST::FUNCTION:EC
+EVP_PKEY_add1_attr_by_txt 3410 EXIST::FUNCTION:
+BN_BLINDING_set_flags 3411 EXIST::FUNCTION:
+X509_VERIFY_PARAM_set1_policies 3412 EXIST::FUNCTION:
+X509_VERIFY_PARAM_set1_name 3413 EXIST::FUNCTION:
+X509_VERIFY_PARAM_set_purpose 3414 EXIST::FUNCTION:
+STORE_get_number 3415 EXIST::FUNCTION:
+ECDSA_sign_setup 3416 EXIST::FUNCTION:ECDSA
+BN_GF2m_mod_solve_quad_arr 3417 EXIST::FUNCTION:
+EC_KEY_up_ref 3418 EXIST::FUNCTION:EC
+POLICY_MAPPING_free 3419 EXIST::FUNCTION:
+BN_GF2m_mod_div 3420 EXIST::FUNCTION:
+X509_VERIFY_PARAM_set_flags 3421 EXIST::FUNCTION:
+EC_KEY_free 3422 EXIST::FUNCTION:EC
+STORE_method_set_list_next_function 3423 EXIST:!VMS:FUNCTION:
+STORE_meth_set_list_next_fn 3423 EXIST:VMS:FUNCTION:
+PEM_write_bio_ECPrivateKey 3424 EXIST::FUNCTION:EC
+d2i_EC_PUBKEY 3425 EXIST::FUNCTION:EC
+STORE_method_get_generate_function 3426 EXIST:!VMS:FUNCTION:
+STORE_meth_get_generate_fn 3426 EXIST:VMS:FUNCTION:
+STORE_method_set_list_end_function 3427 EXIST:!VMS:FUNCTION:
+STORE_meth_set_list_end_fn 3427 EXIST:VMS:FUNCTION:
+pqueue_print 3428 EXIST::FUNCTION:
+EC_GROUP_have_precompute_mult 3429 EXIST::FUNCTION:EC
+EC_KEY_print_fp 3430 EXIST::FUNCTION:EC,FP_API
+BN_GF2m_mod_arr 3431 EXIST::FUNCTION:
+PEM_write_bio_X509_CERT_PAIR 3432 EXIST::FUNCTION:
+EVP_PKEY_cmp 3433 EXIST::FUNCTION:
+X509_policy_level_node_count 3434 EXIST::FUNCTION:
+STORE_new_engine 3435 EXIST::FUNCTION:
+STORE_list_public_key_start 3436 EXIST::FUNCTION:
+X509_VERIFY_PARAM_new 3437 EXIST::FUNCTION:
+ECDH_get_ex_data 3438 EXIST::FUNCTION:ECDH
+EVP_PKEY_get_attr 3439 EXIST::FUNCTION:
+ECDSA_do_sign 3440 EXIST::FUNCTION:ECDSA
+ENGINE_unregister_ECDH 3441 EXIST::FUNCTION:ENGINE
+ECDH_OpenSSL 3442 EXIST::FUNCTION:ECDH
+EC_KEY_set_conv_form 3443 EXIST::FUNCTION:EC
+EC_POINT_dup 3444 EXIST::FUNCTION:EC
+GENERAL_SUBTREE_new 3445 EXIST::FUNCTION:
+STORE_list_crl_endp 3446 EXIST::FUNCTION:
+EC_get_builtin_curves 3447 EXIST::FUNCTION:EC
+X509_policy_node_get0_qualifiers 3448 EXIST:!VMS:FUNCTION:
+X509_pcy_node_get0_qualifiers 3448 EXIST:VMS:FUNCTION:
+STORE_list_crl_end 3449 EXIST::FUNCTION:
+EVP_PKEY_set1_EC_KEY 3450 EXIST::FUNCTION:EC
+BN_GF2m_mod_sqrt_arr 3451 EXIST::FUNCTION:
+i2d_ECPrivateKey_bio 3452 EXIST::FUNCTION:BIO,EC
+ECPKParameters_print_fp 3453 EXIST::FUNCTION:EC,FP_API
+pqueue_find 3454 EXIST::FUNCTION:
+ECDSA_SIG_free 3455 EXIST::FUNCTION:ECDSA
+PEM_write_bio_ECPKParameters 3456 EXIST::FUNCTION:EC
+STORE_method_set_ctrl_function 3457 EXIST::FUNCTION:
+STORE_list_public_key_end 3458 EXIST::FUNCTION:
+EC_KEY_set_private_key 3459 EXIST::FUNCTION:EC
+pqueue_peek 3460 EXIST::FUNCTION:
+STORE_get_arbitrary 3461 EXIST::FUNCTION:
+STORE_store_crl 3462 EXIST::FUNCTION:
+X509_policy_node_get0_policy 3463 EXIST::FUNCTION:
+PKCS12_add_safes 3464 EXIST::FUNCTION:
+BN_BLINDING_convert_ex 3465 EXIST::FUNCTION:
+X509_policy_tree_free 3466 EXIST::FUNCTION:
+OPENSSL_ia32cap_loc 3467 EXIST::FUNCTION:
+BN_GF2m_poly2arr 3468 EXIST::FUNCTION:
+STORE_ctrl 3469 EXIST::FUNCTION:
+STORE_ATTR_INFO_compare 3470 EXIST::FUNCTION:
+BN_get0_nist_prime_224 3471 EXIST::FUNCTION:
+i2d_ECParameters 3472 EXIST::FUNCTION:EC
+i2d_ECPKParameters 3473 EXIST::FUNCTION:EC
+BN_GENCB_call 3474 EXIST::FUNCTION:
+d2i_ECPKParameters 3475 EXIST::FUNCTION:EC
+STORE_method_set_generate_function 3476 EXIST:!VMS:FUNCTION:
+STORE_meth_set_generate_fn 3476 EXIST:VMS:FUNCTION:
+ENGINE_set_ECDH 3477 EXIST::FUNCTION:ENGINE
+NAME_CONSTRAINTS_new 3478 EXIST::FUNCTION:
+SHA256_Init 3479 EXIST::FUNCTION:SHA,SHA256
+EC_KEY_get0_public_key 3480 EXIST::FUNCTION:EC
+PEM_write_bio_EC_PUBKEY 3481 EXIST::FUNCTION:EC
+STORE_ATTR_INFO_set_cstr 3482 EXIST::FUNCTION:
+STORE_list_crl_next 3483 EXIST::FUNCTION:
+STORE_ATTR_INFO_in_range 3484 EXIST::FUNCTION:
+ECParameters_print 3485 EXIST::FUNCTION:BIO,EC
+STORE_method_set_delete_function 3486 EXIST:!VMS:FUNCTION:
+STORE_meth_set_delete_fn 3486 EXIST:VMS:FUNCTION:
+STORE_list_certificate_next 3487 EXIST::FUNCTION:
+ASN1_generate_nconf 3488 EXIST::FUNCTION:
+BUF_memdup 3489 EXIST::FUNCTION:
+BN_GF2m_mod_mul 3490 EXIST::FUNCTION:
+STORE_method_get_list_next_function 3491 EXIST:!VMS:FUNCTION:
+STORE_meth_get_list_next_fn 3491 EXIST:VMS:FUNCTION:
+STORE_ATTR_INFO_get0_dn 3492 EXIST::FUNCTION:
+STORE_list_private_key_next 3493 EXIST::FUNCTION:
+EC_GROUP_set_seed 3494 EXIST::FUNCTION:EC
+X509_VERIFY_PARAM_set_trust 3495 EXIST::FUNCTION:
+STORE_ATTR_INFO_free 3496 EXIST::FUNCTION:
+STORE_get_private_key 3497 EXIST::FUNCTION:
+EVP_PKEY_get_attr_count 3498 EXIST::FUNCTION:
+STORE_ATTR_INFO_new 3499 EXIST::FUNCTION:
+EC_GROUP_get_curve_GF2m 3500 EXIST::FUNCTION:EC
+STORE_method_set_revoke_function 3501 EXIST:!VMS:FUNCTION:
+STORE_meth_set_revoke_fn 3501 EXIST:VMS:FUNCTION:
+STORE_store_number 3502 EXIST::FUNCTION:
+BN_is_prime_ex 3503 EXIST::FUNCTION:
+STORE_revoke_public_key 3504 EXIST::FUNCTION:
+X509_STORE_CTX_get0_param 3505 EXIST::FUNCTION:
+STORE_delete_arbitrary 3506 EXIST::FUNCTION:
+PEM_read_X509_CERT_PAIR 3507 EXIST:!WIN16:FUNCTION:
+X509_STORE_set_depth 3508 EXIST::FUNCTION:
+ECDSA_get_ex_data 3509 EXIST::FUNCTION:ECDSA
+SHA224 3510 EXIST::FUNCTION:SHA,SHA256
+BIO_dump_indent_fp 3511 EXIST::FUNCTION:FP_API
+EC_KEY_set_group 3512 EXIST::FUNCTION:EC
+BUF_strndup 3513 EXIST::FUNCTION:
+STORE_list_certificate_start 3514 EXIST::FUNCTION:
+BN_GF2m_mod 3515 EXIST::FUNCTION:
+X509_REQ_check_private_key 3516 EXIST::FUNCTION:
+EC_GROUP_get_seed_len 3517 EXIST::FUNCTION:EC
+ERR_load_STORE_strings 3518 EXIST::FUNCTION:
+PEM_read_bio_EC_PUBKEY 3519 EXIST::FUNCTION:EC
+STORE_list_private_key_end 3520 EXIST::FUNCTION:
+i2d_EC_PUBKEY 3521 EXIST::FUNCTION:EC
+ECDSA_get_default_method 3522 EXIST::FUNCTION:ECDSA
+ASN1_put_eoc 3523 EXIST::FUNCTION:
+X509_STORE_CTX_get_explicit_policy 3524 EXIST:!VMS:FUNCTION:
+X509_STORE_CTX_get_expl_policy 3524 EXIST:VMS:FUNCTION:
+X509_VERIFY_PARAM_table_cleanup 3525 EXIST::FUNCTION:
+STORE_modify_private_key 3526 EXIST::FUNCTION:
+X509_VERIFY_PARAM_free 3527 EXIST::FUNCTION:
+EC_METHOD_get_field_type 3528 EXIST::FUNCTION:EC
+EC_GFp_nist_method 3529 EXIST::FUNCTION:EC
+STORE_method_set_modify_function 3530 EXIST:!VMS:FUNCTION:
+STORE_meth_set_modify_fn 3530 EXIST:VMS:FUNCTION:
+STORE_parse_attrs_next 3531 EXIST::FUNCTION:
+ENGINE_load_padlock 3532 EXIST::FUNCTION:ENGINE
+EC_GROUP_set_curve_name 3533 EXIST::FUNCTION:EC
+X509_CERT_PAIR_it 3534 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
+X509_CERT_PAIR_it 3534 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
+STORE_method_get_revoke_function 3535 EXIST:!VMS:FUNCTION:
+STORE_meth_get_revoke_fn 3535 EXIST:VMS:FUNCTION:
+STORE_method_set_get_function 3536 EXIST::FUNCTION:
+STORE_modify_number 3537 EXIST::FUNCTION:
+STORE_method_get_store_function 3538 EXIST::FUNCTION:
+STORE_store_private_key 3539 EXIST::FUNCTION:
+BN_GF2m_mod_sqr_arr 3540 EXIST::FUNCTION:
+RSA_setup_blinding 3541 EXIST::FUNCTION:RSA
+BIO_s_datagram 3542 EXIST::FUNCTION:DGRAM
+STORE_Memory 3543 EXIST::FUNCTION:
+sk_find_ex 3544 EXIST::FUNCTION:
+EC_GROUP_set_curve_GF2m 3545 EXIST::FUNCTION:EC
+ENGINE_set_default_ECDSA 3546 EXIST::FUNCTION:ENGINE
+POLICY_CONSTRAINTS_new 3547 EXIST::FUNCTION:
+BN_GF2m_mod_sqrt 3548 EXIST::FUNCTION:
+ECDH_set_default_method 3549 EXIST::FUNCTION:ECDH
+EC_KEY_generate_key 3550 EXIST::FUNCTION:EC
+SHA384_Update 3551 EXIST::FUNCTION:SHA,SHA512
+BN_GF2m_arr2poly 3552 EXIST::FUNCTION:
+STORE_method_get_get_function 3553 EXIST::FUNCTION:
+STORE_method_set_cleanup_function 3554 EXIST:!VMS:FUNCTION:
+STORE_meth_set_cleanup_fn 3554 EXIST:VMS:FUNCTION:
+EC_GROUP_check 3555 EXIST::FUNCTION:EC
+d2i_ECPrivateKey_bio 3556 EXIST::FUNCTION:BIO,EC
+EC_KEY_insert_key_method_data 3557 EXIST::FUNCTION:EC
+STORE_method_get_lock_store_function 3558 EXIST:!VMS:FUNCTION:
+STORE_meth_get_lock_store_fn 3558 EXIST:VMS:FUNCTION:
+X509_VERIFY_PARAM_get_depth 3559 EXIST::FUNCTION:
+SHA224_Final 3560 EXIST::FUNCTION:SHA,SHA256
+STORE_method_set_update_store_function 3561 EXIST:!VMS:FUNCTION:
+STORE_meth_set_update_store_fn 3561 EXIST:VMS:FUNCTION:
+SHA224_Update 3562 EXIST::FUNCTION:SHA,SHA256
+d2i_ECPrivateKey 3563 EXIST::FUNCTION:EC
+ASN1_item_ndef_i2d 3564 EXIST::FUNCTION:
+STORE_delete_private_key 3565 EXIST::FUNCTION:
+ERR_pop_to_mark 3566 EXIST::FUNCTION:
+ENGINE_register_all_STORE 3567 EXIST::FUNCTION:ENGINE
+X509_policy_level_get0_node 3568 EXIST::FUNCTION:
+i2d_PKCS7_NDEF 3569 EXIST::FUNCTION:
+EC_GROUP_get_degree 3570 EXIST::FUNCTION:EC
+ASN1_generate_v3 3571 EXIST::FUNCTION:
+STORE_ATTR_INFO_modify_cstr 3572 EXIST::FUNCTION:
+X509_policy_tree_level_count 3573 EXIST::FUNCTION:
+BN_GF2m_add 3574 EXIST::FUNCTION:
+EC_KEY_get0_group 3575 EXIST::FUNCTION:EC
+STORE_generate_crl 3576 EXIST::FUNCTION:
+STORE_store_public_key 3577 EXIST::FUNCTION:
+X509_CERT_PAIR_free 3578 EXIST::FUNCTION:
+STORE_revoke_private_key 3579 EXIST::FUNCTION:
+BN_nist_mod_224 3580 EXIST::FUNCTION:
+SHA512_Final 3581 EXIST::FUNCTION:SHA,SHA512
+STORE_ATTR_INFO_modify_dn 3582 EXIST::FUNCTION:
+STORE_method_get_initialise_function 3583 EXIST:!VMS:FUNCTION:
+STORE_meth_get_initialise_fn 3583 EXIST:VMS:FUNCTION:
+STORE_delete_number 3584 EXIST::FUNCTION:
+i2d_EC_PUBKEY_bio 3585 EXIST::FUNCTION:BIO,EC
+BIO_dgram_non_fatal_error 3586 EXIST::FUNCTION:
+EC_GROUP_get_asn1_flag 3587 EXIST::FUNCTION:EC
+STORE_ATTR_INFO_in_ex 3588 EXIST::FUNCTION:
+STORE_list_crl_start 3589 EXIST::FUNCTION:
+ECDH_get_ex_new_index 3590 EXIST::FUNCTION:ECDH
+STORE_method_get_modify_function 3591 EXIST:!VMS:FUNCTION:
+STORE_meth_get_modify_fn 3591 EXIST:VMS:FUNCTION:
+v2i_ASN1_BIT_STRING 3592 EXIST::FUNCTION:
+STORE_store_certificate 3593 EXIST::FUNCTION:
+OBJ_bsearch_ex 3594 EXIST::FUNCTION:
+X509_STORE_CTX_set_default 3595 EXIST::FUNCTION:
+STORE_ATTR_INFO_set_sha1str 3596 EXIST::FUNCTION:
+BN_GF2m_mod_inv 3597 EXIST::FUNCTION:
+BN_GF2m_mod_exp 3598 EXIST::FUNCTION:
+STORE_modify_public_key 3599 EXIST::FUNCTION:
+STORE_method_get_list_start_function 3600 EXIST:!VMS:FUNCTION:
+STORE_meth_get_list_start_fn 3600 EXIST:VMS:FUNCTION:
+EC_GROUP_get0_seed 3601 EXIST::FUNCTION:EC
+STORE_store_arbitrary 3602 EXIST::FUNCTION:
+STORE_method_set_unlock_store_function 3603 EXIST:!VMS:FUNCTION:
+STORE_meth_set_unlock_store_fn 3603 EXIST:VMS:FUNCTION:
+BN_GF2m_mod_div_arr 3604 EXIST::FUNCTION:
+ENGINE_set_ECDSA 3605 EXIST::FUNCTION:ENGINE
+STORE_create_method 3606 EXIST::FUNCTION:
+ECPKParameters_print 3607 EXIST::FUNCTION:BIO,EC
+EC_KEY_get0_private_key 3608 EXIST::FUNCTION:EC
+PEM_write_EC_PUBKEY 3609 EXIST:!WIN16:FUNCTION:EC
+X509_VERIFY_PARAM_set1 3610 EXIST::FUNCTION:
+ECDH_set_method 3611 EXIST::FUNCTION:ECDH
+v2i_GENERAL_NAME_ex 3612 EXIST::FUNCTION:
+ECDH_set_ex_data 3613 EXIST::FUNCTION:ECDH
+STORE_generate_key 3614 EXIST::FUNCTION:
+BN_nist_mod_521 3615 EXIST::FUNCTION:
+X509_policy_tree_get0_level 3616 EXIST::FUNCTION:
+EC_GROUP_set_point_conversion_form 3617 EXIST:!VMS:FUNCTION:EC
+EC_GROUP_set_point_conv_form 3617 EXIST:VMS:FUNCTION:EC
+PEM_read_EC_PUBKEY 3618 EXIST:!WIN16:FUNCTION:EC
+i2d_ECDSA_SIG 3619 EXIST::FUNCTION:ECDSA
+ECDSA_OpenSSL 3620 EXIST::FUNCTION:ECDSA
+STORE_delete_crl 3621 EXIST::FUNCTION:
+EC_KEY_get_enc_flags 3622 EXIST::FUNCTION:EC
+ASN1_const_check_infinite_end 3623 EXIST::FUNCTION:
+EVP_PKEY_delete_attr 3624 EXIST::FUNCTION:
+ECDSA_set_default_method 3625 EXIST::FUNCTION:ECDSA
+EC_POINT_set_compressed_coordinates_GF2m 3626 EXIST:!VMS:FUNCTION:EC
+EC_POINT_set_compr_coords_GF2m 3626 EXIST:VMS:FUNCTION:EC
+EC_GROUP_cmp 3627 EXIST::FUNCTION:EC
+STORE_revoke_certificate 3628 EXIST::FUNCTION:
+BN_get0_nist_prime_256 3629 EXIST::FUNCTION:
+STORE_method_get_delete_function 3630 EXIST:!VMS:FUNCTION:
+STORE_meth_get_delete_fn 3630 EXIST:VMS:FUNCTION:
+SHA224_Init 3631 EXIST::FUNCTION:SHA,SHA256
+PEM_read_ECPrivateKey 3632 EXIST:!WIN16:FUNCTION:EC
+SHA512_Init 3633 EXIST::FUNCTION:SHA,SHA512
+STORE_parse_attrs_endp 3634 EXIST::FUNCTION:
+BN_set_negative 3635 EXIST::FUNCTION:
+ERR_load_ECDSA_strings 3636 EXIST::FUNCTION:ECDSA
+EC_GROUP_get_basis_type 3637 EXIST::FUNCTION:EC
+STORE_list_public_key_next 3638 EXIST::FUNCTION:
+i2v_ASN1_BIT_STRING 3639 EXIST::FUNCTION:
+STORE_OBJECT_free 3640 EXIST::FUNCTION:
+BN_nist_mod_384 3641 EXIST::FUNCTION:
+i2d_X509_CERT_PAIR 3642 EXIST::FUNCTION:
+PEM_write_ECPKParameters 3643 EXIST:!WIN16:FUNCTION:EC
+ECDH_compute_key 3644 EXIST::FUNCTION:ECDH
+STORE_ATTR_INFO_get0_sha1str 3645 EXIST::FUNCTION:
+ENGINE_register_all_ECDH 3646 EXIST::FUNCTION:ENGINE
+pqueue_pop 3647 EXIST::FUNCTION:
+STORE_ATTR_INFO_get0_cstr 3648 EXIST::FUNCTION:
+POLICY_CONSTRAINTS_it 3649 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
+POLICY_CONSTRAINTS_it 3649 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
+STORE_get_ex_new_index 3650 EXIST::FUNCTION:
+EVP_PKEY_get_attr_by_OBJ 3651 EXIST::FUNCTION:
+X509_VERIFY_PARAM_add0_policy 3652 EXIST::FUNCTION:
+BN_GF2m_mod_solve_quad 3653 EXIST::FUNCTION:
+SHA256 3654 EXIST::FUNCTION:SHA,SHA256
+i2d_ECPrivateKey_fp 3655 EXIST::FUNCTION:EC,FP_API
+X509_policy_tree_get0_user_policies 3656 EXIST:!VMS:FUNCTION:
+X509_pcy_tree_get0_usr_policies 3656 EXIST:VMS:FUNCTION:
+OPENSSL_DIR_read 3657 EXIST::FUNCTION:
+ENGINE_register_all_ECDSA 3658 EXIST::FUNCTION:ENGINE
+X509_VERIFY_PARAM_lookup 3659 EXIST::FUNCTION:
+EC_POINT_get_affine_coordinates_GF2m 3660 EXIST:!VMS:FUNCTION:EC
+EC_POINT_get_affine_coords_GF2m 3660 EXIST:VMS:FUNCTION:EC
+EC_GROUP_dup 3661 EXIST::FUNCTION:EC
+ENGINE_get_default_ECDSA 3662 EXIST::FUNCTION:ENGINE
+EC_KEY_new 3663 EXIST::FUNCTION:EC
+SHA256_Transform 3664 EXIST::FUNCTION:SHA,SHA256
+EC_KEY_set_enc_flags 3665 EXIST::FUNCTION:EC
+ECDSA_verify 3666 EXIST::FUNCTION:ECDSA
+EC_POINT_point2hex 3667 EXIST::FUNCTION:EC
+ENGINE_get_STORE 3668 EXIST::FUNCTION:ENGINE
+SHA512 3669 EXIST::FUNCTION:SHA,SHA512
+STORE_get_certificate 3670 EXIST::FUNCTION:
+ECDSA_do_sign_ex 3671 EXIST::FUNCTION:ECDSA
+ECDSA_do_verify 3672 EXIST::FUNCTION:ECDSA
+d2i_ECPrivateKey_fp 3673 EXIST::FUNCTION:EC,FP_API
+STORE_delete_certificate 3674 EXIST::FUNCTION:
+SHA512_Transform 3675 EXIST::FUNCTION:SHA,SHA512
+X509_STORE_set1_param 3676 EXIST::FUNCTION:
+STORE_method_get_ctrl_function 3677 EXIST::FUNCTION:
+STORE_free 3678 EXIST::FUNCTION:
+PEM_write_ECPrivateKey 3679 EXIST:!WIN16:FUNCTION:EC
+STORE_method_get_unlock_store_function 3680 EXIST:!VMS:FUNCTION:
+STORE_meth_get_unlock_store_fn 3680 EXIST:VMS:FUNCTION:
+STORE_get_ex_data 3681 EXIST::FUNCTION:
+EC_KEY_set_public_key 3682 EXIST::FUNCTION:EC
+PEM_read_ECPKParameters 3683 EXIST:!WIN16:FUNCTION:EC
+X509_CERT_PAIR_new 3684 EXIST::FUNCTION:
+ENGINE_register_STORE 3685 EXIST::FUNCTION:ENGINE
+RSA_generate_key_ex 3686 EXIST::FUNCTION:RSA
+DSA_generate_parameters_ex 3687 EXIST::FUNCTION:DSA
+ECParameters_print_fp 3688 EXIST::FUNCTION:EC,FP_API
+X509V3_NAME_from_section 3689 EXIST::FUNCTION:
+EVP_PKEY_add1_attr 3690 EXIST::FUNCTION:
+STORE_modify_crl 3691 EXIST::FUNCTION:
+STORE_list_private_key_start 3692 EXIST::FUNCTION:
+POLICY_MAPPINGS_it 3693 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
+POLICY_MAPPINGS_it 3693 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
+GENERAL_SUBTREE_it 3694 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
+GENERAL_SUBTREE_it 3694 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
+EC_GROUP_get_curve_name 3695 EXIST::FUNCTION:EC
+PEM_write_X509_CERT_PAIR 3696 EXIST:!WIN16:FUNCTION:
+BIO_dump_indent_cb 3697 EXIST::FUNCTION:
+d2i_X509_CERT_PAIR 3698 EXIST::FUNCTION:
+STORE_list_private_key_endp 3699 EXIST::FUNCTION:
+asn1_const_Finish 3700 EXIST::FUNCTION:
+i2d_EC_PUBKEY_fp 3701 EXIST::FUNCTION:EC,FP_API
+BN_nist_mod_256 3702 EXIST::FUNCTION:
+X509_VERIFY_PARAM_add0_table 3703 EXIST::FUNCTION:
+pqueue_free 3704 EXIST::FUNCTION:
+BN_BLINDING_create_param 3705 EXIST::FUNCTION:
+ECDSA_size 3706 EXIST::FUNCTION:ECDSA
+d2i_EC_PUBKEY_bio 3707 EXIST::FUNCTION:BIO,EC
+BN_get0_nist_prime_521 3708 EXIST::FUNCTION:
+STORE_ATTR_INFO_modify_sha1str 3709 EXIST::FUNCTION:
+BN_generate_prime_ex 3710 EXIST::FUNCTION:
+EC_GROUP_new_by_curve_name 3711 EXIST::FUNCTION:EC
+SHA256_Final 3712 EXIST::FUNCTION:SHA,SHA256
+DH_generate_parameters_ex 3713 EXIST::FUNCTION:DH
+PEM_read_bio_ECPrivateKey 3714 EXIST::FUNCTION:EC
+STORE_method_get_cleanup_function 3715 EXIST:!VMS:FUNCTION:
+STORE_meth_get_cleanup_fn 3715 EXIST:VMS:FUNCTION:
+ENGINE_get_ECDH 3716 EXIST::FUNCTION:ENGINE
+d2i_ECDSA_SIG 3717 EXIST::FUNCTION:ECDSA
+BN_is_prime_fasttest_ex 3718 EXIST::FUNCTION:
+ECDSA_sign 3719 EXIST::FUNCTION:ECDSA
+X509_policy_check 3720 EXIST::FUNCTION:
+EVP_PKEY_get_attr_by_NID 3721 EXIST::FUNCTION:
+STORE_set_ex_data 3722 EXIST::FUNCTION:
+ENGINE_get_ECDSA 3723 EXIST::FUNCTION:ENGINE
+EVP_ecdsa 3724 EXIST::FUNCTION:SHA
+BN_BLINDING_get_flags 3725 EXIST::FUNCTION:
+PKCS12_add_cert 3726 EXIST::FUNCTION:
+STORE_OBJECT_new 3727 EXIST::FUNCTION:
+ERR_load_ECDH_strings 3728 EXIST::FUNCTION:ECDH
+EC_KEY_dup 3729 EXIST::FUNCTION:EC
+EVP_CIPHER_CTX_rand_key 3730 EXIST::FUNCTION:
+ECDSA_set_method 3731 EXIST::FUNCTION:ECDSA
+a2i_IPADDRESS_NC 3732 EXIST::FUNCTION:
+d2i_ECParameters 3733 EXIST::FUNCTION:EC
+STORE_list_certificate_end 3734 EXIST::FUNCTION:
+STORE_get_crl 3735 EXIST::FUNCTION:
+X509_POLICY_NODE_print 3736 EXIST::FUNCTION:
+SHA384_Init 3737 EXIST::FUNCTION:SHA,SHA512
+EC_GF2m_simple_method 3738 EXIST::FUNCTION:EC
+ECDSA_set_ex_data 3739 EXIST::FUNCTION:ECDSA
+SHA384_Final 3740 EXIST::FUNCTION:SHA,SHA512
+PKCS7_set_digest 3741 EXIST::FUNCTION:
+EC_KEY_print 3742 EXIST::FUNCTION:BIO,EC
+STORE_method_set_lock_store_function 3743 EXIST:!VMS:FUNCTION:
+STORE_meth_set_lock_store_fn 3743 EXIST:VMS:FUNCTION:
+ECDSA_get_ex_new_index 3744 EXIST::FUNCTION:ECDSA
+SHA384 3745 EXIST::FUNCTION:SHA,SHA512
+POLICY_MAPPING_new 3746 EXIST::FUNCTION:
+STORE_list_certificate_endp 3747 EXIST::FUNCTION:
+X509_STORE_CTX_get0_policy_tree 3748 EXIST::FUNCTION:
+EC_GROUP_set_asn1_flag 3749 EXIST::FUNCTION:EC
+EC_KEY_check_key 3750 EXIST::FUNCTION:EC
+d2i_EC_PUBKEY_fp 3751 EXIST::FUNCTION:EC,FP_API
+PKCS7_set0_type_other 3752 EXIST::FUNCTION:
+PEM_read_bio_X509_CERT_PAIR 3753 EXIST::FUNCTION:
+pqueue_next 3754 EXIST::FUNCTION:
+STORE_method_get_list_end_function 3755 EXIST:!VMS:FUNCTION:
+STORE_meth_get_list_end_fn 3755 EXIST:VMS:FUNCTION:
+EVP_PKEY_add1_attr_by_OBJ 3756 EXIST::FUNCTION:
+X509_VERIFY_PARAM_set_time 3757 EXIST::FUNCTION:
+pqueue_new 3758 EXIST::FUNCTION:
+ENGINE_set_default_ECDH 3759 EXIST::FUNCTION:ENGINE
+STORE_new_method 3760 EXIST::FUNCTION:
+PKCS12_add_key 3761 EXIST::FUNCTION:
+DSO_merge 3762 EXIST::FUNCTION:
+EC_POINT_hex2point 3763 EXIST::FUNCTION:EC
+BIO_dump_cb 3764 EXIST::FUNCTION:
+SHA256_Update 3765 EXIST::FUNCTION:SHA,SHA256
+pqueue_insert 3766 EXIST::FUNCTION:
+pitem_free 3767 EXIST::FUNCTION:
+BN_GF2m_mod_inv_arr 3768 EXIST::FUNCTION:
+ENGINE_unregister_ECDSA 3769 EXIST::FUNCTION:ENGINE
+BN_BLINDING_set_thread_id 3770 EXIST::FUNCTION:
+get_rfc3526_prime_8192 3771 EXIST::FUNCTION:
+X509_VERIFY_PARAM_clear_flags 3772 EXIST::FUNCTION:
+get_rfc2409_prime_1024 3773 EXIST::FUNCTION:
+DH_check_pub_key 3774 EXIST::FUNCTION:DH
+get_rfc3526_prime_2048 3775 EXIST::FUNCTION:
+get_rfc3526_prime_6144 3776 EXIST::FUNCTION:
+get_rfc3526_prime_1536 3777 EXIST::FUNCTION:
+get_rfc3526_prime_3072 3778 EXIST::FUNCTION:
+get_rfc3526_prime_4096 3779 EXIST::FUNCTION:
+get_rfc2409_prime_768 3780 EXIST::FUNCTION:
+X509_VERIFY_PARAM_get_flags 3781 EXIST::FUNCTION:
+EVP_CIPHER_CTX_new 3782 EXIST::FUNCTION:
+EVP_CIPHER_CTX_free 3783 EXIST::FUNCTION:
+Camellia_cbc_encrypt 3784 EXIST::FUNCTION:CAMELLIA
+Camellia_cfb128_encrypt 3785 EXIST::FUNCTION:CAMELLIA
+Camellia_cfb1_encrypt 3786 EXIST::FUNCTION:CAMELLIA
+Camellia_cfb8_encrypt 3787 EXIST::FUNCTION:CAMELLIA
+Camellia_ctr128_encrypt 3788 EXIST::FUNCTION:CAMELLIA
+Camellia_cfbr_encrypt_block 3789 EXIST::FUNCTION:CAMELLIA
+Camellia_decrypt 3790 EXIST::FUNCTION:CAMELLIA
+Camellia_ecb_encrypt 3791 EXIST::FUNCTION:CAMELLIA
+Camellia_encrypt 3792 EXIST::FUNCTION:CAMELLIA
+Camellia_ofb128_encrypt 3793 EXIST::FUNCTION:CAMELLIA
+Camellia_set_key 3794 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_128_cbc 3795 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_128_cfb128 3796 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_128_cfb1 3797 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_128_cfb8 3798 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_128_ecb 3799 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_128_ofb 3800 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_192_cbc 3801 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_192_cfb128 3802 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_192_cfb1 3803 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_192_cfb8 3804 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_192_ecb 3805 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_192_ofb 3806 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_256_cbc 3807 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_256_cfb128 3808 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_256_cfb1 3809 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_256_cfb8 3810 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_256_ecb 3811 EXIST::FUNCTION:CAMELLIA
+EVP_camellia_256_ofb 3812 EXIST::FUNCTION:CAMELLIA
+a2i_ipadd 3813 EXIST::FUNCTION:
+ASIdentifiers_free 3814 EXIST::FUNCTION:RFC3779
+i2d_ASIdOrRange 3815 EXIST::FUNCTION:RFC3779
+EVP_CIPHER_block_size 3816 EXIST::FUNCTION:
+v3_asid_is_canonical 3817 EXIST::FUNCTION:RFC3779
+IPAddressChoice_free 3818 EXIST::FUNCTION:RFC3779
+EVP_CIPHER_CTX_set_app_data 3819 EXIST::FUNCTION:
+BIO_set_callback_arg 3820 EXIST::FUNCTION:
+v3_addr_add_prefix 3821 EXIST::FUNCTION:RFC3779
+IPAddressOrRange_it 3822 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779
+IPAddressOrRange_it 3822 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779
+BIO_set_flags 3823 EXIST::FUNCTION:
+ASIdentifiers_it 3824 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779
+ASIdentifiers_it 3824 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779
+v3_addr_get_range 3825 EXIST::FUNCTION:RFC3779
+BIO_method_type 3826 EXIST::FUNCTION:
+v3_addr_inherits 3827 EXIST::FUNCTION:RFC3779
+IPAddressChoice_it 3828 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779
+IPAddressChoice_it 3828 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779
+AES_ige_encrypt 3829 EXIST::FUNCTION:AES
+v3_addr_add_range 3830 EXIST::FUNCTION:RFC3779
+EVP_CIPHER_CTX_nid 3831 EXIST::FUNCTION:
+d2i_ASRange 3832 EXIST::FUNCTION:RFC3779
+v3_addr_add_inherit 3833 EXIST::FUNCTION:RFC3779
+v3_asid_add_id_or_range 3834 EXIST::FUNCTION:RFC3779
+v3_addr_validate_resource_set 3835 EXIST::FUNCTION:RFC3779
+EVP_CIPHER_iv_length 3836 EXIST::FUNCTION:
+EVP_MD_type 3837 EXIST::FUNCTION:
+v3_asid_canonize 3838 EXIST::FUNCTION:RFC3779
+IPAddressRange_free 3839 EXIST::FUNCTION:RFC3779
+v3_asid_add_inherit 3840 EXIST::FUNCTION:RFC3779
+EVP_CIPHER_CTX_key_length 3841 EXIST::FUNCTION:
+IPAddressRange_new 3842 EXIST::FUNCTION:RFC3779
+ASIdOrRange_new 3843 EXIST::FUNCTION:RFC3779
+EVP_MD_size 3844 EXIST::FUNCTION:
+EVP_MD_CTX_test_flags 3845 EXIST::FUNCTION:
+BIO_clear_flags 3846 EXIST::FUNCTION:
+i2d_ASRange 3847 EXIST::FUNCTION:RFC3779
+IPAddressRange_it 3848 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779
+IPAddressRange_it 3848 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779
+IPAddressChoice_new 3849 EXIST::FUNCTION:RFC3779
+ASIdentifierChoice_new 3850 EXIST::FUNCTION:RFC3779
+ASRange_free 3851 EXIST::FUNCTION:RFC3779
+EVP_MD_pkey_type 3852 EXIST::FUNCTION:
+EVP_MD_CTX_clear_flags 3853 EXIST::FUNCTION:
+IPAddressFamily_free 3854 EXIST::FUNCTION:RFC3779
+i2d_IPAddressFamily 3855 EXIST::FUNCTION:RFC3779
+IPAddressOrRange_new 3856 EXIST::FUNCTION:RFC3779
+EVP_CIPHER_flags 3857 EXIST::FUNCTION:
+v3_asid_validate_resource_set 3858 EXIST::FUNCTION:RFC3779
+d2i_IPAddressRange 3859 EXIST::FUNCTION:RFC3779
+AES_bi_ige_encrypt 3860 EXIST::FUNCTION:AES
+BIO_get_callback 3861 EXIST::FUNCTION:
+IPAddressOrRange_free 3862 EXIST::FUNCTION:RFC3779
+v3_addr_subset 3863 EXIST::FUNCTION:RFC3779
+d2i_IPAddressFamily 3864 EXIST::FUNCTION:RFC3779
+v3_asid_subset 3865 EXIST::FUNCTION:RFC3779
+BIO_test_flags 3866 EXIST::FUNCTION:
+i2d_ASIdentifierChoice 3867 EXIST::FUNCTION:RFC3779
+ASRange_it 3868 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779
+ASRange_it 3868 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779
+d2i_ASIdentifiers 3869 EXIST::FUNCTION:RFC3779
+ASRange_new 3870 EXIST::FUNCTION:RFC3779
+d2i_IPAddressChoice 3871 EXIST::FUNCTION:RFC3779
+v3_addr_get_afi 3872 EXIST::FUNCTION:RFC3779
+EVP_CIPHER_key_length 3873 EXIST::FUNCTION:
+EVP_Cipher 3874 EXIST::FUNCTION:
+i2d_IPAddressOrRange 3875 EXIST::FUNCTION:RFC3779
+ASIdOrRange_it 3876 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779
+ASIdOrRange_it 3876 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779
+EVP_CIPHER_nid 3877 EXIST::FUNCTION:
+i2d_IPAddressChoice 3878 EXIST::FUNCTION:RFC3779
+EVP_CIPHER_CTX_block_size 3879 EXIST::FUNCTION:
+ASIdentifiers_new 3880 EXIST::FUNCTION:RFC3779
+v3_addr_validate_path 3881 EXIST::FUNCTION:RFC3779
+IPAddressFamily_new 3882 EXIST::FUNCTION:RFC3779
+EVP_MD_CTX_set_flags 3883 EXIST::FUNCTION:
+v3_addr_is_canonical 3884 EXIST::FUNCTION:RFC3779
+i2d_IPAddressRange 3885 EXIST::FUNCTION:RFC3779
+IPAddressFamily_it 3886 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779
+IPAddressFamily_it 3886 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779
+v3_asid_inherits 3887 EXIST::FUNCTION:RFC3779
+EVP_CIPHER_CTX_cipher 3888 EXIST::FUNCTION:
+EVP_CIPHER_CTX_get_app_data 3889 EXIST::FUNCTION:
+EVP_MD_block_size 3890 EXIST::FUNCTION:
+EVP_CIPHER_CTX_flags 3891 EXIST::FUNCTION:
+v3_asid_validate_path 3892 EXIST::FUNCTION:RFC3779
+d2i_IPAddressOrRange 3893 EXIST::FUNCTION:RFC3779
+v3_addr_canonize 3894 EXIST::FUNCTION:RFC3779
+ASIdentifierChoice_it 3895 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779
+ASIdentifierChoice_it 3895 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779
+EVP_MD_CTX_md 3896 EXIST::FUNCTION:
+d2i_ASIdentifierChoice 3897 EXIST::FUNCTION:RFC3779
+BIO_method_name 3898 EXIST::FUNCTION:
+EVP_CIPHER_CTX_iv_length 3899 EXIST::FUNCTION:
+ASIdOrRange_free 3900 EXIST::FUNCTION:RFC3779
+ASIdentifierChoice_free 3901 EXIST::FUNCTION:RFC3779
+BIO_get_callback_arg 3902 EXIST::FUNCTION:
+BIO_set_callback 3903 EXIST::FUNCTION:
+d2i_ASIdOrRange 3904 EXIST::FUNCTION:RFC3779
+i2d_ASIdentifiers 3905 EXIST::FUNCTION:RFC3779
+SEED_decrypt 3908 EXIST::FUNCTION:SEED
+SEED_encrypt 3909 EXIST::FUNCTION:SEED
+SEED_cbc_encrypt 3910 EXIST::FUNCTION:SEED
+EVP_seed_ofb 3911 EXIST::FUNCTION:SEED
+SEED_cfb128_encrypt 3912 EXIST::FUNCTION:SEED
+SEED_ofb128_encrypt 3913 EXIST::FUNCTION:SEED
+EVP_seed_cbc 3914 EXIST::FUNCTION:SEED
+SEED_ecb_encrypt 3915 EXIST::FUNCTION:SEED
+EVP_seed_ecb 3916 EXIST::FUNCTION:SEED
+SEED_set_key 3917 EXIST::FUNCTION:SEED
+EVP_seed_cfb128 3918 EXIST::FUNCTION:SEED
+X509_EXTENSIONS_it 3919 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
+X509_EXTENSIONS_it 3919 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
+X509_get1_ocsp 3920 EXIST::FUNCTION:
+OCSP_REQ_CTX_free 3921 EXIST::FUNCTION:
+i2d_X509_EXTENSIONS 3922 EXIST::FUNCTION:
+OCSP_sendreq_nbio 3923 EXIST::FUNCTION:
+OCSP_sendreq_new 3924 EXIST::FUNCTION:
+d2i_X509_EXTENSIONS 3925 EXIST::FUNCTION:
+X509_ALGORS_it 3926 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
+X509_ALGORS_it 3926 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
+X509_ALGOR_get0 3927 EXIST::FUNCTION:
+X509_ALGOR_set0 3928 EXIST::FUNCTION:
+AES_unwrap_key 3929 EXIST::FUNCTION:AES
+AES_wrap_key 3930 EXIST::FUNCTION:AES
+X509at_get0_data_by_OBJ 3931 EXIST::FUNCTION:
+ASN1_TYPE_set1 3932 EXIST::FUNCTION:
+ASN1_STRING_set0 3933 EXIST::FUNCTION:
+i2d_X509_ALGORS 3934 EXIST::FUNCTION:
+BIO_f_zlib 3935 EXIST:ZLIB:FUNCTION:
+COMP_zlib_cleanup 3936 EXIST::FUNCTION:
+d2i_X509_ALGORS 3937 EXIST::FUNCTION:
+CMS_ReceiptRequest_free 3938 EXIST::FUNCTION:CMS
+PEM_write_CMS 3939 EXIST:!WIN16:FUNCTION:CMS
+CMS_add0_CertificateChoices 3940 EXIST::FUNCTION:CMS
+CMS_unsigned_add1_attr_by_OBJ 3941 EXIST::FUNCTION:CMS
+ERR_load_CMS_strings 3942 EXIST::FUNCTION:CMS
+CMS_sign_receipt 3943 EXIST::FUNCTION:CMS
+i2d_CMS_ContentInfo 3944 EXIST::FUNCTION:CMS
+CMS_signed_delete_attr 3945 EXIST::FUNCTION:CMS
+d2i_CMS_bio 3946 EXIST::FUNCTION:CMS
+CMS_unsigned_get_attr_by_NID 3947 EXIST::FUNCTION:CMS
+CMS_verify 3948 EXIST::FUNCTION:CMS
+SMIME_read_CMS 3949 EXIST::FUNCTION:CMS
+CMS_decrypt_set1_key 3950 EXIST::FUNCTION:CMS
+CMS_SignerInfo_get0_algs 3951 EXIST::FUNCTION:CMS
+CMS_add1_cert 3952 EXIST::FUNCTION:CMS
+CMS_set_detached 3953 EXIST::FUNCTION:CMS
+CMS_encrypt 3954 EXIST::FUNCTION:CMS
+CMS_EnvelopedData_create 3955 EXIST::FUNCTION:CMS
+CMS_uncompress 3956 EXIST::FUNCTION:CMS
+CMS_add0_crl 3957 EXIST::FUNCTION:CMS
+CMS_SignerInfo_verify_content 3958 EXIST::FUNCTION:CMS
+CMS_unsigned_get0_data_by_OBJ 3959 EXIST::FUNCTION:CMS
+PEM_write_bio_CMS 3960 EXIST::FUNCTION:CMS
+CMS_unsigned_get_attr 3961 EXIST::FUNCTION:CMS
+CMS_RecipientInfo_ktri_cert_cmp 3962 EXIST::FUNCTION:CMS
+CMS_RecipientInfo_ktri_get0_algs 3963 EXIST:!VMS:FUNCTION:CMS
+CMS_RecipInfo_ktri_get0_algs 3963 EXIST:VMS:FUNCTION:CMS
+CMS_ContentInfo_free 3964 EXIST::FUNCTION:CMS
+CMS_final 3965 EXIST::FUNCTION:CMS
+CMS_add_simple_smimecap 3966 EXIST::FUNCTION:CMS
+CMS_SignerInfo_verify 3967 EXIST::FUNCTION:CMS
+CMS_data 3968 EXIST::FUNCTION:CMS
+CMS_ContentInfo_it 3969 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:CMS
+CMS_ContentInfo_it 3969 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:CMS
+d2i_CMS_ReceiptRequest 3970 EXIST::FUNCTION:CMS
+CMS_compress 3971 EXIST::FUNCTION:CMS
+CMS_digest_create 3972 EXIST::FUNCTION:CMS
+CMS_SignerInfo_cert_cmp 3973 EXIST::FUNCTION:CMS
+CMS_SignerInfo_sign 3974 EXIST::FUNCTION:CMS
+CMS_data_create 3975 EXIST::FUNCTION:CMS
+i2d_CMS_bio 3976 EXIST::FUNCTION:CMS
+CMS_EncryptedData_set1_key 3977 EXIST::FUNCTION:CMS
+CMS_decrypt 3978 EXIST::FUNCTION:CMS
+int_smime_write_ASN1 3979 EXIST::FUNCTION:
+CMS_unsigned_delete_attr 3980 EXIST::FUNCTION:CMS
+CMS_unsigned_get_attr_count 3981 EXIST::FUNCTION:CMS
+CMS_add_smimecap 3982 EXIST::FUNCTION:CMS
+PEM_read_CMS 3983 EXIST:!WIN16:FUNCTION:CMS
+CMS_signed_get_attr_by_OBJ 3984 EXIST::FUNCTION:CMS
+d2i_CMS_ContentInfo 3985 EXIST::FUNCTION:CMS
+CMS_add_standard_smimecap 3986 EXIST::FUNCTION:CMS
+CMS_ContentInfo_new 3987 EXIST::FUNCTION:CMS
+CMS_RecipientInfo_type 3988 EXIST::FUNCTION:CMS
+CMS_get0_type 3989 EXIST::FUNCTION:CMS
+CMS_is_detached 3990 EXIST::FUNCTION:CMS
+CMS_sign 3991 EXIST::FUNCTION:CMS
+CMS_signed_add1_attr 3992 EXIST::FUNCTION:CMS
+CMS_unsigned_get_attr_by_OBJ 3993 EXIST::FUNCTION:CMS
+SMIME_write_CMS 3994 EXIST::FUNCTION:CMS
+CMS_EncryptedData_decrypt 3995 EXIST::FUNCTION:CMS
+CMS_get0_RecipientInfos 3996 EXIST::FUNCTION:CMS
+CMS_add0_RevocationInfoChoice 3997 EXIST::FUNCTION:CMS
+CMS_decrypt_set1_pkey 3998 EXIST::FUNCTION:CMS
+CMS_SignerInfo_set1_signer_cert 3999 EXIST::FUNCTION:CMS
+CMS_get0_signers 4000 EXIST::FUNCTION:CMS
+CMS_ReceiptRequest_get0_values 4001 EXIST::FUNCTION:CMS
+CMS_signed_get0_data_by_OBJ 4002 EXIST::FUNCTION:CMS
+CMS_get0_SignerInfos 4003 EXIST::FUNCTION:CMS
+CMS_add0_cert 4004 EXIST::FUNCTION:CMS
+CMS_EncryptedData_encrypt 4005 EXIST::FUNCTION:CMS
+CMS_digest_verify 4006 EXIST::FUNCTION:CMS
+CMS_set1_signers_certs 4007 EXIST::FUNCTION:CMS
+CMS_signed_get_attr 4008 EXIST::FUNCTION:CMS
+CMS_RecipientInfo_set0_key 4009 EXIST::FUNCTION:CMS
+CMS_SignedData_init 4010 EXIST::FUNCTION:CMS
+CMS_RecipientInfo_kekri_get0_id 4011 EXIST::FUNCTION:CMS
+CMS_verify_receipt 4012 EXIST::FUNCTION:CMS
+CMS_ReceiptRequest_it 4013 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:CMS
+CMS_ReceiptRequest_it 4013 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:CMS
+PEM_read_bio_CMS 4014 EXIST::FUNCTION:CMS
+CMS_get1_crls 4015 EXIST::FUNCTION:CMS
+CMS_add0_recipient_key 4016 EXIST::FUNCTION:CMS
+SMIME_read_ASN1 4017 EXIST::FUNCTION:
+CMS_ReceiptRequest_new 4018 EXIST::FUNCTION:CMS
+CMS_get0_content 4019 EXIST::FUNCTION:CMS
+CMS_get1_ReceiptRequest 4020 EXIST::FUNCTION:CMS
+CMS_signed_add1_attr_by_OBJ 4021 EXIST::FUNCTION:CMS
+CMS_RecipientInfo_kekri_id_cmp 4022 EXIST::FUNCTION:CMS
+CMS_add1_ReceiptRequest 4023 EXIST::FUNCTION:CMS
+CMS_SignerInfo_get0_signer_id 4024 EXIST::FUNCTION:CMS
+CMS_unsigned_add1_attr_by_NID 4025 EXIST::FUNCTION:CMS
+CMS_unsigned_add1_attr 4026 EXIST::FUNCTION:CMS
+CMS_signed_get_attr_by_NID 4027 EXIST::FUNCTION:CMS
+CMS_get1_certs 4028 EXIST::FUNCTION:CMS
+CMS_signed_add1_attr_by_NID 4029 EXIST::FUNCTION:CMS
+CMS_unsigned_add1_attr_by_txt 4030 EXIST::FUNCTION:CMS
+CMS_dataFinal 4031 EXIST::FUNCTION:CMS
+CMS_RecipientInfo_ktri_get0_signer_id 4032 EXIST:!VMS:FUNCTION:CMS
+CMS_RecipInfo_ktri_get0_sigr_id 4032 EXIST:VMS:FUNCTION:CMS
+i2d_CMS_ReceiptRequest 4033 EXIST::FUNCTION:CMS
+CMS_add1_recipient_cert 4034 EXIST::FUNCTION:CMS
+CMS_dataInit 4035 EXIST::FUNCTION:CMS
+CMS_signed_add1_attr_by_txt 4036 EXIST::FUNCTION:CMS
+CMS_RecipientInfo_decrypt 4037 EXIST::FUNCTION:CMS
+CMS_signed_get_attr_count 4038 EXIST::FUNCTION:CMS
+CMS_get0_eContentType 4039 EXIST::FUNCTION:CMS
+CMS_set1_eContentType 4040 EXIST::FUNCTION:CMS
+CMS_ReceiptRequest_create0 4041 EXIST::FUNCTION:CMS
+CMS_add1_signer 4042 EXIST::FUNCTION:CMS
+CMS_RecipientInfo_set0_pkey 4043 EXIST::FUNCTION:CMS
diff --git a/lib/libcrypto/util/mk1mf.pl b/lib/libcrypto/util/mk1mf.pl
index 05a60861645..1ac5fd3a507 100644
--- a/lib/libcrypto/util/mk1mf.pl
+++ b/lib/libcrypto/util/mk1mf.pl
@@ -10,19 +10,11 @@ $OPTIONS="";
$ssl_version="";
$banner="\t\@echo Building OpenSSL";
+my $no_static_engine = 0;
+my $engines = "";
local $zlib_opt = 0; # 0 = no zlib, 1 = static, 2 = dynamic
local $zlib_lib = "";
-my $fips_canister_path = "";
-my $fips_premain_dso_exe_path = "";
-my $fips_premain_c_path = "";
-my $fips_sha1_exe_path = "";
-
-my $fipslibdir = "";
-my $baseaddr = "";
-
-my $ex_l_libs = "";
-
open(IN,"<Makefile") || die "unable to open Makefile!\n";
while(<IN>) {
@@ -38,22 +30,21 @@ $infile="MINFO";
%ops=(
"VC-WIN32", "Microsoft Visual C++ [4-6] - Windows NT or 9X",
- "VC-WIN32-GMAKE", "Microsoft Visual C++ [4-6] - Windows NT or 9X, GNU make",
+ "VC-WIN64I", "Microsoft C/C++ - Win64/IA-64",
+ "VC-WIN64A", "Microsoft C/C++ - Win64/x64",
"VC-CE", "Microsoft eMbedded Visual C++ 3.0 - Windows CE ONLY",
"VC-NT", "Microsoft Visual C++ [4-6] - Windows NT ONLY",
- "VC-W31-16", "Microsoft Visual C++ 1.52 - Windows 3.1 - 286",
- "VC-WIN16", "Alias for VC-W31-32",
- "VC-W31-32", "Microsoft Visual C++ 1.52 - Windows 3.1 - 386+",
- "VC-MSDOS","Microsoft Visual C++ 1.52 - MSDOS",
"Mingw32", "GNU C++ - Windows NT or 9x",
"Mingw32-files", "Create files with DOS copy ...",
"BC-NT", "Borland C++ 4.5 - Windows NT",
- "BC-W31", "Borland C++ 4.5 - Windows 3.1 - PROBABLY NOT WORKING",
- "BC-MSDOS","Borland C++ 4.5 - MSDOS",
"linux-elf","Linux elf",
"ultrix-mips","DEC mips ultrix",
"FreeBSD","FreeBSD distribution",
"OS2-EMX", "EMX GCC OS/2",
+ "netware-clib", "CodeWarrior for NetWare - CLib - with WinSock Sockets",
+ "netware-clib-bsdsock", "CodeWarrior for NetWare - CLib - with BSD Sockets",
+ "netware-libc", "CodeWarrior for NetWare - LibC - with WinSock Sockets",
+ "netware-libc-bsdsock", "CodeWarrior for NetWare - LibC - with BSD Sockets",
"default","cc under unix",
);
@@ -73,16 +64,20 @@ and [options] can be one of
no-md2 no-md4 no-md5 no-sha no-mdc2 - Skip this digest
no-ripemd
no-rc2 no-rc4 no-rc5 no-idea no-des - Skip this symetric cipher
- no-bf no-cast no-aes
+ no-bf no-cast no-aes no-camellia no-seed
no-rsa no-dsa no-dh - Skip this public key cipher
no-ssl2 no-ssl3 - Skip this version of SSL
just-ssl - remove all non-ssl keys/digest
no-asm - No x86 asm
no-krb5 - No KRB5
no-ec - No EC
+ no-ecdsa - No ECDSA
+ no-ecdh - No ECDH
no-engine - No engine
no-hw - No hw
nasm - Use NASM for x86 asm
+ nw-nasm - Use NASM x86 asm for NetWare
+ nw-mwasm - Use Metrowerks x86 asm for NetWare
gaswin - Use GNU as with Mingw32
no-socks - No socket code
no-err - No error strings
@@ -107,6 +102,8 @@ foreach (grep(!/^$/, split(/ /, $OPTIONS)))
print STDERR "unknown option - $_\n" if !&read_options;
}
+$no_static_engine = 0 if (!$shlib);
+
$no_mdc2=1 if ($no_des);
$no_ssl3=1 if ($no_md5 || $no_sha);
@@ -119,13 +116,10 @@ $out_def="out";
$inc_def="outinc";
$tmp_def="tmp";
-$mkdir="-mkdir";
-$mkcanister="ld -r -o";
-
-$ex_build_targets = "";
+$perl="perl" unless defined $perl;
+$mkdir="-mkdir" unless defined $mkdir;
($ssl,$crypto)=("ssl","crypto");
-$cryptocompat = "";
$ranlib="echo ranlib";
$cc=(defined($VARS{'CC'}))?$VARS{'CC'}:'cc';
@@ -134,40 +128,16 @@ $bin_dir=(defined($VARS{'BIN'}))?$VARS{'BIN'}:'';
# $bin_dir.=$o causes a core dump on my sparc :-(
+
$NT=0;
push(@INC,"util/pl","pl");
-if ($platform eq "VC-MSDOS")
- {
- $asmbits=16;
- $msdos=1;
- require 'VC-16.pl';
- }
-elsif ($platform eq "VC-W31-16")
+if (($platform =~ /VC-(.+)/))
{
- $asmbits=16;
- $msdos=1; $win16=1;
- require 'VC-16.pl';
- }
-elsif (($platform eq "VC-W31-32") || ($platform eq "VC-WIN16"))
- {
- $asmbits=32;
- $msdos=1; $win16=1;
- require 'VC-16.pl';
- }
-elsif (($platform eq "VC-WIN32") || ($platform eq "VC-NT"))
- {
- $NT = 1 if $platform eq "VC-NT";
+ $FLAVOR=$1;
+ $NT = 1 if $1 eq "NT";
require 'VC-32.pl';
}
-elsif ($platform eq "VC-WIN32-GMAKE")
- {
- require 'VC-32-GMAKE.pl';
- }
-elsif ($platform eq "VC-CE")
- {
- require 'VC-CE.pl';
- }
elsif ($platform eq "Mingw32")
{
require 'Mingw32.pl';
@@ -181,23 +151,6 @@ elsif ($platform eq "BC-NT")
$bc=1;
require 'BC-32.pl';
}
-elsif ($platform eq "BC-W31")
- {
- $bc=1;
- $msdos=1; $w16=1;
- require 'BC-16.pl';
- }
-elsif ($platform eq "BC-Q16")
- {
- $msdos=1; $w16=1; $shlib=0; $qw=1;
- require 'BC-16.pl';
- }
-elsif ($platform eq "BC-MSDOS")
- {
- $asmbits=16;
- $msdos=1;
- require 'BC-16.pl';
- }
elsif ($platform eq "FreeBSD")
{
require 'unix.pl';
@@ -220,6 +173,13 @@ elsif ($platform eq "OS2-EMX")
$wc=1;
require 'OS2-EMX.pl';
}
+elsif (($platform eq "netware-clib") || ($platform eq "netware-libc") ||
+ ($platform eq "netware-clib-bsdsock") || ($platform eq "netware-libc-bsdsock"))
+ {
+ $LIBC=1 if $platform eq "netware-libc" || $platform eq "netware-libc-bsdsock";
+ $BSDSOCK=1 if ($platform eq "netware-libc-bsdsock") || ($platform eq "netware-clib-bsdsock");
+ require 'netware.pl';
+ }
else
{
require "unix.pl";
@@ -238,6 +198,8 @@ $cflags= "$xcflags$cflags" if $xcflags ne "";
$cflags.=" -DOPENSSL_NO_IDEA" if $no_idea;
$cflags.=" -DOPENSSL_NO_AES" if $no_aes;
+$cflags.=" -DOPENSSL_NO_CAMELLIA" if $no_camellia;
+$cflags.=" -DOPENSSL_NO_SEED" if $no_seed;
$cflags.=" -DOPENSSL_NO_RC2" if $no_rc2;
$cflags.=" -DOPENSSL_NO_RC4" if $no_rc4;
$cflags.=" -DOPENSSL_NO_RC5" if $no_rc5;
@@ -248,7 +210,7 @@ $cflags.=" -DOPENSSL_NO_SHA" if $no_sha;
$cflags.=" -DOPENSSL_NO_SHA1" if $no_sha1;
$cflags.=" -DOPENSSL_NO_RIPEMD" if $no_ripemd;
$cflags.=" -DOPENSSL_NO_MDC2" if $no_mdc2;
-$cflags.=" -DOPENSSL_NO_BF" if $no_bf;
+$cflags.=" -DOPENSSL_NO_BF" if $no_bf;
$cflags.=" -DOPENSSL_NO_CAST" if $no_cast;
$cflags.=" -DOPENSSL_NO_DES" if $no_des;
$cflags.=" -DOPENSSL_NO_RSA" if $no_rsa;
@@ -257,17 +219,30 @@ $cflags.=" -DOPENSSL_NO_DH" if $no_dh;
$cflags.=" -DOPENSSL_NO_SOCK" if $no_sock;
$cflags.=" -DOPENSSL_NO_SSL2" if $no_ssl2;
$cflags.=" -DOPENSSL_NO_SSL3" if $no_ssl3;
+$cflags.=" -DOPENSSL_NO_TLSEXT" if $no_tlsext;
+$cflags.=" -DOPENSSL_NO_CMS" if $no_cms;
$cflags.=" -DOPENSSL_NO_ERR" if $no_err;
$cflags.=" -DOPENSSL_NO_KRB5" if $no_krb5;
$cflags.=" -DOPENSSL_NO_EC" if $no_ec;
+$cflags.=" -DOPENSSL_NO_ECDSA" if $no_ecdsa;
+$cflags.=" -DOPENSSL_NO_ECDH" if $no_ecdh;
$cflags.=" -DOPENSSL_NO_ENGINE" if $no_engine;
$cflags.=" -DOPENSSL_NO_HW" if $no_hw;
-$cflags.=" -DOPENSSL_FIPS" if $fips;
-#$cflags.=" -DRSAref" if $rsaref ne "";
$cflags.= " -DZLIB" if $zlib_opt;
$cflags.= " -DZLIB_SHARED" if $zlib_opt == 2;
+if ($no_static_engine)
+ {
+ $cflags .= " -DOPENSSL_NO_STATIC_ENGINE";
+ }
+else
+ {
+ $cflags .= " -DOPENSSL_NO_DYNAMIC_ENGINE";
+ }
+
+#$cflags.=" -DRSAref" if $rsaref ne "";
+
## if ($unix)
## { $cflags="$c_flags" if ($c_flags ne ""); }
##else
@@ -305,21 +280,11 @@ for (;;)
{
if ($lib ne "")
{
- if ($fips && $dir =~ /^fips/)
- {
- $uc = "FIPS";
- }
- else
- {
- $uc=$lib;
- $uc =~ s/^lib(.*)\.a/$1/;
- $uc =~ tr/a-z/A-Z/;
- }
- if (($uc ne "FIPS") || $fips_canister_build)
- {
- $lib_nam{$uc}=$uc;
- $lib_obj{$uc}.=$libobj." ";
- }
+ $uc=$lib;
+ $uc =~ s/^lib(.*)\.a/$1/;
+ $uc =~ tr/a-z/A-Z/;
+ $lib_nam{$uc}=$uc;
+ $lib_obj{$uc}.=$libobj." ";
}
last if ($val eq "FINISHED");
$lib="";
@@ -340,10 +305,10 @@ for (;;)
{ $ex_libs .= " $val" if $val ne "";}
if ($key eq "TEST")
- { $test.=&var_add($dir,$val); }
+ { $test.=&var_add($dir,$val, 0); }
if (($key eq "PROGS") || ($key eq "E_OBJ"))
- { $e_exe.=&var_add($dir,$val); }
+ { $e_exe.=&var_add($dir,$val, 0); }
if ($key eq "LIB")
{
@@ -352,74 +317,45 @@ for (;;)
}
if ($key eq "EXHEADER")
- { $exheader.=&var_add($dir,$val); }
+ { $exheader.=&var_add($dir,$val, 1); }
if ($key eq "HEADER")
- { $header.=&var_add($dir,$val); }
-
- if ($key eq "LIBOBJ")
- { $libobj=&var_add($dir,$val); }
+ { $header.=&var_add($dir,$val, 1); }
- if ($key eq "FIPSLIBDIR")
- { $fipslibdir=$val;}
-
- if ($key eq "BASEADDR")
- { $baseaddr=$val;}
+ if ($key eq "LIBOBJ" && ($dir ne "engines" || !$no_static_engine))
+ { $libobj=&var_add($dir,$val, 0); }
+ if ($key eq "LIBNAMES" && $dir eq "engines" && $no_static_engine)
+ { $engines.=$val }
if (!($_=<IN>))
{ $_="RELATIVE_DIRECTORY=FINISHED\n"; }
}
close(IN);
-if ($fips_canister_path eq "")
- {
- $fips_canister_path = "\$(FIPSLIB_D)${o}fipscanister.o";
- }
-
-if ($fips_premain_c_path eq "")
+if ($shlib)
{
- $fips_premain_c_path = "\$(FIPSLIB_D)${o}fips_premain.c";
- }
-
-if ($fips)
- {
- if ($fips_sha1_exe_path eq "")
+ $extra_install= <<"EOF";
+ \$(CP) \"\$(O_SSL)\" \"\$(INSTALLTOP)${o}bin\"
+ \$(CP) \"\$(O_CRYPTO)\" \"\$(INSTALLTOP)${o}bin\"
+ \$(CP) \"\$(L_SSL)\" \"\$(INSTALLTOP)${o}lib\"
+ \$(CP) \"\$(L_CRYPTO)\" \"\$(INSTALLTOP)${o}lib\"
+EOF
+ if ($no_static_engine)
{
- $fips_sha1_exe_path =
- "\$(BIN_D)${o}fips_standalone_sha1$exep";
+ $extra_install .= <<"EOF"
+ \$(MKDIR) \"\$(INSTALLTOP)${o}lib${o}engines\"
+ \$(CP) \"\$(E_SHLIB)\" \"\$(INSTALLTOP)${o}lib${o}engines\"
+EOF
}
}
- else
- {
- $fips_sha1_exe_path = "";
- }
-
-if ($fips_premain_dso_exe_path eq "")
- {
- $fips_premain_dso_exe_path = "\$(BIN_D)${o}fips_premain_dso$exep";
- }
-
-# $ex_build_targets .= "\$(BIN_D)${o}\$(E_PREMAIN_DSO)$exep" if ($fips);
-
-if ($fips)
+else
{
- if (!$shlib)
- {
- $ex_build_targets .= " \$(LIB_D)$o$crypto_compat \$(PREMAIN_DSO_EXE)";
- $ex_l_libs .= " \$(O_FIPSCANISTER)";
- }
- if ($fipslibdir eq "")
- {
- open (IN, "util/fipslib_path.txt") || fipslib_error();
- $fipslibdir = <IN>;
- chomp $fipslibdir;
- close IN;
- }
- fips_check_files($fipslibdir,
- "fipscanister.o", "fipscanister.o.sha1",
- "fips_premain.c", "fips_premain.c.sha1");
+ $extra_install= <<"EOF";
+ \$(CP) \"\$(O_SSL)\" \"\$(INSTALLTOP)${o}lib\"
+ \$(CP) \"\$(O_CRYPTO)\" \"\$(INSTALLTOP)${o}lib\"
+EOF
+ $ex_libs .= " $zlib_lib" if $zlib_opt == 1;
}
-
$defs= <<"EOF";
# This makefile has been automatically generated from the OpenSSL distribution.
@@ -439,15 +375,6 @@ EOF
$defs .= $preamble if defined $preamble;
-if ($platform eq "VC-CE")
- {
- $defs.= <<"EOF";
-!INCLUDE <\$(WCECOMPAT)/wcedefs.mak>
-
-EOF
- $ex_libs .= " $zlib_lib" if $zlib_opt == 1;
- }
-
$defs.= <<"EOF";
INSTALLTOP=$INSTALLTOP
@@ -468,10 +395,11 @@ EX_LIBS=$ex_libs
SRC_D=$src_dir
LINK=$link
-PERL=perl
-FIPSLINK=\$(PERL) util${o}fipslink.pl
LFLAGS=$lflags
+RSC=$rsc
+AES_ASM_OBJ=$aes_asm_obj
+AES_ASM_SRC=$aes_asm_src
BN_ASM_OBJ=$bn_asm_obj
BN_ASM_SRC=$bn_asm_src
BNCO_ASM_OBJ=$bnco_asm_obj
@@ -492,6 +420,8 @@ SHA1_ASM_OBJ=$sha1_asm_obj
SHA1_ASM_SRC=$sha1_asm_src
RMD160_ASM_OBJ=$rmd160_asm_obj
RMD160_ASM_SRC=$rmd160_asm_src
+CPUID_ASM_OBJ=$cpuid_asm_obj
+CPUID_ASM_SRC=$cpuid_asm_src
# The output directory for everything intersting
OUT_D=$out_dir
@@ -501,9 +431,7 @@ TMP_D=$tmp_dir
INC_D=$inc_dir
INCO_D=$inc_dir${o}openssl
-# Directory containing FIPS module
-
-
+PERL=$perl
CP=$cp
RM=$rm
RANLIB=$ranlib
@@ -511,18 +439,6 @@ MKDIR=$mkdir
MKLIB=$bin_dir$mklib
MLFLAGS=$mlflags
ASM=$bin_dir$asm
-MKCANISTER=$mkcanister
-
-# FIPS validated module and support file locations
-
-E_PREMAIN_DSO=fips_premain_dso
-
-FIPSLIB_D=$fipslibdir
-BASEADDR=$baseaddr
-FIPS_PREMAIN_SRC=$fips_premain_c_path
-O_FIPSCANISTER=$fips_canister_path
-FIPS_SHA1_EXE=$fips_sha1_exe_path
-PREMAIN_DSO_EXE=$fips_premain_dso_exe_path
######################################################
# You should not need to touch anything below this point
@@ -535,12 +451,14 @@ CRYPTO=$crypto
# BIN_D - Binary output directory
# TEST_D - Binary test file output directory
# LIB_D - library output directory
+# ENG_D - dynamic engine output directory
# Note: if you change these point to different directories then uncomment out
# the lines around the 'NB' comment below.
#
BIN_D=\$(OUT_D)
TEST_D=\$(OUT_D)
LIB_D=\$(OUT_D)
+ENG_D=\$(OUT_D)
# INCL_D - local library directory
# OBJ_D - temp object file directory
@@ -554,7 +472,7 @@ SO_CRYPTO= $plib\$(CRYPTO)$so_shlibp
L_SSL= \$(LIB_D)$o$plib\$(SSL)$libp
L_CRYPTO= \$(LIB_D)$o$plib\$(CRYPTO)$libp
-L_LIBS= \$(L_SSL) \$(L_CRYPTO) $ex_l_libs
+L_LIBS= \$(L_SSL) \$(L_CRYPTO)
######################################################
# Don't touch anything below this point
@@ -564,19 +482,19 @@ INC=-I\$(INC_D) -I\$(INCL_D)
APP_CFLAGS=\$(INC) \$(CFLAG) \$(APP_CFLAG)
LIB_CFLAGS=\$(INC) \$(CFLAG) \$(LIB_CFLAG)
SHLIB_CFLAGS=\$(INC) \$(CFLAG) \$(LIB_CFLAG) \$(SHLIB_CFLAG)
-LIBS_DEP=\$(O_CRYPTO) \$(O_SSL) $ex_libs_dep
+LIBS_DEP=\$(O_CRYPTO) \$(O_SSL)
#############################################
EOF
$rules=<<"EOF";
-all: banner \$(TMP_D) \$(BIN_D) \$(TEST_D) \$(LIB_D) \$(INCO_D) headers \$(FIPS_SHA1_EXE) lib exe $ex_build_targets
+all: banner \$(TMP_D) \$(BIN_D) \$(TEST_D) \$(LIB_D) \$(INCO_D) headers lib exe
banner:
$banner
\$(TMP_D):
- \$(MKDIR) \$(TMP_D)
+ \$(MKDIR) \"\$(TMP_D)\"
# NB: uncomment out these lines if BIN_D, TEST_D and LIB_D are different
#\$(BIN_D):
# \$(MKDIR) \$(BIN_D)
@@ -585,31 +503,36 @@ $banner
# \$(MKDIR) \$(TEST_D)
\$(LIB_D):
- \$(MKDIR) \$(LIB_D)
+ \$(MKDIR) \"\$(LIB_D)\"
\$(INCO_D): \$(INC_D)
- \$(MKDIR) \$(INCO_D)
+ \$(MKDIR) \"\$(INCO_D)\"
\$(INC_D):
- \$(MKDIR) \$(INC_D)
+ \$(MKDIR) \"\$(INC_D)\"
headers: \$(HEADER) \$(EXHEADER)
@
-lib: \$(LIBS_DEP)
+lib: \$(LIBS_DEP) \$(E_SHLIB)
exe: \$(T_EXE) \$(BIN_D)$o\$(E_EXE)$exep
-install:
- \$(MKDIR) \$(INSTALLTOP)
- \$(MKDIR) \$(INSTALLTOP)${o}bin
- \$(MKDIR) \$(INSTALLTOP)${o}include
- \$(MKDIR) \$(INSTALLTOP)${o}include${o}openssl
- \$(MKDIR) \$(INSTALLTOP)${o}lib
- \$(CP) \$(INCO_D)${o}*.\[ch\] \$(INSTALLTOP)${o}include${o}openssl
- \$(CP) \$(BIN_D)$o\$(E_EXE)$exep \$(INSTALLTOP)${o}bin
- \$(CP) \$(O_SSL) \$(INSTALLTOP)${o}lib
- \$(CP) \$(O_CRYPTO) \$(INSTALLTOP)${o}lib
+install: all
+ \$(MKDIR) \"\$(INSTALLTOP)\"
+ \$(MKDIR) \"\$(INSTALLTOP)${o}bin\"
+ \$(MKDIR) \"\$(INSTALLTOP)${o}include\"
+ \$(MKDIR) \"\$(INSTALLTOP)${o}include${o}openssl\"
+ \$(MKDIR) \"\$(INSTALLTOP)${o}lib\"
+ \$(CP) \"\$(INCO_D)${o}*.\[ch\]\" \"\$(INSTALLTOP)${o}include${o}openssl\"
+ \$(CP) \"\$(BIN_D)$o\$(E_EXE)$exep\" \"\$(INSTALLTOP)${o}bin\"
+ \$(CP) \"apps${o}openssl.cnf\" \"\$(INSTALLTOP)\"
+$extra_install
+
+
+test: \$(T_EXE)
+ cd \$(BIN_D)
+ ..${o}ms${o}test
clean:
\$(RM) \$(TMP_D)$o*.*
@@ -668,11 +591,11 @@ foreach (split(/\s+/,$exheader)){ $h{$_}=1; }
foreach (split(/\s+/,$header)) { $h.=$_." " unless $h{$_}; }
chop($h); $header=$h;
-$defs.=&do_defs("HEADER",$header,"\$(INCL_D)",".h");
-$rules.=&do_copy_rule("\$(INCL_D)",$header,".h");
+$defs.=&do_defs("HEADER",$header,"\$(INCL_D)","");
+$rules.=&do_copy_rule("\$(INCL_D)",$header,"");
-$defs.=&do_defs("EXHEADER",$exheader,"\$(INCO_D)",".h");
-$rules.=&do_copy_rule("\$(INCO_D)",$exheader,".h");
+$defs.=&do_defs("EXHEADER",$exheader,"\$(INCO_D)","");
+$rules.=&do_copy_rule("\$(INCO_D)",$exheader,"");
$defs.=&do_defs("T_OBJ",$test,"\$(OBJ_D)",$obj);
$rules.=&do_compile_rule("\$(OBJ_D)",$test,"\$(APP_CFLAGS)");
@@ -680,29 +603,6 @@ $rules.=&do_compile_rule("\$(OBJ_D)",$test,"\$(APP_CFLAGS)");
$defs.=&do_defs("E_OBJ",$e_exe,"\$(OBJ_D)",$obj);
$rules.=&do_compile_rule("\$(OBJ_D)",$e_exe,'-DMONOLITH $(APP_CFLAGS)');
-# Special case rules for fips_start and fips_end fips_premain_dso
-
-if ($fips)
- {
- if ($fips_canister_build)
- {
- $rules.=&cc_compile_target("\$(OBJ_D)${o}fips_start$obj",
- "fips-1.0${o}fips_canister.c",
- "-DFIPS_START \$(SHLIB_CFLAGS)");
- $rules.=&cc_compile_target("\$(OBJ_D)${o}fips_end$obj",
- "fips-1.0${o}fips_canister.c", "\$(SHLIB_CFLAGS)");
- }
- $rules.=&cc_compile_target("\$(OBJ_D)${o}fips_standalone_sha1$obj",
- "fips-1.0${o}sha${o}fips_standalone_sha1.c",
- "\$(SHLIB_CFLAGS)");
- $rules.=&cc_compile_target("\$(OBJ_D)${o}fips_sha1dgst$obj",
- "fips-1.0${o}sha${o}fips_sha1dgst.c",
- "\$(SHLIB_CFLAGS)") unless $fips_canister_build;
- $rules.=&cc_compile_target("\$(OBJ_D)${o}\$(E_PREMAIN_DSO)$obj",
- "fips-1.0${o}fips_premain.c",
- "-DFINGERPRINT_PREMAIN_DSO_LOAD \$(SHLIB_CFLAGS)");
- }
-
foreach (values %lib_nam)
{
$lib_obj=$lib_obj{$_};
@@ -713,7 +613,12 @@ foreach (values %lib_nam)
$rules.="\$(O_SSL):\n\n";
next;
}
-
+ if (($aes_asm_obj ne "") && ($_ eq "CRYPTO"))
+ {
+ $lib_obj =~ s/\s(\S*\/aes_core\S*)/ \$(AES_ASM_OBJ)/;
+ $lib_obj =~ s/\s\S*\/aes_cbc\S*//;
+ $rules.=&do_asm_rule($aes_asm_obj,$aes_asm_src);
+ }
if (($bn_asm_obj ne "") && ($_ eq "CRYPTO"))
{
$lib_obj =~ s/\s\S*\/bn_asm\S*/ \$(BN_ASM_OBJ)/;
@@ -765,11 +670,28 @@ foreach (values %lib_nam)
$lib_obj =~ s/\s(\S*\/rmd_dgst\S*)/ $1 \$(RMD160_ASM_OBJ)/;
$rules.=&do_asm_rule($rmd160_asm_obj,$rmd160_asm_src);
}
+ if (($cpuid_asm_obj ne "") && ($_ eq "CRYPTO"))
+ {
+ $lib_obj =~ s/\s(\S*\/cversion\S*)/ $1 \$(CPUID_ASM_OBJ)/;
+ $rules.=&do_asm_rule($cpuid_asm_obj,$cpuid_asm_src);
+ }
$defs.=&do_defs(${_}."OBJ",$lib_obj,"\$(OBJ_D)",$obj);
$lib=($slib)?" \$(SHLIB_CFLAGS)".$shlib_ex_cflags{$_}:" \$(LIB_CFLAGS)";
$rules.=&do_compile_rule("\$(OBJ_D)",$lib_obj{$_},$lib);
}
+# hack to add version info on MSVC
+if (($platform eq "VC-WIN32") || ($platform eq "VC-NT")) {
+ $rules.= <<"EOF";
+\$(OBJ_D)\\\$(CRYPTO).res: ms\\version32.rc
+ \$(RSC) /fo"\$(OBJ_D)\\\$(CRYPTO).res" /d CRYPTO ms\\version32.rc
+
+\$(OBJ_D)\\\$(SSL).res: ms\\version32.rc
+ \$(RSC) /fo"\$(OBJ_D)\\\$(SSL).res" /d SSL ms\\version32.rc
+
+EOF
+}
+
$defs.=&do_defs("T_EXE",$test,"\$(TEST_D)",$exep);
foreach (split(/\s+/,$test))
{
@@ -778,42 +700,20 @@ foreach (split(/\s+/,$test))
$rules.=&do_link_rule("\$(TEST_D)$o$t$exep",$tt,"\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)");
}
-$rules.= &do_lib_rule("\$(SSLOBJ)","\$(O_SSL)",$ssl,$shlib,"\$(SO_SSL)");
-
+$defs.=&do_defs("E_SHLIB",$engines,"\$(ENG_D)",$shlibp);
-if ($fips)
- {
- if ($shlib)
- {
- $rules.= &do_lib_rule("\$(CRYPTOOBJ) \$(O_FIPSCANISTER)",
- "\$(O_CRYPTO)",
- "$crypto",
- $shlib, "\$(SO_CRYPTO)", "\$(BASEADDR)");
- }
- else
- {
- $rules.= &do_lib_rule("\$(CRYPTOOBJ)",
- "\$(O_CRYPTO)",$crypto,$shlib,"\$(SO_CRYPTO)", "");
- $rules.= &do_lib_rule("\$(CRYPTOOBJ) \$(O_FIPSCANISTER)",
- "\$(LIB_D)$o$crypto_compat",$crypto,$shlib,"\$(SO_CRYPTO)", "");
- }
- }
- else
+foreach (split(/\s+/,$engines))
{
- $rules.= &do_lib_rule("\$(CRYPTOOBJ)","\$(O_CRYPTO)",$crypto,$shlib,
- "\$(SO_CRYPTO)");
+ $rules.=&do_compile_rule("\$(OBJ_D)","engines${o}e_$_",$lib);
+ $rules.= &do_lib_rule("\$(OBJ_D)${o}e_${_}.obj","\$(ENG_D)$o$_$shlibp","",$shlib,"");
}
-if ($fips)
- {
- $rules.= &do_rlink_rule("\$(O_FIPSCANISTER)", "\$(OBJ_D)${o}fips_start$obj \$(FIPSOBJ) \$(OBJ_D)${o}fips_end$obj", "\$(FIPSLIB_D)${o}fips_standalone_sha1$exep", "") if $fips_canister_build;
- $rules.=&do_link_rule("\$(PREMAIN_DSO_EXE)","\$(OBJ_D)${o}\$(E_PREMAIN_DSO)$obj \$(CRYPTOOBJ) \$(O_FIPSCANISTER)","","\$(EX_LIBS)", 1);
-
- $rules.=&do_link_rule("\$(FIPS_SHA1_EXE)","\$(OBJ_D)${o}fips_standalone_sha1$obj \$(OBJ_D)${o}fips_sha1dgst$obj","","", 1);
- }
- $rules.=&do_link_rule("\$(BIN_D)$o\$(E_EXE)$exep","\$(E_OBJ)","\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)",0);
+$rules.= &do_lib_rule("\$(SSLOBJ)","\$(O_SSL)",$ssl,$shlib,"\$(SO_SSL)");
+$rules.= &do_lib_rule("\$(CRYPTOOBJ)","\$(O_CRYPTO)",$crypto,$shlib,"\$(SO_CRYPTO)");
+
+$rules.=&do_link_rule("\$(BIN_D)$o\$(E_EXE)$exep","\$(E_OBJ)","\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)");
print $defs;
@@ -833,13 +733,15 @@ print $rules;
# directories
sub var_add
{
- local($dir,$val)=@_;
+ local($dir,$val,$keepext)=@_;
local(@a,$_,$ret);
return("") if $no_engine && $dir =~ /\/engine/;
return("") if $no_hw && $dir =~ /\/hw/;
return("") if $no_idea && $dir =~ /\/idea/;
return("") if $no_aes && $dir =~ /\/aes/;
+ return("") if $no_camellia && $dir =~ /\/camellia/;
+ return("") if $no_seed && $dir =~ /\/seed/;
return("") if $no_rc2 && $dir =~ /\/rc2/;
return("") if $no_rc4 && $dir =~ /\/rc4/;
return("") if $no_rc5 && $dir =~ /\/rc5/;
@@ -848,6 +750,7 @@ sub var_add
return("") if $no_dsa && $dir =~ /\/dsa/;
return("") if $no_dh && $dir =~ /\/dh/;
return("") if $no_ec && $dir =~ /\/ec/;
+ return("") if $no_cms && $dir =~ /\/cms/;
if ($no_des && $dir =~ /\/des/)
{
if ($val =~ /read_pwd/)
@@ -862,7 +765,7 @@ sub var_add
$val =~ s/^\s*(.*)\s*$/$1/;
@a=split(/\s+/,$val);
- grep(s/\.[och]$//,@a);
+ grep(s/\.[och]$//,@a) unless $keepext;
@a=grep(!/^e_.*_3d$/,@a) if $no_des;
@a=grep(!/^e_.*_d$/,@a) if $no_des;
@@ -873,6 +776,8 @@ sub var_add
@a=grep(!/^e_.*_bf$/,@a) if $no_bf;
@a=grep(!/^e_.*_c$/,@a) if $no_cast;
@a=grep(!/^e_rc4$/,@a) if $no_rc4;
+ @a=grep(!/^e_camellia$/,@a) if $no_camellia;
+ @a=grep(!/^e_seed$/,@a) if $no_seed;
@a=grep(!/(^s2_)|(^s23_)/,@a) if $no_ssl2;
@a=grep(!/(^s3_)|(^s23_)/,@a) if $no_ssl3;
@@ -956,13 +861,23 @@ sub do_defs
elsif ($_ =~ /RC5_ENC/) { $t="$_ "; }
elsif ($_ =~ /MD5_ASM/) { $t="$_ "; }
elsif ($_ =~ /SHA1_ASM/){ $t="$_ "; }
+ elsif ($_ =~ /AES_ASM/){ $t="$_ "; }
elsif ($_ =~ /RMD160_ASM/){ $t="$_ "; }
+ elsif ($_ =~ /CPUID_ASM/){ $t="$_ "; }
else { $t="$location${o}$_$pf "; }
$Vars{$var}.="$t ";
$ret.=$t;
}
- chop($ret);
+ # hack to add version info on MSVC
+ if ($shlib && (($platform eq "VC-WIN32") || ($platform eq "VC-NT")))
+ {
+ if ($var eq "CRYPTOOBJ")
+ { $ret.="\$(OBJ_D)\\\$(CRYPTO).res "; }
+ elsif ($var eq "SSLOBJ")
+ { $ret.="\$(OBJ_D)\\\$(SSL).res "; }
+ }
+ chomp($ret);
$ret.="\n\n";
return($ret);
}
@@ -1057,61 +972,118 @@ sub do_copy_rule
if ($n =~ /bss_file/)
{ $pp=".c"; }
else { $pp=$p; }
- $ret.="$to${o}$n$pp: \$(SRC_D)$o$_$pp\n\t\$(CP) \$(SRC_D)$o$_$pp $to${o}$n$pp\n\n";
+ $ret.="$to${o}$n$pp: \$(SRC_D)$o$_$pp\n\t\$(CP) \"\$(SRC_D)$o$_$pp\" \"$to${o}$n$pp\"\n\n";
}
return($ret);
}
sub read_options
{
- if (/^no-rc2$/) { $no_rc2=1; }
- elsif (/^no-rc4$/) { $no_rc4=1; }
- elsif (/^no-rc5$/) { $no_rc5=1; }
- elsif (/^no-idea$/) { $no_idea=1; }
- elsif (/^no-aes$/) { $no_aes=1; }
- elsif (/^no-des$/) { $no_des=1; }
- elsif (/^no-bf$/) { $no_bf=1; }
- elsif (/^no-cast$/) { $no_cast=1; }
- elsif (/^no-md2$/) { $no_md2=1; }
- elsif (/^no-md4$/) { $no_md4=1; }
- elsif (/^no-md5$/) { $no_md5=1; }
- elsif (/^no-sha$/) { $no_sha=1; }
- elsif (/^no-sha1$/) { $no_sha1=1; }
- elsif (/^no-ripemd$/) { $no_ripemd=1; }
- elsif (/^no-mdc2$/) { $no_mdc2=1; }
- elsif (/^no-patents$/) { $no_rc2=$no_rc4=$no_rc5=$no_idea=$no_rsa=1; }
- elsif (/^no-rsa$/) { $no_rsa=1; }
- elsif (/^no-dsa$/) { $no_dsa=1; }
- elsif (/^no-dh$/) { $no_dh=1; }
- elsif (/^no-hmac$/) { $no_hmac=1; }
- elsif (/^no-aes$/) { $no_aes=1; }
- elsif (/^no-asm$/) { $no_asm=1; }
- elsif (/^nasm$/) { $nasm=1; }
- elsif (/^gaswin$/) { $gaswin=1; }
- elsif (/^no-ssl2$/) { $no_ssl2=1; }
- elsif (/^no-ssl3$/) { $no_ssl3=1; }
- elsif (/^no-err$/) { $no_err=1; }
- elsif (/^no-sock$/) { $no_sock=1; }
- elsif (/^no-krb5$/) { $no_krb5=1; }
- elsif (/^no-ec$/) { $no_ec=1; }
- elsif (/^no-engine$/) { $no_engine=1; }
- elsif (/^no-hw$/) { $no_hw=1; }
-
- elsif (/^just-ssl$/) { $no_rc2=$no_idea=$no_des=$no_bf=$no_cast=1;
- $no_md2=$no_sha=$no_mdc2=$no_dsa=$no_dh=1;
- $no_ssl2=$no_err=$no_ripemd=$no_rc5=1;
- $no_aes=1; }
-
- elsif (/^rsaref$/) { }
- elsif (/^fips$/) { $fips=1; }
- elsif (/^gcc$/) { $gcc=1; }
- elsif (/^debug$/) { $debug=1; }
- elsif (/^profile$/) { $profile=1; }
- elsif (/^shlib$/) { $shlib=1; }
- elsif (/^dll$/) { $shlib=1; }
- elsif (/^shared$/) { } # We just need to ignore it for now...
- elsif (/^zlib$/) { $zlib_opt = 1 if $zlib_opt == 0 }
- elsif (/^zlib-dynamic$/){ $zlib_opt = 2; }
+ # Many options are handled in a similar way. In particular
+ # no-xxx sets zero or more scalars to 1.
+ # Process these using a hash containing the option name and
+ # reference to the scalars to set.
+
+ my %valid_options = (
+ "no-rc2" => \$no_rc2,
+ "no-rc4" => \$no_rc4,
+ "no-rc5" => \$no_rc5,
+ "no-idea" => \$no_idea,
+ "no-aes" => \$no_aes,
+ "no-camellia" => \$no_camellia,
+ "no-seed" => \$no_seed,
+ "no-des" => \$no_des,
+ "no-bf" => \$no_bf,
+ "no-cast" => \$no_cast,
+ "no-md2" => \$no_md2,
+ "no-md4" => \$no_md4,
+ "no-md5" => \$no_md5,
+ "no-sha" => \$no_sha,
+ "no-sha1" => \$no_sha1,
+ "no-ripemd" => \$no_ripemd,
+ "no-mdc2" => \$no_mdc2,
+ "no-patents" =>
+ [\$no_rc2, \$no_rc4, \$no_rc5, \$no_idea, \$no_rsa],
+ "no-rsa" => \$no_rsa,
+ "no-dsa" => \$no_dsa,
+ "no-dh" => \$no_dh,
+ "no-hmac" => \$no_hmac,
+ "no-asm" => \$no_asm,
+ "nasm" => \$nasm,
+ "nw-nasm" => \$nw_nasm,
+ "nw-mwasm" => \$nw_mwasm,
+ "gaswin" => \$gaswin,
+ "no-ssl2" => \$no_ssl2,
+ "no-ssl3" => \$no_ssl3,
+ "no-tlsext" => \$no_tlsext,
+ "no-cms" => \$no_cms,
+ "no-err" => \$no_err,
+ "no-sock" => \$no_sock,
+ "no-krb5" => \$no_krb5,
+ "no-ec" => \$no_ec,
+ "no-ecdsa" => \$no_ecdsa,
+ "no-ecdh" => \$no_ecdh,
+ "no-engine" => \$no_engine,
+ "no-hw" => \$no_hw,
+ "just-ssl" =>
+ [\$no_rc2, \$no_idea, \$no_des, \$no_bf, \$no_cast,
+ \$no_md2, \$no_sha, \$no_mdc2, \$no_dsa, \$no_dh,
+ \$no_ssl2, \$no_err, \$no_ripemd, \$no_rc5,
+ \$no_aes, \$no_camellia, \$no_seed],
+ "rsaref" => 0,
+ "gcc" => \$gcc,
+ "debug" => \$debug,
+ "profile" => \$profile,
+ "shlib" => \$shlib,
+ "dll" => \$shlib,
+ "shared" => 0,
+ "no-gmp" => 0,
+ "no-rfc3779" => 0,
+ "no-montasm" => 0,
+ "no-shared" => 0,
+ "no-zlib" => 0,
+ "no-zlib-dynamic" => 0,
+ );
+
+ if (exists $valid_options{$_})
+ {
+ my $r = $valid_options{$_};
+ if ( ref $r eq "SCALAR")
+ { $$r = 1;}
+ elsif ( ref $r eq "ARRAY")
+ {
+ my $r2;
+ foreach $r2 (@$r)
+ {
+ $$r2 = 1;
+ }
+ }
+ }
+ elsif (/^no-comp$/) { $xcflags = "-DOPENSSL_NO_COMP $xcflags"; }
+ elsif (/^enable-zlib$/) { $zlib_opt = 1 if $zlib_opt == 0 }
+ elsif (/^enable-zlib-dynamic$/)
+ {
+ $zlib_opt = 2;
+ }
+ elsif (/^no-static-engine/)
+ {
+ $no_static_engine = 1;
+ }
+ elsif (/^enable-static-engine/)
+ {
+ $no_static_engine = 0;
+ }
+ # There are also enable-xxx options which correspond to
+ # the no-xxx. Since the scalars are enabled by default
+ # these can be ignored.
+ elsif (/^enable-/)
+ {
+ my $t = $_;
+ $t =~ s/^enable/no/;
+ if (exists $valid_options{$t})
+ {return 1;}
+ return 0;
+ }
elsif (/^--with-krb5-flavor=(.*)$/)
{
my $krb5_flavor = $1;
@@ -1135,31 +1107,3 @@ sub read_options
else { return(0); }
return(1);
}
-
-sub fipslib_error
- {
- print STDERR "***FIPS module directory sanity check failed***\n";
- print STDERR "FIPS module build failed, or was deleted\n";
- print STDERR "Please rebuild FIPS module.\n";
- exit 1;
- }
-
-sub fips_check_files
- {
- my $dir = shift @_;
- my $ret = 1;
- if (!-d $dir)
- {
- print STDERR "FIPS module directory $dir does not exist\n";
- fipslib_error();
- }
- foreach (@_)
- {
- if (!-f "$dir${o}$_")
- {
- print STDERR "FIPS module file $_ does not exist!\n";
- $ret = 0;
- }
- }
- fipslib_error() if ($ret == 0);
- }
diff --git a/lib/libcrypto/util/mkdef.pl b/lib/libcrypto/util/mkdef.pl
index 6c1e53bb146..ef1cc6e5134 100644
--- a/lib/libcrypto/util/mkdef.pl
+++ b/lib/libcrypto/util/mkdef.pl
@@ -79,19 +79,29 @@ my $OS2=0;
my $safe_stack_def = 0;
my @known_platforms = ( "__FreeBSD__", "PERL5", "NeXT",
- "EXPORT_VAR_AS_FUNCTION", "OPENSSL_FIPS" );
+ "EXPORT_VAR_AS_FUNCTION", "ZLIB" );
my @known_ossl_platforms = ( "VMS", "WIN16", "WIN32", "WINNT", "OS2" );
my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF",
"CAST", "MD2", "MD4", "MD5", "SHA", "SHA0", "SHA1",
"SHA256", "SHA512", "RIPEMD",
- "MDC2", "RSA", "DSA", "DH", "EC", "HMAC", "AES",
+ "MDC2", "RSA", "DSA", "DH", "EC", "ECDH", "ECDSA", "HMAC", "AES", "CAMELLIA", "SEED",
# Envelope "algorithms"
"EVP", "X509", "ASN1_TYPEDEFS",
# Helper "algorithms"
"BIO", "COMP", "BUFFER", "LHASH", "STACK", "ERR",
"LOCKING",
# External "algorithms"
- "FP_API", "STDIO", "SOCK", "KRB5", "ENGINE", "HW" );
+ "FP_API", "STDIO", "SOCK", "KRB5", "DGRAM",
+ # Engines
+ "STATIC_ENGINE", "ENGINE", "HW", "GMP",
+ # RFC3779 support
+ "RFC3779",
+ # TLS extension support
+ "TLSEXT",
+ # CMS
+ "CMS",
+ # Deprecated functions
+ "DEPRECATED" );
my $options="";
open(IN,"<Makefile") || die "unable to open Makefile!\n";
@@ -107,9 +117,11 @@ my $no_rc2; my $no_rc4; my $no_rc5; my $no_idea; my $no_des; my $no_bf;
my $no_cast;
my $no_md2; my $no_md4; my $no_md5; my $no_sha; my $no_ripemd; my $no_mdc2;
my $no_rsa; my $no_dsa; my $no_dh; my $no_hmac=0; my $no_aes; my $no_krb5;
-my $no_ec; my $no_engine; my $no_hw;
-my $no_fp_api;
-my $fips;
+my $no_ec; my $no_ecdsa; my $no_ecdh; my $no_engine; my $no_hw; my $no_camellia;
+my $no_seed;
+my $no_fp_api; my $no_static_engine; my $no_gmp; my $no_deprecated;
+my $no_rfc3779; my $no_tlsext; my $no_cms;
+
foreach (@ARGV, split(/ /, $options))
{
@@ -130,7 +142,11 @@ foreach (@ARGV, split(/ /, $options))
}
$VMS=1 if $_ eq "VMS";
$OS2=1 if $_ eq "OS2";
- $fips=1 if $_ eq "fips";
+ if ($_ eq "zlib" || $_ eq "zlib-dynamic"
+ || $_ eq "enable-zlib-dynamic") {
+ $zlib = 1;
+ }
+
$do_ssl=1 if $_ eq "ssleay";
if ($_ eq "ssl") {
@@ -142,6 +158,8 @@ foreach (@ARGV, split(/ /, $options))
$do_crypto=1;
$libname=$_;
}
+ $no_static_engine=1 if $_ eq "no-static-engine";
+ $no_static_engine=0 if $_ eq "enable-static-engine";
$do_update=1 if $_ eq "update";
$do_rewrite=1 if $_ eq "rewrite";
$do_ctest=1 if $_ eq "ctest";
@@ -166,8 +184,12 @@ foreach (@ARGV, split(/ /, $options))
elsif (/^no-dsa$/) { $no_dsa=1; }
elsif (/^no-dh$/) { $no_dh=1; }
elsif (/^no-ec$/) { $no_ec=1; }
+ elsif (/^no-ecdsa$/) { $no_ecdsa=1; }
+ elsif (/^no-ecdh$/) { $no_ecdh=1; }
elsif (/^no-hmac$/) { $no_hmac=1; }
elsif (/^no-aes$/) { $no_aes=1; }
+ elsif (/^no-camellia$/) { $no_camellia=1; }
+ elsif (/^no-seed$/) { $no_seed=1; }
elsif (/^no-evp$/) { $no_evp=1; }
elsif (/^no-lhash$/) { $no_lhash=1; }
elsif (/^no-stack$/) { $no_stack=1; }
@@ -180,6 +202,10 @@ foreach (@ARGV, split(/ /, $options))
elsif (/^no-krb5$/) { $no_krb5=1; }
elsif (/^no-engine$/) { $no_engine=1; }
elsif (/^no-hw$/) { $no_hw=1; }
+ elsif (/^no-gmp$/) { $no_gmp=1; }
+ elsif (/^no-rfc3779$/) { $no_rfc3779=1; }
+ elsif (/^no-tlsext$/) { $no_tlsext=1; }
+ elsif (/^no-cms$/) { $no_cms=1; }
}
@@ -215,8 +241,10 @@ $max_crypto = $max_num;
my $ssl="ssl/ssl.h";
$ssl.=" ssl/kssl.h";
+$ssl.=" ssl/tls1.h";
my $crypto ="crypto/crypto.h";
+$crypto.=" crypto/o_dir.h";
$crypto.=" crypto/des/des.h crypto/des/des_old.h" ; # unless $no_des;
$crypto.=" crypto/idea/idea.h" ; # unless $no_idea;
$crypto.=" crypto/rc4/rc4.h" ; # unless $no_rc4;
@@ -231,12 +259,16 @@ $crypto.=" crypto/mdc2/mdc2.h" ; # unless $no_mdc2;
$crypto.=" crypto/sha/sha.h" ; # unless $no_sha;
$crypto.=" crypto/ripemd/ripemd.h" ; # unless $no_ripemd;
$crypto.=" crypto/aes/aes.h" ; # unless $no_aes;
+$crypto.=" crypto/camellia/camellia.h" ; # unless $no_camellia;
+$crypto.=" crypto/seed/seed.h"; # unless $no_seed;
$crypto.=" crypto/bn/bn.h";
$crypto.=" crypto/rsa/rsa.h" ; # unless $no_rsa;
$crypto.=" crypto/dsa/dsa.h" ; # unless $no_dsa;
$crypto.=" crypto/dh/dh.h" ; # unless $no_dh;
$crypto.=" crypto/ec/ec.h" ; # unless $no_ec;
+$crypto.=" crypto/ecdsa/ecdsa.h" ; # unless $no_ecdsa;
+$crypto.=" crypto/ecdh/ecdh.h" ; # unless $no_ecdh;
$crypto.=" crypto/hmac/hmac.h" ; # unless $no_hmac;
$crypto.=" crypto/engine/engine.h"; # unless $no_engine;
@@ -267,7 +299,9 @@ $crypto.=" crypto/ocsp/ocsp.h";
$crypto.=" crypto/ui/ui.h crypto/ui/ui_compat.h";
$crypto.=" crypto/krb5/krb5_asn.h";
$crypto.=" crypto/tmdiff.h";
-$crypto.=" fips-1.0/fips.h fips-1.0/rand/fips_rand.h fips-1.0/sha/fips_sha.h";
+$crypto.=" crypto/store/store.h";
+$crypto.=" crypto/pqueue/pqueue.h";
+$crypto.=" crypto/cms/cms.h";
my $symhacks="crypto/symhacks.h";
@@ -423,7 +457,11 @@ sub do_defs
print STDERR "DEBUG: parsing ----------\n" if $debug;
while(<IN>) {
- last if (/\/\* Error codes for the \w+ functions\. \*\//);
+ if (/\/\* Error codes for the \w+ functions\. \*\//)
+ {
+ undef @tag;
+ last;
+ }
if ($line ne '') {
$_ = $line . $_;
$line = '';
@@ -436,17 +474,22 @@ sub do_defs
next;
}
- $cpp = 1 if /^\#.*ifdef.*cplusplus/;
+ if(/\/\*/) {
+ if (not /\*\//) { # multiline comment...
+ $line = $_; # ... just accumulate
+ next;
+ } else {
+ s/\/\*.*?\*\///gs;# wipe it
+ }
+ }
+
if ($cpp) {
- $cpp = 0 if /^\#.*endif/;
+ $cpp++ if /^#\s*if/;
+ $cpp-- if /^#\s*endif/;
next;
}
+ $cpp = 1 if /^#.*ifdef.*cplusplus/;
- s/\/\*.*?\*\///gs; # ignore comments
- if (/\/\*/) { # if we have part
- $line = $_; # of a comment,
- next; # continue reading
- }
s/{[^{}]*}//gs; # ignore {} blocks
print STDERR "DEBUG: \$def=\"$def\"\n" if $debug && $def ne "";
print STDERR "DEBUG: \$_=\"$_\"\n" if $debug;
@@ -505,7 +548,7 @@ sub do_defs
}
} elsif (/^\#\s*endif/) {
my $tag_i = $#tag;
- while($tag[$tag_i] ne "-") {
+ while($tag_i > 0 && $tag[$tag_i] ne "-") {
my $t=$tag[$tag_i];
print STDERR "DEBUG: \$t=\"$t\"\n" if $debug;
if ($tag{$t}==2) {
@@ -672,6 +715,10 @@ sub do_defs
"EXPORT_VAR_AS_FUNCTION",
"FUNCTION");
next;
+ } elsif (/^\s*DECLARE_ASN1_ALLOC_FUNCTIONS\s*\(\s*(\w*)\s*\)/) {
+ $def .= "int $1_free(void);";
+ $def .= "int $1_new(void);";
+ next;
} elsif (/^\s*DECLARE_ASN1_FUNCTIONS_name\s*\(\s*(\w*)\s*,\s*(\w*)\s*\)/) {
$def .= "int d2i_$2(void);";
$def .= "int i2d_$2(void);";
@@ -716,12 +763,21 @@ sub do_defs
"EXPORT_VAR_AS_FUNCTION",
"FUNCTION");
next;
+ } elsif (/^\s*DECLARE_ASN1_NDEF_FUNCTION\s*\(\s*(\w*)\s*\)/) {
+ $def .= "int i2d_$1_NDEF(void);";
} elsif (/^\s*DECLARE_ASN1_SET_OF\s*\(\s*(\w*)\s*\)/) {
next;
+ } elsif (/^\s*DECLARE_ASN1_PRINT_FUNCTION\s*\(\s*(\w*)\s*\)/) {
+ $def .= "int $1_print_ctx(void);";
+ next;
+ } elsif (/^\s*DECLARE_ASN1_PRINT_FUNCTION_name\s*\(\s*(\w*)\s*,\s*(\w*)\s*\)/) {
+ $def .= "int $2_print_ctx(void);";
+ next;
} elsif (/^\s*DECLARE_PKCS12_STACK_OF\s*\(\s*(\w*)\s*\)/) {
next;
} elsif (/^DECLARE_PEM_rw\s*\(\s*(\w*)\s*,/ ||
- /^DECLARE_PEM_rw_cb\s*\(\s*(\w*)\s*,/ ) {
+ /^DECLARE_PEM_rw_cb\s*\(\s*(\w*)\s*,/ ||
+ /^DECLARE_PEM_rw_const\s*\(\s*(\w*)\s*,/ ) {
# Things not in Win16
$def .=
"#INFO:"
@@ -797,7 +853,7 @@ sub do_defs
}
close(IN);
- my $algs = '';
+ my $algs;
my $plays;
print STDERR "DEBUG: postprocessing ----------\n" if $debug;
@@ -809,6 +865,17 @@ sub do_defs
next if(/typedef\W/);
next if(/\#define/);
+ # Reduce argument lists to empty ()
+ # fold round brackets recursively: (t(*v)(t),t) -> (t{}{},t) -> {}
+ while(/\(.*\)/s) {
+ s/\([^\(\)]+\)/\{\}/gs;
+ s/\(\s*\*\s*(\w+)\s*\{\}\s*\)/$1/gs; #(*f{}) -> f
+ }
+ # pretend as we didn't use curly braces: {} -> ()
+ s/\{\}/\(\)/gs;
+
+ s/STACK_OF\(\)/void/gs;
+
print STDERR "DEBUG: \$_ = \"$_\"\n" if $debug;
if (/^\#INFO:([^:]*):(.*)$/) {
$plats = $1;
@@ -819,21 +886,10 @@ sub do_defs
$s = $1;
$k = "VARIABLE";
print STDERR "DEBUG: found external variable $s\n" if $debug;
- } elsif (/\(\*(\w*(\{[0-9]+\})?)\([^\)]+/) {
- $s = $1;
- print STDERR "DEBUG: found ANSI C function $s\n" if $debug;
- } elsif (/\w+\W+(\w+)\W*\(\s*\)(\s*__attribute__\(.*\)\s*)?$/s) {
- # K&R C
- print STDERR "DEBUG: found K&R C function $s\n" if $debug;
+ } elsif (/TYPEDEF_\w+_OF/s) {
next;
- } elsif (/\w+\W+\w+(\{[0-9]+\})?\W*\(.*\)(\s*__attribute__\(.*\)\s*)?$/s) {
- while (not /\(\)(\s*__attribute__\(.*\)\s*)?$/s) {
- s/[^\(\)]*\)(\s*__attribute__\(.*\)\s*)?$/\)/s;
- s/\([^\(\)]*\)\)(\s*__attribute__\(.*\)\s*)?$/\)/s;
- }
- s/\(void\)//;
- /(\w+(\{[0-9]+\})?)\W*\(\)/s;
- $s = $1;
+ } elsif (/(\w+)\s*\(\).*/s) { # first token prior [first] () is
+ $s = $1; # a function name!
print STDERR "DEBUG: found function $s\n" if $debug;
} elsif (/\(/ and not (/=/)) {
print STDERR "File $file: cannot parse: $_;\n";
@@ -864,13 +920,9 @@ sub do_defs
$a .= ",RSA" if($s =~ /PEM_Seal(Final|Init|Update)/);
$a .= ",RSA" if($s =~ /RSAPrivateKey/);
$a .= ",RSA" if($s =~ /SSLv23?_((client|server)_)?method/);
- # SHA2 algorithms only defined in FIPS mode for
- # OpenSSL 0.9.7
- $p .= "OPENSSL_FIPS" if($s =~ /SHA[235]/);
$platform{$s} =
&reduce_platforms((defined($platform{$s})?$platform{$s}.',':"").$p);
- $algorithm{$s} = '' if !defined $algorithm{$s};
$algorithm{$s} .= ','.$a;
if (defined($variant{$s})) {
@@ -1035,9 +1087,7 @@ sub is_valid
if ($keyword eq "EXPORT_VAR_AS_FUNCTION" && ($VMSVAX || $W32 || $W16)) {
return 1;
}
- if ($keyword eq "OPENSSL_FIPS" && $fips) {
- return 1;
- }
+ if ($keyword eq "ZLIB" && $zlib) { return 1; }
return 0;
} else {
# algorithms
@@ -1058,8 +1108,12 @@ sub is_valid
if ($keyword eq "DSA" && $no_dsa) { return 0; }
if ($keyword eq "DH" && $no_dh) { return 0; }
if ($keyword eq "EC" && $no_ec) { return 0; }
+ if ($keyword eq "ECDSA" && $no_ecdsa) { return 0; }
+ if ($keyword eq "ECDH" && $no_ecdh) { return 0; }
if ($keyword eq "HMAC" && $no_hmac) { return 0; }
if ($keyword eq "AES" && $no_aes) { return 0; }
+ if ($keyword eq "CAMELLIA" && $no_camellia) { return 0; }
+ if ($keyword eq "SEED" && $no_seed) { return 0; }
if ($keyword eq "EVP" && $no_evp) { return 0; }
if ($keyword eq "LHASH" && $no_lhash) { return 0; }
if ($keyword eq "STACK" && $no_stack) { return 0; }
@@ -1072,6 +1126,12 @@ sub is_valid
if ($keyword eq "ENGINE" && $no_engine) { return 0; }
if ($keyword eq "HW" && $no_hw) { return 0; }
if ($keyword eq "FP_API" && $no_fp_api) { return 0; }
+ if ($keyword eq "STATIC_ENGINE" && $no_static_engine) { return 0; }
+ if ($keyword eq "GMP" && $no_gmp) { return 0; }
+ if ($keyword eq "RFC3779" && $no_rfc3779) { return 0; }
+ if ($keyword eq "TLSEXT" && $no_tlsext) { return 0; }
+ if ($keyword eq "CMS" && $no_cms) { return 0; }
+ if ($keyword eq "DEPRECATED" && $no_deprecated) { return 0; }
# Nothing recognise as true
return 1;
@@ -1174,8 +1234,6 @@ EOO
LIBRARY $libname $liboptions
-DESCRIPTION '$description'
-
EOF
if ($W16) {
diff --git a/lib/libcrypto/util/mkerr.pl b/lib/libcrypto/util/mkerr.pl
index 9678514604b..53e14ab4df9 100644
--- a/lib/libcrypto/util/mkerr.pl
+++ b/lib/libcrypto/util/mkerr.pl
@@ -44,8 +44,7 @@ while (@ARGV) {
}
if($recurse) {
- @source = (<crypto/*.c>, <crypto/*/*.c>, <ssl/*.c>, <fips-1.0/*.c>,
- <fips-1.0/*/*.c>);
+ @source = (<crypto/*.c>, <crypto/*/*.c>, <ssl/*.c>);
} else {
@source = @ARGV;
}
@@ -66,6 +65,8 @@ while(<IN>)
$csrc{$1} = $3;
$fmax{$1} = 99;
$rmax{$1} = 99;
+ $fassigned{$1} = ":";
+ $rassigned{$1} = ":";
$fnew{$1} = 0;
$rnew{$1} = 0;
}
@@ -104,15 +105,24 @@ while (($hdr, $lib) = each %libinc)
next;
}
- $cpp = 1 if /^#.*ifdef.*cplusplus/; # skip "C" declaration
+ if(/\/\*/) {
+ if (not /\*\//) { # multiline comment...
+ $line = $_; # ... just accumulate
+ next;
+ } else {
+ s/\/\*.*?\*\///gs; # wipe it
+ }
+ }
+
if ($cpp) {
- $cpp = 0 if /^#.*endif/;
+ $cpp++ if /^#\s*if/;
+ $cpp-- if /^#\s*endif/;
next;
}
+ $cpp = 1 if /^#.*ifdef.*cplusplus/; # skip "C" declaration
next if (/^\#/); # skip preprocessor directives
- s/\/\*.*?\*\///gs; # ignore comments
s/{[^{}]*}//gs; # ignore {} blocks
if (/\{|\/\*/) { # Add a } so editor works...
@@ -125,31 +135,37 @@ while (($hdr, $lib) = each %libinc)
print STDERR " \r" if $debug;
$defnr = 0;
+ # Delete any DECLARE_ macros
+ $def =~ s/DECLARE_\w+\([\w,\s]+\)//gs;
foreach (split /;/, $def) {
$defnr++;
print STDERR "def: $defnr\r" if $debug;
+ # The goal is to collect function names from function declarations.
+
s/^[\n\s]*//g;
s/[\n\s]*$//g;
- next if(/typedef\W/);
- if (/\(\*(\w*)\([^\)]+/) {
- my $name = $1;
- $name =~ tr/[a-z]/[A-Z]/;
- $ftrans{$name} = $1;
- } elsif (/\w+\W+(\w+)\W*\(\s*\)(\s*__attribute__\(.*\)\s*)?$/s){
- # K&R C
- next ;
- } elsif (/\w+\W+\w+\W*\(.*\)(\s*__attribute__\(.*\)\s*)?$/s) {
- while (not /\(\)(\s*__attribute__\(.*\)\s*)?$/s) {
- s/[^\(\)]*\)(\s*__attribute__\(.*\)\s*)?$/\)/s;
- s/\([^\(\)]*\)\)(\s*__attribute__\(.*\)\s*)?$/\)/s;
- }
- s/\(void\)//;
- /(\w+(\{[0-9]+\})?)\W*\(\)/s;
- my $name = $1;
+
+ # Skip over recognized non-function declarations
+ next if(/typedef\W/ or /DECLARE_STACK_OF/ or /TYPEDEF_.*_OF/);
+
+ # Remove STACK_OF(foo)
+ s/STACK_OF\(\w+\)/void/;
+
+ # Reduce argument lists to empty ()
+ # fold round brackets recursively: (t(*v)(t),t) -> (t{}{},t) -> {}
+ while(/\(.*\)/s) {
+ s/\([^\(\)]+\)/\{\}/gs;
+ s/\(\s*\*\s*(\w+)\s*\{\}\s*\)/$1/gs; #(*f{}) -> f
+ }
+ # pretend as we didn't use curly braces: {} -> ()
+ s/\{\}/\(\)/gs;
+
+ if (/(\w+)\s*\(\).*/s) { # first token prior [first] () is
+ my $name = $1; # a function name!
$name =~ tr/[a-z]/[A-Z]/;
$ftrans{$name} = $1;
- } elsif (/\(/ and not (/=/ or /DECLARE_STACK/)) {
+ } elsif (/[\(\)]/ and not (/=/)) {
print STDERR "Header $hdr: cannot parse: $_;\n";
}
}
@@ -162,7 +178,7 @@ while (($hdr, $lib) = each %libinc)
# maximum code used.
if ($gotfile) {
- while(<IN>) {
+ while(<IN>) {
if(/^\#define\s+(\S+)\s+(\S+)/) {
$name = $1;
$code = $2;
@@ -173,18 +189,49 @@ while (($hdr, $lib) = each %libinc)
}
if($1 eq "R") {
$rcodes{$name} = $code;
+ if ($rassigned{$lib} =~ /:$code:/) {
+ print STDERR "!! ERROR: $lib reason code $code assigned twice\n";
+ }
+ $rassigned{$lib} .= "$code:";
if(!(exists $rextra{$name}) &&
($code > $rmax{$lib}) ) {
$rmax{$lib} = $code;
}
} else {
+ if ($fassigned{$lib} =~ /:$code:/) {
+ print STDERR "!! ERROR: $lib function code $code assigned twice\n";
+ }
+ $fassigned{$lib} .= "$code:";
if($code > $fmax{$lib}) {
$fmax{$lib} = $code;
}
$fcodes{$name} = $code;
}
}
- }
+ }
+ }
+
+ if ($debug) {
+ if (defined($fmax{$lib})) {
+ print STDERR "Max function code fmax" . "{" . "$lib" . "} = $fmax{$lib}\n";
+ $fassigned{$lib} =~ m/^:(.*):$/;
+ @fassigned = sort {$a <=> $b} split(":", $1);
+ print STDERR " @fassigned\n";
+ }
+ if (defined($rmax{$lib})) {
+ print STDERR "Max reason code rmax" . "{" . "$lib" . "} = $rmax{$lib}\n";
+ $rassigned{$lib} =~ m/^:(.*):$/;
+ @rassigned = sort {$a <=> $b} split(":", $1);
+ print STDERR " @rassigned\n";
+ }
+ }
+
+ if ($lib eq "SSL") {
+ if ($rmax{$lib} >= 1000) {
+ print STDERR "!! ERROR: SSL error codes 1000+ are reserved for alerts.\n";
+ print STDERR "!! Any new alerts must be added to $config.\n";
+ print STDERR "\n";
+ }
}
close IN;
}
@@ -201,11 +248,10 @@ while (($hdr, $lib) = each %libinc)
# so all those unreferenced can be printed out.
-print STDERR "Files loaded: " if $debug;
foreach $file (@source) {
# Don't parse the error source file.
next if exists $cskip{$file};
- print STDERR $file if $debug;
+ print STDERR "File loaded: ".$file."\r" if $debug;
open(IN, "<$file") || die "Can't open source file $file\n";
while(<IN>) {
if(/(([A-Z0-9]+)_F_([A-Z0-9_]+))/) {
@@ -229,7 +275,7 @@ foreach $file (@source) {
}
close IN;
}
-print STDERR "\n" if $debug;
+print STDERR " \n" if $debug;
# Now process each library in turn.
@@ -266,7 +312,7 @@ foreach $lib (keys %csrc)
} else {
push @out,
"/* ====================================================================\n",
-" * Copyright (c) 2001-2005 The OpenSSL Project. All rights reserved.\n",
+" * Copyright (c) 2001-2008 The OpenSSL Project. All rights reserved.\n",
" *\n",
" * Redistribution and use in source and binary forms, with or without\n",
" * modification, are permitted provided that the following conditions\n",
@@ -356,7 +402,16 @@ EOF
foreach $i (@function) {
$z=6-int(length($i)/8);
if($fcodes{$i} eq "X") {
- $fcodes{$i} = ++$fmax{$lib};
+ $fassigned{$lib} =~ m/^:([^:]*):/;
+ $findcode = $1;
+ if (!defined($findcode)) {
+ $findcode = $fmax{$lib};
+ }
+ while ($fassigned{$lib} =~ m/:$findcode:/) {
+ $findcode++;
+ }
+ $fcodes{$i} = $findcode;
+ $fassigned{$lib} .= "$findcode:";
print STDERR "New Function code $i\n" if $debug;
}
printf OUT "#define $i%s $fcodes{$i}\n","\t" x $z;
@@ -367,7 +422,16 @@ EOF
foreach $i (@reasons) {
$z=6-int(length($i)/8);
if($rcodes{$i} eq "X") {
- $rcodes{$i} = ++$rmax{$lib};
+ $rassigned{$lib} =~ m/^:([^:]*):/;
+ $findcode = $1;
+ if (!defined($findcode)) {
+ $findcode = $rmax{$lib};
+ }
+ while ($rassigned{$lib} =~ m/:$findcode:/) {
+ $findcode++;
+ }
+ $rcodes{$i} = $findcode;
+ $rassigned{$lib} .= "$findcode:";
print STDERR "New Reason code $i\n" if $debug;
}
printf OUT "#define $i%s $rcodes{$i}\n","\t" x $z;
@@ -422,7 +486,7 @@ EOF
print OUT <<"EOF";
/* $cfile */
/* ====================================================================
- * Copyright (c) 1999-2005 The OpenSSL Project. All rights reserved.
+ * Copyright (c) 1999-2008 The OpenSSL Project. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -536,17 +600,14 @@ if($static) {
${staticloader}void ERR_load_${lib}_strings(void)
{
- static int init=1;
+#ifndef OPENSSL_NO_ERR
- if (init)
+ if (ERR_func_error_string(${lib}_str_functs[0].error) == NULL)
{
- init=0;
-#ifndef OPENSSL_NO_ERR
ERR_load_strings($load_errcode,${lib}_str_functs);
ERR_load_strings($load_errcode,${lib}_str_reasons);
-#endif
-
}
+#endif
}
EOF
} else {
diff --git a/lib/libcrypto/util/mkfiles.pl b/lib/libcrypto/util/mkfiles.pl
index bc78510f569..1282392feae 100644
--- a/lib/libcrypto/util/mkfiles.pl
+++ b/lib/libcrypto/util/mkfiles.pl
@@ -24,12 +24,16 @@ my @dirs = (
"crypto/bf",
"crypto/cast",
"crypto/aes",
+"crypto/camellia",
+"crypto/seed",
"crypto/bn",
"crypto/rsa",
"crypto/dsa",
"crypto/dso",
"crypto/dh",
"crypto/ec",
+"crypto/ecdh",
+"crypto/ecdsa",
"crypto/buffer",
"crypto/bio",
"crypto/stack",
@@ -51,17 +55,12 @@ my @dirs = (
"crypto/ocsp",
"crypto/ui",
"crypto/krb5",
-"fips-1.0",
-"fips-1.0/aes",
-"fips-1.0/des",
-"fips-1.0/dsa",
-"fips-1.0/dh",
-"fips-1.0/hmac",
-"fips-1.0/rand",
-"fips-1.0/rsa",
-"fips-1.0/sha",
+"crypto/store",
+"crypto/pqueue",
+"crypto/cms",
"ssl",
"apps",
+"engines",
"test",
"tools"
);
diff --git a/lib/libcrypto/util/mklink.pl b/lib/libcrypto/util/mklink.pl
index 182732d9594..d9bc98aab87 100644
--- a/lib/libcrypto/util/mklink.pl
+++ b/lib/libcrypto/util/mklink.pl
@@ -14,7 +14,6 @@
# not contain symbolic links and that the parent of / is never referenced.
# Apart from this, this script should be able to handle even the most
# pathological cases.
-#
use Cwd;
diff --git a/lib/libcrypto/util/mkstack.pl b/lib/libcrypto/util/mkstack.pl
index 0ca9eb6a766..2a968f395fc 100644
--- a/lib/libcrypto/util/mkstack.pl
+++ b/lib/libcrypto/util/mkstack.pl
@@ -75,6 +75,7 @@ while(<IN>) {
#define sk_${type_thing}_push(st, val) SKM_sk_push($type_thing, (st), (val))
#define sk_${type_thing}_unshift(st, val) SKM_sk_unshift($type_thing, (st), (val))
#define sk_${type_thing}_find(st, val) SKM_sk_find($type_thing, (st), (val))
+#define sk_${type_thing}_find_ex(st, val) SKM_sk_find_ex($type_thing, (st), (val))
#define sk_${type_thing}_delete(st, i) SKM_sk_delete($type_thing, (st), (i))
#define sk_${type_thing}_delete_ptr(st, ptr) SKM_sk_delete_ptr($type_thing, (st), (ptr))
#define sk_${type_thing}_insert(st, val, i) SKM_sk_insert($type_thing, (st), (val), (i))
diff --git a/lib/libcrypto/util/pl/BC-32.pl b/lib/libcrypto/util/pl/BC-32.pl
index 28869c868df..99b8c058d2c 100644
--- a/lib/libcrypto/util/pl/BC-32.pl
+++ b/lib/libcrypto/util/pl/BC-32.pl
@@ -62,7 +62,7 @@ $des_enc_src='';
$bf_enc_obj='';
$bf_enc_src='';
-if (!$no_asm && !$fips)
+if (!$no_asm)
{
$bn_mulw_obj='crypto\bn\asm\bn_win32.obj';
$bn_mulw_src='crypto\bn\asm\bn_win32.asm';
@@ -126,18 +126,13 @@ ___
sub do_link_rule
{
- local($target,$files,$dep_libs,$libs,$sha1file,$openssl)=@_;
+ local($target,$files,$dep_libs,$libs)=@_;
local($ret,$_);
-
+
$file =~ s/\//$o/g if $o ne '/';
$n=&bname($targer);
$ret.="$target: $files $dep_libs\n";
- $ret.="\t\$(LINK) \$(LFLAGS) $files \$(APP_EX_OBJ), $target,, $libs\n";
- if (defined $sha1file)
- {
- $ret.="\t$openssl sha1 -hmac etaonrishdlcupfm -binary $target > $sha1file";
- }
- $ret.="\n";
+ $ret.="\t\$(LINK) \$(LFLAGS) $files \$(APP_EX_OBJ), $target,, $libs\n\n";
return($ret);
}
diff --git a/lib/libcrypto/util/pl/Mingw32.pl b/lib/libcrypto/util/pl/Mingw32.pl
index b9bb24d21d7..8f0483fb930 100644
--- a/lib/libcrypto/util/pl/Mingw32.pl
+++ b/lib/libcrypto/util/pl/Mingw32.pl
@@ -19,9 +19,9 @@ $cc='gcc';
if ($debug)
{ $cflags="-DL_ENDIAN -DDSO_WIN32 -g2 -ggdb"; }
else
- { $cflags="-DL_ENDIAN -DDSO_WIN32 -fomit-frame-pointer -O3 -mcpu=i486 -Wall"; }
+ { $cflags="-DL_ENDIAN -DDSO_WIN32 -fomit-frame-pointer -O3 -march=i486 -Wall"; }
-if ($gaswin and !$no_asm and !$fips)
+if ($gaswin and !$no_asm)
{
$bn_asm_obj='$(OBJ_D)\bn-win32.o';
$bn_asm_src='crypto/bn/asm/bn-win32.s';
@@ -43,7 +43,9 @@ if ($gaswin and !$no_asm and !$fips)
$rmd160_asm_src='crypto/ripemd/asm/rm-win32.s';
$sha1_asm_obj='$(OBJ_D)\s1-win32.o';
$sha1_asm_src='crypto/sha/asm/s1-win32.s';
- $cflags.=" -DBN_ASM -DMD5_ASM -DSHA1_ASM";
+ $cpuid_asm_obj='$(OBJ_D)\cpu-win32.o';
+ $cpuid_asm_src='crypto/cpu-win32.s';
+ $cflags.=" -DBN_ASM -DMD5_ASM -DSHA1_ASM -DOPENSSL_BN_ASM_PART_WORDS";
}
@@ -92,18 +94,13 @@ sub do_lib_rule
sub do_link_rule
{
- local($target,$files,$dep_libs,$libs,$sha1file,$openssl)=@_;
+ local($target,$files,$dep_libs,$libs)=@_;
local($ret,$_);
$file =~ s/\//$o/g if $o ne '/';
$n=&bname($target);
$ret.="$target: $files $dep_libs\n";
- $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n";
- if (defined $sha1file)
- {
- $ret.="\t$openssl sha1 -hmac etaonrishdlcupfm -binary $target > $sha1file";
- }
- $ret.="\n";
+ $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n\n";
return($ret);
}
1;
diff --git a/lib/libcrypto/util/pl/OS2-EMX.pl b/lib/libcrypto/util/pl/OS2-EMX.pl
index 8dbeaa7a087..28cd1169079 100644
--- a/lib/libcrypto/util/pl/OS2-EMX.pl
+++ b/lib/libcrypto/util/pl/OS2-EMX.pl
@@ -48,7 +48,7 @@ $des_enc_src="";
$bf_enc_obj="";
$bf_enc_src="";
-if (!$no_asm && !$fips)
+if (!$no_asm)
{
$bn_asm_obj="crypto/bn/asm/bn-os2$obj crypto/bn/asm/co-os2$obj";
$bn_asm_src="crypto/bn/asm/bn-os2.asm crypto/bn/asm/co-os2.asm";
@@ -107,18 +107,13 @@ sub do_lib_rule
sub do_link_rule
{
- local($target,$files,$dep_libs,$libs,$sha1file,$openssl)=@_;
+ local($target,$files,$dep_libs,$libs)=@_;
local($ret,$_);
$file =~ s/\//$o/g if $o ne '/';
$n=&bname($target);
$ret.="$target: $files $dep_libs\n";
- $ret.="\t\$(LINK) ${efile}$target \$(CFLAG) \$(LFLAGS) $files $libs\n";
- if (defined $sha1file)
- {
- $ret.="\t$openssl sha1 -hmac etaonrishdlcupfm -binary $target > $sha1file";
- }
- $ret.="\n";
+ $ret.="\t\$(LINK) ${efile}$target \$(CFLAG) \$(LFLAGS) $files $libs\n\n";
return($ret);
}
diff --git a/lib/libcrypto/util/pl/VC-32.pl b/lib/libcrypto/util/pl/VC-32.pl
index 4e97dfa9aff..9cb2ab7e991 100644
--- a/lib/libcrypto/util/pl/VC-32.pl
+++ b/lib/libcrypto/util/pl/VC-32.pl
@@ -1,56 +1,154 @@
#!/usr/local/bin/perl
-# VCw32lib.pl - the file for Visual C++ 4.[01] for windows NT, static libraries
+# VC-32.pl - unified script for Microsoft Visual C++, covering Win32,
+# Win64 and WinCE [follow $FLAVOR variable to trace the differences].
#
$ssl= "ssleay32";
-
-if ($fips && !$shlib)
- {
- $crypto="libeayfips32";
- $crypto_compat = "libeaycompat32.lib";
- }
-else
- {
- $crypto="libeay32";
- }
+$crypto="libeay32";
$o='\\';
-$cp='copy nul+'; # Timestamps get stuffed otherwise
+$cp='$(PERL) util/copy.pl';
+$mkdir='$(PERL) util/mkdir-p.pl';
$rm='del';
$zlib_lib="zlib1.lib";
# C compiler stuff
$cc='cl';
-$cflags=' /MD /W3 /WX /Ox /O2 /Ob2 /Gs0 /GF /Gy /nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DDSO_WIN32';
-$cflags.=' -D_CRT_SECURE_NO_DEPRECATE'; # shut up VC8
-$cflags.=' -D_CRT_NONSTDC_NO_DEPRECATE'; # shut up VC8
-$lflags="/nologo /subsystem:console /machine:I386 /opt:ref";
+if ($FLAVOR =~ /WIN64/)
+ {
+ # Note that we currently don't have /WX on Win64! There is a lot of
+ # warnings, but only of two types:
+ #
+ # C4344: conversion from '__int64' to 'int/long', possible loss of data
+ # C4267: conversion from 'size_t' to 'int/long', possible loss of data
+ #
+ # Amount of latter type is minimized by aliasing strlen to function of
+ # own desing and limiting its return value to 2GB-1 (see e_os.h). As
+ # per 0.9.8 release remaining warnings were explicitly examined and
+ # considered safe to ignore.
+ #
+ $base_cflags=' /W3 /Gs0 /GF /Gy /nologo -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DDSO_WIN32 -DOPENSSL_SYSNAME_WIN32 -DOPENSSL_SYSNAME_WINNT -DUNICODE -D_UNICODE';
+ $base_cflags.=' -D_CRT_SECURE_NO_DEPRECATE'; # shut up VC8
+ $base_cflags.=' -D_CRT_NONSTDC_NO_DEPRECATE'; # shut up VC8
+ my $f = $shlib?' /MD':' /MT';
+ $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib
+ $opt_cflags=$f.' /Ox';
+ $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG';
+ $lflags="/nologo /subsystem:console /opt:ref";
+ }
+elsif ($FLAVOR =~ /CE/)
+ {
+ # sanity check
+ die '%OSVERSION% is not defined' if (!defined($ENV{'OSVERSION'}));
+ die '%PLATFORM% is not defined' if (!defined($ENV{'PLATFORM'}));
+ die '%TARGETCPU% is not defined' if (!defined($ENV{'TARGETCPU'}));
+
+ #
+ # Idea behind this is to mimic flags set by eVC++ IDE...
+ #
+ $wcevers = $ENV{'OSVERSION'}; # WCENNN
+ die '%OSVERSION% value is insane' if ($wcevers !~ /^WCE([1-9])([0-9]{2})$/);
+ $wcecdefs = "-D_WIN32_WCE=$1$2 -DUNDER_CE=$1$2"; # -D_WIN32_WCE=NNN
+ $wcelflag = "/subsystem:windowsce,$1.$2"; # ...,N.NN
+
+ $wceplatf = $ENV{'PLATFORM'};
+ $wceplatf =~ tr/a-z0-9 /A-Z0-9_/d;
+ $wcecdefs .= " -DWCE_PLATFORM_$wceplatf";
+
+ $wcetgt = $ENV{'TARGETCPU'}; # just shorter name...
+ SWITCH: for($wcetgt) {
+ /^X86/ && do { $wcecdefs.=" -Dx86 -D_X86_ -D_i386_ -Di_386_";
+ $wcelflag.=" /machine:IX86"; last; };
+ /^ARMV4[IT]/ && do { $wcecdefs.=" -DARM -D_ARM_ -D$wcetgt";
+ $wcecdefs.=" -DTHUMB -D_THUMB_" if($wcetgt=~/T$/);
+ $wcecdefs.=" -QRarch4T -QRinterwork-return";
+ $wcelflag.=" /machine:THUMB"; last; };
+ /^ARM/ && do { $wcecdefs.=" -DARM -D_ARM_ -D$wcetgt";
+ $wcelflag.=" /machine:ARM"; last; };
+ /^MIPSIV/ && do { $wcecdefs.=" -DMIPS -D_MIPS_ -DR4000 -D$wcetgt";
+ $wcecdefs.=" -D_MIPS64 -QMmips4 -QMn32";
+ $wcelflag.=" /machine:MIPSFPU"; last; };
+ /^MIPS16/ && do { $wcecdefs.=" -DMIPS -D_MIPS_ -DR4000 -D$wcetgt";
+ $wcecdefs.=" -DMIPSII -QMmips16";
+ $wcelflag.=" /machine:MIPS16"; last; };
+ /^MIPSII/ && do { $wcecdefs.=" -DMIPS -D_MIPS_ -DR4000 -D$wcetgt";
+ $wcecdefs.=" -QMmips2";
+ $wcelflag.=" /machine:MIPS"; last; };
+ /^R4[0-9]{3}/ && do { $wcecdefs.=" -DMIPS -D_MIPS_ -DR4000";
+ $wcelflag.=" /machine:MIPS"; last; };
+ /^SH[0-9]/ && do { $wcecdefs.=" -D$wcetgt -D_$wcetgt_ -DSHx";
+ $wcecdefs.=" -Qsh4" if ($wcetgt =~ /^SH4/);
+ $wcelflag.=" /machine:$wcetgt"; last; };
+ { $wcecdefs.=" -D$wcetgt -D_$wcetgt_";
+ $wcelflag.=" /machine:$wcetgt"; last; };
+ }
+
+ $cc='$(CC)';
+ $base_cflags=' /W3 /WX /GF /Gy /nologo -DUNICODE -D_UNICODE -DOPENSSL_SYSNAME_WINCE -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DDSO_WIN32 -DNO_CHMOD -I$(WCECOMPAT)/include -DOPENSSL_SMALL_FOOTPRINT';
+ $base_cflags.=" $wcecdefs";
+ $opt_cflags=' /MC /O1i'; # optimize for space, but with intrinsics...
+ $dbg_clfags=' /MC /Od -DDEBUG -D_DEBUG';
+ $lflags="/nologo /opt:ref $wcelflag";
+ }
+else # Win32
+ {
+ $base_cflags=' /W3 /WX /Gs0 /GF /Gy /nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DDSO_WIN32';
+ $base_cflags.=' -D_CRT_SECURE_NO_DEPRECATE'; # shut up VC8
+ $base_cflags.=' -D_CRT_NONSTDC_NO_DEPRECATE'; # shut up VC8
+ my $f = $shlib?' /MD':' /MT';
+ $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib
+ $opt_cflags=$f.' /Ox /O2 /Ob2';
+ $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG';
+ $lflags="/nologo /subsystem:console /opt:ref";
+ }
$mlflags='';
-$out_def="out32";
-$tmp_def="tmp32";
+$out_def="out32"; $out_def.='_$(TARGETCPU)' if ($FLAVOR =~ /CE/);
+$tmp_def="tmp32"; $tmp_def.='_$(TARGETCPU)' if ($FLAVOR =~ /CE/);
$inc_def="inc32";
if ($debug)
{
- $cflags=" /MDd /W3 /WX /Zi /Yd /Od /nologo -DOPENSSL_SYSNAME_WIN32 -D_DEBUG -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -DDEBUG -DDSO_WIN32";
+ $cflags=$dbg_cflags.$base_cflags;
$lflags.=" /debug";
$mlflags.=' /debug';
}
-$cflags .= " -DOPENSSL_SYSNAME_WINNT" if $NT == 1;
+else
+ {
+ $cflags=$opt_cflags.$base_cflags;
+ }
$obj='.obj';
$ofile="/Fo";
# EXE linking stuff
$link="link";
+$rsc="rc";
$efile="/out:";
$exep='.exe';
-if ($no_sock)
- { $ex_libs=""; }
-else { $ex_libs="wsock32.lib user32.lib gdi32.lib"; }
+if ($no_sock) { $ex_libs=''; }
+elsif ($FLAVOR =~ /CE/) { $ex_libs='winsock.lib'; }
+else { $ex_libs='wsock32.lib'; }
+if ($FLAVOR =~ /CE/)
+ {
+ $ex_libs.=' $(WCECOMPAT)/lib/wcecompatex.lib';
+ $ex_libs.=' /nodefaultlib:oldnames.lib coredll.lib corelibc.lib' if ($ENV{'TARGETCPU'} eq "X86");
+ }
+else
+ {
+ $ex_libs.=' gdi32.lib advapi32.lib user32.lib';
+ $ex_libs.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/);
+ }
+
+# As native NT API is pure UNICODE, our WIN-NT build defaults to UNICODE,
+# but gets linked with unicows.lib to ensure backward compatibility.
+if ($FLAVOR =~ /NT/)
+ {
+ $cflags.=" -DOPENSSL_SYSNAME_WINNT -DUNICODE -D_UNICODE";
+ $ex_libs="unicows.lib $ex_libs";
+ }
# static library stuff
$mklib='lib';
$ranlib='';
@@ -60,9 +158,12 @@ $shlibp=($shlib)?".dll":".lib";
$lfile='/out:';
$shlib_ex_obj="";
-$app_ex_obj="setargv.obj";
+$app_ex_obj="setargv.obj" if ($FLAVOR !~ /CE/);
if ($nasm) {
- $asm='nasmw -f win32';
+ my $ver=`nasm -v 2>NUL`;
+ my $vew=`nasmw -v 2>NUL`;
+ # pick newest version
+ $asm=($ver gt $vew?"nasm":"nasmw")." -f win32";
$afile='-o ';
} else {
$asm='ml /Cp /coff /c /Cx';
@@ -77,10 +178,14 @@ $des_enc_src='';
$bf_enc_obj='';
$bf_enc_src='';
-if (!$no_asm && !$fips)
+if (!$no_asm)
{
+ $aes_asm_obj='crypto\aes\asm\a_win32.obj';
+ $aes_asm_src='crypto\aes\asm\a_win32.asm';
$bn_asm_obj='crypto\bn\asm\bn_win32.obj';
$bn_asm_src='crypto\bn\asm\bn_win32.asm';
+ $bnco_asm_obj='crypto\bn\asm\co_win32.obj';
+ $bnco_asm_src='crypto\bn\asm\co_win32.asm';
$des_enc_obj='crypto\des\asm\d_win32.obj crypto\des\asm\y_win32.obj';
$des_enc_src='crypto\des\asm\d_win32.asm crypto\des\asm\y_win32.asm';
$bf_enc_obj='crypto\bf\asm\b_win32.obj';
@@ -93,76 +198,96 @@ if (!$no_asm && !$fips)
$rc5_enc_src='crypto\rc5\asm\r5_win32.asm';
$md5_asm_obj='crypto\md5\asm\m5_win32.obj';
$md5_asm_src='crypto\md5\asm\m5_win32.asm';
- $sha1_asm_obj='crypto\sha\asm\s1_win32.obj';
- $sha1_asm_src='crypto\sha\asm\s1_win32.asm';
+ $sha1_asm_obj='crypto\sha\asm\s1_win32.obj crypto\sha\asm\sha512-sse2.obj';
+ $sha1_asm_src='crypto\sha\asm\s1_win32.asm crypto\sha\asm\sha512-sse2.asm';
$rmd160_asm_obj='crypto\ripemd\asm\rm_win32.obj';
$rmd160_asm_src='crypto\ripemd\asm\rm_win32.asm';
- $cflags.=" -DBN_ASM -DMD5_ASM -DSHA1_ASM -DRMD160_ASM";
+ $cpuid_asm_obj='crypto\cpu_win32.obj';
+ $cpuid_asm_src='crypto\cpu_win32.asm';
+ $cflags.=" -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DAES_ASM -DBN_ASM -DOPENSSL_BN_ASM_PART_WORDS -DMD5_ASM -DSHA1_ASM -DRMD160_ASM";
}
-if ($shlib)
+if ($shlib && $FLAVOR !~ /CE/)
{
$mlflags.=" $lflags /dll";
-# $cflags =~ s| /MD| /MT|;
$lib_cflag=" -D_WINDLL";
$out_def="out32dll";
$tmp_def="tmp32dll";
+ #
+ # Engage Applink...
+ #
+ $app_ex_obj.=" \$(OBJ_D)\\applink.obj /implib:\$(TMP_D)\\junk.lib";
+ $cflags.=" -DOPENSSL_USE_APPLINK -I.";
+ # I'm open for better suggestions than overriding $banner...
+ $banner=<<'___';
+ @echo Building OpenSSL
+
+$(OBJ_D)\applink.obj: ms\applink.c
+ $(CC) /Fo$(OBJ_D)\applink.obj $(APP_CFLAGS) -c ms\applink.c
+$(OBJ_D)\uplink.obj: ms\uplink.c ms\applink.c
+ $(CC) /Fo$(OBJ_D)\uplink.obj $(SHLIB_CFLAGS) -c ms\uplink.c
+$(INCO_D)\applink.c: ms\applink.c
+ $(CP) ms\applink.c $(INCO_D)\applink.c
+
+EXHEADER= $(EXHEADER) $(INCO_D)\applink.c
+
+LIBS_DEP=$(LIBS_DEP) $(OBJ_D)\applink.obj
+CRYPTOOBJ=$(OBJ_D)\uplink.obj $(CRYPTOOBJ)
+___
+ $banner.=<<'___' if ($FLAVOR =~ /WIN64/);
+CRYPTOOBJ=ms\uptable.obj $(CRYPTOOBJ)
+___
+ }
+elsif ($shlib && $FLAVOR =~ /CE/)
+ {
+ $mlflags.=" $lflags /dll";
+ $lib_cflag=" -D_WINDLL -D_DLL";
+ $out_def='out32dll_$(TARGETCPU)';
+ $tmp_def='tmp32dll_$(TARGETCPU)';
}
$cflags.=" /Fd$out_def";
sub do_lib_rule
{
- local($objs,$target,$name,$shlib,$ign,$base_addr) = @_;
- local($ret,$Name);
+ local($objs,$target,$name,$shlib)=@_;
+ local($ret);
$taget =~ s/\//$o/g if $o ne '/';
- ($Name=$name) =~ tr/a-z/A-Z/;
- my $base_arg;
- if ($base_addr ne "")
- {
- $base_arg= " /base:$base_addr";
- }
- else
+ if ($name ne "")
{
- $base_arg = "";
+ $name =~ tr/a-z/A-Z/;
+ $name = "/def:ms/${name}.def";
}
-
# $target="\$(LIB_D)$o$target";
+ $ret.="$target: $objs\n";
if (!$shlib)
{
# $ret.="\t\$(RM) \$(O_$Name)\n";
- $ret.="$target: $objs\n";
- $ex =' advapi32.lib';
- $ex.=" \$(FIPSLIB_D)${o}_chkstk.o" if $fips && $target =~ /O_CRYPTO/;
+ $ex =' ';
$ret.="\t\$(MKLIB) $lfile$target @<<\n $objs $ex\n<<\n";
}
else
{
- local($ex)=($target =~ /O_SSL/)?' $(L_CRYPTO)':'';
- $ex.=' wsock32.lib gdi32.lib advapi32.lib user32.lib';
- $ex.=" $zlib_lib" if $zlib_opt == 1 && $target =~ /O_CRYPTO/;
- if ($fips && $target =~ /O_CRYPTO/)
+ local($ex)=($target =~ /O_CRYPTO/)?'':' $(L_CRYPTO)';
+ if ($name eq "")
+ {
+ $ex.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/);
+ }
+ elsif ($FLAVOR =~ /CE/)
{
- $ex.=" \$(FIPSLIB_D)${o}_chkstk.o";
- $ret.="$target: $objs \$(PREMAIN_DSO_EXE)\n";
- $ret.="\tSET FIPS_LINK=\$(LINK)\n";
- $ret.="\tSET FIPS_CC=\$(CC)\n";
- $ret.="\tSET FIPS_CC_ARGS=/Fo\$(OBJ_D)${o}fips_premain.obj \$(SHLIB_CFLAGS) -c\n";
- $ret.="\tSET PREMAIN_DSO_EXE=\$(PREMAIN_DSO_EXE)\n";
- $ret.="\tSET FIPS_SHA1_EXE=\$(FIPS_SHA1_EXE)\n";
- $ret.="\tSET FIPS_TARGET=$target\n";
- $ret.="\tSET FIPSLIB_D=\$(FIPSLIB_D)\n";
- $ret.="\t\$(FIPSLINK) \$(MLFLAGS) $base_arg $efile$target ";
- $ret.="/def:ms/${Name}.def @<<\n \$(SHLIB_EX_OBJ) $objs ";
- $ret.="\$(OBJ_D)${o}fips_premain.obj $ex\n<<\n";
+ $ex.=' winsock.lib $(WCECOMPAT)/lib/wcecompatex.lib';
}
else
{
- $ret.="$target: $objs\n";
- $ret.="\t\$(LINK) \$(MLFLAGS) $base_arg $efile$target /def:ms/${Name}.def @<<\n \$(SHLIB_EX_OBJ) $objs $ex\n<<\n";
+ $ex.=' unicows.lib' if ($FLAVOR =~ /NT/);
+ $ex.=' wsock32.lib gdi32.lib advapi32.lib user32.lib';
+ $ex.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/);
}
+ $ex.=" $zlib_lib" if $zlib_opt == 1 && $target =~ /O_CRYPTO/;
+ $ret.="\t\$(LINK) \$(MLFLAGS) $efile$target $name @<<\n \$(SHLIB_EX_OBJ) $objs $ex\n<<\n";
+ $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;2\n\n";
}
$ret.="\n";
return($ret);
@@ -170,51 +295,16 @@ sub do_lib_rule
sub do_link_rule
{
- local($target,$files,$dep_libs,$libs,$standalone)=@_;
- local($ret,$_);
- $file =~ s/\//$o/g if $o ne '/';
- $n=&bname($targer);
- $ret.="$target: $files $dep_libs\n";
- if ($standalone)
- {
- $ret.=" \$(LINK) \$(LFLAGS) $efile$target @<<\n\t";
- $ret.="\$(FIPSLIB_D)${o}_chkstk.o " if ($files =~ /O_FIPSCANISTER/);
- $ret.="$files $libs\n<<\n";
- }
- elsif ($fips && !$shlib)
- {
- $ret.="\tSET FIPS_LINK=\$(LINK)\n";
- $ret.="\tSET FIPS_CC=\$(CC)\n";
- $ret.="\tSET FIPS_CC_ARGS=/Fo\$(OBJ_D)${o}fips_premain.obj \$(SHLIB_CFLAGS) -c\n";
- $ret.="\tSET PREMAIN_DSO_EXE=\n";
- $ret.="\tSET FIPS_TARGET=$target\n";
- $ret.="\tSET FIPS_SHA1_EXE=\$(FIPS_SHA1_EXE)\n";
- $ret.="\tSET FIPSLIB_D=\$(FIPSLIB_D)\n";
- $ret.=" \$(FIPSLINK) \$(LFLAGS) $efile$target @<<\n";
- $ret.=" \$(APP_EX_OBJ) $files \$(OBJ_D)${o}fips_premain.obj $libs\n<<\n";
- }
- else
- {
- $ret.=" \$(LINK) \$(LFLAGS) $efile$target @<<\n";
- $ret.=" \$(APP_EX_OBJ) $files $libs\n<<\n";
- }
- $ret.="\n";
- return($ret);
- }
-
-sub do_rlink_rule
- {
local($target,$files,$dep_libs,$libs)=@_;
local($ret,$_);
-
+
$file =~ s/\//$o/g if $o ne '/';
$n=&bname($targer);
$ret.="$target: $files $dep_libs\n";
- $ret.=" \$(MKCANISTER) $target <<\n";
- $ret.="INPUT($files)\n<<\n";
- $ret.="\n";
+ $ret.="\t\$(LINK) \$(LFLAGS) $efile$target @<<\n";
+ $ret.=" \$(APP_EX_OBJ) $files $libs\n<<\n";
+ $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;1\n\n";
return($ret);
}
-
1;
diff --git a/lib/libcrypto/util/pl/linux.pl b/lib/libcrypto/util/pl/linux.pl
index df05c40526e..d24f7b72913 100644
--- a/lib/libcrypto/util/pl/linux.pl
+++ b/lib/libcrypto/util/pl/linux.pl
@@ -39,7 +39,7 @@ if (!$no_asm)
$rmd160_asm_src='crypto/ripemd/asm/rm86unix.cpp';
$sha1_asm_obj='$(OBJ_D)/sx86-elf.o';
$sha1_asm_src='crypto/sha/asm/sx86unix.cpp';
- $cflags.=" -DBN_ASM -DMD5_ASM -DSHA1_ASM";
+ $cflags.=" -DBN_ASM -DMD5_ASM -DSHA1_ASM -DOPENSSL_BN_ASM_PART_WORDS";
}
$cflags.=" -DTERMIO -DL_ENDIAN -m486 -Wall";
@@ -72,18 +72,13 @@ sub do_shlib_rule
sub do_link_rule
{
- local($target,$files,$dep_libs,$libs,$sha1file,$openssl)=@_;
+ local($target,$files,$dep_libs,$libs)=@_;
local($ret,$_);
$file =~ s/\//$o/g if $o ne '/';
$n=&bname($target);
$ret.="$target: $files $dep_libs\n";
- $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n";
- if (defined $sha1file)
- {
- $ret.="\t$openssl sha1 -hmac etaonrishdlcupfm -binary $target > $sha1file";
- }
- $ret.="\n";
+ $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n\n";
return($ret);
}
diff --git a/lib/libcrypto/util/pl/ultrix.pl b/lib/libcrypto/util/pl/ultrix.pl
index 447b8547080..ea370c71f96 100644
--- a/lib/libcrypto/util/pl/ultrix.pl
+++ b/lib/libcrypto/util/pl/ultrix.pl
@@ -17,7 +17,7 @@ else
$cflags.=" -std1 -DL_ENDIAN";
-if (!$no_asm && !$fips)
+if (!$no_asm)
{
$bn_asm_obj='$(OBJ_D)/mips1.o';
$bn_asm_src='crypto/bn/asm/mips1.s';
@@ -25,18 +25,13 @@ if (!$no_asm && !$fips)
sub do_link_rule
{
- local($target,$files,$dep_libs,$libs,$sha1file,$openssl)=@_;
+ local($target,$files,$dep_libs,$libs)=@_;
local($ret,$_);
$file =~ s/\//$o/g if $o ne '/';
$n=&bname($target);
$ret.="$target: $files $dep_libs\n";
- $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n";
- if (defined $sha1file)
- {
- $ret.="\t$openssl sha1 -hmac etaonrishdlcupfm -binary $target > $sha1file";
- }
- $ret.="\n";
+ $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n\n";
return($ret);
}
diff --git a/lib/libcrypto/util/pl/unix.pl b/lib/libcrypto/util/pl/unix.pl
index bbd1798a2e5..146611ad995 100644
--- a/lib/libcrypto/util/pl/unix.pl
+++ b/lib/libcrypto/util/pl/unix.pl
@@ -70,18 +70,13 @@ sub do_lib_rule
sub do_link_rule
{
- local($target,$files,$dep_libs,$libs,$sha1file,$openssl)=@_;
+ local($target,$files,$dep_libs,$libs)=@_;
local($ret,$_);
$file =~ s/\//$o/g if $o ne '/';
$n=&bname($target);
$ret.="$target: $files $dep_libs\n";
- $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n";
- if (defined $sha1file)
- {
- $ret.="\t$openssl sha1 -hmac etaonrishdlcupfm -binary $target > $sha1file";
- }
- $ret.="\n";
+ $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n\n";
return($ret);
}
diff --git a/lib/libcrypto/util/ssleay.num b/lib/libcrypto/util/ssleay.num
index 46e38a131f9..b3ac136a565 100644
--- a/lib/libcrypto/util/ssleay.num
+++ b/lib/libcrypto/util/ssleay.num
@@ -170,7 +170,7 @@ SSL_add_file_cert_subjs_to_stk 185 EXIST:VMS:FUNCTION:STDIO
SSL_set_tmp_rsa_callback 186 EXIST::FUNCTION:RSA
SSL_set_tmp_dh_callback 187 EXIST::FUNCTION:DH
SSL_add_dir_cert_subjects_to_stack 188 EXIST:!VMS:FUNCTION:STDIO
-SSL_add_dir_cert_subjs_to_stk 188 NOEXIST::FUNCTION:
+SSL_add_dir_cert_subjs_to_stk 188 EXIST:VMS:FUNCTION:STDIO
SSL_set_session_id_context 189 EXIST::FUNCTION:
SSL_CTX_use_certificate_chain_file 222 EXIST:!VMS:FUNCTION:STDIO
SSL_CTX_use_cert_chain_file 222 EXIST:VMS:FUNCTION:STDIO
@@ -215,3 +215,29 @@ SSL_CTX_set_generate_session_id 264 EXIST::FUNCTION:
SSL_renegotiate_pending 265 EXIST::FUNCTION:
SSL_CTX_set_msg_callback 266 EXIST::FUNCTION:
SSL_set_msg_callback 267 EXIST::FUNCTION:
+DTLSv1_client_method 268 EXIST::FUNCTION:
+SSL_CTX_set_tmp_ecdh_callback 269 EXIST::FUNCTION:ECDH
+SSL_set_tmp_ecdh_callback 270 EXIST::FUNCTION:ECDH
+SSL_COMP_get_name 271 EXIST::FUNCTION:COMP
+SSL_get_current_compression 272 EXIST::FUNCTION:COMP
+DTLSv1_method 273 EXIST::FUNCTION:
+SSL_get_current_expansion 274 EXIST::FUNCTION:COMP
+DTLSv1_server_method 275 EXIST::FUNCTION:
+SSL_COMP_get_compression_methods 276 EXIST:!VMS:FUNCTION:COMP
+SSL_COMP_get_compress_methods 276 EXIST:VMS:FUNCTION:COMP
+SSL_SESSION_get_id 277 EXIST::FUNCTION:
+SSL_CTX_sess_set_new_cb 278 EXIST::FUNCTION:
+SSL_CTX_sess_get_get_cb 279 EXIST::FUNCTION:
+SSL_CTX_sess_set_get_cb 280 EXIST::FUNCTION:
+SSL_CTX_set_cookie_verify_cb 281 EXIST::FUNCTION:
+SSL_CTX_get_info_callback 282 EXIST::FUNCTION:
+SSL_CTX_set_cookie_generate_cb 283 EXIST::FUNCTION:
+SSL_CTX_set_client_cert_cb 284 EXIST::FUNCTION:
+SSL_CTX_sess_set_remove_cb 285 EXIST::FUNCTION:
+SSL_CTX_set_info_callback 286 EXIST::FUNCTION:
+SSL_CTX_sess_get_new_cb 287 EXIST::FUNCTION:
+SSL_CTX_get_client_cert_cb 288 EXIST::FUNCTION:
+SSL_CTX_sess_get_remove_cb 289 EXIST::FUNCTION:
+SSL_set_SSL_CTX 290 EXIST::FUNCTION:
+SSL_get_servername 291 EXIST::FUNCTION:TLSEXT
+SSL_get_servername_type 292 EXIST::FUNCTION:TLSEXT