summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/util
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/util')
-rw-r--r--src/lib/libcrypto/util/cygwin.sh12
-rw-r--r--src/lib/libcrypto/util/libeay.num217
-rw-r--r--src/lib/libcrypto/util/mk1mf.pl85
-rw-r--r--src/lib/libcrypto/util/mkdef.pl40
-rw-r--r--src/lib/libcrypto/util/mkfiles.pl2
-rw-r--r--src/lib/libcrypto/util/pl/VC-32.pl79
-rw-r--r--src/lib/libcrypto/util/ssleay.num61
7 files changed, 419 insertions, 77 deletions
diff --git a/src/lib/libcrypto/util/cygwin.sh b/src/lib/libcrypto/util/cygwin.sh
index d6228521e6..cfdb04d2a4 100644
--- a/src/lib/libcrypto/util/cygwin.sh
+++ b/src/lib/libcrypto/util/cygwin.sh
@@ -11,6 +11,7 @@ CONFIG_OPTIONS="--prefix=/usr shared zlib no-idea no-rc5"
11INSTALL_PREFIX=/tmp/install/INSTALL 11INSTALL_PREFIX=/tmp/install/INSTALL
12 12
13VERSION= 13VERSION=
14SHLIB_VERSION_NUMBER=
14SUBVERSION=$1 15SUBVERSION=$1
15 16
16function cleanup() 17function cleanup()
@@ -28,6 +29,13 @@ function get_openssl_version()
28 echo " Check value of variable VERSION in Makefile." 29 echo " Check value of variable VERSION in Makefile."
29 exit 1 30 exit 1
30 fi 31 fi
32 eval `grep '^SHLIB_VERSION_NUMBER=' Makefile`
33 if [ -z "${SHLIB_VERSION_NUMBER}" ]
34 then
35 echo "Error: Couldn't retrieve OpenSSL shared lib version from Makefile."
36 echo " Check value of variable SHLIB_VERSION_NUMBER in Makefile."
37 exit 1
38 fi
31} 39}
32 40
33function base_install() 41function base_install()
@@ -124,7 +132,7 @@ strip usr/bin/*.exe usr/bin/*.dll usr/lib/engines/*.so
124chmod u-w usr/lib/engines/*.so 132chmod u-w usr/lib/engines/*.so
125 133
126# Runtime package 134# Runtime package
127tar cjf libopenssl${VERSION//[!0-9]/}-${VERSION}-${SUBVERSION}.tar.bz2 \ 135tar cjf libopenssl${SHLIB_VERSION_NUMBER//[!0-9]/}-${VERSION}-${SUBVERSION}.tar.bz2 \
128 usr/bin/cyg*dll 136 usr/bin/cyg*dll
129# Base package 137# Base package
130find etc usr/bin/openssl.exe usr/bin/c_rehash usr/lib/engines usr/share/doc \ 138find etc usr/bin/openssl.exe usr/bin/c_rehash usr/lib/engines usr/share/doc \
@@ -139,7 +147,7 @@ tar cjfT openssl-devel-${VERSION}-${SUBVERSION}.tar.bz2 -
139 147
140ls -l openssl-${VERSION}-${SUBVERSION}.tar.bz2 148ls -l openssl-${VERSION}-${SUBVERSION}.tar.bz2
141ls -l openssl-devel-${VERSION}-${SUBVERSION}.tar.bz2 149ls -l openssl-devel-${VERSION}-${SUBVERSION}.tar.bz2
142ls -l libopenssl${VERSION//[!0-9]/}-${VERSION}-${SUBVERSION}.tar.bz2 150ls -l libopenssl${SHLIB_VERSION_NUMBER//[!0-9]/}-${VERSION}-${SUBVERSION}.tar.bz2
143 151
144cleanup 152cleanup
145 153
diff --git a/src/lib/libcrypto/util/libeay.num b/src/lib/libcrypto/util/libeay.num
index 1467ab6243..93f80ba0c6 100644
--- a/src/lib/libcrypto/util/libeay.num
+++ b/src/lib/libcrypto/util/libeay.num
@@ -1050,7 +1050,7 @@ ASN1_TYPE_get_octetstring 1077 EXIST::FUNCTION:
1050ASN1_TYPE_set_int_octetstring 1078 EXIST::FUNCTION: 1050ASN1_TYPE_set_int_octetstring 1078 EXIST::FUNCTION:
1051ASN1_TYPE_set_octetstring 1079 EXIST::FUNCTION: 1051ASN1_TYPE_set_octetstring 1079 EXIST::FUNCTION:
1052ASN1_UTCTIME_set_string 1080 EXIST::FUNCTION: 1052ASN1_UTCTIME_set_string 1080 EXIST::FUNCTION:
1053ERR_add_error_data 1081 EXIST::FUNCTION:BIO 1053ERR_add_error_data 1081 EXIST::FUNCTION:
1054ERR_set_error_data 1082 EXIST::FUNCTION: 1054ERR_set_error_data 1082 EXIST::FUNCTION:
1055EVP_CIPHER_asn1_to_param 1083 EXIST::FUNCTION: 1055EVP_CIPHER_asn1_to_param 1083 EXIST::FUNCTION:
1056EVP_CIPHER_param_to_asn1 1084 EXIST::FUNCTION: 1056EVP_CIPHER_param_to_asn1 1084 EXIST::FUNCTION:
@@ -2808,7 +2808,7 @@ FIPS_corrupt_rsa 3249 NOEXIST::FUNCTION:
2808FIPS_selftest_des 3250 NOEXIST::FUNCTION: 2808FIPS_selftest_des 3250 NOEXIST::FUNCTION:
2809EVP_aes_128_cfb1 3251 EXIST::FUNCTION:AES 2809EVP_aes_128_cfb1 3251 EXIST::FUNCTION:AES
2810EVP_aes_192_cfb8 3252 EXIST::FUNCTION:AES 2810EVP_aes_192_cfb8 3252 EXIST::FUNCTION:AES
2811FIPS_mode_set 3253 NOEXIST::FUNCTION: 2811FIPS_mode_set 3253 EXIST::FUNCTION:
2812FIPS_selftest_dsa 3254 NOEXIST::FUNCTION: 2812FIPS_selftest_dsa 3254 NOEXIST::FUNCTION:
2813EVP_aes_256_cfb8 3255 EXIST::FUNCTION:AES 2813EVP_aes_256_cfb8 3255 EXIST::FUNCTION:AES
2814FIPS_allow_md5 3256 NOEXIST::FUNCTION: 2814FIPS_allow_md5 3256 NOEXIST::FUNCTION:
@@ -2838,23 +2838,23 @@ AES_cfb1_encrypt 3279 EXIST::FUNCTION:AES
2838EVP_des_ede3_cfb1 3280 EXIST::FUNCTION:DES 2838EVP_des_ede3_cfb1 3280 EXIST::FUNCTION:DES
2839FIPS_rand_check 3281 NOEXIST::FUNCTION: 2839FIPS_rand_check 3281 NOEXIST::FUNCTION:
2840FIPS_md5_allowed 3282 NOEXIST::FUNCTION: 2840FIPS_md5_allowed 3282 NOEXIST::FUNCTION:
2841FIPS_mode 3283 NOEXIST::FUNCTION: 2841FIPS_mode 3283 EXIST::FUNCTION:
2842FIPS_selftest_failed 3284 NOEXIST::FUNCTION: 2842FIPS_selftest_failed 3284 NOEXIST::FUNCTION:
2843sk_is_sorted 3285 EXIST::FUNCTION: 2843sk_is_sorted 3285 EXIST::FUNCTION:
2844X509_check_ca 3286 EXIST::FUNCTION: 2844X509_check_ca 3286 EXIST::FUNCTION:
2845private_idea_set_encrypt_key 3287 NOEXIST::FUNCTION: 2845private_idea_set_encrypt_key 3287 EXIST:OPENSSL_FIPS:FUNCTION:IDEA
2846HMAC_CTX_set_flags 3288 EXIST::FUNCTION:HMAC 2846HMAC_CTX_set_flags 3288 EXIST::FUNCTION:HMAC
2847private_SHA_Init 3289 NOEXIST::FUNCTION: 2847private_SHA_Init 3289 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA0
2848private_CAST_set_key 3290 NOEXIST::FUNCTION: 2848private_CAST_set_key 3290 EXIST:OPENSSL_FIPS:FUNCTION:CAST
2849private_RIPEMD160_Init 3291 NOEXIST::FUNCTION: 2849private_RIPEMD160_Init 3291 EXIST:OPENSSL_FIPS:FUNCTION:RIPEMD
2850private_RC5_32_set_key 3292 NOEXIST::FUNCTION: 2850private_RC5_32_set_key 3292 NOEXIST::FUNCTION:
2851private_MD5_Init 3293 NOEXIST::FUNCTION: 2851private_MD5_Init 3293 EXIST:OPENSSL_FIPS:FUNCTION:MD5
2852private_RC4_set_key 3294 NOEXIST::FUNCTION: 2852private_RC4_set_key 3294 EXIST::FUNCTION:RC4
2853private_MDC2_Init 3295 NOEXIST::FUNCTION: 2853private_MDC2_Init 3295 EXIST:OPENSSL_FIPS:FUNCTION:MDC2
2854private_RC2_set_key 3296 NOEXIST::FUNCTION: 2854private_RC2_set_key 3296 EXIST:OPENSSL_FIPS:FUNCTION:RC2
2855private_MD4_Init 3297 NOEXIST::FUNCTION: 2855private_MD4_Init 3297 EXIST:OPENSSL_FIPS:FUNCTION:MD4
2856private_BF_set_key 3298 NOEXIST::FUNCTION: 2856private_BF_set_key 3298 EXIST:OPENSSL_FIPS:FUNCTION:BF
2857private_MD2_Init 3299 NOEXIST::FUNCTION: 2857private_MD2_Init 3299 EXIST:OPENSSL_FIPS:FUNCTION:MD2
2858d2i_PROXY_CERT_INFO_EXTENSION 3300 EXIST::FUNCTION: 2858d2i_PROXY_CERT_INFO_EXTENSION 3300 EXIST::FUNCTION:
2859PROXY_POLICY_it 3301 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: 2859PROXY_POLICY_it 3301 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
2860PROXY_POLICY_it 3301 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: 2860PROXY_POLICY_it 3301 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
@@ -2882,7 +2882,7 @@ RSA_verify_PKCS1_PSS 3321 EXIST::FUNCTION:RSA
2882RSA_padding_add_X931 3322 EXIST::FUNCTION:RSA 2882RSA_padding_add_X931 3322 EXIST::FUNCTION:RSA
2883RSA_padding_add_PKCS1_PSS 3323 EXIST::FUNCTION:RSA 2883RSA_padding_add_PKCS1_PSS 3323 EXIST::FUNCTION:RSA
2884PKCS1_MGF1 3324 EXIST::FUNCTION:RSA 2884PKCS1_MGF1 3324 EXIST::FUNCTION:RSA
2885BN_X931_generate_Xpq 3325 NOEXIST::FUNCTION: 2885BN_X931_generate_Xpq 3325 EXIST::FUNCTION:
2886RSA_X931_generate_key 3326 NOEXIST::FUNCTION: 2886RSA_X931_generate_key 3326 NOEXIST::FUNCTION:
2887BN_X931_derive_prime 3327 NOEXIST::FUNCTION: 2887BN_X931_derive_prime 3327 NOEXIST::FUNCTION:
2888BN_X931_generate_prime 3328 NOEXIST::FUNCTION: 2888BN_X931_generate_prime 3328 NOEXIST::FUNCTION:
@@ -2906,7 +2906,7 @@ STORE_parse_attrs_start 3343 NOEXIST::FUNCTION:
2906POLICY_CONSTRAINTS_free 3344 EXIST::FUNCTION: 2906POLICY_CONSTRAINTS_free 3344 EXIST::FUNCTION:
2907EVP_PKEY_add1_attr_by_NID 3345 EXIST::FUNCTION: 2907EVP_PKEY_add1_attr_by_NID 3345 EXIST::FUNCTION:
2908BN_nist_mod_192 3346 EXIST::FUNCTION: 2908BN_nist_mod_192 3346 EXIST::FUNCTION:
2909EC_GROUP_get_trinomial_basis 3347 EXIST::FUNCTION:EC 2909EC_GROUP_get_trinomial_basis 3347 EXIST::FUNCTION:EC,EC2M
2910STORE_set_method 3348 NOEXIST::FUNCTION: 2910STORE_set_method 3348 NOEXIST::FUNCTION:
2911GENERAL_SUBTREE_free 3349 EXIST::FUNCTION: 2911GENERAL_SUBTREE_free 3349 EXIST::FUNCTION:
2912NAME_CONSTRAINTS_it 3350 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: 2912NAME_CONSTRAINTS_it 3350 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
@@ -2921,14 +2921,14 @@ SHA512_Update 3356 EXIST:!VMSVAX:FUNCTION:SHA,SHA512
2921i2d_ECPrivateKey 3357 EXIST::FUNCTION:EC 2921i2d_ECPrivateKey 3357 EXIST::FUNCTION:EC
2922BN_get0_nist_prime_192 3358 EXIST::FUNCTION: 2922BN_get0_nist_prime_192 3358 EXIST::FUNCTION:
2923STORE_modify_certificate 3359 NOEXIST::FUNCTION: 2923STORE_modify_certificate 3359 NOEXIST::FUNCTION:
2924EC_POINT_set_affine_coordinates_GF2m 3360 EXIST:!VMS:FUNCTION:EC 2924EC_POINT_set_affine_coordinates_GF2m 3360 EXIST:!VMS:FUNCTION:EC,EC2M
2925EC_POINT_set_affine_coords_GF2m 3360 EXIST:VMS:FUNCTION:EC 2925EC_POINT_set_affine_coords_GF2m 3360 EXIST:VMS:FUNCTION:EC,EC2M
2926BN_GF2m_mod_exp_arr 3361 EXIST::FUNCTION: 2926BN_GF2m_mod_exp_arr 3361 EXIST::FUNCTION:EC2M
2927STORE_ATTR_INFO_modify_number 3362 NOEXIST::FUNCTION: 2927STORE_ATTR_INFO_modify_number 3362 NOEXIST::FUNCTION:
2928X509_keyid_get0 3363 EXIST::FUNCTION: 2928X509_keyid_get0 3363 EXIST::FUNCTION:
2929ENGINE_load_gmp 3364 EXIST::FUNCTION:ENGINE,GMP,STATIC_ENGINE 2929ENGINE_load_gmp 3364 EXIST::FUNCTION:ENGINE,GMP,STATIC_ENGINE
2930pitem_new 3365 EXIST::FUNCTION: 2930pitem_new 3365 EXIST::FUNCTION:
2931BN_GF2m_mod_mul_arr 3366 EXIST::FUNCTION: 2931BN_GF2m_mod_mul_arr 3366 EXIST::FUNCTION:EC2M
2932STORE_list_public_key_endp 3367 NOEXIST::FUNCTION: 2932STORE_list_public_key_endp 3367 NOEXIST::FUNCTION:
2933o2i_ECPublicKey 3368 EXIST::FUNCTION:EC 2933o2i_ECPublicKey 3368 EXIST::FUNCTION:EC
2934EC_KEY_copy 3369 EXIST::FUNCTION:EC 2934EC_KEY_copy 3369 EXIST::FUNCTION:EC
@@ -2945,7 +2945,7 @@ X509_VERIFY_PARAM_inherit 3378 EXIST::FUNCTION:
2945EC_POINT_point2bn 3379 EXIST::FUNCTION:EC 2945EC_POINT_point2bn 3379 EXIST::FUNCTION:EC
2946STORE_ATTR_INFO_set_dn 3380 NOEXIST::FUNCTION: 2946STORE_ATTR_INFO_set_dn 3380 NOEXIST::FUNCTION:
2947X509_policy_tree_get0_policies 3381 EXIST::FUNCTION: 2947X509_policy_tree_get0_policies 3381 EXIST::FUNCTION:
2948EC_GROUP_new_curve_GF2m 3382 EXIST::FUNCTION:EC 2948EC_GROUP_new_curve_GF2m 3382 EXIST::FUNCTION:EC,EC2M
2949STORE_destroy_method 3383 NOEXIST::FUNCTION: 2949STORE_destroy_method 3383 NOEXIST::FUNCTION:
2950ENGINE_unregister_STORE 3384 EXIST::FUNCTION:ENGINE 2950ENGINE_unregister_STORE 3384 EXIST::FUNCTION:ENGINE
2951EVP_PKEY_get1_EC_KEY 3385 EXIST::FUNCTION:EC 2951EVP_PKEY_get1_EC_KEY 3385 EXIST::FUNCTION:EC
@@ -2961,7 +2961,7 @@ ENGINE_get_static_state 3393 EXIST::FUNCTION:ENGINE
2961pqueue_iterator 3394 EXIST::FUNCTION: 2961pqueue_iterator 3394 EXIST::FUNCTION:
2962ECDSA_SIG_new 3395 EXIST::FUNCTION:ECDSA 2962ECDSA_SIG_new 3395 EXIST::FUNCTION:ECDSA
2963OPENSSL_DIR_end 3396 EXIST::FUNCTION: 2963OPENSSL_DIR_end 3396 EXIST::FUNCTION:
2964BN_GF2m_mod_sqr 3397 EXIST::FUNCTION: 2964BN_GF2m_mod_sqr 3397 EXIST::FUNCTION:EC2M
2965EC_POINT_bn2point 3398 EXIST::FUNCTION:EC 2965EC_POINT_bn2point 3398 EXIST::FUNCTION:EC
2966X509_VERIFY_PARAM_set_depth 3399 EXIST::FUNCTION: 2966X509_VERIFY_PARAM_set_depth 3399 EXIST::FUNCTION:
2967EC_KEY_set_asn1_flag 3400 EXIST::FUNCTION:EC 2967EC_KEY_set_asn1_flag 3400 EXIST::FUNCTION:EC
@@ -2974,7 +2974,7 @@ EC_GROUP_get_point_conv_form 3405 EXIST:VMS:FUNCTION:EC
2974STORE_method_set_store_function 3406 NOEXIST::FUNCTION: 2974STORE_method_set_store_function 3406 NOEXIST::FUNCTION:
2975STORE_ATTR_INFO_in 3407 NOEXIST::FUNCTION: 2975STORE_ATTR_INFO_in 3407 NOEXIST::FUNCTION:
2976PEM_read_bio_ECPKParameters 3408 EXIST::FUNCTION:EC 2976PEM_read_bio_ECPKParameters 3408 EXIST::FUNCTION:EC
2977EC_GROUP_get_pentanomial_basis 3409 EXIST::FUNCTION:EC 2977EC_GROUP_get_pentanomial_basis 3409 EXIST::FUNCTION:EC,EC2M
2978EVP_PKEY_add1_attr_by_txt 3410 EXIST::FUNCTION: 2978EVP_PKEY_add1_attr_by_txt 3410 EXIST::FUNCTION:
2979BN_BLINDING_set_flags 3411 EXIST::FUNCTION: 2979BN_BLINDING_set_flags 3411 EXIST::FUNCTION:
2980X509_VERIFY_PARAM_set1_policies 3412 EXIST::FUNCTION: 2980X509_VERIFY_PARAM_set1_policies 3412 EXIST::FUNCTION:
@@ -2982,10 +2982,10 @@ X509_VERIFY_PARAM_set1_name 3413 EXIST::FUNCTION:
2982X509_VERIFY_PARAM_set_purpose 3414 EXIST::FUNCTION: 2982X509_VERIFY_PARAM_set_purpose 3414 EXIST::FUNCTION:
2983STORE_get_number 3415 NOEXIST::FUNCTION: 2983STORE_get_number 3415 NOEXIST::FUNCTION:
2984ECDSA_sign_setup 3416 EXIST::FUNCTION:ECDSA 2984ECDSA_sign_setup 3416 EXIST::FUNCTION:ECDSA
2985BN_GF2m_mod_solve_quad_arr 3417 EXIST::FUNCTION: 2985BN_GF2m_mod_solve_quad_arr 3417 EXIST::FUNCTION:EC2M
2986EC_KEY_up_ref 3418 EXIST::FUNCTION:EC 2986EC_KEY_up_ref 3418 EXIST::FUNCTION:EC
2987POLICY_MAPPING_free 3419 EXIST::FUNCTION: 2987POLICY_MAPPING_free 3419 EXIST::FUNCTION:
2988BN_GF2m_mod_div 3420 EXIST::FUNCTION: 2988BN_GF2m_mod_div 3420 EXIST::FUNCTION:EC2M
2989X509_VERIFY_PARAM_set_flags 3421 EXIST::FUNCTION: 2989X509_VERIFY_PARAM_set_flags 3421 EXIST::FUNCTION:
2990EC_KEY_free 3422 EXIST::FUNCTION:EC 2990EC_KEY_free 3422 EXIST::FUNCTION:EC
2991STORE_meth_set_list_next_fn 3423 NOEXIST::FUNCTION: 2991STORE_meth_set_list_next_fn 3423 NOEXIST::FUNCTION:
@@ -2999,7 +2999,7 @@ STORE_method_set_list_end_function 3427 NOEXIST::FUNCTION:
2999pqueue_print 3428 EXIST::FUNCTION: 2999pqueue_print 3428 EXIST::FUNCTION:
3000EC_GROUP_have_precompute_mult 3429 EXIST::FUNCTION:EC 3000EC_GROUP_have_precompute_mult 3429 EXIST::FUNCTION:EC
3001EC_KEY_print_fp 3430 EXIST::FUNCTION:EC,FP_API 3001EC_KEY_print_fp 3430 EXIST::FUNCTION:EC,FP_API
3002BN_GF2m_mod_arr 3431 EXIST::FUNCTION: 3002BN_GF2m_mod_arr 3431 EXIST::FUNCTION:EC2M
3003PEM_write_bio_X509_CERT_PAIR 3432 EXIST::FUNCTION: 3003PEM_write_bio_X509_CERT_PAIR 3432 EXIST::FUNCTION:
3004EVP_PKEY_cmp 3433 EXIST::FUNCTION: 3004EVP_PKEY_cmp 3433 EXIST::FUNCTION:
3005X509_policy_level_node_count 3434 EXIST::FUNCTION: 3005X509_policy_level_node_count 3434 EXIST::FUNCTION:
@@ -3020,7 +3020,7 @@ X509_policy_node_get0_qualifiers 3448 EXIST:!VMS:FUNCTION:
3020X509_pcy_node_get0_qualifiers 3448 EXIST:VMS:FUNCTION: 3020X509_pcy_node_get0_qualifiers 3448 EXIST:VMS:FUNCTION:
3021STORE_list_crl_end 3449 NOEXIST::FUNCTION: 3021STORE_list_crl_end 3449 NOEXIST::FUNCTION:
3022EVP_PKEY_set1_EC_KEY 3450 EXIST::FUNCTION:EC 3022EVP_PKEY_set1_EC_KEY 3450 EXIST::FUNCTION:EC
3023BN_GF2m_mod_sqrt_arr 3451 EXIST::FUNCTION: 3023BN_GF2m_mod_sqrt_arr 3451 EXIST::FUNCTION:EC2M
3024i2d_ECPrivateKey_bio 3452 EXIST::FUNCTION:BIO,EC 3024i2d_ECPrivateKey_bio 3452 EXIST::FUNCTION:BIO,EC
3025ECPKParameters_print_fp 3453 EXIST::FUNCTION:EC,FP_API 3025ECPKParameters_print_fp 3453 EXIST::FUNCTION:EC,FP_API
3026pqueue_find 3454 EXIST::FUNCTION: 3026pqueue_find 3454 EXIST::FUNCTION:
@@ -3037,7 +3037,7 @@ PKCS12_add_safes 3464 EXIST::FUNCTION:
3037BN_BLINDING_convert_ex 3465 EXIST::FUNCTION: 3037BN_BLINDING_convert_ex 3465 EXIST::FUNCTION:
3038X509_policy_tree_free 3466 EXIST::FUNCTION: 3038X509_policy_tree_free 3466 EXIST::FUNCTION:
3039OPENSSL_ia32cap_loc 3467 EXIST::FUNCTION: 3039OPENSSL_ia32cap_loc 3467 EXIST::FUNCTION:
3040BN_GF2m_poly2arr 3468 EXIST::FUNCTION: 3040BN_GF2m_poly2arr 3468 EXIST::FUNCTION:EC2M
3041STORE_ctrl 3469 NOEXIST::FUNCTION: 3041STORE_ctrl 3469 NOEXIST::FUNCTION:
3042STORE_ATTR_INFO_compare 3470 NOEXIST::FUNCTION: 3042STORE_ATTR_INFO_compare 3470 NOEXIST::FUNCTION:
3043BN_get0_nist_prime_224 3471 EXIST::FUNCTION: 3043BN_get0_nist_prime_224 3471 EXIST::FUNCTION:
@@ -3061,7 +3061,7 @@ STORE_method_set_delete_function 3486 NOEXIST::FUNCTION:
3061STORE_list_certificate_next 3487 NOEXIST::FUNCTION: 3061STORE_list_certificate_next 3487 NOEXIST::FUNCTION:
3062ASN1_generate_nconf 3488 EXIST::FUNCTION: 3062ASN1_generate_nconf 3488 EXIST::FUNCTION:
3063BUF_memdup 3489 EXIST::FUNCTION: 3063BUF_memdup 3489 EXIST::FUNCTION:
3064BN_GF2m_mod_mul 3490 EXIST::FUNCTION: 3064BN_GF2m_mod_mul 3490 EXIST::FUNCTION:EC2M
3065STORE_meth_get_list_next_fn 3491 NOEXIST::FUNCTION: 3065STORE_meth_get_list_next_fn 3491 NOEXIST::FUNCTION:
3066STORE_method_get_list_next_function 3491 NOEXIST::FUNCTION: 3066STORE_method_get_list_next_function 3491 NOEXIST::FUNCTION:
3067STORE_ATTR_INFO_get0_dn 3492 NOEXIST::FUNCTION: 3067STORE_ATTR_INFO_get0_dn 3492 NOEXIST::FUNCTION:
@@ -3072,7 +3072,7 @@ STORE_ATTR_INFO_free 3496 NOEXIST::FUNCTION:
3072STORE_get_private_key 3497 NOEXIST::FUNCTION: 3072STORE_get_private_key 3497 NOEXIST::FUNCTION:
3073EVP_PKEY_get_attr_count 3498 EXIST::FUNCTION: 3073EVP_PKEY_get_attr_count 3498 EXIST::FUNCTION:
3074STORE_ATTR_INFO_new 3499 NOEXIST::FUNCTION: 3074STORE_ATTR_INFO_new 3499 NOEXIST::FUNCTION:
3075EC_GROUP_get_curve_GF2m 3500 EXIST::FUNCTION:EC 3075EC_GROUP_get_curve_GF2m 3500 EXIST::FUNCTION:EC,EC2M
3076STORE_meth_set_revoke_fn 3501 NOEXIST::FUNCTION: 3076STORE_meth_set_revoke_fn 3501 NOEXIST::FUNCTION:
3077STORE_method_set_revoke_function 3501 NOEXIST::FUNCTION: 3077STORE_method_set_revoke_function 3501 NOEXIST::FUNCTION:
3078STORE_store_number 3502 NOEXIST::FUNCTION: 3078STORE_store_number 3502 NOEXIST::FUNCTION:
@@ -3088,7 +3088,7 @@ BIO_dump_indent_fp 3511 EXIST::FUNCTION:FP_API
3088EC_KEY_set_group 3512 EXIST::FUNCTION:EC 3088EC_KEY_set_group 3512 EXIST::FUNCTION:EC
3089BUF_strndup 3513 EXIST::FUNCTION: 3089BUF_strndup 3513 EXIST::FUNCTION:
3090STORE_list_certificate_start 3514 NOEXIST::FUNCTION: 3090STORE_list_certificate_start 3514 NOEXIST::FUNCTION:
3091BN_GF2m_mod 3515 EXIST::FUNCTION: 3091BN_GF2m_mod 3515 EXIST::FUNCTION:EC2M
3092X509_REQ_check_private_key 3516 EXIST::FUNCTION: 3092X509_REQ_check_private_key 3516 EXIST::FUNCTION:
3093EC_GROUP_get_seed_len 3517 EXIST::FUNCTION:EC 3093EC_GROUP_get_seed_len 3517 EXIST::FUNCTION:EC
3094ERR_load_STORE_strings 3518 NOEXIST::FUNCTION: 3094ERR_load_STORE_strings 3518 NOEXIST::FUNCTION:
@@ -3117,19 +3117,19 @@ STORE_method_set_get_function 3536 NOEXIST::FUNCTION:
3117STORE_modify_number 3537 NOEXIST::FUNCTION: 3117STORE_modify_number 3537 NOEXIST::FUNCTION:
3118STORE_method_get_store_function 3538 NOEXIST::FUNCTION: 3118STORE_method_get_store_function 3538 NOEXIST::FUNCTION:
3119STORE_store_private_key 3539 NOEXIST::FUNCTION: 3119STORE_store_private_key 3539 NOEXIST::FUNCTION:
3120BN_GF2m_mod_sqr_arr 3540 EXIST::FUNCTION: 3120BN_GF2m_mod_sqr_arr 3540 EXIST::FUNCTION:EC2M
3121RSA_setup_blinding 3541 EXIST::FUNCTION:RSA 3121RSA_setup_blinding 3541 EXIST::FUNCTION:RSA
3122BIO_s_datagram 3542 EXIST::FUNCTION:DGRAM 3122BIO_s_datagram 3542 EXIST::FUNCTION:DGRAM
3123STORE_Memory 3543 NOEXIST::FUNCTION: 3123STORE_Memory 3543 NOEXIST::FUNCTION:
3124sk_find_ex 3544 EXIST::FUNCTION: 3124sk_find_ex 3544 EXIST::FUNCTION:
3125EC_GROUP_set_curve_GF2m 3545 EXIST::FUNCTION:EC 3125EC_GROUP_set_curve_GF2m 3545 EXIST::FUNCTION:EC,EC2M
3126ENGINE_set_default_ECDSA 3546 EXIST::FUNCTION:ENGINE 3126ENGINE_set_default_ECDSA 3546 EXIST::FUNCTION:ENGINE
3127POLICY_CONSTRAINTS_new 3547 EXIST::FUNCTION: 3127POLICY_CONSTRAINTS_new 3547 EXIST::FUNCTION:
3128BN_GF2m_mod_sqrt 3548 EXIST::FUNCTION: 3128BN_GF2m_mod_sqrt 3548 EXIST::FUNCTION:EC2M
3129ECDH_set_default_method 3549 EXIST::FUNCTION:ECDH 3129ECDH_set_default_method 3549 EXIST::FUNCTION:ECDH
3130EC_KEY_generate_key 3550 EXIST::FUNCTION:EC 3130EC_KEY_generate_key 3550 EXIST::FUNCTION:EC
3131SHA384_Update 3551 EXIST:!VMSVAX:FUNCTION:SHA,SHA512 3131SHA384_Update 3551 EXIST:!VMSVAX:FUNCTION:SHA,SHA512
3132BN_GF2m_arr2poly 3552 EXIST::FUNCTION: 3132BN_GF2m_arr2poly 3552 EXIST::FUNCTION:EC2M
3133STORE_method_get_get_function 3553 NOEXIST::FUNCTION: 3133STORE_method_get_get_function 3553 NOEXIST::FUNCTION:
3134STORE_meth_set_cleanup_fn 3554 NOEXIST::FUNCTION: 3134STORE_meth_set_cleanup_fn 3554 NOEXIST::FUNCTION:
3135STORE_method_set_cleanup_function 3554 NOEXIST::FUNCTION: 3135STORE_method_set_cleanup_function 3554 NOEXIST::FUNCTION:
@@ -3154,7 +3154,7 @@ EC_GROUP_get_degree 3570 EXIST::FUNCTION:EC
3154ASN1_generate_v3 3571 EXIST::FUNCTION: 3154ASN1_generate_v3 3571 EXIST::FUNCTION:
3155STORE_ATTR_INFO_modify_cstr 3572 NOEXIST::FUNCTION: 3155STORE_ATTR_INFO_modify_cstr 3572 NOEXIST::FUNCTION:
3156X509_policy_tree_level_count 3573 EXIST::FUNCTION: 3156X509_policy_tree_level_count 3573 EXIST::FUNCTION:
3157BN_GF2m_add 3574 EXIST::FUNCTION: 3157BN_GF2m_add 3574 EXIST::FUNCTION:EC2M
3158EC_KEY_get0_group 3575 EXIST::FUNCTION:EC 3158EC_KEY_get0_group 3575 EXIST::FUNCTION:EC
3159STORE_generate_crl 3576 NOEXIST::FUNCTION: 3159STORE_generate_crl 3576 NOEXIST::FUNCTION:
3160STORE_store_public_key 3577 NOEXIST::FUNCTION: 3160STORE_store_public_key 3577 NOEXIST::FUNCTION:
@@ -3179,8 +3179,8 @@ STORE_store_certificate 3593 NOEXIST::FUNCTION:
3179OBJ_bsearch_ex 3594 NOEXIST::FUNCTION: 3179OBJ_bsearch_ex 3594 NOEXIST::FUNCTION:
3180X509_STORE_CTX_set_default 3595 EXIST::FUNCTION: 3180X509_STORE_CTX_set_default 3595 EXIST::FUNCTION:
3181STORE_ATTR_INFO_set_sha1str 3596 NOEXIST::FUNCTION: 3181STORE_ATTR_INFO_set_sha1str 3596 NOEXIST::FUNCTION:
3182BN_GF2m_mod_inv 3597 EXIST::FUNCTION: 3182BN_GF2m_mod_inv 3597 EXIST::FUNCTION:EC2M
3183BN_GF2m_mod_exp 3598 EXIST::FUNCTION: 3183BN_GF2m_mod_exp 3598 EXIST::FUNCTION:EC2M
3184STORE_modify_public_key 3599 NOEXIST::FUNCTION: 3184STORE_modify_public_key 3599 NOEXIST::FUNCTION:
3185STORE_meth_get_list_start_fn 3600 NOEXIST::FUNCTION: 3185STORE_meth_get_list_start_fn 3600 NOEXIST::FUNCTION:
3186STORE_method_get_list_start_function 3600 NOEXIST::FUNCTION: 3186STORE_method_get_list_start_function 3600 NOEXIST::FUNCTION:
@@ -3188,7 +3188,7 @@ EC_GROUP_get0_seed 3601 EXIST::FUNCTION:EC
3188STORE_store_arbitrary 3602 NOEXIST::FUNCTION: 3188STORE_store_arbitrary 3602 NOEXIST::FUNCTION:
3189STORE_meth_set_unlock_store_fn 3603 NOEXIST::FUNCTION: 3189STORE_meth_set_unlock_store_fn 3603 NOEXIST::FUNCTION:
3190STORE_method_set_unlock_store_function 3603 NOEXIST::FUNCTION: 3190STORE_method_set_unlock_store_function 3603 NOEXIST::FUNCTION:
3191BN_GF2m_mod_div_arr 3604 EXIST::FUNCTION: 3191BN_GF2m_mod_div_arr 3604 EXIST::FUNCTION:EC2M
3192ENGINE_set_ECDSA 3605 EXIST::FUNCTION:ENGINE 3192ENGINE_set_ECDSA 3605 EXIST::FUNCTION:ENGINE
3193STORE_create_method 3606 NOEXIST::FUNCTION: 3193STORE_create_method 3606 NOEXIST::FUNCTION:
3194ECPKParameters_print 3607 EXIST::FUNCTION:BIO,EC 3194ECPKParameters_print 3607 EXIST::FUNCTION:BIO,EC
@@ -3211,8 +3211,8 @@ EC_KEY_get_enc_flags 3622 EXIST::FUNCTION:EC
3211ASN1_const_check_infinite_end 3623 EXIST::FUNCTION: 3211ASN1_const_check_infinite_end 3623 EXIST::FUNCTION:
3212EVP_PKEY_delete_attr 3624 EXIST::FUNCTION: 3212EVP_PKEY_delete_attr 3624 EXIST::FUNCTION:
3213ECDSA_set_default_method 3625 EXIST::FUNCTION:ECDSA 3213ECDSA_set_default_method 3625 EXIST::FUNCTION:ECDSA
3214EC_POINT_set_compressed_coordinates_GF2m 3626 EXIST:!VMS:FUNCTION:EC 3214EC_POINT_set_compressed_coordinates_GF2m 3626 EXIST:!VMS:FUNCTION:EC,EC2M
3215EC_POINT_set_compr_coords_GF2m 3626 EXIST:VMS:FUNCTION:EC 3215EC_POINT_set_compr_coords_GF2m 3626 EXIST:VMS:FUNCTION:EC,EC2M
3216EC_GROUP_cmp 3627 EXIST::FUNCTION:EC 3216EC_GROUP_cmp 3627 EXIST::FUNCTION:EC
3217STORE_revoke_certificate 3628 NOEXIST::FUNCTION: 3217STORE_revoke_certificate 3628 NOEXIST::FUNCTION:
3218BN_get0_nist_prime_256 3629 EXIST::FUNCTION: 3218BN_get0_nist_prime_256 3629 EXIST::FUNCTION:
@@ -3241,7 +3241,7 @@ POLICY_CONSTRAINTS_it 3649 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTI
3241STORE_get_ex_new_index 3650 NOEXIST::FUNCTION: 3241STORE_get_ex_new_index 3650 NOEXIST::FUNCTION:
3242EVP_PKEY_get_attr_by_OBJ 3651 EXIST::FUNCTION: 3242EVP_PKEY_get_attr_by_OBJ 3651 EXIST::FUNCTION:
3243X509_VERIFY_PARAM_add0_policy 3652 EXIST::FUNCTION: 3243X509_VERIFY_PARAM_add0_policy 3652 EXIST::FUNCTION:
3244BN_GF2m_mod_solve_quad 3653 EXIST::FUNCTION: 3244BN_GF2m_mod_solve_quad 3653 EXIST::FUNCTION:EC2M
3245SHA256 3654 EXIST::FUNCTION:SHA,SHA256 3245SHA256 3654 EXIST::FUNCTION:SHA,SHA256
3246i2d_ECPrivateKey_fp 3655 EXIST::FUNCTION:EC,FP_API 3246i2d_ECPrivateKey_fp 3655 EXIST::FUNCTION:EC,FP_API
3247X509_policy_tree_get0_user_policies 3656 EXIST:!VMS:FUNCTION: 3247X509_policy_tree_get0_user_policies 3656 EXIST:!VMS:FUNCTION:
@@ -3249,8 +3249,8 @@ X509_pcy_tree_get0_usr_policies 3656 EXIST:VMS:FUNCTION:
3249OPENSSL_DIR_read 3657 EXIST::FUNCTION: 3249OPENSSL_DIR_read 3657 EXIST::FUNCTION:
3250ENGINE_register_all_ECDSA 3658 EXIST::FUNCTION:ENGINE 3250ENGINE_register_all_ECDSA 3658 EXIST::FUNCTION:ENGINE
3251X509_VERIFY_PARAM_lookup 3659 EXIST::FUNCTION: 3251X509_VERIFY_PARAM_lookup 3659 EXIST::FUNCTION:
3252EC_POINT_get_affine_coordinates_GF2m 3660 EXIST:!VMS:FUNCTION:EC 3252EC_POINT_get_affine_coordinates_GF2m 3660 EXIST:!VMS:FUNCTION:EC,EC2M
3253EC_POINT_get_affine_coords_GF2m 3660 EXIST:VMS:FUNCTION:EC 3253EC_POINT_get_affine_coords_GF2m 3660 EXIST:VMS:FUNCTION:EC,EC2M
3254EC_GROUP_dup 3661 EXIST::FUNCTION:EC 3254EC_GROUP_dup 3661 EXIST::FUNCTION:EC
3255ENGINE_get_default_ECDSA 3662 EXIST::FUNCTION:ENGINE 3255ENGINE_get_default_ECDSA 3662 EXIST::FUNCTION:ENGINE
3256EC_KEY_new 3663 EXIST::FUNCTION:EC 3256EC_KEY_new 3663 EXIST::FUNCTION:EC
@@ -3332,7 +3332,7 @@ STORE_list_certificate_end 3734 NOEXIST::FUNCTION:
3332STORE_get_crl 3735 NOEXIST::FUNCTION: 3332STORE_get_crl 3735 NOEXIST::FUNCTION:
3333X509_POLICY_NODE_print 3736 EXIST::FUNCTION: 3333X509_POLICY_NODE_print 3736 EXIST::FUNCTION:
3334SHA384_Init 3737 EXIST:!VMSVAX:FUNCTION:SHA,SHA512 3334SHA384_Init 3737 EXIST:!VMSVAX:FUNCTION:SHA,SHA512
3335EC_GF2m_simple_method 3738 EXIST::FUNCTION:EC 3335EC_GF2m_simple_method 3738 EXIST::FUNCTION:EC,EC2M
3336ECDSA_set_ex_data 3739 EXIST::FUNCTION:ECDSA 3336ECDSA_set_ex_data 3739 EXIST::FUNCTION:ECDSA
3337SHA384_Final 3740 EXIST:!VMSVAX:FUNCTION:SHA,SHA512 3337SHA384_Final 3740 EXIST:!VMSVAX:FUNCTION:SHA,SHA512
3338PKCS7_set_digest 3741 EXIST::FUNCTION: 3338PKCS7_set_digest 3741 EXIST::FUNCTION:
@@ -3364,7 +3364,7 @@ BIO_dump_cb 3764 EXIST::FUNCTION:
3364SHA256_Update 3765 EXIST::FUNCTION:SHA,SHA256 3364SHA256_Update 3765 EXIST::FUNCTION:SHA,SHA256
3365pqueue_insert 3766 EXIST::FUNCTION: 3365pqueue_insert 3766 EXIST::FUNCTION:
3366pitem_free 3767 EXIST::FUNCTION: 3366pitem_free 3767 EXIST::FUNCTION:
3367BN_GF2m_mod_inv_arr 3768 EXIST::FUNCTION: 3367BN_GF2m_mod_inv_arr 3768 EXIST::FUNCTION:EC2M
3368ENGINE_unregister_ECDSA 3769 EXIST::FUNCTION:ENGINE 3368ENGINE_unregister_ECDSA 3769 EXIST::FUNCTION:ENGINE
3369BN_BLINDING_set_thread_id 3770 EXIST::FUNCTION:DEPRECATED 3369BN_BLINDING_set_thread_id 3770 EXIST::FUNCTION:DEPRECATED
3370get_rfc3526_prime_8192 3771 EXIST::FUNCTION: 3370get_rfc3526_prime_8192 3771 EXIST::FUNCTION:
@@ -3670,7 +3670,7 @@ int_EVP_MD_set_engine_callbacks 4056 NOEXIST::FUNCTION:
3670int_CRYPTO_set_do_dynlock_callback 4057 NOEXIST::FUNCTION: 3670int_CRYPTO_set_do_dynlock_callback 4057 NOEXIST::FUNCTION:
3671FIPS_rng_stick 4058 NOEXIST::FUNCTION: 3671FIPS_rng_stick 4058 NOEXIST::FUNCTION:
3672EVP_CIPHER_CTX_set_flags 4059 EXIST::FUNCTION: 3672EVP_CIPHER_CTX_set_flags 4059 EXIST::FUNCTION:
3673BN_X931_generate_prime_ex 4060 NOEXIST::FUNCTION: 3673BN_X931_generate_prime_ex 4060 EXIST::FUNCTION:
3674FIPS_selftest_check 4061 NOEXIST::FUNCTION: 3674FIPS_selftest_check 4061 NOEXIST::FUNCTION:
3675FIPS_rand_set_dt 4062 NOEXIST::FUNCTION: 3675FIPS_rand_set_dt 4062 NOEXIST::FUNCTION:
3676CRYPTO_dbg_pop_info 4063 NOEXIST::FUNCTION: 3676CRYPTO_dbg_pop_info 4063 NOEXIST::FUNCTION:
@@ -3695,14 +3695,14 @@ FIPS_rand_test_mode 4081 NOEXIST::FUNCTION:
3695FIPS_rand_reset 4082 NOEXIST::FUNCTION: 3695FIPS_rand_reset 4082 NOEXIST::FUNCTION:
3696FIPS_dsa_new 4083 NOEXIST::FUNCTION: 3696FIPS_dsa_new 4083 NOEXIST::FUNCTION:
3697int_RAND_set_callbacks 4084 NOEXIST::FUNCTION: 3697int_RAND_set_callbacks 4084 NOEXIST::FUNCTION:
3698BN_X931_derive_prime_ex 4085 NOEXIST::FUNCTION: 3698BN_X931_derive_prime_ex 4085 EXIST::FUNCTION:
3699int_ERR_lib_init 4086 NOEXIST::FUNCTION: 3699int_ERR_lib_init 4086 NOEXIST::FUNCTION:
3700int_EVP_CIPHER_init_engine_callbacks 4087 NOEXIST::FUNCTION: 3700int_EVP_CIPHER_init_engine_callbacks 4087 NOEXIST::FUNCTION:
3701FIPS_rsa_free 4088 NOEXIST::FUNCTION: 3701FIPS_rsa_free 4088 NOEXIST::FUNCTION:
3702FIPS_dsa_sig_encode 4089 NOEXIST::FUNCTION: 3702FIPS_dsa_sig_encode 4089 NOEXIST::FUNCTION:
3703CRYPTO_dbg_remove_all_info 4090 NOEXIST::FUNCTION: 3703CRYPTO_dbg_remove_all_info 4090 NOEXIST::FUNCTION:
3704OPENSSL_init 4091 NOEXIST::FUNCTION: 3704OPENSSL_init 4091 EXIST::FUNCTION:
3705private_Camellia_set_key 4092 NOEXIST::FUNCTION: 3705private_Camellia_set_key 4092 EXIST:OPENSSL_FIPS:FUNCTION:CAMELLIA
3706CRYPTO_strdup 4093 EXIST::FUNCTION: 3706CRYPTO_strdup 4093 EXIST::FUNCTION:
3707JPAKE_STEP3A_process 4094 EXIST::FUNCTION:JPAKE 3707JPAKE_STEP3A_process 4094 EXIST::FUNCTION:JPAKE
3708JPAKE_STEP1_release 4095 EXIST::FUNCTION:JPAKE 3708JPAKE_STEP1_release 4095 EXIST::FUNCTION:JPAKE
@@ -4194,4 +4194,119 @@ OPENSSL_memcmp 4565 EXIST::FUNCTION:
4194OPENSSL_strncasecmp 4566 EXIST::FUNCTION: 4194OPENSSL_strncasecmp 4566 EXIST::FUNCTION:
4195OPENSSL_gmtime 4567 EXIST::FUNCTION: 4195OPENSSL_gmtime 4567 EXIST::FUNCTION:
4196OPENSSL_gmtime_adj 4568 EXIST::FUNCTION: 4196OPENSSL_gmtime_adj 4568 EXIST::FUNCTION:
4197ENGINE_load_aesni 4569 EXIST::FUNCTION:ENGINE 4197SRP_VBASE_get_by_user 4569 EXIST::FUNCTION:SRP
4198SRP_Calc_server_key 4570 EXIST::FUNCTION:SRP
4199SRP_create_verifier 4571 EXIST::FUNCTION:SRP
4200SRP_create_verifier_BN 4572 EXIST::FUNCTION:SRP
4201SRP_Calc_u 4573 EXIST::FUNCTION:SRP
4202SRP_VBASE_free 4574 EXIST::FUNCTION:SRP
4203SRP_Calc_client_key 4575 EXIST::FUNCTION:SRP
4204SRP_get_default_gN 4576 EXIST::FUNCTION:SRP
4205SRP_Calc_x 4577 EXIST::FUNCTION:SRP
4206SRP_Calc_B 4578 EXIST::FUNCTION:SRP
4207SRP_VBASE_new 4579 EXIST::FUNCTION:SRP
4208SRP_check_known_gN_param 4580 EXIST::FUNCTION:SRP
4209SRP_Calc_A 4581 EXIST::FUNCTION:SRP
4210SRP_Verify_A_mod_N 4582 EXIST::FUNCTION:SRP
4211SRP_VBASE_init 4583 EXIST::FUNCTION:SRP
4212SRP_Verify_B_mod_N 4584 EXIST::FUNCTION:SRP
4213EC_KEY_set_public_key_affine_coordinates 4585 EXIST:!VMS:FUNCTION:EC
4214EC_KEY_set_pub_key_aff_coords 4585 EXIST:VMS:FUNCTION:EC
4215EVP_aes_192_ctr 4586 EXIST::FUNCTION:AES
4216EVP_PKEY_meth_get0_info 4587 EXIST::FUNCTION:
4217EVP_PKEY_meth_copy 4588 EXIST::FUNCTION:
4218ERR_add_error_vdata 4589 EXIST::FUNCTION:
4219EVP_aes_128_ctr 4590 EXIST::FUNCTION:AES
4220EVP_aes_256_ctr 4591 EXIST::FUNCTION:AES
4221EC_GFp_nistp224_method 4592 EXIST::FUNCTION:EC,EC_NISTP_64_GCC_128
4222EC_KEY_get_flags 4593 EXIST::FUNCTION:EC
4223RSA_padding_add_PKCS1_PSS_mgf1 4594 EXIST::FUNCTION:RSA
4224EVP_aes_128_xts 4595 EXIST::FUNCTION:AES
4225private_SHA224_Init 4596 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
4226private_AES_set_decrypt_key 4597 EXIST::FUNCTION:AES
4227private_WHIRLPOOL_Init 4598 EXIST:OPENSSL_FIPS:FUNCTION:WHIRLPOOL
4228EVP_aes_256_xts 4599 EXIST::FUNCTION:AES
4229private_SHA512_Init 4600 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
4230EVP_aes_128_gcm 4601 EXIST::FUNCTION:AES
4231EC_KEY_clear_flags 4602 EXIST::FUNCTION:EC
4232EC_KEY_set_flags 4603 EXIST::FUNCTION:EC
4233private_DES_set_key_unchecked 4604 EXIST:OPENSSL_FIPS:FUNCTION:DES
4234EVP_aes_256_ccm 4605 EXIST::FUNCTION:AES
4235private_AES_set_encrypt_key 4606 EXIST::FUNCTION:AES
4236RSA_verify_PKCS1_PSS_mgf1 4607 EXIST::FUNCTION:RSA
4237private_SHA1_Init 4608 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA1
4238EVP_aes_128_ccm 4609 EXIST::FUNCTION:AES
4239private_SEED_set_key 4610 EXIST:OPENSSL_FIPS:FUNCTION:SEED
4240EVP_aes_192_gcm 4611 EXIST::FUNCTION:AES
4241X509_ALGOR_set_md 4612 EXIST::FUNCTION:
4242private_SHA256_Init 4613 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA256
4243RAND_init_fips 4614 EXIST:OPENSSL_FIPS:FUNCTION:
4244EVP_aes_256_gcm 4615 EXIST::FUNCTION:AES
4245private_SHA384_Init 4616 EXIST:OPENSSL_FIPS:FUNCTION:SHA,SHA512
4246EVP_aes_192_ccm 4617 EXIST::FUNCTION:AES
4247CMAC_CTX_copy 4618 EXIST::FUNCTION:
4248CMAC_CTX_free 4619 EXIST::FUNCTION:
4249CMAC_CTX_get0_cipher_ctx 4620 EXIST::FUNCTION:
4250CMAC_CTX_cleanup 4621 EXIST::FUNCTION:
4251CMAC_Init 4622 EXIST::FUNCTION:
4252CMAC_Update 4623 EXIST::FUNCTION:
4253CMAC_resume 4624 EXIST::FUNCTION:
4254CMAC_CTX_new 4625 EXIST::FUNCTION:
4255CMAC_Final 4626 EXIST::FUNCTION:
4256CRYPTO_ctr128_encrypt_ctr32 4627 EXIST::FUNCTION:
4257CRYPTO_gcm128_release 4628 EXIST::FUNCTION:
4258CRYPTO_ccm128_decrypt_ccm64 4629 EXIST::FUNCTION:
4259CRYPTO_ccm128_encrypt 4630 EXIST::FUNCTION:
4260CRYPTO_gcm128_encrypt 4631 EXIST::FUNCTION:
4261CRYPTO_xts128_encrypt 4632 EXIST::FUNCTION:
4262EVP_rc4_hmac_md5 4633 EXIST::FUNCTION:MD5,RC4
4263CRYPTO_nistcts128_decrypt_block 4634 EXIST::FUNCTION:
4264CRYPTO_gcm128_setiv 4635 EXIST::FUNCTION:
4265CRYPTO_nistcts128_encrypt 4636 EXIST::FUNCTION:
4266EVP_aes_128_cbc_hmac_sha1 4637 EXIST::FUNCTION:AES,SHA,SHA1
4267CRYPTO_gcm128_tag 4638 EXIST::FUNCTION:
4268CRYPTO_ccm128_encrypt_ccm64 4639 EXIST::FUNCTION:
4269ENGINE_load_rdrand 4640 EXIST::FUNCTION:ENGINE
4270CRYPTO_ccm128_setiv 4641 EXIST::FUNCTION:
4271CRYPTO_nistcts128_encrypt_block 4642 EXIST::FUNCTION:
4272CRYPTO_gcm128_aad 4643 EXIST::FUNCTION:
4273CRYPTO_ccm128_init 4644 EXIST::FUNCTION:
4274CRYPTO_nistcts128_decrypt 4645 EXIST::FUNCTION:
4275CRYPTO_gcm128_new 4646 EXIST::FUNCTION:
4276CRYPTO_ccm128_tag 4647 EXIST::FUNCTION:
4277CRYPTO_ccm128_decrypt 4648 EXIST::FUNCTION:
4278CRYPTO_ccm128_aad 4649 EXIST::FUNCTION:
4279CRYPTO_gcm128_init 4650 EXIST::FUNCTION:
4280CRYPTO_gcm128_decrypt 4651 EXIST::FUNCTION:
4281ENGINE_load_rsax 4652 EXIST::FUNCTION:ENGINE
4282CRYPTO_gcm128_decrypt_ctr32 4653 EXIST::FUNCTION:
4283CRYPTO_gcm128_encrypt_ctr32 4654 EXIST::FUNCTION:
4284CRYPTO_gcm128_finish 4655 EXIST::FUNCTION:
4285EVP_aes_256_cbc_hmac_sha1 4656 EXIST::FUNCTION:AES,SHA,SHA1
4286PKCS5_pbkdf2_set 4657 EXIST::FUNCTION:
4287CMS_add0_recipient_password 4658 EXIST::FUNCTION:CMS
4288CMS_decrypt_set1_password 4659 EXIST::FUNCTION:CMS
4289CMS_RecipientInfo_set0_password 4660 EXIST::FUNCTION:CMS
4290RAND_set_fips_drbg_type 4661 EXIST:OPENSSL_FIPS:FUNCTION:
4291X509_REQ_sign_ctx 4662 EXIST::FUNCTION:EVP
4292RSA_PSS_PARAMS_new 4663 EXIST::FUNCTION:RSA
4293X509_CRL_sign_ctx 4664 EXIST::FUNCTION:EVP
4294X509_signature_dump 4665 EXIST::FUNCTION:EVP
4295d2i_RSA_PSS_PARAMS 4666 EXIST::FUNCTION:RSA
4296RSA_PSS_PARAMS_it 4667 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RSA
4297RSA_PSS_PARAMS_it 4667 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RSA
4298RSA_PSS_PARAMS_free 4668 EXIST::FUNCTION:RSA
4299X509_sign_ctx 4669 EXIST::FUNCTION:EVP
4300i2d_RSA_PSS_PARAMS 4670 EXIST::FUNCTION:RSA
4301ASN1_item_sign_ctx 4671 EXIST::FUNCTION:EVP
4302EC_GFp_nistp521_method 4672 EXIST::FUNCTION:EC,EC_NISTP_64_GCC_128
4303EC_GFp_nistp256_method 4673 EXIST::FUNCTION:EC,EC_NISTP_64_GCC_128
4304OPENSSL_stderr 4674 EXIST::FUNCTION:
4305OPENSSL_cpuid_setup 4675 EXIST::FUNCTION:
4306OPENSSL_showfatal 4676 EXIST::FUNCTION:
4307BIO_new_dgram_sctp 4677 EXIST::FUNCTION:SCTP
4308BIO_dgram_sctp_msg_waiting 4678 EXIST::FUNCTION:SCTP
4309BIO_dgram_sctp_wait_for_dry 4679 EXIST::FUNCTION:SCTP
4310BIO_s_datagram_sctp 4680 EXIST::FUNCTION:DGRAM,SCTP
4311BIO_dgram_is_sctp 4681 EXIST::FUNCTION:SCTP
4312BIO_dgram_sctp_notification_cb 4682 EXIST::FUNCTION:SCTP
diff --git a/src/lib/libcrypto/util/mk1mf.pl b/src/lib/libcrypto/util/mk1mf.pl
index 1dcef2b8a2..458f830401 100644
--- a/src/lib/libcrypto/util/mk1mf.pl
+++ b/src/lib/libcrypto/util/mk1mf.pl
@@ -18,6 +18,8 @@ local $zlib_opt = 0; # 0 = no zlib, 1 = static, 2 = dynamic
18local $zlib_lib = ""; 18local $zlib_lib = "";
19local $perl_asm = 0; # 1 to autobuild asm files from perl scripts 19local $perl_asm = 0; # 1 to autobuild asm files from perl scripts
20 20
21my $ex_l_libs = "";
22
21# Options to import from top level Makefile 23# Options to import from top level Makefile
22 24
23my %mf_import = ( 25my %mf_import = (
@@ -40,7 +42,9 @@ my %mf_import = (
40 SHA1_ASM_OBJ => \$mf_sha_asm, 42 SHA1_ASM_OBJ => \$mf_sha_asm,
41 RMD160_ASM_OBJ => \$mf_rmd_asm, 43 RMD160_ASM_OBJ => \$mf_rmd_asm,
42 WP_ASM_OBJ => \$mf_wp_asm, 44 WP_ASM_OBJ => \$mf_wp_asm,
43 CMLL_ENC => \$mf_cm_asm 45 CMLL_ENC => \$mf_cm_asm,
46 BASEADDR => \$baseaddr,
47 FIPSDIR => \$fipsdir,
44); 48);
45 49
46 50
@@ -104,6 +108,7 @@ and [options] can be one of
104 just-ssl - remove all non-ssl keys/digest 108 just-ssl - remove all non-ssl keys/digest
105 no-asm - No x86 asm 109 no-asm - No x86 asm
106 no-krb5 - No KRB5 110 no-krb5 - No KRB5
111 no-srp - No SRP
107 no-ec - No EC 112 no-ec - No EC
108 no-ecdsa - No ECDSA 113 no-ecdsa - No ECDSA
109 no-ecdh - No ECDH 114 no-ecdh - No ECDH
@@ -228,6 +233,8 @@ else
228 $cflags.=' -DTERMIO'; 233 $cflags.=' -DTERMIO';
229 } 234 }
230 235
236$fipsdir =~ s/\//${o}/g;
237
231$out_dir=(defined($VARS{'OUT'}))?$VARS{'OUT'}:$out_def.($debug?".dbg":""); 238$out_dir=(defined($VARS{'OUT'}))?$VARS{'OUT'}:$out_def.($debug?".dbg":"");
232$tmp_dir=(defined($VARS{'TMP'}))?$VARS{'TMP'}:$tmp_def.($debug?".dbg":""); 239$tmp_dir=(defined($VARS{'TMP'}))?$VARS{'TMP'}:$tmp_def.($debug?".dbg":"");
233$inc_dir=(defined($VARS{'INC'}))?$VARS{'INC'}:$inc_def; 240$inc_dir=(defined($VARS{'INC'}))?$VARS{'INC'}:$inc_def;
@@ -261,6 +268,7 @@ $cflags.=" -DOPENSSL_NO_SOCK" if $no_sock;
261$cflags.=" -DOPENSSL_NO_SSL2" if $no_ssl2; 268$cflags.=" -DOPENSSL_NO_SSL2" if $no_ssl2;
262$cflags.=" -DOPENSSL_NO_SSL3" if $no_ssl3; 269$cflags.=" -DOPENSSL_NO_SSL3" if $no_ssl3;
263$cflags.=" -DOPENSSL_NO_TLSEXT" if $no_tlsext; 270$cflags.=" -DOPENSSL_NO_TLSEXT" if $no_tlsext;
271$cflags.=" -DOPENSSL_NO_SRP" if $no_srp;
264$cflags.=" -DOPENSSL_NO_CMS" if $no_cms; 272$cflags.=" -DOPENSSL_NO_CMS" if $no_cms;
265$cflags.=" -DOPENSSL_NO_ERR" if $no_err; 273$cflags.=" -DOPENSSL_NO_ERR" if $no_err;
266$cflags.=" -DOPENSSL_NO_KRB5" if $no_krb5; 274$cflags.=" -DOPENSSL_NO_KRB5" if $no_krb5;
@@ -270,7 +278,9 @@ $cflags.=" -DOPENSSL_NO_ECDH" if $no_ecdh;
270$cflags.=" -DOPENSSL_NO_GOST" if $no_gost; 278$cflags.=" -DOPENSSL_NO_GOST" if $no_gost;
271$cflags.=" -DOPENSSL_NO_ENGINE" if $no_engine; 279$cflags.=" -DOPENSSL_NO_ENGINE" if $no_engine;
272$cflags.=" -DOPENSSL_NO_HW" if $no_hw; 280$cflags.=" -DOPENSSL_NO_HW" if $no_hw;
281$cflags.=" -DOPENSSL_FIPS" if $fips;
273$cflags.=" -DOPENSSL_NO_JPAKE" if $no_jpake; 282$cflags.=" -DOPENSSL_NO_JPAKE" if $no_jpake;
283$cflags.=" -DOPENSSL_NO_EC2M" if $no_ec2m;
274$cflags.= " -DZLIB" if $zlib_opt; 284$cflags.= " -DZLIB" if $zlib_opt;
275$cflags.= " -DZLIB_SHARED" if $zlib_opt == 2; 285$cflags.= " -DZLIB_SHARED" if $zlib_opt == 2;
276 286
@@ -404,6 +414,11 @@ else
404 \$(CP) \"\$(O_CRYPTO)\" \"\$(INSTALLTOP)${o}lib\" 414 \$(CP) \"\$(O_CRYPTO)\" \"\$(INSTALLTOP)${o}lib\"
405EOF 415EOF
406 $ex_libs .= " $zlib_lib" if $zlib_opt == 1; 416 $ex_libs .= " $zlib_lib" if $zlib_opt == 1;
417 if ($fips)
418 {
419 $build_targets .= " \$(LIB_D)$o$crypto_compat \$(PREMAIN_DSO_EXE)";
420 $ex_l_libs .= " \$(O_FIPSCANISTER)";
421 }
407 } 422 }
408 423
409$defs= <<"EOF"; 424$defs= <<"EOF";
@@ -465,6 +480,18 @@ MKLIB=$bin_dir$mklib
465MLFLAGS=$mlflags 480MLFLAGS=$mlflags
466ASM=$bin_dir$asm 481ASM=$bin_dir$asm
467 482
483# FIPS validated module and support file locations
484
485FIPSDIR=$fipsdir
486BASEADDR=$baseaddr
487FIPSLIB_D=\$(FIPSDIR)${o}lib
488FIPS_PREMAIN_SRC=\$(FIPSLIB_D)${o}fips_premain.c
489O_FIPSCANISTER=\$(FIPSLIB_D)${o}fipscanister.lib
490FIPS_SHA1_EXE=\$(FIPSDIR)${o}bin${o}fips_standalone_sha1${exep}
491E_PREMAIN_DSO=fips_premain_dso
492PREMAIN_DSO_EXE=\$(BIN_D)${o}fips_premain_dso$exep
493FIPSLINK=\$(PERL) \$(FIPSDIR)${o}bin${o}fipslink.pl
494
468###################################################### 495######################################################
469# You should not need to touch anything below this point 496# You should not need to touch anything below this point
470###################################################### 497######################################################
@@ -497,7 +524,7 @@ SO_CRYPTO= $plib\$(CRYPTO)$so_shlibp
497L_SSL= \$(LIB_D)$o$plib\$(SSL)$libp 524L_SSL= \$(LIB_D)$o$plib\$(SSL)$libp
498L_CRYPTO= \$(LIB_D)$o$plib\$(CRYPTO)$libp 525L_CRYPTO= \$(LIB_D)$o$plib\$(CRYPTO)$libp
499 526
500L_LIBS= \$(L_SSL) \$(L_CRYPTO) 527L_LIBS= \$(L_SSL) \$(L_CRYPTO) $ex_l_libs
501 528
502###################################################### 529######################################################
503# Don't touch anything below this point 530# Don't touch anything below this point
@@ -513,7 +540,7 @@ LIBS_DEP=\$(O_CRYPTO) \$(O_SSL)
513EOF 540EOF
514 541
515$rules=<<"EOF"; 542$rules=<<"EOF";
516all: banner \$(TMP_D) \$(BIN_D) \$(TEST_D) \$(LIB_D) \$(INCO_D) headers lib exe 543all: banner \$(TMP_D) \$(BIN_D) \$(TEST_D) \$(LIB_D) \$(INCO_D) headers lib exe $build_targets
517 544
518banner: 545banner:
519$banner 546$banner
@@ -629,6 +656,16 @@ $rules.=&do_compile_rule("\$(OBJ_D)",$test,"\$(APP_CFLAGS)");
629$defs.=&do_defs("E_OBJ",$e_exe,"\$(OBJ_D)",$obj); 656$defs.=&do_defs("E_OBJ",$e_exe,"\$(OBJ_D)",$obj);
630$rules.=&do_compile_rule("\$(OBJ_D)",$e_exe,'-DMONOLITH $(APP_CFLAGS)'); 657$rules.=&do_compile_rule("\$(OBJ_D)",$e_exe,'-DMONOLITH $(APP_CFLAGS)');
631 658
659# Special case rule for fips_premain_dso
660
661if ($fips)
662 {
663 $rules.=&cc_compile_target("\$(OBJ_D)${o}\$(E_PREMAIN_DSO)$obj",
664 "\$(FIPS_PREMAIN_SRC)",
665 "-DFINGERPRINT_PREMAIN_DSO_LOAD \$(SHLIB_CFLAGS)", "");
666 $rules.=&do_link_rule("\$(PREMAIN_DSO_EXE)","\$(OBJ_D)${o}\$(E_PREMAIN_DSO)$obj \$(CRYPTOOBJ) \$(O_FIPSCANISTER)","","\$(EX_LIBS)", 1);
667 }
668
632foreach (values %lib_nam) 669foreach (values %lib_nam)
633 { 670 {
634 $lib_obj=$lib_obj{$_}; 671 $lib_obj=$lib_obj{$_};
@@ -677,7 +714,28 @@ foreach (split(/\s+/,$engines))
677 714
678 715
679$rules.= &do_lib_rule("\$(SSLOBJ)","\$(O_SSL)",$ssl,$shlib,"\$(SO_SSL)"); 716$rules.= &do_lib_rule("\$(SSLOBJ)","\$(O_SSL)",$ssl,$shlib,"\$(SO_SSL)");
680$rules.= &do_lib_rule("\$(CRYPTOOBJ)","\$(O_CRYPTO)",$crypto,$shlib,"\$(SO_CRYPTO)"); 717
718if ($fips)
719 {
720 if ($shlib)
721 {
722 $rules.= &do_lib_rule("\$(CRYPTOOBJ) \$(O_FIPSCANISTER)",
723 "\$(O_CRYPTO)", "$crypto",
724 $shlib, "\$(SO_CRYPTO)", "\$(BASEADDR)");
725 }
726 else
727 {
728 $rules.= &do_lib_rule("\$(CRYPTOOBJ)",
729 "\$(O_CRYPTO)",$crypto,$shlib,"\$(SO_CRYPTO)", "");
730 $rules.= &do_lib_rule("\$(CRYPTOOBJ) \$(O_FIPSCANISTER)",
731 "\$(LIB_D)$o$crypto_compat",$crypto,$shlib,"\$(SO_CRYPTO)", "");
732 }
733 }
734 else
735 {
736 $rules.= &do_lib_rule("\$(CRYPTOOBJ)","\$(O_CRYPTO)",$crypto,$shlib,
737 "\$(SO_CRYPTO)");
738 }
681 739
682foreach (split(" ",$otherlibs)) 740foreach (split(" ",$otherlibs))
683 { 741 {
@@ -687,7 +745,7 @@ foreach (split(" ",$otherlibs))
687 745
688 } 746 }
689 747
690$rules.=&do_link_rule("\$(BIN_D)$o\$(E_EXE)$exep","\$(E_OBJ)","\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)"); 748$rules.=&do_link_rule("\$(BIN_D)$o\$(E_EXE)$exep","\$(E_OBJ)","\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)", ($fips && !$shlib) ? 2 : 0);
691 749
692print $defs; 750print $defs;
693 751
@@ -781,6 +839,8 @@ sub var_add
781 @a=grep(!/(^sha1)|(_sha1$)|(m_dss1$)/,@a) if $no_sha1; 839 @a=grep(!/(^sha1)|(_sha1$)|(m_dss1$)/,@a) if $no_sha1;
782 @a=grep(!/_mdc2$/,@a) if $no_mdc2; 840 @a=grep(!/_mdc2$/,@a) if $no_mdc2;
783 841
842 @a=grep(!/(srp)/,@a) if $no_srp;
843
784 @a=grep(!/^engine$/,@a) if $no_engine; 844 @a=grep(!/^engine$/,@a) if $no_engine;
785 @a=grep(!/^hw$/,@a) if $no_hw; 845 @a=grep(!/^hw$/,@a) if $no_hw;
786 @a=grep(!/(^rsa$)|(^genrsa$)/,@a) if $no_rsa; 846 @a=grep(!/(^rsa$)|(^genrsa$)/,@a) if $no_rsa;
@@ -939,14 +999,15 @@ sub Sasm_compile_target
939 999
940sub cc_compile_target 1000sub cc_compile_target
941 { 1001 {
942 local($target,$source,$ex_flags)=@_; 1002 local($target,$source,$ex_flags, $srcd)=@_;
943 local($ret); 1003 local($ret);
944 1004
945 $ex_flags.=" -DMK1MF_BUILD -D$platform_cpp_symbol" if ($source =~ /cversion/); 1005 $ex_flags.=" -DMK1MF_BUILD -D$platform_cpp_symbol" if ($source =~ /cversion/);
946 $target =~ s/\//$o/g if $o ne "/"; 1006 $target =~ s/\//$o/g if $o ne "/";
947 $source =~ s/\//$o/g if $o ne "/"; 1007 $source =~ s/\//$o/g if $o ne "/";
948 $ret ="$target: \$(SRC_D)$o$source\n\t"; 1008 $srcd = "\$(SRC_D)$o" unless defined $srcd;
949 $ret.="\$(CC) ${ofile}$target $ex_flags -c \$(SRC_D)$o$source\n\n"; 1009 $ret ="$target: $srcd$source\n\t";
1010 $ret.="\$(CC) ${ofile}$target $ex_flags -c $srcd$source\n\n";
950 return($ret); 1011 return($ret);
951 } 1012 }
952 1013
@@ -1056,8 +1117,11 @@ sub read_options
1056 "no-ssl2" => \$no_ssl2, 1117 "no-ssl2" => \$no_ssl2,
1057 "no-ssl3" => \$no_ssl3, 1118 "no-ssl3" => \$no_ssl3,
1058 "no-tlsext" => \$no_tlsext, 1119 "no-tlsext" => \$no_tlsext,
1120 "no-srp" => \$no_srp,
1059 "no-cms" => \$no_cms, 1121 "no-cms" => \$no_cms,
1122 "no-ec2m" => \$no_ec2m,
1060 "no-jpake" => \$no_jpake, 1123 "no-jpake" => \$no_jpake,
1124 "no-ec_nistp_64_gcc_128" => 0,
1061 "no-err" => \$no_err, 1125 "no-err" => \$no_err,
1062 "no-sock" => \$no_sock, 1126 "no-sock" => \$no_sock,
1063 "no-krb5" => \$no_krb5, 1127 "no-krb5" => \$no_krb5,
@@ -1067,11 +1131,12 @@ sub read_options
1067 "no-gost" => \$no_gost, 1131 "no-gost" => \$no_gost,
1068 "no-engine" => \$no_engine, 1132 "no-engine" => \$no_engine,
1069 "no-hw" => \$no_hw, 1133 "no-hw" => \$no_hw,
1134 "no-rsax" => 0,
1070 "just-ssl" => 1135 "just-ssl" =>
1071 [\$no_rc2, \$no_idea, \$no_des, \$no_bf, \$no_cast, 1136 [\$no_rc2, \$no_idea, \$no_des, \$no_bf, \$no_cast,
1072 \$no_md2, \$no_sha, \$no_mdc2, \$no_dsa, \$no_dh, 1137 \$no_md2, \$no_sha, \$no_mdc2, \$no_dsa, \$no_dh,
1073 \$no_ssl2, \$no_err, \$no_ripemd, \$no_rc5, 1138 \$no_ssl2, \$no_err, \$no_ripemd, \$no_rc5,
1074 \$no_aes, \$no_camellia, \$no_seed], 1139 \$no_aes, \$no_camellia, \$no_seed, \$no_srp],
1075 "rsaref" => 0, 1140 "rsaref" => 0,
1076 "gcc" => \$gcc, 1141 "gcc" => \$gcc,
1077 "debug" => \$debug, 1142 "debug" => \$debug,
@@ -1079,6 +1144,7 @@ sub read_options
1079 "shlib" => \$shlib, 1144 "shlib" => \$shlib,
1080 "dll" => \$shlib, 1145 "dll" => \$shlib,
1081 "shared" => 0, 1146 "shared" => 0,
1147 "no-sctp" => 0,
1082 "no-gmp" => 0, 1148 "no-gmp" => 0,
1083 "no-rfc3779" => 0, 1149 "no-rfc3779" => 0,
1084 "no-montasm" => 0, 1150 "no-montasm" => 0,
@@ -1086,6 +1152,7 @@ sub read_options
1086 "no-store" => 0, 1152 "no-store" => 0,
1087 "no-zlib" => 0, 1153 "no-zlib" => 0,
1088 "no-zlib-dynamic" => 0, 1154 "no-zlib-dynamic" => 0,
1155 "fips" => \$fips
1089 ); 1156 );
1090 1157
1091 if (exists $valid_options{$_}) 1158 if (exists $valid_options{$_})
diff --git a/src/lib/libcrypto/util/mkdef.pl b/src/lib/libcrypto/util/mkdef.pl
index ab47329097..9a8c7b87d1 100644
--- a/src/lib/libcrypto/util/mkdef.pl
+++ b/src/lib/libcrypto/util/mkdef.pl
@@ -79,13 +79,15 @@ my $OS2=0;
79my $safe_stack_def = 0; 79my $safe_stack_def = 0;
80 80
81my @known_platforms = ( "__FreeBSD__", "PERL5", "NeXT", 81my @known_platforms = ( "__FreeBSD__", "PERL5", "NeXT",
82 "EXPORT_VAR_AS_FUNCTION", "ZLIB" ); 82 "EXPORT_VAR_AS_FUNCTION", "ZLIB", "OPENSSL_FIPS" );
83my @known_ossl_platforms = ( "VMS", "WIN16", "WIN32", "WINNT", "OS2" ); 83my @known_ossl_platforms = ( "VMS", "WIN16", "WIN32", "WINNT", "OS2" );
84my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF", 84my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF",
85 "CAST", "MD2", "MD4", "MD5", "SHA", "SHA0", "SHA1", 85 "CAST", "MD2", "MD4", "MD5", "SHA", "SHA0", "SHA1",
86 "SHA256", "SHA512", "RIPEMD", 86 "SHA256", "SHA512", "RIPEMD",
87 "MDC2", "WHIRLPOOL", "RSA", "DSA", "DH", "EC", "ECDH", "ECDSA", 87 "MDC2", "WHIRLPOOL", "RSA", "DSA", "DH", "EC", "ECDH", "ECDSA", "EC2M",
88 "HMAC", "AES", "CAMELLIA", "SEED", "GOST", 88 "HMAC", "AES", "CAMELLIA", "SEED", "GOST",
89 # EC_NISTP_64_GCC_128
90 "EC_NISTP_64_GCC_128",
89 # Envelope "algorithms" 91 # Envelope "algorithms"
90 "EVP", "X509", "ASN1_TYPEDEFS", 92 "EVP", "X509", "ASN1_TYPEDEFS",
91 # Helper "algorithms" 93 # Helper "algorithms"
@@ -98,7 +100,7 @@ my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF",
98 # RFC3779 100 # RFC3779
99 "RFC3779", 101 "RFC3779",
100 # TLS 102 # TLS
101 "TLSEXT", "PSK", 103 "TLSEXT", "PSK", "SRP", "HEARTBEATS",
102 # CMS 104 # CMS
103 "CMS", 105 "CMS",
104 # CryptoAPI Engine 106 # CryptoAPI Engine
@@ -107,8 +109,14 @@ my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF",
107 "SSL2", 109 "SSL2",
108 # JPAKE 110 # JPAKE
109 "JPAKE", 111 "JPAKE",
112 # NEXTPROTONEG
113 "NEXTPROTONEG",
110 # Deprecated functions 114 # Deprecated functions
111 "DEPRECATED" ); 115 "DEPRECATED",
116 # Hide SSL internals
117 "SSL_INTERN",
118 # SCTP
119 "SCTP");
112 120
113my $options=""; 121my $options="";
114open(IN,"<Makefile") || die "unable to open Makefile!\n"; 122open(IN,"<Makefile") || die "unable to open Makefile!\n";
@@ -127,7 +135,10 @@ my $no_rsa; my $no_dsa; my $no_dh; my $no_hmac=0; my $no_aes; my $no_krb5;
127my $no_ec; my $no_ecdsa; my $no_ecdh; my $no_engine; my $no_hw; 135my $no_ec; my $no_ecdsa; my $no_ecdh; my $no_engine; my $no_hw;
128my $no_fp_api; my $no_static_engine=1; my $no_gmp; my $no_deprecated; 136my $no_fp_api; my $no_static_engine=1; my $no_gmp; my $no_deprecated;
129my $no_rfc3779; my $no_psk; my $no_tlsext; my $no_cms; my $no_capieng; 137my $no_rfc3779; my $no_psk; my $no_tlsext; my $no_cms; my $no_capieng;
130my $no_jpake; my $no_ssl2; 138my $no_jpake; my $no_srp; my $no_ssl2; my $no_ec2m; my $no_nistp_gcc;
139my $no_nextprotoneg; my $no_sctp;
140
141my $fips;
131 142
132my $zlib; 143my $zlib;
133 144
@@ -151,6 +162,7 @@ foreach (@ARGV, split(/ /, $options))
151 } 162 }
152 $VMS=1 if $_ eq "VMS"; 163 $VMS=1 if $_ eq "VMS";
153 $OS2=1 if $_ eq "OS2"; 164 $OS2=1 if $_ eq "OS2";
165 $fips=1 if /^fips/;
154 if ($_ eq "zlib" || $_ eq "enable-zlib" || $_ eq "zlib-dynamic" 166 if ($_ eq "zlib" || $_ eq "enable-zlib" || $_ eq "zlib-dynamic"
155 || $_ eq "enable-zlib-dynamic") { 167 || $_ eq "enable-zlib-dynamic") {
156 $zlib = 1; 168 $zlib = 1;
@@ -215,9 +227,14 @@ foreach (@ARGV, split(/ /, $options))
215 elsif (/^no-rfc3779$/) { $no_rfc3779=1; } 227 elsif (/^no-rfc3779$/) { $no_rfc3779=1; }
216 elsif (/^no-tlsext$/) { $no_tlsext=1; } 228 elsif (/^no-tlsext$/) { $no_tlsext=1; }
217 elsif (/^no-cms$/) { $no_cms=1; } 229 elsif (/^no-cms$/) { $no_cms=1; }
230 elsif (/^no-ec2m$/) { $no_ec2m=1; }
231 elsif (/^no-ec_nistp_64_gcc_128$/) { $no_nistp_gcc=1; }
232 elsif (/^no-nextprotoneg$/) { $no_nextprotoneg=1; }
218 elsif (/^no-ssl2$/) { $no_ssl2=1; } 233 elsif (/^no-ssl2$/) { $no_ssl2=1; }
219 elsif (/^no-capieng$/) { $no_capieng=1; } 234 elsif (/^no-capieng$/) { $no_capieng=1; }
220 elsif (/^no-jpake$/) { $no_jpake=1; } 235 elsif (/^no-jpake$/) { $no_jpake=1; }
236 elsif (/^no-srp$/) { $no_srp=1; }
237 elsif (/^no-sctp$/) { $no_sctp=1; }
221 } 238 }
222 239
223 240
@@ -254,8 +271,10 @@ $max_crypto = $max_num;
254my $ssl="ssl/ssl.h"; 271my $ssl="ssl/ssl.h";
255$ssl.=" ssl/kssl.h"; 272$ssl.=" ssl/kssl.h";
256$ssl.=" ssl/tls1.h"; 273$ssl.=" ssl/tls1.h";
274$ssl.=" ssl/srtp.h";
257 275
258my $crypto ="crypto/crypto.h"; 276my $crypto ="crypto/crypto.h";
277$crypto.=" crypto/cryptlib.h";
259$crypto.=" crypto/o_dir.h"; 278$crypto.=" crypto/o_dir.h";
260$crypto.=" crypto/o_str.h"; 279$crypto.=" crypto/o_str.h";
261$crypto.=" crypto/o_time.h"; 280$crypto.=" crypto/o_time.h";
@@ -285,6 +304,7 @@ $crypto.=" crypto/ec/ec.h" ; # unless $no_ec;
285$crypto.=" crypto/ecdsa/ecdsa.h" ; # unless $no_ecdsa; 304$crypto.=" crypto/ecdsa/ecdsa.h" ; # unless $no_ecdsa;
286$crypto.=" crypto/ecdh/ecdh.h" ; # unless $no_ecdh; 305$crypto.=" crypto/ecdh/ecdh.h" ; # unless $no_ecdh;
287$crypto.=" crypto/hmac/hmac.h" ; # unless $no_hmac; 306$crypto.=" crypto/hmac/hmac.h" ; # unless $no_hmac;
307$crypto.=" crypto/cmac/cmac.h" ; # unless $no_hmac;
288 308
289$crypto.=" crypto/engine/engine.h"; # unless $no_engine; 309$crypto.=" crypto/engine/engine.h"; # unless $no_engine;
290$crypto.=" crypto/stack/stack.h" ; # unless $no_stack; 310$crypto.=" crypto/stack/stack.h" ; # unless $no_stack;
@@ -319,6 +339,7 @@ $crypto.=" crypto/pqueue/pqueue.h";
319$crypto.=" crypto/cms/cms.h"; 339$crypto.=" crypto/cms/cms.h";
320$crypto.=" crypto/jpake/jpake.h"; 340$crypto.=" crypto/jpake/jpake.h";
321$crypto.=" crypto/modes/modes.h"; 341$crypto.=" crypto/modes/modes.h";
342$crypto.=" crypto/srp/srp.h";
322 343
323my $symhacks="crypto/symhacks.h"; 344my $symhacks="crypto/symhacks.h";
324 345
@@ -1126,6 +1147,9 @@ sub is_valid
1126 if ($keyword eq "EXPORT_VAR_AS_FUNCTION" && ($VMSVAX || $W32 || $W16)) { 1147 if ($keyword eq "EXPORT_VAR_AS_FUNCTION" && ($VMSVAX || $W32 || $W16)) {
1127 return 1; 1148 return 1;
1128 } 1149 }
1150 if ($keyword eq "OPENSSL_FIPS" && $fips) {
1151 return 1;
1152 }
1129 if ($keyword eq "ZLIB" && $zlib) { return 1; } 1153 if ($keyword eq "ZLIB" && $zlib) { return 1; }
1130 return 0; 1154 return 0;
1131 } else { 1155 } else {
@@ -1172,9 +1196,15 @@ sub is_valid
1172 if ($keyword eq "TLSEXT" && $no_tlsext) { return 0; } 1196 if ($keyword eq "TLSEXT" && $no_tlsext) { return 0; }
1173 if ($keyword eq "PSK" && $no_psk) { return 0; } 1197 if ($keyword eq "PSK" && $no_psk) { return 0; }
1174 if ($keyword eq "CMS" && $no_cms) { return 0; } 1198 if ($keyword eq "CMS" && $no_cms) { return 0; }
1199 if ($keyword eq "EC2M" && $no_ec2m) { return 0; }
1200 if ($keyword eq "NEXTPROTONEG" && $no_nextprotoneg) { return 0; }
1201 if ($keyword eq "EC_NISTP_64_GCC_128" && $no_nistp_gcc)
1202 { return 0; }
1175 if ($keyword eq "SSL2" && $no_ssl2) { return 0; } 1203 if ($keyword eq "SSL2" && $no_ssl2) { return 0; }
1176 if ($keyword eq "CAPIENG" && $no_capieng) { return 0; } 1204 if ($keyword eq "CAPIENG" && $no_capieng) { return 0; }
1177 if ($keyword eq "JPAKE" && $no_jpake) { return 0; } 1205 if ($keyword eq "JPAKE" && $no_jpake) { return 0; }
1206 if ($keyword eq "SRP" && $no_srp) { return 0; }
1207 if ($keyword eq "SCTP" && $no_sctp) { return 0; }
1178 if ($keyword eq "DEPRECATED" && $no_deprecated) { return 0; } 1208 if ($keyword eq "DEPRECATED" && $no_deprecated) { return 0; }
1179 1209
1180 # Nothing recognise as true 1210 # Nothing recognise as true
diff --git a/src/lib/libcrypto/util/mkfiles.pl b/src/lib/libcrypto/util/mkfiles.pl
index 6d15831450..7d9a9d5e5c 100644
--- a/src/lib/libcrypto/util/mkfiles.pl
+++ b/src/lib/libcrypto/util/mkfiles.pl
@@ -15,6 +15,7 @@ my @dirs = (
15"crypto/sha", 15"crypto/sha",
16"crypto/mdc2", 16"crypto/mdc2",
17"crypto/hmac", 17"crypto/hmac",
18"crypto/cmac",
18"crypto/ripemd", 19"crypto/ripemd",
19"crypto/des", 20"crypto/des",
20"crypto/rc2", 21"crypto/rc2",
@@ -62,6 +63,7 @@ my @dirs = (
62"crypto/pqueue", 63"crypto/pqueue",
63"crypto/whrlpool", 64"crypto/whrlpool",
64"crypto/ts", 65"crypto/ts",
66"crypto/srp",
65"ssl", 67"ssl",
66"apps", 68"apps",
67"engines", 69"engines",
diff --git a/src/lib/libcrypto/util/pl/VC-32.pl b/src/lib/libcrypto/util/pl/VC-32.pl
index 5f25fc41bf..c503bd52b9 100644
--- a/src/lib/libcrypto/util/pl/VC-32.pl
+++ b/src/lib/libcrypto/util/pl/VC-32.pl
@@ -6,6 +6,16 @@
6$ssl= "ssleay32"; 6$ssl= "ssleay32";
7$crypto="libeay32"; 7$crypto="libeay32";
8 8
9if ($fips && !$shlib)
10 {
11 $crypto="libeayfips32";
12 $crypto_compat = "libeaycompat32.lib";
13 }
14else
15 {
16 $crypto="libeay32";
17 }
18
9$o='\\'; 19$o='\\';
10$cp='$(PERL) util/copy.pl'; 20$cp='$(PERL) util/copy.pl';
11$mkdir='$(PERL) util/mkdir-p.pl'; 21$mkdir='$(PERL) util/mkdir-p.pl';
@@ -33,7 +43,7 @@ if ($FLAVOR =~ /WIN64/)
33 # considered safe to ignore. 43 # considered safe to ignore.
34 # 44 #
35 $base_cflags= " $mf_cflag"; 45 $base_cflags= " $mf_cflag";
36 my $f = $shlib?' /MD':' /MT'; 46 my $f = $shlib || $fips ?' /MD':' /MT';
37 $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib 47 $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib
38 $opt_cflags=$f.' /Ox'; 48 $opt_cflags=$f.' /Ox';
39 $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG'; 49 $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG';
@@ -114,7 +124,7 @@ elsif ($FLAVOR =~ /CE/)
114else # Win32 124else # Win32
115 { 125 {
116 $base_cflags= " $mf_cflag"; 126 $base_cflags= " $mf_cflag";
117 my $f = $shlib?' /MD':' /MT'; 127 my $f = $shlib || $fips ?' /MD':' /MT';
118 $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib 128 $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib
119 $opt_cflags=$f.' /Ox /O2 /Ob2'; 129 $opt_cflags=$f.' /Ox /O2 /Ob2';
120 $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG'; 130 $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG';
@@ -266,10 +276,19 @@ elsif ($shlib && $FLAVOR =~ /CE/)
266 276
267sub do_lib_rule 277sub do_lib_rule
268 { 278 {
269 local($objs,$target,$name,$shlib)=@_; 279 my($objs,$target,$name,$shlib,$ign,$base_addr) = @_;
270 local($ret); 280 local($ret);
271 281
272 $taget =~ s/\//$o/g if $o ne '/'; 282 $taget =~ s/\//$o/g if $o ne '/';
283 my $base_arg;
284 if ($base_addr ne "")
285 {
286 $base_arg= " /base:$base_addr";
287 }
288 else
289 {
290 $base_arg = "";
291 }
273 if ($name ne "") 292 if ($name ne "")
274 { 293 {
275 $name =~ tr/a-z/A-Z/; 294 $name =~ tr/a-z/A-Z/;
@@ -277,17 +296,37 @@ sub do_lib_rule
277 } 296 }
278 297
279# $target="\$(LIB_D)$o$target"; 298# $target="\$(LIB_D)$o$target";
280 $ret.="$target: $objs\n"; 299# $ret.="$target: $objs\n";
281 if (!$shlib) 300 if (!$shlib)
282 { 301 {
283# $ret.="\t\$(RM) \$(O_$Name)\n"; 302# $ret.="\t\$(RM) \$(O_$Name)\n";
303 $ret.="$target: $objs\n";
284 $ret.="\t\$(MKLIB) $lfile$target @<<\n $objs\n<<\n"; 304 $ret.="\t\$(MKLIB) $lfile$target @<<\n $objs\n<<\n";
285 } 305 }
286 else 306 else
287 { 307 {
288 local($ex)=($target =~ /O_CRYPTO/)?'':' $(L_CRYPTO)'; 308 local($ex)=($target =~ /O_CRYPTO/)?'':' $(L_CRYPTO)';
289 $ex.=" $zlib_lib" if $zlib_opt == 1 && $target =~ /O_CRYPTO/; 309 $ex.=" $zlib_lib" if $zlib_opt == 1 && $target =~ /O_CRYPTO/;
290 $ret.="\t\$(LINK) \$(MLFLAGS) $efile$target $name @<<\n \$(SHLIB_EX_OBJ) $objs $ex \$(EX_LIBS)\n<<\n"; 310
311 if ($fips && $target =~ /O_CRYPTO/)
312 {
313 $ret.="$target: $objs \$(PREMAIN_DSO_EXE)";
314 $ret.="\n\tSET FIPS_LINK=\$(LINK)\n";
315 $ret.="\tSET FIPS_CC=\$(CC)\n";
316 $ret.="\tSET FIPS_CC_ARGS=/Fo\$(OBJ_D)${o}fips_premain.obj \$(SHLIB_CFLAGS) -c\n";
317 $ret.="\tSET PREMAIN_DSO_EXE=\$(PREMAIN_DSO_EXE)\n";
318 $ret.="\tSET FIPS_SHA1_EXE=\$(FIPS_SHA1_EXE)\n";
319 $ret.="\tSET FIPS_TARGET=$target\n";
320 $ret.="\tSET FIPSLIB_D=\$(FIPSLIB_D)\n";
321 $ret.="\t\$(FIPSLINK) \$(MLFLAGS) /map $base_arg $efile$target ";
322 $ret.="$name @<<\n \$(SHLIB_EX_OBJ) $objs \$(EX_LIBS) ";
323 $ret.="\$(OBJ_D)${o}fips_premain.obj $ex\n<<\n";
324 }
325 else
326 {
327 $ret.="$target: $objs";
328 $ret.="\n\t\$(LINK) \$(MLFLAGS) $efile$target $name @<<\n \$(SHLIB_EX_OBJ) $objs $ex \$(EX_LIBS)\n<<\n";
329 }
291 $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;2\n\n"; 330 $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;2\n\n";
292 } 331 }
293 $ret.="\n"; 332 $ret.="\n";
@@ -296,15 +335,35 @@ sub do_lib_rule
296 335
297sub do_link_rule 336sub do_link_rule
298 { 337 {
299 local($target,$files,$dep_libs,$libs)=@_; 338 my($target,$files,$dep_libs,$libs,$standalone)=@_;
300 local($ret,$_); 339 local($ret,$_);
301
302 $file =~ s/\//$o/g if $o ne '/'; 340 $file =~ s/\//$o/g if $o ne '/';
303 $n=&bname($targer); 341 $n=&bname($targer);
304 $ret.="$target: $files $dep_libs\n"; 342 $ret.="$target: $files $dep_libs\n";
305 $ret.="\t\$(LINK) \$(LFLAGS) $efile$target @<<\n"; 343 if ($standalone == 1)
306 $ret.=" \$(APP_EX_OBJ) $files $libs\n<<\n"; 344 {
307 $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;1\n\n"; 345 $ret.=" \$(LINK) \$(LFLAGS) $efile$target @<<\n\t";
346 $ret.= "\$(EX_LIBS) " if ($files =~ /O_FIPSCANISTER/ && !$fipscanisterbuild);
347 $ret.="$files $libs\n<<\n";
348 }
349 elsif ($standalone == 2)
350 {
351 $ret.="\tSET FIPS_LINK=\$(LINK)\n";
352 $ret.="\tSET FIPS_CC=\$(CC)\n";
353 $ret.="\tSET FIPS_CC_ARGS=/Fo\$(OBJ_D)${o}fips_premain.obj \$(SHLIB_CFLAGS) -c\n";
354 $ret.="\tSET PREMAIN_DSO_EXE=\n";
355 $ret.="\tSET FIPS_TARGET=$target\n";
356 $ret.="\tSET FIPS_SHA1_EXE=\$(FIPS_SHA1_EXE)\n";
357 $ret.="\tSET FIPSLIB_D=\$(FIPSLIB_D)\n";
358 $ret.="\t\$(FIPSLINK) \$(LFLAGS) /map $efile$target @<<\n";
359 $ret.="\t\$(APP_EX_OBJ) $files \$(OBJ_D)${o}fips_premain.obj $libs\n<<\n";
360 }
361 else
362 {
363 $ret.="\t\$(LINK) \$(LFLAGS) $efile$target @<<\n";
364 $ret.="\t\$(APP_EX_OBJ) $files $libs\n<<\n";
365 }
366 $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;1\n\n";
308 return($ret); 367 return($ret);
309 } 368 }
310 369
diff --git a/src/lib/libcrypto/util/ssleay.num b/src/lib/libcrypto/util/ssleay.num
index 15a58e7b13..37655bc40a 100644
--- a/src/lib/libcrypto/util/ssleay.num
+++ b/src/lib/libcrypto/util/ssleay.num
@@ -259,3 +259,64 @@ SSL_set_session_secret_cb 307 EXIST::FUNCTION:
259SSL_set_session_ticket_ext_cb 308 EXIST::FUNCTION: 259SSL_set_session_ticket_ext_cb 308 EXIST::FUNCTION:
260SSL_set1_param 309 EXIST::FUNCTION: 260SSL_set1_param 309 EXIST::FUNCTION:
261SSL_CTX_set1_param 310 EXIST::FUNCTION: 261SSL_CTX_set1_param 310 EXIST::FUNCTION:
262SSL_tls1_key_exporter 311 NOEXIST::FUNCTION:
263SSL_renegotiate_abbreviated 312 EXIST::FUNCTION:
264TLSv1_1_method 313 EXIST::FUNCTION:
265TLSv1_1_client_method 314 EXIST::FUNCTION:
266TLSv1_1_server_method 315 EXIST::FUNCTION:
267SSL_CTX_set_srp_client_pwd_callback 316 EXIST:!VMS:FUNCTION:SRP
268SSL_CTX_set_srp_client_pwd_cb 316 EXIST:VMS:FUNCTION:SRP
269SSL_get_srp_g 317 EXIST::FUNCTION:SRP
270SSL_CTX_set_srp_username_callback 318 EXIST:!VMS:FUNCTION:SRP
271SSL_CTX_set_srp_un_cb 318 EXIST:VMS:FUNCTION:SRP
272SSL_get_srp_userinfo 319 EXIST::FUNCTION:SRP
273SSL_set_srp_server_param 320 EXIST::FUNCTION:SRP
274SSL_set_srp_server_param_pw 321 EXIST::FUNCTION:SRP
275SSL_get_srp_N 322 EXIST::FUNCTION:SRP
276SSL_get_srp_username 323 EXIST::FUNCTION:SRP
277SSL_CTX_set_srp_password 324 EXIST::FUNCTION:SRP
278SSL_CTX_set_srp_strength 325 EXIST::FUNCTION:SRP
279SSL_CTX_set_srp_verify_param_callback 326 EXIST:!VMS:FUNCTION:SRP
280SSL_CTX_set_srp_vfy_param_cb 326 EXIST:VMS:FUNCTION:SRP
281SSL_CTX_set_srp_miss_srp_un_cb 327 NOEXIST::FUNCTION:
282SSL_CTX_set_srp_missing_srp_username_callback 327 NOEXIST::FUNCTION:
283SSL_CTX_set_srp_cb_arg 328 EXIST::FUNCTION:SRP
284SSL_CTX_set_srp_username 329 EXIST::FUNCTION:SRP
285SSL_CTX_SRP_CTX_init 330 EXIST::FUNCTION:SRP
286SSL_SRP_CTX_init 331 EXIST::FUNCTION:SRP
287SRP_Calc_A_param 332 EXIST::FUNCTION:SRP
288SRP_generate_server_master_secret 333 EXIST:!VMS:FUNCTION:SRP
289SRP_gen_server_master_secret 333 EXIST:VMS:FUNCTION:SRP
290SSL_CTX_SRP_CTX_free 334 EXIST::FUNCTION:SRP
291SRP_generate_client_master_secret 335 EXIST:!VMS:FUNCTION:SRP
292SRP_gen_client_master_secret 335 EXIST:VMS:FUNCTION:SRP
293SSL_srp_server_param_with_username 336 EXIST:!VMS:FUNCTION:SRP
294SSL_srp_server_param_with_un 336 EXIST:VMS:FUNCTION:SRP
295SRP_have_to_put_srp_username 337 NOEXIST::FUNCTION:
296SSL_SRP_CTX_free 338 EXIST::FUNCTION:SRP
297SSL_set_debug 339 EXIST::FUNCTION:
298SSL_SESSION_get0_peer 340 EXIST::FUNCTION:
299TLSv1_2_client_method 341 EXIST::FUNCTION:
300SSL_SESSION_set1_id_context 342 EXIST::FUNCTION:
301TLSv1_2_server_method 343 EXIST::FUNCTION:
302SSL_cache_hit 344 EXIST::FUNCTION:
303SSL_get0_kssl_ctx 345 EXIST::FUNCTION:KRB5
304SSL_set0_kssl_ctx 346 EXIST::FUNCTION:KRB5
305SSL_SESSION_get0_id 347 NOEXIST::FUNCTION:
306SSL_set_state 348 EXIST::FUNCTION:
307SSL_CIPHER_get_id 349 EXIST::FUNCTION:
308TLSv1_2_method 350 EXIST::FUNCTION:
309SSL_SESSION_get_id_len 351 NOEXIST::FUNCTION:
310kssl_ctx_get0_client_princ 352 EXIST::FUNCTION:KRB5
311SSL_export_keying_material 353 EXIST::FUNCTION:TLSEXT
312SSL_set_tlsext_use_srtp 354 EXIST::FUNCTION:
313SSL_CTX_set_next_protos_advertised_cb 355 EXIST:!VMS:FUNCTION:NEXTPROTONEG
314SSL_CTX_set_next_protos_adv_cb 355 EXIST:VMS:FUNCTION:NEXTPROTONEG
315SSL_get0_next_proto_negotiated 356 EXIST::FUNCTION:NEXTPROTONEG
316SSL_get_selected_srtp_profile 357 EXIST::FUNCTION:
317SSL_CTX_set_tlsext_use_srtp 358 EXIST::FUNCTION:
318SSL_select_next_proto 359 EXIST::FUNCTION:NEXTPROTONEG
319SSL_get_srtp_profiles 360 EXIST::FUNCTION:
320SSL_CTX_set_next_proto_select_cb 361 EXIST:!VMS:FUNCTION:NEXTPROTONEG
321SSL_CTX_set_next_proto_sel_cb 361 EXIST:VMS:FUNCTION:NEXTPROTONEG
322SSL_SESSION_get_compress_id 362 EXIST::FUNCTION: