aboutsummaryrefslogtreecommitdiffstats
path: root/secure
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2018-09-13 23:14:57 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2018-09-13 23:14:57 +0000
commit54967a4e950cb7b16a26428f9e3872aa8fe83d16 (patch)
tree8ebcd0ceb80e3719deabb8cbd455ab2685cf0c96 /secure
parent9b21da0ecb8941dc7c6bd721ccfe05cecd7d6432 (diff)
downloadsrc-54967a4e950cb7b16a26428f9e3872aa8fe83d16.tar.gz
src-54967a4e950cb7b16a26428f9e3872aa8fe83d16.zip
Regen manual pages.
Note the manual pages are not automatically generated for now.
Notes
Notes: svn path=/projects/openssl111/; revision=338671
Diffstat (limited to 'secure')
-rw-r--r--secure/lib/libcrypto/Makefile.man3394
-rw-r--r--secure/lib/libcrypto/man/ADMISSIONS.3276
-rw-r--r--secure/lib/libcrypto/man/ASN1_INTEGER_get_int64.3256
-rw-r--r--secure/lib/libcrypto/man/ASN1_ITEM_lookup.3167
-rw-r--r--secure/lib/libcrypto/man/ASN1_OBJECT_new.320
-rw-r--r--secure/lib/libcrypto/man/ASN1_STRING_TABLE_add.3191
-rw-r--r--secure/lib/libcrypto/man/ASN1_STRING_length.350
-rw-r--r--secure/lib/libcrypto/man/ASN1_STRING_new.319
-rw-r--r--secure/lib/libcrypto/man/ASN1_STRING_print_ex.342
-rw-r--r--secure/lib/libcrypto/man/ASN1_TIME_set.3194
-rw-r--r--secure/lib/libcrypto/man/ASN1_TYPE_get.3227
-rw-r--r--secure/lib/libcrypto/man/ASN1_generate_nconf.363
-rw-r--r--secure/lib/libcrypto/man/ASYNC_WAIT_CTX_new.3266
-rw-r--r--secure/lib/libcrypto/man/ASYNC_start_job.3449
-rw-r--r--secure/lib/libcrypto/man/BF_encrypt.3 (renamed from secure/lib/libcrypto/man/blowfish.3)41
-rw-r--r--secure/lib/libcrypto/man/BIO_ADDR.3249
-rw-r--r--secure/lib/libcrypto/man/BIO_ADDRINFO.3235
-rw-r--r--secure/lib/libcrypto/man/BIO_connect.3236
-rw-r--r--secure/lib/libcrypto/man/BIO_ctrl.340
-rw-r--r--secure/lib/libcrypto/man/BIO_f_base64.321
-rw-r--r--secure/lib/libcrypto/man/BIO_f_buffer.335
-rw-r--r--secure/lib/libcrypto/man/BIO_f_cipher.326
-rw-r--r--secure/lib/libcrypto/man/BIO_f_md.377
-rw-r--r--secure/lib/libcrypto/man/BIO_f_null.317
-rw-r--r--secure/lib/libcrypto/man/BIO_f_ssl.3239
-rw-r--r--secure/lib/libcrypto/man/BIO_find_type.384
-rw-r--r--secure/lib/libcrypto/man/BIO_get_data.3191
-rw-r--r--secure/lib/libcrypto/man/BIO_get_ex_new_index.3187
-rw-r--r--secure/lib/libcrypto/man/BIO_meth_new.3284
-rw-r--r--secure/lib/libcrypto/man/BIO_new.344
-rw-r--r--secure/lib/libcrypto/man/BIO_new_CMS.316
-rw-r--r--secure/lib/libcrypto/man/BIO_parse_hostserv.3208
-rw-r--r--secure/lib/libcrypto/man/BIO_printf.3178
-rw-r--r--secure/lib/libcrypto/man/BIO_push.328
-rw-r--r--secure/lib/libcrypto/man/BIO_read.352
-rw-r--r--secure/lib/libcrypto/man/BIO_s_accept.3129
-rw-r--r--secure/lib/libcrypto/man/BIO_s_bio.386
-rw-r--r--secure/lib/libcrypto/man/BIO_s_connect.3121
-rw-r--r--secure/lib/libcrypto/man/BIO_s_fd.352
-rw-r--r--secure/lib/libcrypto/man/BIO_s_file.359
-rw-r--r--secure/lib/libcrypto/man/BIO_s_mem.367
-rw-r--r--secure/lib/libcrypto/man/BIO_s_null.317
-rw-r--r--secure/lib/libcrypto/man/BIO_s_socket.335
-rw-r--r--secure/lib/libcrypto/man/BIO_set_callback.3259
-rw-r--r--secure/lib/libcrypto/man/BIO_should_retry.377
-rw-r--r--secure/lib/libcrypto/man/BN_BLINDING_new.388
-rw-r--r--secure/lib/libcrypto/man/BN_CTX_new.371
-rw-r--r--secure/lib/libcrypto/man/BN_CTX_start.315
-rw-r--r--secure/lib/libcrypto/man/BN_add.337
-rw-r--r--secure/lib/libcrypto/man/BN_add_word.323
-rw-r--r--secure/lib/libcrypto/man/BN_bn2bin.347
-rw-r--r--secure/lib/libcrypto/man/BN_cmp.320
-rw-r--r--secure/lib/libcrypto/man/BN_copy.339
-rw-r--r--secure/lib/libcrypto/man/BN_generate_prime.3120
-rw-r--r--secure/lib/libcrypto/man/BN_mod_inverse.319
-rw-r--r--secure/lib/libcrypto/man/BN_mod_mul_montgomery.350
-rw-r--r--secure/lib/libcrypto/man/BN_mod_mul_reciprocal.346
-rw-r--r--secure/lib/libcrypto/man/BN_new.335
-rw-r--r--secure/lib/libcrypto/man/BN_num_bytes.318
-rw-r--r--secure/lib/libcrypto/man/BN_rand.376
-rw-r--r--secure/lib/libcrypto/man/BN_security_bits.3177
-rw-r--r--secure/lib/libcrypto/man/BN_set_bit.322
-rw-r--r--secure/lib/libcrypto/man/BN_swap.318
-rw-r--r--secure/lib/libcrypto/man/BN_zero.334
-rw-r--r--secure/lib/libcrypto/man/BUF_MEM_new.3 (renamed from secure/lib/libcrypto/man/buffer.3)62
-rw-r--r--secure/lib/libcrypto/man/CMS_add0_cert.318
-rw-r--r--secure/lib/libcrypto/man/CMS_add1_recipient_cert.330
-rw-r--r--secure/lib/libcrypto/man/CMS_add1_signer.327
-rw-r--r--secure/lib/libcrypto/man/CMS_compress.315
-rw-r--r--secure/lib/libcrypto/man/CMS_decrypt.327
-rw-r--r--secure/lib/libcrypto/man/CMS_encrypt.320
-rw-r--r--secure/lib/libcrypto/man/CMS_final.321
-rw-r--r--secure/lib/libcrypto/man/CMS_get0_RecipientInfos.338
-rw-r--r--secure/lib/libcrypto/man/CMS_get0_SignerInfos.322
-rw-r--r--secure/lib/libcrypto/man/CMS_get0_type.322
-rw-r--r--secure/lib/libcrypto/man/CMS_get1_ReceiptRequest.333
-rw-r--r--secure/lib/libcrypto/man/CMS_sign.323
-rw-r--r--secure/lib/libcrypto/man/CMS_sign_receipt.323
-rw-r--r--secure/lib/libcrypto/man/CMS_uncompress.319
-rw-r--r--secure/lib/libcrypto/man/CMS_verify.326
-rw-r--r--secure/lib/libcrypto/man/CMS_verify_receipt.323
-rw-r--r--secure/lib/libcrypto/man/CONF_modules_free.344
-rw-r--r--secure/lib/libcrypto/man/CONF_modules_load_file.385
-rw-r--r--secure/lib/libcrypto/man/CRYPTO_THREAD_run_once.3279
-rw-r--r--secure/lib/libcrypto/man/CRYPTO_get_ex_new_index.3294
-rw-r--r--secure/lib/libcrypto/man/CTLOG_STORE_get0_log_by_id.3 (renamed from secure/lib/libssl/man/SSL_get_peer_cert_chain.3)55
-rw-r--r--secure/lib/libcrypto/man/CTLOG_STORE_new.3205
-rw-r--r--secure/lib/libcrypto/man/CTLOG_new.3197
-rw-r--r--secure/lib/libcrypto/man/CT_POLICY_EVAL_CTX_new.3225
-rw-r--r--secure/lib/libcrypto/man/DEFINE_STACK_OF.3400
-rw-r--r--secure/lib/libcrypto/man/DES_random_key.3 (renamed from secure/lib/libcrypto/man/des.3)242
-rw-r--r--secure/lib/libcrypto/man/DH_generate_key.318
-rw-r--r--secure/lib/libcrypto/man/DH_generate_parameters.3120
-rw-r--r--secure/lib/libcrypto/man/DH_get0_pqg.3250
-rw-r--r--secure/lib/libcrypto/man/DH_get_1024_160.3187
-rw-r--r--secure/lib/libcrypto/man/DH_get_ex_new_index.3165
-rw-r--r--secure/lib/libcrypto/man/DH_meth_new.3290
-rw-r--r--secure/lib/libcrypto/man/DH_new.318
-rw-r--r--secure/lib/libcrypto/man/DH_new_by_nid.3168
-rw-r--r--secure/lib/libcrypto/man/DH_set_method.380
-rw-r--r--secure/lib/libcrypto/man/DH_size.346
-rw-r--r--secure/lib/libcrypto/man/DSA_SIG_new.337
-rw-r--r--secure/lib/libcrypto/man/DSA_do_sign.323
-rw-r--r--secure/lib/libcrypto/man/DSA_dup_DH.323
-rw-r--r--secure/lib/libcrypto/man/DSA_generate_key.323
-rw-r--r--secure/lib/libcrypto/man/DSA_generate_parameters.383
-rw-r--r--secure/lib/libcrypto/man/DSA_get0_pqg.3235
-rw-r--r--secure/lib/libcrypto/man/DSA_get_ex_new_index.3165
-rw-r--r--secure/lib/libcrypto/man/DSA_meth_new.3338
-rw-r--r--secure/lib/libcrypto/man/DSA_new.318
-rw-r--r--secure/lib/libcrypto/man/DSA_set_method.394
-rw-r--r--secure/lib/libcrypto/man/DSA_sign.344
-rw-r--r--secure/lib/libcrypto/man/DSA_size.341
-rw-r--r--secure/lib/libcrypto/man/DTLS_get_data_mtu.3164
-rw-r--r--secure/lib/libcrypto/man/DTLS_set_timer_cb.3166
-rw-r--r--secure/lib/libcrypto/man/DTLSv1_listen.3258
-rw-r--r--secure/lib/libcrypto/man/ECDSA_SIG_new.3350
-rw-r--r--secure/lib/libcrypto/man/ECPKParameters_print.3 (renamed from secure/lib/libssl/man/SSL_get_current_cipher.3)49
-rw-r--r--secure/lib/libcrypto/man/EC_GFp_simple_method.316
-rw-r--r--secure/lib/libcrypto/man/EC_GROUP_copy.363
-rw-r--r--secure/lib/libcrypto/man/EC_GROUP_new.377
-rw-r--r--secure/lib/libcrypto/man/EC_KEY_get_enc_flags.3 (renamed from secure/lib/libcrypto/man/d2i_ECPrivateKey.3)46
-rw-r--r--secure/lib/libcrypto/man/EC_KEY_new.3156
-rw-r--r--secure/lib/libcrypto/man/EC_POINT_add.339
-rw-r--r--secure/lib/libcrypto/man/EC_POINT_new.3225
-rw-r--r--secure/lib/libcrypto/man/ENGINE_add.3 (renamed from secure/lib/libcrypto/man/engine.3)279
-rw-r--r--secure/lib/libcrypto/man/ERR_GET_LIB.327
-rw-r--r--secure/lib/libcrypto/man/ERR_clear_error.317
-rw-r--r--secure/lib/libcrypto/man/ERR_error_string.333
-rw-r--r--secure/lib/libcrypto/man/ERR_get_error.333
-rw-r--r--secure/lib/libcrypto/man/ERR_load_crypto_strings.336
-rw-r--r--secure/lib/libcrypto/man/ERR_load_strings.333
-rw-r--r--secure/lib/libcrypto/man/ERR_print_errors.329
-rw-r--r--secure/lib/libcrypto/man/ERR_put_error.351
-rw-r--r--secure/lib/libcrypto/man/ERR_remove_state.359
-rw-r--r--secure/lib/libcrypto/man/ERR_set_mark.318
-rw-r--r--secure/lib/libcrypto/man/EVP_BytesToKey.329
-rw-r--r--secure/lib/libcrypto/man/EVP_CIPHER_CTX_get_cipher_data.3 (renamed from secure/lib/libcrypto/man/CRYPTO_set_ex_data.3)63
-rw-r--r--secure/lib/libcrypto/man/EVP_CIPHER_meth_new.3339
-rw-r--r--secure/lib/libcrypto/man/EVP_DigestInit.3434
-rw-r--r--secure/lib/libcrypto/man/EVP_DigestSignInit.3105
-rw-r--r--secure/lib/libcrypto/man/EVP_DigestVerifyInit.371
-rw-r--r--secure/lib/libcrypto/man/EVP_EncodeInit.354
-rw-r--r--secure/lib/libcrypto/man/EVP_EncryptInit.3615
-rw-r--r--secure/lib/libcrypto/man/EVP_MD_meth_new.3288
-rw-r--r--secure/lib/libcrypto/man/EVP_OpenInit.327
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_ASN1_METHOD.3549
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_CTX_ctrl.3119
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_CTX_new.317
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_CTX_set1_pbe_pass.3179
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_CTX_set_hkdf_md.3284
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_CTX_set_rsa_pss_keygen_md.3218
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_CTX_set_scrypt_N.3207
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_CTX_set_tls1_prf_md.3236
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_asn1_get_count.3203
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_cmp.314
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_decrypt.339
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_derive.333
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_encrypt.340
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_get_default_digest_nid.3 (renamed from secure/lib/libcrypto/man/EVP_PKEY_get_default_digest.3)15
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_keygen.396
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_meth_get_count.3178
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_meth_new.395
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_new.3111
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_print_private.323
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_set1_RSA.3107
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_sign.332
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_verify.337
-rw-r--r--secure/lib/libcrypto/man/EVP_PKEY_verify_recover.342
-rw-r--r--secure/lib/libcrypto/man/EVP_SealInit.324
-rw-r--r--secure/lib/libcrypto/man/EVP_SignInit.352
-rw-r--r--secure/lib/libcrypto/man/EVP_VerifyInit.344
-rw-r--r--secure/lib/libcrypto/man/EVP_aes.3212
-rw-r--r--secure/lib/libcrypto/man/EVP_aria.3178
-rw-r--r--secure/lib/libcrypto/man/EVP_bf_cbc.3174
-rw-r--r--secure/lib/libcrypto/man/EVP_blake2b512.3182
-rw-r--r--secure/lib/libcrypto/man/EVP_camellia.3173
-rw-r--r--secure/lib/libcrypto/man/EVP_cast5_cbc.3174
-rw-r--r--secure/lib/libcrypto/man/EVP_chacha20.3176
-rw-r--r--secure/lib/libcrypto/man/EVP_des.3183
-rw-r--r--secure/lib/libcrypto/man/EVP_desx_cbc.3171
-rw-r--r--secure/lib/libcrypto/man/EVP_idea_cbc.3172
-rw-r--r--secure/lib/libcrypto/man/EVP_md2.3172
-rw-r--r--secure/lib/libcrypto/man/EVP_md4.3172
-rw-r--r--secure/lib/libcrypto/man/EVP_md5.3181
-rw-r--r--secure/lib/libcrypto/man/EVP_mdc2.3173
-rw-r--r--secure/lib/libcrypto/man/EVP_rc2_cbc.3184
-rw-r--r--secure/lib/libcrypto/man/EVP_rc4.3185
-rw-r--r--secure/lib/libcrypto/man/EVP_rc5_32_12_16_cbc.3178
-rw-r--r--secure/lib/libcrypto/man/EVP_ripemd160.3172
-rw-r--r--secure/lib/libcrypto/man/EVP_seed_cbc.3174
-rw-r--r--secure/lib/libcrypto/man/EVP_sha1.3173
-rw-r--r--secure/lib/libcrypto/man/EVP_sha224.3183
-rw-r--r--secure/lib/libcrypto/man/EVP_sha3_224.3188
-rw-r--r--secure/lib/libcrypto/man/EVP_sm3.3173
-rw-r--r--secure/lib/libcrypto/man/EVP_sm4_cbc.3177
-rw-r--r--secure/lib/libcrypto/man/EVP_whirlpool.3173
-rw-r--r--secure/lib/libcrypto/man/HMAC.3 (renamed from secure/lib/libcrypto/man/hmac.3)117
-rw-r--r--secure/lib/libcrypto/man/MD5.3 (renamed from secure/lib/libcrypto/man/md5.3)41
-rw-r--r--secure/lib/libcrypto/man/MDC2_Init.3 (renamed from secure/lib/libcrypto/man/mdc2.3)24
-rw-r--r--secure/lib/libcrypto/man/OBJ_nid2obj.386
-rw-r--r--secure/lib/libcrypto/man/OCSP_REQUEST_new.3244
-rw-r--r--secure/lib/libcrypto/man/OCSP_cert_to_id.3214
-rw-r--r--secure/lib/libcrypto/man/OCSP_request_add1_nonce.3211
-rw-r--r--secure/lib/libcrypto/man/OCSP_resp_find_status.3315
-rw-r--r--secure/lib/libcrypto/man/OCSP_response_status.3240
-rw-r--r--secure/lib/libcrypto/man/OCSP_sendreq_new.3249
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_Applink.318
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_LH_COMPFUNC.3365
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_LH_stats.3 (renamed from secure/lib/libcrypto/man/lh_stats.3)49
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_VERSION_NUMBER.366
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_config.338
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_fork_prepare.3187
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_ia32cap.3141
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_init_crypto.3355
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_init_ssl.3205
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_instrument_bus.326
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_load_builtin_modules.329
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_malloc.3369
-rw-r--r--secure/lib/libcrypto/man/OPENSSL_secure_malloc.3256
-rw-r--r--secure/lib/libcrypto/man/OSSL_STORE_INFO.3310
-rw-r--r--secure/lib/libcrypto/man/OSSL_STORE_LOADER.3358
-rw-r--r--secure/lib/libcrypto/man/OSSL_STORE_SEARCH.3296
-rw-r--r--secure/lib/libcrypto/man/OSSL_STORE_expect.3202
-rw-r--r--secure/lib/libcrypto/man/OSSL_STORE_open.3277
-rw-r--r--secure/lib/libcrypto/man/OpenSSL_add_all_algorithms.358
-rw-r--r--secure/lib/libcrypto/man/PEM_bytes_read_bio.3212
-rw-r--r--secure/lib/libcrypto/man/PEM_read.3259
-rw-r--r--secure/lib/libcrypto/man/PEM_read_CMS.3195
-rw-r--r--secure/lib/libcrypto/man/PEM_read_bio_PrivateKey.3 (renamed from secure/lib/libcrypto/man/pem.3)333
-rw-r--r--secure/lib/libcrypto/man/PEM_read_bio_ex.3195
-rw-r--r--secure/lib/libcrypto/man/PEM_write_bio_CMS_stream.320
-rw-r--r--secure/lib/libcrypto/man/PEM_write_bio_PKCS7_stream.317
-rw-r--r--secure/lib/libcrypto/man/PKCS12_create.341
-rw-r--r--secure/lib/libcrypto/man/PKCS12_newpass.3242
-rw-r--r--secure/lib/libcrypto/man/PKCS12_parse.327
-rw-r--r--secure/lib/libcrypto/man/PKCS5_PBKDF2_HMAC.3204
-rw-r--r--secure/lib/libcrypto/man/PKCS7_decrypt.318
-rw-r--r--secure/lib/libcrypto/man/PKCS7_encrypt.320
-rw-r--r--secure/lib/libcrypto/man/PKCS7_sign.330
-rw-r--r--secure/lib/libcrypto/man/PKCS7_sign_add_signer.325
-rw-r--r--secure/lib/libcrypto/man/PKCS7_verify.331
-rw-r--r--secure/lib/libcrypto/man/RAND_DRBG_generate.3210
-rw-r--r--secure/lib/libcrypto/man/RAND_DRBG_get0_master.3200
-rw-r--r--secure/lib/libcrypto/man/RAND_DRBG_new.3243
-rw-r--r--secure/lib/libcrypto/man/RAND_DRBG_reseed.3230
-rw-r--r--secure/lib/libcrypto/man/RAND_DRBG_set_callbacks.3264
-rw-r--r--secure/lib/libcrypto/man/RAND_DRBG_set_ex_data.3189
-rw-r--r--secure/lib/libcrypto/man/RAND_add.3120
-rw-r--r--secure/lib/libcrypto/man/RAND_bytes.375
-rw-r--r--secure/lib/libcrypto/man/RAND_cleanup.334
-rw-r--r--secure/lib/libcrypto/man/RAND_egd.392
-rw-r--r--secure/lib/libcrypto/man/RAND_load_file.373
-rw-r--r--secure/lib/libcrypto/man/RAND_set_rand_method.385
-rw-r--r--secure/lib/libcrypto/man/RC4_set_key.3 (renamed from secure/lib/libcrypto/man/rc4.3)30
-rw-r--r--secure/lib/libcrypto/man/RIPEMD160_Init.3 (renamed from secure/lib/libcrypto/man/ripemd.3)37
-rw-r--r--secure/lib/libcrypto/man/RSA_blinding_on.318
-rw-r--r--secure/lib/libcrypto/man/RSA_check_key.352
-rw-r--r--secure/lib/libcrypto/man/RSA_generate_key.383
-rw-r--r--secure/lib/libcrypto/man/RSA_get0_key.3293
-rw-r--r--secure/lib/libcrypto/man/RSA_get_ex_new_index.3247
-rw-r--r--secure/lib/libcrypto/man/RSA_meth_new.3378
-rw-r--r--secure/lib/libcrypto/man/RSA_new.320
-rw-r--r--secure/lib/libcrypto/man/RSA_padding_add_PKCS1_type_1.348
-rw-r--r--secure/lib/libcrypto/man/RSA_print.323
-rw-r--r--secure/lib/libcrypto/man/RSA_private_encrypt.326
-rw-r--r--secure/lib/libcrypto/man/RSA_public_encrypt.326
-rw-r--r--secure/lib/libcrypto/man/RSA_set_method.3120
-rw-r--r--secure/lib/libcrypto/man/RSA_sign.342
-rw-r--r--secure/lib/libcrypto/man/RSA_sign_ASN1_OCTET_STRING.328
-rw-r--r--secure/lib/libcrypto/man/RSA_size.341
-rw-r--r--secure/lib/libcrypto/man/SCT_new.3302
-rw-r--r--secure/lib/libcrypto/man/SCT_print.3183
-rw-r--r--secure/lib/libcrypto/man/SCT_validate.3219
-rw-r--r--secure/lib/libcrypto/man/SHA256_Init.3 (renamed from secure/lib/libcrypto/man/sha.3)33
-rw-r--r--secure/lib/libcrypto/man/SMIME_read_CMS.323
-rw-r--r--secure/lib/libcrypto/man/SMIME_read_PKCS7.321
-rw-r--r--secure/lib/libcrypto/man/SMIME_write_CMS.319
-rw-r--r--secure/lib/libcrypto/man/SMIME_write_PKCS7.321
-rw-r--r--secure/lib/libcrypto/man/SSL_CIPHER_get_name.3318
-rw-r--r--secure/lib/libcrypto/man/SSL_COMP_add_compression_method.3 (renamed from secure/lib/libssl/man/SSL_COMP_add_compression_method.3)58
-rw-r--r--secure/lib/libcrypto/man/SSL_CONF_CTX_new.3 (renamed from secure/lib/libssl/man/SSL_CONF_CTX_new.3)13
-rw-r--r--secure/lib/libcrypto/man/SSL_CONF_CTX_set1_prefix.3 (renamed from secure/lib/libssl/man/SSL_CONF_CTX_set1_prefix.3)16
-rw-r--r--secure/lib/libcrypto/man/SSL_CONF_CTX_set_flags.3 (renamed from secure/lib/libssl/man/SSL_CONF_CTX_set_flags.3)20
-rw-r--r--secure/lib/libcrypto/man/SSL_CONF_CTX_set_ssl_ctx.3 (renamed from secure/lib/libssl/man/SSL_CONF_CTX_set_ssl_ctx.3)12
-rw-r--r--secure/lib/libcrypto/man/SSL_CONF_cmd.3774
-rw-r--r--secure/lib/libcrypto/man/SSL_CONF_cmd_argv.3 (renamed from secure/lib/libssl/man/SSL_CONF_cmd_argv.3)16
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_add1_chain_cert.3 (renamed from secure/lib/libssl/man/SSL_CTX_add1_chain_cert.3)24
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_add_extra_chain_cert.3 (renamed from secure/lib/libssl/man/SSL_CTX_add_extra_chain_cert.3)17
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_add_session.3 (renamed from secure/lib/libssl/man/SSL_CTX_add_session.3)37
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_config.3220
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_ctrl.3 (renamed from secure/lib/libssl/man/SSL_CTX_ctrl.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_dane_enable.3504
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_flush_sessions.3 (renamed from secure/lib/libssl/man/SSL_CTX_flush_sessions.3)22
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_free.3 (renamed from secure/lib/libssl/man/SSL_CTX_free.3)19
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_get0_param.3 (renamed from secure/lib/libssl/man/SSL_CTX_get0_param.3)15
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_get_verify_mode.3 (renamed from secure/lib/libssl/man/SSL_CTX_get_verify_mode.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_has_client_custom_ext.3 (renamed from secure/lib/libssl/man/SSL_set_bio.3)33
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_load_verify_locations.3 (renamed from secure/lib/libssl/man/SSL_CTX_load_verify_locations.3)50
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_new.3 (renamed from secure/lib/libssl/man/SSL_CTX_new.3)198
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_sess_number.3 (renamed from secure/lib/libssl/man/SSL_CTX_sess_number.3)18
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_sess_set_cache_size.3 (renamed from secure/lib/libssl/man/SSL_CTX_sess_set_cache_size.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_sess_set_get_cb.3 (renamed from secure/lib/libssl/man/SSL_CTX_sess_set_get_cb.3)59
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_sessions.3 (renamed from secure/lib/libssl/man/SSL_CTX_sessions.3)21
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set0_CA_list.3217
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set1_curves.3 (renamed from secure/lib/libssl/man/SSL_CTX_set1_curves.3)105
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set1_sigalgs.3245
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set1_verify_cert_store.3 (renamed from secure/lib/libssl/man/SSL_CTX_set1_verify_cert_store.3)20
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_alpn_select_cb.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_alpn_select_cb.3)90
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_cert_cb.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_cert_cb.3)32
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_cert_store.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_cert_store.3)34
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_cert_verify_callback.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_cert_verify_callback.3)40
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_cipher_list.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_cipher_list.3)77
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_client_CA_list.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_client_CA_list.3)24
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_client_cert_cb.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_client_cert_cb.3)29
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_client_hello_cb.3256
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_ct_validation_callback.3267
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_ctlog_list_file.3179
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_default_passwd_cb.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_default_passwd_cb.3)73
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_ex_data.3178
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_generate_session_id.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_generate_session_id.3)86
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_info_callback.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_info_callback.3)98
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_keylog_callback.3179
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_max_cert_list.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_max_cert_list.3)19
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_min_proto_version.3195
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_mode.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_mode.3)85
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_msg_callback.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_msg_callback.3)78
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_num_tickets.3192
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_options.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_options.3)266
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_psk_client_callback.3288
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_quiet_shutdown.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_quiet_shutdown.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_read_ahead.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_read_ahead.3)55
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_record_padding_callback.3215
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_security_level.3305
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_session_cache_mode.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_session_cache_mode.3)20
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_session_id_context.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_session_id_context.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_session_ticket_cb.3297
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_split_send_fragment.3299
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_ssl_version.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_ssl_version.3)17
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_stateless_cookie_generate_cb.3184
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_timeout.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_timeout.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_tlsext_servername_callback.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_tlsext_servername_callback.3)29
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_tlsext_status_cb.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_tlsext_status_cb.3)74
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_tlsext_ticket_key_cb.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_tlsext_ticket_key_cb.3)173
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_tlsext_use_srtp.3227
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_tmp_dh_callback.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_tmp_dh_callback.3)64
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_set_verify.3 (renamed from secure/lib/libssl/man/SSL_CTX_set_verify.3)248
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_use_certificate.3 (renamed from secure/lib/libssl/man/SSL_CTX_use_certificate.3)54
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_use_psk_identity_hint.3265
-rw-r--r--secure/lib/libcrypto/man/SSL_CTX_use_serverinfo.3211
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_free.3 (renamed from secure/lib/libssl/man/SSL_SESSION_free.3)39
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_get0_cipher.3183
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_get0_hostname.3197
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_get0_id_context.3181
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_get0_peer.3165
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_get_compress_id.3166
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_get_ex_data.3173
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_get_protocol_version.3 (renamed from secure/lib/libssl/man/SSL_CTX_use_serverinfo.3)64
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_get_time.3 (renamed from secure/lib/libssl/man/SSL_SESSION_get_time.3)18
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_has_ticket.3184
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_is_resumable.3170
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_print.3172
-rw-r--r--secure/lib/libcrypto/man/SSL_SESSION_set1_id.3175
-rw-r--r--secure/lib/libcrypto/man/SSL_accept.3 (renamed from secure/lib/libssl/man/SSL_accept.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_alert_type_string.3 (renamed from secure/lib/libssl/man/SSL_alert_type_string.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_alloc_buffers.3189
-rw-r--r--secure/lib/libcrypto/man/SSL_check_chain.3 (renamed from secure/lib/libssl/man/SSL_check_chain.3)20
-rw-r--r--secure/lib/libcrypto/man/SSL_clear.3 (renamed from secure/lib/libssl/man/SSL_clear.3)16
-rw-r--r--secure/lib/libcrypto/man/SSL_connect.3 (renamed from secure/lib/libssl/man/SSL_connect.3)29
-rw-r--r--secure/lib/libcrypto/man/SSL_do_handshake.3 (renamed from secure/lib/libssl/man/SSL_do_handshake.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_export_keying_material.3 (renamed from secure/lib/libssl/man/SSL_export_keying_material.3)40
-rw-r--r--secure/lib/libcrypto/man/SSL_extension_supported.3395
-rw-r--r--secure/lib/libcrypto/man/SSL_free.3 (renamed from secure/lib/libssl/man/SSL_free.3)15
-rw-r--r--secure/lib/libcrypto/man/SSL_get0_peer_scts.3172
-rw-r--r--secure/lib/libcrypto/man/SSL_get_SSL_CTX.3 (renamed from secure/lib/libssl/man/SSL_get_SSL_CTX.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_get_all_async_fds.3209
-rw-r--r--secure/lib/libcrypto/man/SSL_get_ciphers.3 (renamed from secure/lib/libssl/man/SSL_get_ciphers.3)76
-rw-r--r--secure/lib/libcrypto/man/SSL_get_client_CA_list.3 (renamed from secure/lib/libssl/man/SSL_get_client_CA_list.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_get_client_random.3225
-rw-r--r--secure/lib/libcrypto/man/SSL_get_current_cipher.3196
-rw-r--r--secure/lib/libcrypto/man/SSL_get_default_timeout.3 (renamed from secure/lib/libssl/man/SSL_get_default_timeout.3)16
-rw-r--r--secure/lib/libcrypto/man/SSL_get_error.3 (renamed from secure/lib/libssl/man/SSL_get_error.3)106
-rw-r--r--secure/lib/libcrypto/man/SSL_get_extms_support.3168
-rw-r--r--secure/lib/libcrypto/man/SSL_get_fd.3 (renamed from secure/lib/libssl/man/SSL_get_fd.3)16
-rw-r--r--secure/lib/libcrypto/man/SSL_get_peer_cert_chain.3197
-rw-r--r--secure/lib/libcrypto/man/SSL_get_peer_certificate.3 (renamed from secure/lib/libssl/man/SSL_get_peer_certificate.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_get_peer_signature_nid.3174
-rw-r--r--secure/lib/libcrypto/man/SSL_get_psk_identity.3 (renamed from secure/lib/libssl/man/SSL_get_psk_identity.3)12
-rw-r--r--secure/lib/libcrypto/man/SSL_get_rbio.3 (renamed from secure/lib/libssl/man/SSL_get_rbio.3)16
-rw-r--r--secure/lib/libcrypto/man/SSL_get_server_tmp_key.3 (renamed from secure/lib/libssl/man/SSL_pending.3)47
-rw-r--r--secure/lib/libcrypto/man/SSL_get_session.3 (renamed from secure/lib/libssl/man/SSL_get_session.3)45
-rw-r--r--secure/lib/libcrypto/man/SSL_get_shared_sigalgs.3215
-rw-r--r--secure/lib/libcrypto/man/SSL_get_verify_result.3 (renamed from secure/lib/libssl/man/SSL_get_verify_result.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_get_version.3 (renamed from secure/lib/libssl/man/SSL_get_version.3)66
-rw-r--r--secure/lib/libcrypto/man/SSL_in_init.3223
-rw-r--r--secure/lib/libcrypto/man/SSL_key_update.3232
-rw-r--r--secure/lib/libcrypto/man/SSL_library_init.3 (renamed from secure/lib/libssl/man/SSL_library_init.3)43
-rw-r--r--secure/lib/libcrypto/man/SSL_load_client_CA_file.3 (renamed from secure/lib/libssl/man/SSL_load_client_CA_file.3)20
-rw-r--r--secure/lib/libcrypto/man/SSL_new.3 (renamed from secure/lib/libssl/man/SSL_new.3)36
-rw-r--r--secure/lib/libcrypto/man/SSL_pending.3195
-rw-r--r--secure/lib/libcrypto/man/SSL_read.3271
-rw-r--r--secure/lib/libcrypto/man/SSL_read_early_data.3476
-rw-r--r--secure/lib/libcrypto/man/SSL_rstate_string.3 (renamed from secure/lib/libssl/man/SSL_rstate_string.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_session_reused.3 (renamed from secure/lib/libssl/man/SSL_session_reused.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_set1_host.3245
-rw-r--r--secure/lib/libcrypto/man/SSL_set_bio.3223
-rw-r--r--secure/lib/libcrypto/man/SSL_set_connect_state.3 (renamed from secure/lib/libssl/man/SSL_set_connect_state.3)34
-rw-r--r--secure/lib/libcrypto/man/SSL_set_fd.3 (renamed from secure/lib/libssl/man/SSL_set_fd.3)16
-rw-r--r--secure/lib/libcrypto/man/SSL_set_session.3 (renamed from secure/lib/libssl/man/SSL_set_session.3)20
-rw-r--r--secure/lib/libcrypto/man/SSL_set_shutdown.3 (renamed from secure/lib/libssl/man/SSL_set_shutdown.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_set_verify_result.3 (renamed from secure/lib/libssl/man/SSL_set_verify_result.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_shutdown.3 (renamed from secure/lib/libssl/man/SSL_shutdown.3)87
-rw-r--r--secure/lib/libcrypto/man/SSL_state_string.3 (renamed from secure/lib/libssl/man/SSL_state_string.3)14
-rw-r--r--secure/lib/libcrypto/man/SSL_want.3 (renamed from secure/lib/libssl/man/SSL_want.3)43
-rw-r--r--secure/lib/libcrypto/man/SSL_write.3 (renamed from secure/lib/libssl/man/SSL_write.3)112
-rw-r--r--secure/lib/libcrypto/man/UI_STRING.3270
-rw-r--r--secure/lib/libcrypto/man/UI_UTIL_read_pw.3198
-rw-r--r--secure/lib/libcrypto/man/UI_create_method.3316
-rw-r--r--secure/lib/libcrypto/man/UI_new.3 (renamed from secure/lib/libcrypto/man/ui.3)149
-rw-r--r--secure/lib/libcrypto/man/X509V3_get_d2i.3371
-rw-r--r--secure/lib/libcrypto/man/X509_ALGOR_dup.3189
-rw-r--r--secure/lib/libcrypto/man/X509_CRL_get0_by_serial.3238
-rw-r--r--secure/lib/libcrypto/man/X509_EXTENSION_set_object.3219
-rw-r--r--secure/lib/libcrypto/man/X509_LOOKUP_hash_dir.3260
-rw-r--r--secure/lib/libcrypto/man/X509_LOOKUP_meth_new.3299
-rw-r--r--secure/lib/libcrypto/man/X509_NAME_ENTRY_get_object.357
-rw-r--r--secure/lib/libcrypto/man/X509_NAME_add_entry_by_txt.347
-rw-r--r--secure/lib/libcrypto/man/X509_NAME_get0_der.3 (renamed from secure/lib/libcrypto/man/d2i_X509_SIG.3)34
-rw-r--r--secure/lib/libcrypto/man/X509_NAME_get_index_by_NID.362
-rw-r--r--secure/lib/libcrypto/man/X509_NAME_print_ex.346
-rw-r--r--secure/lib/libcrypto/man/X509_PUBKEY_new.3244
-rw-r--r--secure/lib/libcrypto/man/X509_SIG_get0.3 (renamed from secure/lib/libcrypto/man/d2i_X509_CRL.3)42
-rw-r--r--secure/lib/libcrypto/man/X509_STORE_CTX_get_error.360
-rw-r--r--secure/lib/libcrypto/man/X509_STORE_CTX_get_ex_new_index.3169
-rw-r--r--secure/lib/libcrypto/man/X509_STORE_CTX_new.398
-rw-r--r--secure/lib/libcrypto/man/X509_STORE_CTX_set_verify_cb.3193
-rw-r--r--secure/lib/libcrypto/man/X509_STORE_add_cert.3224
-rw-r--r--secure/lib/libcrypto/man/X509_STORE_get0_param.3182
-rw-r--r--secure/lib/libcrypto/man/X509_STORE_new.3184
-rw-r--r--secure/lib/libcrypto/man/X509_STORE_set_verify_cb_func.3219
-rw-r--r--secure/lib/libcrypto/man/X509_VERIFY_PARAM_set_flags.3214
-rw-r--r--secure/lib/libcrypto/man/X509_check_ca.3173
-rw-r--r--secure/lib/libcrypto/man/X509_check_host.331
-rw-r--r--secure/lib/libcrypto/man/X509_check_issued.3171
-rw-r--r--secure/lib/libcrypto/man/X509_check_private_key.314
-rw-r--r--secure/lib/libcrypto/man/X509_cmp_time.347
-rw-r--r--secure/lib/libcrypto/man/X509_digest.3190
-rw-r--r--secure/lib/libcrypto/man/X509_dup.3198
-rw-r--r--secure/lib/libcrypto/man/X509_get0_notBefore.3227
-rw-r--r--secure/lib/libcrypto/man/X509_get0_signature.3251
-rw-r--r--secure/lib/libcrypto/man/X509_get0_uids.3184
-rw-r--r--secure/lib/libcrypto/man/X509_get_extension_flags.3284
-rw-r--r--secure/lib/libcrypto/man/X509_get_pubkey.3211
-rw-r--r--secure/lib/libcrypto/man/X509_get_serialNumber.3 (renamed from secure/lib/libcrypto/man/x509.3)91
-rw-r--r--secure/lib/libcrypto/man/X509_get_subject_name.3210
-rw-r--r--secure/lib/libcrypto/man/X509_get_version.3207
-rw-r--r--secure/lib/libcrypto/man/X509_new.362
-rw-r--r--secure/lib/libcrypto/man/X509_sign.3223
-rw-r--r--secure/lib/libcrypto/man/X509_verify_cert.319
-rw-r--r--secure/lib/libcrypto/man/X509v3_get_ext_by_NID.3260
-rw-r--r--secure/lib/libcrypto/man/bio.3185
-rw-r--r--secure/lib/libcrypto/man/bn.3311
-rw-r--r--secure/lib/libcrypto/man/bn_internal.3365
-rw-r--r--secure/lib/libcrypto/man/crypto.3203
-rw-r--r--secure/lib/libcrypto/man/d2i_CMS_ContentInfo.3158
-rw-r--r--secure/lib/libcrypto/man/d2i_DHparams.325
-rw-r--r--secure/lib/libcrypto/man/d2i_DSAPublicKey.3211
-rw-r--r--secure/lib/libcrypto/man/d2i_ECPKParameters.3212
-rw-r--r--secure/lib/libcrypto/man/d2i_PKCS8PrivateKey_bio.3 (renamed from secure/lib/libcrypto/man/d2i_PKCS8PrivateKey.3)52
-rw-r--r--secure/lib/libcrypto/man/d2i_PrivateKey.332
-rw-r--r--secure/lib/libcrypto/man/d2i_RSAPublicKey.3195
-rw-r--r--secure/lib/libcrypto/man/d2i_SSL_SESSION.3178
-rw-r--r--secure/lib/libcrypto/man/d2i_X509.3306
-rw-r--r--secure/lib/libcrypto/man/d2i_X509_ALGOR.3159
-rw-r--r--secure/lib/libcrypto/man/d2i_X509_NAME.3160
-rw-r--r--secure/lib/libcrypto/man/d2i_X509_REQ.3165
-rw-r--r--secure/lib/libcrypto/man/dh.3210
-rw-r--r--secure/lib/libcrypto/man/dsa.3245
-rw-r--r--secure/lib/libcrypto/man/ec.3329
-rw-r--r--secure/lib/libcrypto/man/ecdsa.3347
-rw-r--r--secure/lib/libcrypto/man/err.3317
-rw-r--r--secure/lib/libcrypto/man/evp.3227
-rw-r--r--secure/lib/libcrypto/man/i2d_CMS_bio_stream.316
-rw-r--r--secure/lib/libcrypto/man/i2d_PKCS7_bio_stream.314
-rw-r--r--secure/lib/libcrypto/man/i2d_re_X509_tbs.3214
-rw-r--r--secure/lib/libcrypto/man/lhash.3435
-rw-r--r--secure/lib/libcrypto/man/o2i_SCT_LIST.3175
-rw-r--r--secure/lib/libcrypto/man/rand.3286
-rw-r--r--secure/lib/libcrypto/man/rsa.3253
-rw-r--r--secure/lib/libcrypto/man/threads.3330
-rw-r--r--secure/lib/libcrypto/man/ui_compat.3185
-rw-r--r--secure/lib/libssl/Makefile.man324
-rw-r--r--secure/lib/libssl/man/SSL_CIPHER_get_name.3251
-rw-r--r--secure/lib/libssl/man/SSL_CONF_cmd.3533
-rw-r--r--secure/lib/libssl/man/SSL_CTX_set_custom_cli_ext.3260
-rw-r--r--secure/lib/libssl/man/SSL_CTX_set_psk_client_callback.3180
-rw-r--r--secure/lib/libssl/man/SSL_CTX_set_tmp_rsa_callback.3288
-rw-r--r--secure/lib/libssl/man/SSL_CTX_use_psk_identity_hint.3197
-rw-r--r--secure/lib/libssl/man/SSL_SESSION_get_ex_new_index.3190
-rw-r--r--secure/lib/libssl/man/SSL_get_ex_data_X509_STORE_CTX_idx.3183
-rw-r--r--secure/lib/libssl/man/SSL_get_ex_new_index.3188
-rw-r--r--secure/lib/libssl/man/SSL_read.3242
-rw-r--r--secure/lib/libssl/man/d2i_SSL_SESSION.3204
-rw-r--r--secure/lib/libssl/man/ssl.3874
-rw-r--r--secure/usr.bin/openssl/Makefile.man24
-rw-r--r--secure/usr.bin/openssl/man/CA.pl.1119
-rw-r--r--secure/usr.bin/openssl/man/asn1parse.180
-rw-r--r--secure/usr.bin/openssl/man/ca.1231
-rw-r--r--secure/usr.bin/openssl/man/ciphers.1594
-rw-r--r--secure/usr.bin/openssl/man/cms.1238
-rw-r--r--secure/usr.bin/openssl/man/crl.153
-rw-r--r--secure/usr.bin/openssl/man/crl2pkcs7.133
-rw-r--r--secure/usr.bin/openssl/man/dgst.1129
-rw-r--r--secure/usr.bin/openssl/man/dhparam.161
-rw-r--r--secure/usr.bin/openssl/man/dsa.148
-rw-r--r--secure/usr.bin/openssl/man/dsaparam.152
-rw-r--r--secure/usr.bin/openssl/man/ec.167
-rw-r--r--secure/usr.bin/openssl/man/ecparam.158
-rw-r--r--secure/usr.bin/openssl/man/enc.1183
-rw-r--r--secure/usr.bin/openssl/man/engine.1236
-rw-r--r--secure/usr.bin/openssl/man/errstr.123
-rw-r--r--secure/usr.bin/openssl/man/gendsa.147
-rw-r--r--secure/usr.bin/openssl/man/genpkey.1117
-rw-r--r--secure/usr.bin/openssl/man/genrsa.163
-rw-r--r--secure/usr.bin/openssl/man/list.1207
-rw-r--r--secure/usr.bin/openssl/man/nseq.127
-rw-r--r--secure/usr.bin/openssl/man/ocsp.1249
-rw-r--r--secure/usr.bin/openssl/man/openssl.1337
-rw-r--r--secure/usr.bin/openssl/man/passwd.162
-rw-r--r--secure/usr.bin/openssl/man/pkcs12.1150
-rw-r--r--secure/usr.bin/openssl/man/pkcs7.137
-rw-r--r--secure/usr.bin/openssl/man/pkcs8.1209
-rw-r--r--secure/usr.bin/openssl/man/pkey.163
-rw-r--r--secure/usr.bin/openssl/man/pkeyparam.135
-rw-r--r--secure/usr.bin/openssl/man/pkeyutl.1212
-rw-r--r--secure/usr.bin/openssl/man/prime.1185
-rw-r--r--secure/usr.bin/openssl/man/rand.136
-rw-r--r--secure/usr.bin/openssl/man/req.1213
-rw-r--r--secure/usr.bin/openssl/man/rsa.160
-rw-r--r--secure/usr.bin/openssl/man/rsautl.190
-rw-r--r--secure/usr.bin/openssl/man/s_client.1547
-rw-r--r--secure/usr.bin/openssl/man/s_server.1830
-rw-r--r--secure/usr.bin/openssl/man/s_time.183
-rw-r--r--secure/usr.bin/openssl/man/sess_id.169
-rw-r--r--secure/usr.bin/openssl/man/smime.1188
-rw-r--r--secure/usr.bin/openssl/man/speed.195
-rw-r--r--secure/usr.bin/openssl/man/spkac.159
-rw-r--r--secure/usr.bin/openssl/man/srp.1 (renamed from secure/lib/libssl/man/SSL_CTX_get_ex_new_index.3)91
-rw-r--r--secure/usr.bin/openssl/man/storeutl.1 (renamed from secure/lib/libcrypto/man/d2i_ASN1_OBJECT.3)114
-rw-r--r--secure/usr.bin/openssl/man/ts.1209
-rw-r--r--secure/usr.bin/openssl/man/tsget.120
-rw-r--r--secure/usr.bin/openssl/man/verify.1725
-rw-r--r--secure/usr.bin/openssl/man/version.136
-rw-r--r--secure/usr.bin/openssl/man/x509.1320
-rw-r--r--secure/usr.bin/openssl/man/x509v3_config.1679
555 files changed, 60357 insertions, 19974 deletions
diff --git a/secure/lib/libcrypto/Makefile.man b/secure/lib/libcrypto/Makefile.man
index 9ba3c279cba8..7b734aec0781 100644
--- a/secure/lib/libcrypto/Makefile.man
+++ b/secure/lib/libcrypto/Makefile.man
@@ -1,11 +1,21 @@
# $FreeBSD$
-# DO NOT EDIT: generated from man-makefile-update target
+MAN+= ADMISSIONS.3
+MAN+= ASN1_INTEGER_get_int64.3
+MAN+= ASN1_ITEM_lookup.3
MAN+= ASN1_OBJECT_new.3
+MAN+= ASN1_STRING_TABLE_add.3
MAN+= ASN1_STRING_length.3
MAN+= ASN1_STRING_new.3
MAN+= ASN1_STRING_print_ex.3
MAN+= ASN1_TIME_set.3
+MAN+= ASN1_TYPE_get.3
MAN+= ASN1_generate_nconf.3
+MAN+= ASYNC_WAIT_CTX_new.3
+MAN+= ASYNC_start_job.3
+MAN+= BF_encrypt.3
+MAN+= BIO_ADDR.3
+MAN+= BIO_ADDRINFO.3
+MAN+= BIO_connect.3
MAN+= BIO_ctrl.3
MAN+= BIO_f_base64.3
MAN+= BIO_f_buffer.3
@@ -14,8 +24,13 @@ MAN+= BIO_f_md.3
MAN+= BIO_f_null.3
MAN+= BIO_f_ssl.3
MAN+= BIO_find_type.3
+MAN+= BIO_get_data.3
+MAN+= BIO_get_ex_new_index.3
+MAN+= BIO_meth_new.3
MAN+= BIO_new.3
MAN+= BIO_new_CMS.3
+MAN+= BIO_parse_hostserv.3
+MAN+= BIO_printf.3
MAN+= BIO_push.3
MAN+= BIO_read.3
MAN+= BIO_s_accept.3
@@ -43,9 +58,11 @@ MAN+= BN_mod_mul_reciprocal.3
MAN+= BN_new.3
MAN+= BN_num_bytes.3
MAN+= BN_rand.3
+MAN+= BN_security_bits.3
MAN+= BN_set_bit.3
MAN+= BN_swap.3
MAN+= BN_zero.3
+MAN+= BUF_MEM_new.3
MAN+= CMS_add0_cert.3
MAN+= CMS_add1_recipient_cert.3
MAN+= CMS_add1_signer.3
@@ -64,11 +81,21 @@ MAN+= CMS_verify.3
MAN+= CMS_verify_receipt.3
MAN+= CONF_modules_free.3
MAN+= CONF_modules_load_file.3
-MAN+= CRYPTO_set_ex_data.3
+MAN+= CRYPTO_THREAD_run_once.3
+MAN+= CRYPTO_get_ex_new_index.3
+MAN+= CTLOG_STORE_get0_log_by_id.3
+MAN+= CTLOG_STORE_new.3
+MAN+= CTLOG_new.3
+MAN+= CT_POLICY_EVAL_CTX_new.3
+MAN+= DEFINE_STACK_OF.3
+MAN+= DES_random_key.3
MAN+= DH_generate_key.3
MAN+= DH_generate_parameters.3
-MAN+= DH_get_ex_new_index.3
+MAN+= DH_get0_pqg.3
+MAN+= DH_get_1024_160.3
+MAN+= DH_meth_new.3
MAN+= DH_new.3
+MAN+= DH_new_by_nid.3
MAN+= DH_set_method.3
MAN+= DH_size.3
MAN+= DSA_SIG_new.3
@@ -76,17 +103,25 @@ MAN+= DSA_do_sign.3
MAN+= DSA_dup_DH.3
MAN+= DSA_generate_key.3
MAN+= DSA_generate_parameters.3
-MAN+= DSA_get_ex_new_index.3
+MAN+= DSA_get0_pqg.3
+MAN+= DSA_meth_new.3
MAN+= DSA_new.3
MAN+= DSA_set_method.3
MAN+= DSA_sign.3
MAN+= DSA_size.3
+MAN+= DTLS_get_data_mtu.3
+MAN+= DTLS_set_timer_cb.3
+MAN+= DTLSv1_listen.3
+MAN+= ECDSA_SIG_new.3
+MAN+= ECPKParameters_print.3
MAN+= EC_GFp_simple_method.3
MAN+= EC_GROUP_copy.3
MAN+= EC_GROUP_new.3
+MAN+= EC_KEY_get_enc_flags.3
MAN+= EC_KEY_new.3
MAN+= EC_POINT_add.3
MAN+= EC_POINT_new.3
+MAN+= ENGINE_add.3
MAN+= ERR_GET_LIB.3
MAN+= ERR_clear_error.3
MAN+= ERR_error_string.3
@@ -98,20 +133,31 @@ MAN+= ERR_put_error.3
MAN+= ERR_remove_state.3
MAN+= ERR_set_mark.3
MAN+= EVP_BytesToKey.3
+MAN+= EVP_CIPHER_CTX_get_cipher_data.3
+MAN+= EVP_CIPHER_meth_new.3
MAN+= EVP_DigestInit.3
MAN+= EVP_DigestSignInit.3
MAN+= EVP_DigestVerifyInit.3
MAN+= EVP_EncodeInit.3
MAN+= EVP_EncryptInit.3
+MAN+= EVP_MD_meth_new.3
MAN+= EVP_OpenInit.3
+MAN+= EVP_PKEY_ASN1_METHOD.3
MAN+= EVP_PKEY_CTX_ctrl.3
MAN+= EVP_PKEY_CTX_new.3
+MAN+= EVP_PKEY_CTX_set1_pbe_pass.3
+MAN+= EVP_PKEY_CTX_set_hkdf_md.3
+MAN+= EVP_PKEY_CTX_set_rsa_pss_keygen_md.3
+MAN+= EVP_PKEY_CTX_set_scrypt_N.3
+MAN+= EVP_PKEY_CTX_set_tls1_prf_md.3
+MAN+= EVP_PKEY_asn1_get_count.3
MAN+= EVP_PKEY_cmp.3
MAN+= EVP_PKEY_decrypt.3
MAN+= EVP_PKEY_derive.3
MAN+= EVP_PKEY_encrypt.3
-MAN+= EVP_PKEY_get_default_digest.3
+MAN+= EVP_PKEY_get_default_digest_nid.3
MAN+= EVP_PKEY_keygen.3
+MAN+= EVP_PKEY_meth_get_count.3
MAN+= EVP_PKEY_meth_new.3
MAN+= EVP_PKEY_new.3
MAN+= EVP_PKEY_print_private.3
@@ -122,33 +168,95 @@ MAN+= EVP_PKEY_verify_recover.3
MAN+= EVP_SealInit.3
MAN+= EVP_SignInit.3
MAN+= EVP_VerifyInit.3
+MAN+= EVP_aes.3
+MAN+= EVP_aria.3
+MAN+= EVP_bf_cbc.3
+MAN+= EVP_blake2b512.3
+MAN+= EVP_camellia.3
+MAN+= EVP_cast5_cbc.3
+MAN+= EVP_chacha20.3
+MAN+= EVP_des.3
+MAN+= EVP_desx_cbc.3
+MAN+= EVP_idea_cbc.3
+MAN+= EVP_md2.3
+MAN+= EVP_md4.3
+MAN+= EVP_md5.3
+MAN+= EVP_mdc2.3
+MAN+= EVP_rc2_cbc.3
+MAN+= EVP_rc4.3
+MAN+= EVP_rc5_32_12_16_cbc.3
+MAN+= EVP_ripemd160.3
+MAN+= EVP_seed_cbc.3
+MAN+= EVP_sha1.3
+MAN+= EVP_sha224.3
+MAN+= EVP_sha3_224.3
+MAN+= EVP_sm3.3
+MAN+= EVP_sm4_cbc.3
+MAN+= EVP_whirlpool.3
+MAN+= HMAC.3
+MAN+= MD5.3
+MAN+= MDC2_Init.3
MAN+= OBJ_nid2obj.3
+MAN+= OCSP_REQUEST_new.3
+MAN+= OCSP_cert_to_id.3
+MAN+= OCSP_request_add1_nonce.3
+MAN+= OCSP_resp_find_status.3
+MAN+= OCSP_response_status.3
+MAN+= OCSP_sendreq_new.3
MAN+= OPENSSL_Applink.3
+MAN+= OPENSSL_LH_COMPFUNC.3
+MAN+= OPENSSL_LH_stats.3
MAN+= OPENSSL_VERSION_NUMBER.3
MAN+= OPENSSL_config.3
+MAN+= OPENSSL_fork_prepare.3
MAN+= OPENSSL_ia32cap.3
+MAN+= OPENSSL_init_crypto.3
+MAN+= OPENSSL_init_ssl.3
MAN+= OPENSSL_instrument_bus.3
MAN+= OPENSSL_load_builtin_modules.3
+MAN+= OPENSSL_malloc.3
+MAN+= OPENSSL_secure_malloc.3
+MAN+= OSSL_STORE_INFO.3
+MAN+= OSSL_STORE_LOADER.3
+MAN+= OSSL_STORE_SEARCH.3
+MAN+= OSSL_STORE_expect.3
+MAN+= OSSL_STORE_open.3
MAN+= OpenSSL_add_all_algorithms.3
+MAN+= PEM_bytes_read_bio.3
+MAN+= PEM_read.3
+MAN+= PEM_read_CMS.3
+MAN+= PEM_read_bio_PrivateKey.3
+MAN+= PEM_read_bio_ex.3
MAN+= PEM_write_bio_CMS_stream.3
MAN+= PEM_write_bio_PKCS7_stream.3
MAN+= PKCS12_create.3
+MAN+= PKCS12_newpass.3
MAN+= PKCS12_parse.3
+MAN+= PKCS5_PBKDF2_HMAC.3
MAN+= PKCS7_decrypt.3
MAN+= PKCS7_encrypt.3
MAN+= PKCS7_sign.3
MAN+= PKCS7_sign_add_signer.3
MAN+= PKCS7_verify.3
+MAN+= RAND_DRBG_generate.3
+MAN+= RAND_DRBG_get0_master.3
+MAN+= RAND_DRBG_new.3
+MAN+= RAND_DRBG_reseed.3
+MAN+= RAND_DRBG_set_callbacks.3
+MAN+= RAND_DRBG_set_ex_data.3
MAN+= RAND_add.3
MAN+= RAND_bytes.3
MAN+= RAND_cleanup.3
MAN+= RAND_egd.3
MAN+= RAND_load_file.3
MAN+= RAND_set_rand_method.3
+MAN+= RC4_set_key.3
+MAN+= RIPEMD160_Init.3
MAN+= RSA_blinding_on.3
MAN+= RSA_check_key.3
MAN+= RSA_generate_key.3
-MAN+= RSA_get_ex_new_index.3
+MAN+= RSA_get0_key.3
+MAN+= RSA_meth_new.3
MAN+= RSA_new.3
MAN+= RSA_padding_add_PKCS1_type_1.3
MAN+= RSA_print.3
@@ -158,76 +266,255 @@ MAN+= RSA_set_method.3
MAN+= RSA_sign.3
MAN+= RSA_sign_ASN1_OCTET_STRING.3
MAN+= RSA_size.3
+MAN+= SCT_new.3
+MAN+= SCT_print.3
+MAN+= SCT_validate.3
+MAN+= SHA256_Init.3
MAN+= SMIME_read_CMS.3
MAN+= SMIME_read_PKCS7.3
MAN+= SMIME_write_CMS.3
MAN+= SMIME_write_PKCS7.3
+MAN+= SSL_CIPHER_get_name.3
+MAN+= SSL_COMP_add_compression_method.3
+MAN+= SSL_CONF_CTX_new.3
+MAN+= SSL_CONF_CTX_set1_prefix.3
+MAN+= SSL_CONF_CTX_set_flags.3
+MAN+= SSL_CONF_CTX_set_ssl_ctx.3
+MAN+= SSL_CONF_cmd.3
+MAN+= SSL_CONF_cmd_argv.3
+MAN+= SSL_CTX_add1_chain_cert.3
+MAN+= SSL_CTX_add_extra_chain_cert.3
+MAN+= SSL_CTX_add_session.3
+MAN+= SSL_CTX_config.3
+MAN+= SSL_CTX_ctrl.3
+MAN+= SSL_CTX_dane_enable.3
+MAN+= SSL_CTX_flush_sessions.3
+MAN+= SSL_CTX_free.3
+MAN+= SSL_CTX_get0_param.3
+MAN+= SSL_CTX_get_verify_mode.3
+MAN+= SSL_CTX_has_client_custom_ext.3
+MAN+= SSL_CTX_load_verify_locations.3
+MAN+= SSL_CTX_new.3
+MAN+= SSL_CTX_sess_number.3
+MAN+= SSL_CTX_sess_set_cache_size.3
+MAN+= SSL_CTX_sess_set_get_cb.3
+MAN+= SSL_CTX_sessions.3
+MAN+= SSL_CTX_set0_CA_list.3
+MAN+= SSL_CTX_set1_curves.3
+MAN+= SSL_CTX_set1_sigalgs.3
+MAN+= SSL_CTX_set1_verify_cert_store.3
+MAN+= SSL_CTX_set_alpn_select_cb.3
+MAN+= SSL_CTX_set_cert_cb.3
+MAN+= SSL_CTX_set_cert_store.3
+MAN+= SSL_CTX_set_cert_verify_callback.3
+MAN+= SSL_CTX_set_cipher_list.3
+MAN+= SSL_CTX_set_client_CA_list.3
+MAN+= SSL_CTX_set_client_cert_cb.3
+MAN+= SSL_CTX_set_client_hello_cb.3
+MAN+= SSL_CTX_set_ct_validation_callback.3
+MAN+= SSL_CTX_set_ctlog_list_file.3
+MAN+= SSL_CTX_set_default_passwd_cb.3
+MAN+= SSL_CTX_set_ex_data.3
+MAN+= SSL_CTX_set_generate_session_id.3
+MAN+= SSL_CTX_set_info_callback.3
+MAN+= SSL_CTX_set_keylog_callback.3
+MAN+= SSL_CTX_set_max_cert_list.3
+MAN+= SSL_CTX_set_min_proto_version.3
+MAN+= SSL_CTX_set_mode.3
+MAN+= SSL_CTX_set_msg_callback.3
+MAN+= SSL_CTX_set_num_tickets.3
+MAN+= SSL_CTX_set_options.3
+MAN+= SSL_CTX_set_psk_client_callback.3
+MAN+= SSL_CTX_set_quiet_shutdown.3
+MAN+= SSL_CTX_set_read_ahead.3
+MAN+= SSL_CTX_set_record_padding_callback.3
+MAN+= SSL_CTX_set_security_level.3
+MAN+= SSL_CTX_set_session_cache_mode.3
+MAN+= SSL_CTX_set_session_id_context.3
+MAN+= SSL_CTX_set_session_ticket_cb.3
+MAN+= SSL_CTX_set_split_send_fragment.3
+MAN+= SSL_CTX_set_ssl_version.3
+MAN+= SSL_CTX_set_stateless_cookie_generate_cb.3
+MAN+= SSL_CTX_set_timeout.3
+MAN+= SSL_CTX_set_tlsext_servername_callback.3
+MAN+= SSL_CTX_set_tlsext_status_cb.3
+MAN+= SSL_CTX_set_tlsext_ticket_key_cb.3
+MAN+= SSL_CTX_set_tlsext_use_srtp.3
+MAN+= SSL_CTX_set_tmp_dh_callback.3
+MAN+= SSL_CTX_set_verify.3
+MAN+= SSL_CTX_use_certificate.3
+MAN+= SSL_CTX_use_psk_identity_hint.3
+MAN+= SSL_CTX_use_serverinfo.3
+MAN+= SSL_SESSION_free.3
+MAN+= SSL_SESSION_get0_cipher.3
+MAN+= SSL_SESSION_get0_hostname.3
+MAN+= SSL_SESSION_get0_id_context.3
+MAN+= SSL_SESSION_get0_peer.3
+MAN+= SSL_SESSION_get_compress_id.3
+MAN+= SSL_SESSION_get_ex_data.3
+MAN+= SSL_SESSION_get_protocol_version.3
+MAN+= SSL_SESSION_get_time.3
+MAN+= SSL_SESSION_has_ticket.3
+MAN+= SSL_SESSION_is_resumable.3
+MAN+= SSL_SESSION_print.3
+MAN+= SSL_SESSION_set1_id.3
+MAN+= SSL_accept.3
+MAN+= SSL_alert_type_string.3
+MAN+= SSL_alloc_buffers.3
+MAN+= SSL_check_chain.3
+MAN+= SSL_clear.3
+MAN+= SSL_connect.3
+MAN+= SSL_do_handshake.3
+MAN+= SSL_export_keying_material.3
+MAN+= SSL_extension_supported.3
+MAN+= SSL_free.3
+MAN+= SSL_get0_peer_scts.3
+MAN+= SSL_get_SSL_CTX.3
+MAN+= SSL_get_all_async_fds.3
+MAN+= SSL_get_ciphers.3
+MAN+= SSL_get_client_CA_list.3
+MAN+= SSL_get_client_random.3
+MAN+= SSL_get_current_cipher.3
+MAN+= SSL_get_default_timeout.3
+MAN+= SSL_get_error.3
+MAN+= SSL_get_extms_support.3
+MAN+= SSL_get_fd.3
+MAN+= SSL_get_peer_cert_chain.3
+MAN+= SSL_get_peer_certificate.3
+MAN+= SSL_get_peer_signature_nid.3
+MAN+= SSL_get_psk_identity.3
+MAN+= SSL_get_rbio.3
+MAN+= SSL_get_server_tmp_key.3
+MAN+= SSL_get_session.3
+MAN+= SSL_get_shared_sigalgs.3
+MAN+= SSL_get_verify_result.3
+MAN+= SSL_get_version.3
+MAN+= SSL_in_init.3
+MAN+= SSL_key_update.3
+MAN+= SSL_library_init.3
+MAN+= SSL_load_client_CA_file.3
+MAN+= SSL_new.3
+MAN+= SSL_pending.3
+MAN+= SSL_read.3
+MAN+= SSL_read_early_data.3
+MAN+= SSL_rstate_string.3
+MAN+= SSL_session_reused.3
+MAN+= SSL_set1_host.3
+MAN+= SSL_set_bio.3
+MAN+= SSL_set_connect_state.3
+MAN+= SSL_set_fd.3
+MAN+= SSL_set_session.3
+MAN+= SSL_set_shutdown.3
+MAN+= SSL_set_verify_result.3
+MAN+= SSL_shutdown.3
+MAN+= SSL_state_string.3
+MAN+= SSL_want.3
+MAN+= SSL_write.3
+MAN+= UI_STRING.3
+MAN+= UI_UTIL_read_pw.3
+MAN+= UI_create_method.3
+MAN+= UI_new.3
+MAN+= X509V3_get_d2i.3
+MAN+= X509_ALGOR_dup.3
+MAN+= X509_CRL_get0_by_serial.3
+MAN+= X509_EXTENSION_set_object.3
+MAN+= X509_LOOKUP_hash_dir.3
+MAN+= X509_LOOKUP_meth_new.3
MAN+= X509_NAME_ENTRY_get_object.3
MAN+= X509_NAME_add_entry_by_txt.3
+MAN+= X509_NAME_get0_der.3
MAN+= X509_NAME_get_index_by_NID.3
MAN+= X509_NAME_print_ex.3
+MAN+= X509_PUBKEY_new.3
+MAN+= X509_SIG_get0.3
MAN+= X509_STORE_CTX_get_error.3
-MAN+= X509_STORE_CTX_get_ex_new_index.3
MAN+= X509_STORE_CTX_new.3
MAN+= X509_STORE_CTX_set_verify_cb.3
+MAN+= X509_STORE_add_cert.3
+MAN+= X509_STORE_get0_param.3
+MAN+= X509_STORE_new.3
MAN+= X509_STORE_set_verify_cb_func.3
MAN+= X509_VERIFY_PARAM_set_flags.3
+MAN+= X509_check_ca.3
MAN+= X509_check_host.3
+MAN+= X509_check_issued.3
MAN+= X509_check_private_key.3
MAN+= X509_cmp_time.3
+MAN+= X509_digest.3
+MAN+= X509_dup.3
+MAN+= X509_get0_notBefore.3
+MAN+= X509_get0_signature.3
+MAN+= X509_get0_uids.3
+MAN+= X509_get_extension_flags.3
+MAN+= X509_get_pubkey.3
+MAN+= X509_get_serialNumber.3
+MAN+= X509_get_subject_name.3
+MAN+= X509_get_version.3
MAN+= X509_new.3
+MAN+= X509_sign.3
MAN+= X509_verify_cert.3
-MAN+= bio.3
-MAN+= blowfish.3
-MAN+= bn.3
-MAN+= bn_internal.3
-MAN+= buffer.3
-MAN+= crypto.3
-MAN+= d2i_ASN1_OBJECT.3
-MAN+= d2i_CMS_ContentInfo.3
+MAN+= X509v3_get_ext_by_NID.3
MAN+= d2i_DHparams.3
-MAN+= d2i_DSAPublicKey.3
-MAN+= d2i_ECPKParameters.3
-MAN+= d2i_ECPrivateKey.3
-MAN+= d2i_PKCS8PrivateKey.3
+MAN+= d2i_PKCS8PrivateKey_bio.3
MAN+= d2i_PrivateKey.3
-MAN+= d2i_RSAPublicKey.3
+MAN+= d2i_SSL_SESSION.3
MAN+= d2i_X509.3
-MAN+= d2i_X509_ALGOR.3
-MAN+= d2i_X509_CRL.3
-MAN+= d2i_X509_NAME.3
-MAN+= d2i_X509_REQ.3
-MAN+= d2i_X509_SIG.3
-MAN+= des.3
-MAN+= dh.3
-MAN+= dsa.3
-MAN+= ec.3
-MAN+= ecdsa.3
-MAN+= engine.3
-MAN+= err.3
-MAN+= evp.3
-MAN+= hmac.3
MAN+= i2d_CMS_bio_stream.3
MAN+= i2d_PKCS7_bio_stream.3
-MAN+= lh_stats.3
-MAN+= lhash.3
-MAN+= md5.3
-MAN+= mdc2.3
-MAN+= pem.3
-MAN+= rand.3
-MAN+= rc4.3
-MAN+= ripemd.3
-MAN+= rsa.3
-MAN+= sha.3
-MAN+= threads.3
-MAN+= ui.3
-MAN+= ui_compat.3
-MAN+= x509.3
+MAN+= i2d_re_X509_tbs.3
+MAN+= o2i_SCT_LIST.3
+MLINKS+= ADMISSIONS.3 ADMISSIONS_get0_admissionAuthority.3
+MLINKS+= ADMISSIONS.3 ADMISSIONS_get0_namingAuthority.3
+MLINKS+= ADMISSIONS.3 ADMISSIONS_get0_professionInfos.3
+MLINKS+= ADMISSIONS.3 ADMISSIONS_set0_admissionAuthority.3
+MLINKS+= ADMISSIONS.3 ADMISSIONS_set0_namingAuthority.3
+MLINKS+= ADMISSIONS.3 ADMISSIONS_set0_professionInfos.3
+MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX.3
+MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX_get0_admissionAuthority.3
+MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX_get0_contentsOfAdmissions.3
+MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX_set0_admissionAuthority.3
+MLINKS+= ADMISSIONS.3 ADMISSION_SYNTAX_set0_contentsOfAdmissions.3
+MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY.3
+MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_get0_authorityId.3
+MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_get0_authorityText.3
+MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_get0_authorityURL.3
+MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_set0_authorityId.3
+MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_set0_authorityText.3
+MLINKS+= ADMISSIONS.3 NAMING_AUTHORITY_set0_authorityURL.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFOS.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_addProfessionInfo.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_namingAuthority.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_professionItems.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_professionOIDs.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_get0_registrationNumber.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_addProfessionInfo.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_namingAuthority.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_professionItems.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_professionOIDs.3
+MLINKS+= ADMISSIONS.3 PROFESSION_INFO_set0_registrationNumber.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_get.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_get_int64.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_set.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_set_int64.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_ENUMERATED_to_BN.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_get.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_get_uint64.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_set.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_set_int64.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_set_uint64.3
+MLINKS+= ASN1_INTEGER_get_int64.3 ASN1_INTEGER_to_BN.3
+MLINKS+= ASN1_INTEGER_get_int64.3 BN_to_ASN1_ENUMERATED.3
+MLINKS+= ASN1_INTEGER_get_int64.3 BN_to_ASN1_INTEGER.3
+MLINKS+= ASN1_ITEM_lookup.3 ASN1_ITEM_get.3
MLINKS+= ASN1_OBJECT_new.3 ASN1_OBJECT_free.3
+MLINKS+= ASN1_STRING_TABLE_add.3 ASN1_STRING_TABLE.3
+MLINKS+= ASN1_STRING_TABLE_add.3 ASN1_STRING_TABLE_cleanup.3
+MLINKS+= ASN1_STRING_TABLE_add.3 ASN1_STRING_TABLE_get.3
MLINKS+= ASN1_STRING_length.3 ASN1_STRING_cmp.3
MLINKS+= ASN1_STRING_length.3 ASN1_STRING_data.3
MLINKS+= ASN1_STRING_length.3 ASN1_STRING_dup.3
-MLINKS+= ASN1_STRING_length.3 ASN1_STRING_length_set.3
+MLINKS+= ASN1_STRING_length.3 ASN1_STRING_get0_data.3
MLINKS+= ASN1_STRING_length.3 ASN1_STRING_set.3
MLINKS+= ASN1_STRING_length.3 ASN1_STRING_to_UTF8.3
MLINKS+= ASN1_STRING_length.3 ASN1_STRING_type.3
@@ -235,12 +522,80 @@ MLINKS+= ASN1_STRING_new.3 ASN1_STRING_free.3
MLINKS+= ASN1_STRING_new.3 ASN1_STRING_type_new.3
MLINKS+= ASN1_STRING_print_ex.3 ASN1_STRING_print.3
MLINKS+= ASN1_STRING_print_ex.3 ASN1_STRING_print_ex_fp.3
+MLINKS+= ASN1_STRING_print_ex.3 ASN1_tag2str.3
+MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_adj.3
+MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_check.3
+MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_print.3
+MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_set.3
+MLINKS+= ASN1_TIME_set.3 ASN1_GENERALIZEDTIME_set_string.3
MLINKS+= ASN1_TIME_set.3 ASN1_TIME_adj.3
MLINKS+= ASN1_TIME_set.3 ASN1_TIME_check.3
+MLINKS+= ASN1_TIME_set.3 ASN1_TIME_cmp_time_t.3
+MLINKS+= ASN1_TIME_set.3 ASN1_TIME_compare.3
MLINKS+= ASN1_TIME_set.3 ASN1_TIME_diff.3
+MLINKS+= ASN1_TIME_set.3 ASN1_TIME_normalize.3
MLINKS+= ASN1_TIME_set.3 ASN1_TIME_print.3
MLINKS+= ASN1_TIME_set.3 ASN1_TIME_set_string.3
+MLINKS+= ASN1_TIME_set.3 ASN1_TIME_set_string_X509.3
+MLINKS+= ASN1_TIME_set.3 ASN1_TIME_to_generalizedtime.3
+MLINKS+= ASN1_TIME_set.3 ASN1_TIME_to_tm.3
+MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_adj.3
+MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_check.3
+MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_cmp_time_t.3
+MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_print.3
+MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_set.3
+MLINKS+= ASN1_TIME_set.3 ASN1_UTCTIME_set_string.3
+MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_cmp.3
+MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_pack_sequence.3
+MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_set.3
+MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_set1.3
+MLINKS+= ASN1_TYPE_get.3 ASN1_TYPE_unpack_sequence.3
MLINKS+= ASN1_generate_nconf.3 ASN1_generate_v3.3
+MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_clear_fd.3
+MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_free.3
+MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_get_all_fds.3
+MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_get_changed_fds.3
+MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_get_fd.3
+MLINKS+= ASYNC_WAIT_CTX_new.3 ASYNC_WAIT_CTX_set_wait_fd.3
+MLINKS+= ASYNC_start_job.3 ASYNC_block_pause.3
+MLINKS+= ASYNC_start_job.3 ASYNC_cleanup_thread.3
+MLINKS+= ASYNC_start_job.3 ASYNC_get_current_job.3
+MLINKS+= ASYNC_start_job.3 ASYNC_get_wait_ctx.3
+MLINKS+= ASYNC_start_job.3 ASYNC_init_thread.3
+MLINKS+= ASYNC_start_job.3 ASYNC_is_capable.3
+MLINKS+= ASYNC_start_job.3 ASYNC_pause_job.3
+MLINKS+= ASYNC_start_job.3 ASYNC_unblock_pause.3
+MLINKS+= BF_encrypt.3 BF_cbc_encrypt.3
+MLINKS+= BF_encrypt.3 BF_cfb64_encrypt.3
+MLINKS+= BF_encrypt.3 BF_decrypt.3
+MLINKS+= BF_encrypt.3 BF_ecb_encrypt.3
+MLINKS+= BF_encrypt.3 BF_ofb64_encrypt.3
+MLINKS+= BF_encrypt.3 BF_options.3
+MLINKS+= BF_encrypt.3 BF_set_key.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_clear.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_family.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_free.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_hostname_string.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_new.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_path_string.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_rawaddress.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_rawmake.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_rawport.3
+MLINKS+= BIO_ADDR.3 BIO_ADDR_service_string.3
+MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_address.3
+MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_family.3
+MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_free.3
+MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_next.3
+MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_protocol.3
+MLINKS+= BIO_ADDRINFO.3 BIO_ADDRINFO_socktype.3
+MLINKS+= BIO_ADDRINFO.3 BIO_lookup.3
+MLINKS+= BIO_ADDRINFO.3 BIO_lookup_ex.3
+MLINKS+= BIO_ADDRINFO.3 BIO_lookup_type.3
+MLINKS+= BIO_connect.3 BIO_accept_ex.3
+MLINKS+= BIO_connect.3 BIO_bind.3
+MLINKS+= BIO_connect.3 BIO_closesocket.3
+MLINKS+= BIO_connect.3 BIO_listen.3
+MLINKS+= BIO_connect.3 BIO_socket.3
MLINKS+= BIO_ctrl.3 BIO_callback_ctrl.3
MLINKS+= BIO_ctrl.3 BIO_ctrl_pending.3
MLINKS+= BIO_ctrl.3 BIO_ctrl_wpending.3
@@ -248,6 +603,7 @@ MLINKS+= BIO_ctrl.3 BIO_eof.3
MLINKS+= BIO_ctrl.3 BIO_flush.3
MLINKS+= BIO_ctrl.3 BIO_get_close.3
MLINKS+= BIO_ctrl.3 BIO_get_info_callback.3
+MLINKS+= BIO_ctrl.3 BIO_info_cb.3
MLINKS+= BIO_ctrl.3 BIO_int_ctrl.3
MLINKS+= BIO_ctrl.3 BIO_pending.3
MLINKS+= BIO_ctrl.3 BIO_ptr_ctrl.3
@@ -257,12 +613,18 @@ MLINKS+= BIO_ctrl.3 BIO_set_close.3
MLINKS+= BIO_ctrl.3 BIO_set_info_callback.3
MLINKS+= BIO_ctrl.3 BIO_tell.3
MLINKS+= BIO_ctrl.3 BIO_wpending.3
+MLINKS+= BIO_f_buffer.3 BIO_get_buffer_num_lines.3
+MLINKS+= BIO_f_buffer.3 BIO_set_buffer_read_data.3
+MLINKS+= BIO_f_buffer.3 BIO_set_buffer_size.3
+MLINKS+= BIO_f_buffer.3 BIO_set_read_buffer_size.3
+MLINKS+= BIO_f_buffer.3 BIO_set_write_buffer_size.3
MLINKS+= BIO_f_cipher.3 BIO_get_cipher_ctx.3
MLINKS+= BIO_f_cipher.3 BIO_get_cipher_status.3
MLINKS+= BIO_f_cipher.3 BIO_set_cipher.3
MLINKS+= BIO_f_md.3 BIO_get_md.3
MLINKS+= BIO_f_md.3 BIO_get_md_ctx.3
MLINKS+= BIO_f_md.3 BIO_set_md.3
+MLINKS+= BIO_f_ssl.3 BIO_do_handshake.3
MLINKS+= BIO_f_ssl.3 BIO_get_num_renegotiates.3
MLINKS+= BIO_f_ssl.3 BIO_get_ssl.3
MLINKS+= BIO_f_ssl.3 BIO_new_buffer_ssl_connect.3
@@ -276,19 +638,91 @@ MLINKS+= BIO_f_ssl.3 BIO_ssl_copy_session_id.3
MLINKS+= BIO_f_ssl.3 BIO_ssl_shutdown.3
MLINKS+= BIO_find_type.3 BIO_method_type.3
MLINKS+= BIO_find_type.3 BIO_next.3
+MLINKS+= BIO_get_data.3 BIO_get_init.3
+MLINKS+= BIO_get_data.3 BIO_get_shutdown.3
+MLINKS+= BIO_get_data.3 BIO_set_data.3
+MLINKS+= BIO_get_data.3 BIO_set_init.3
+MLINKS+= BIO_get_data.3 BIO_set_shutdown.3
+MLINKS+= BIO_get_ex_new_index.3 BIO_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 BIO_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 DH_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 DH_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 DH_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 DSA_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 DSA_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 DSA_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 ECDH_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 ECDH_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 ECDH_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 EC_KEY_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 EC_KEY_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 EC_KEY_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 ENGINE_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 ENGINE_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 ENGINE_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 RSA_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 RSA_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 RSA_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 UI_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 UI_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 UI_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 X509_STORE_CTX_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 X509_STORE_CTX_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 X509_STORE_CTX_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 X509_STORE_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 X509_STORE_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 X509_STORE_set_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 X509_get_ex_data.3
+MLINKS+= BIO_get_ex_new_index.3 X509_get_ex_new_index.3
+MLINKS+= BIO_get_ex_new_index.3 X509_set_ex_data.3
+MLINKS+= BIO_meth_new.3 BIO_get_new_index.3
+MLINKS+= BIO_meth_new.3 BIO_meth_free.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_callback_ctrl.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_create.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_ctrl.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_destroy.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_gets.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_puts.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_read.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_read_ex.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_write.3
+MLINKS+= BIO_meth_new.3 BIO_meth_get_write_ex.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_callback_ctrl.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_create.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_ctrl.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_destroy.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_gets.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_puts.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_read.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_read_ex.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_write.3
+MLINKS+= BIO_meth_new.3 BIO_meth_set_write_ex.3
MLINKS+= BIO_new.3 BIO_free.3
MLINKS+= BIO_new.3 BIO_free_all.3
-MLINKS+= BIO_new.3 BIO_set.3
+MLINKS+= BIO_new.3 BIO_up_ref.3
MLINKS+= BIO_new.3 BIO_vfree.3
+MLINKS+= BIO_parse_hostserv.3 BIO_hostserv_priorities.3
+MLINKS+= BIO_printf.3 BIO_snprintf.3
+MLINKS+= BIO_printf.3 BIO_vprintf.3
+MLINKS+= BIO_printf.3 BIO_vsnprintf.3
MLINKS+= BIO_push.3 BIO_pop.3
+MLINKS+= BIO_push.3 BIO_set_next.3
MLINKS+= BIO_read.3 BIO_gets.3
MLINKS+= BIO_read.3 BIO_puts.3
+MLINKS+= BIO_read.3 BIO_read_ex.3
MLINKS+= BIO_read.3 BIO_write.3
+MLINKS+= BIO_read.3 BIO_write_ex.3
MLINKS+= BIO_s_accept.3 BIO_do_accept.3
+MLINKS+= BIO_s_accept.3 BIO_get_accept_ip_family.3
+MLINKS+= BIO_s_accept.3 BIO_get_accept_name.3
MLINKS+= BIO_s_accept.3 BIO_get_accept_port.3
MLINKS+= BIO_s_accept.3 BIO_get_bind_mode.3
+MLINKS+= BIO_s_accept.3 BIO_get_peer_name.3
+MLINKS+= BIO_s_accept.3 BIO_get_peer_port.3
MLINKS+= BIO_s_accept.3 BIO_new_accept.3
MLINKS+= BIO_s_accept.3 BIO_set_accept_bios.3
+MLINKS+= BIO_s_accept.3 BIO_set_accept_ip_family.3
+MLINKS+= BIO_s_accept.3 BIO_set_accept_name.3
MLINKS+= BIO_s_accept.3 BIO_set_accept_port.3
MLINKS+= BIO_s_accept.3 BIO_set_bind_mode.3
MLINKS+= BIO_s_accept.3 BIO_set_nbio_accept.3
@@ -304,14 +738,14 @@ MLINKS+= BIO_s_bio.3 BIO_new_bio_pair.3
MLINKS+= BIO_s_bio.3 BIO_set_write_buf_size.3
MLINKS+= BIO_s_bio.3 BIO_shutdown_wr.3
MLINKS+= BIO_s_connect.3 BIO_do_connect.3
+MLINKS+= BIO_s_connect.3 BIO_get_conn_address.3
MLINKS+= BIO_s_connect.3 BIO_get_conn_hostname.3
-MLINKS+= BIO_s_connect.3 BIO_get_conn_int_port.3
-MLINKS+= BIO_s_connect.3 BIO_get_conn_ip.3
+MLINKS+= BIO_s_connect.3 BIO_get_conn_ip_family.3
MLINKS+= BIO_s_connect.3 BIO_get_conn_port.3
MLINKS+= BIO_s_connect.3 BIO_new_connect.3
+MLINKS+= BIO_s_connect.3 BIO_set_conn_address.3
MLINKS+= BIO_s_connect.3 BIO_set_conn_hostname.3
-MLINKS+= BIO_s_connect.3 BIO_set_conn_int_port.3
-MLINKS+= BIO_s_connect.3 BIO_set_conn_ip.3
+MLINKS+= BIO_s_connect.3 BIO_set_conn_ip_family.3
MLINKS+= BIO_s_connect.3 BIO_set_conn_port.3
MLINKS+= BIO_s_connect.3 BIO_set_nbio.3
MLINKS+= BIO_s_fd.3 BIO_get_fd.3
@@ -328,16 +762,22 @@ MLINKS+= BIO_s_file.3 BIO_write_filename.3
MLINKS+= BIO_s_mem.3 BIO_get_mem_data.3
MLINKS+= BIO_s_mem.3 BIO_get_mem_ptr.3
MLINKS+= BIO_s_mem.3 BIO_new_mem_buf.3
+MLINKS+= BIO_s_mem.3 BIO_s_secmem.3
MLINKS+= BIO_s_mem.3 BIO_set_mem_buf.3
MLINKS+= BIO_s_mem.3 BIO_set_mem_eof_return.3
MLINKS+= BIO_s_socket.3 BIO_new_socket.3
+MLINKS+= BIO_set_callback.3 BIO_callback_fn.3
+MLINKS+= BIO_set_callback.3 BIO_callback_fn_ex.3
MLINKS+= BIO_set_callback.3 BIO_debug_callback.3
MLINKS+= BIO_set_callback.3 BIO_get_callback.3
MLINKS+= BIO_set_callback.3 BIO_get_callback_arg.3
+MLINKS+= BIO_set_callback.3 BIO_get_callback_ex.3
MLINKS+= BIO_set_callback.3 BIO_set_callback_arg.3
+MLINKS+= BIO_set_callback.3 BIO_set_callback_ex.3
MLINKS+= BIO_should_retry.3 BIO_get_retry_BIO.3
MLINKS+= BIO_should_retry.3 BIO_get_retry_reason.3
MLINKS+= BIO_should_retry.3 BIO_retry_type.3
+MLINKS+= BIO_should_retry.3 BIO_set_retry_reason.3
MLINKS+= BIO_should_retry.3 BIO_should_io_special.3
MLINKS+= BIO_should_retry.3 BIO_should_read.3
MLINKS+= BIO_should_retry.3 BIO_should_write.3
@@ -346,15 +786,16 @@ MLINKS+= BN_BLINDING_new.3 BN_BLINDING_convert_ex.3
MLINKS+= BN_BLINDING_new.3 BN_BLINDING_create_param.3
MLINKS+= BN_BLINDING_new.3 BN_BLINDING_free.3
MLINKS+= BN_BLINDING_new.3 BN_BLINDING_get_flags.3
-MLINKS+= BN_BLINDING_new.3 BN_BLINDING_get_thread_id.3
MLINKS+= BN_BLINDING_new.3 BN_BLINDING_invert.3
MLINKS+= BN_BLINDING_new.3 BN_BLINDING_invert_ex.3
+MLINKS+= BN_BLINDING_new.3 BN_BLINDING_is_current_thread.3
+MLINKS+= BN_BLINDING_new.3 BN_BLINDING_lock.3
+MLINKS+= BN_BLINDING_new.3 BN_BLINDING_set_current_thread.3
MLINKS+= BN_BLINDING_new.3 BN_BLINDING_set_flags.3
-MLINKS+= BN_BLINDING_new.3 BN_BLINDING_set_thread_id.3
-MLINKS+= BN_BLINDING_new.3 BN_BLINDING_thread_id.3
+MLINKS+= BN_BLINDING_new.3 BN_BLINDING_unlock.3
MLINKS+= BN_BLINDING_new.3 BN_BLINDING_update.3
MLINKS+= BN_CTX_new.3 BN_CTX_free.3
-MLINKS+= BN_CTX_new.3 BN_CTX_init.3
+MLINKS+= BN_CTX_new.3 BN_CTX_secure_new.3
MLINKS+= BN_CTX_start.3 BN_CTX_end.3
MLINKS+= BN_CTX_start.3 BN_CTX_get.3
MLINKS+= BN_add.3 BN_div.3
@@ -375,11 +816,14 @@ MLINKS+= BN_add_word.3 BN_mod_word.3
MLINKS+= BN_add_word.3 BN_mul_word.3
MLINKS+= BN_add_word.3 BN_sub_word.3
MLINKS+= BN_bn2bin.3 BN_bin2bn.3
+MLINKS+= BN_bn2bin.3 BN_bn2binpad.3
MLINKS+= BN_bn2bin.3 BN_bn2dec.3
MLINKS+= BN_bn2bin.3 BN_bn2hex.3
+MLINKS+= BN_bn2bin.3 BN_bn2lebinpad.3
MLINKS+= BN_bn2bin.3 BN_bn2mpi.3
MLINKS+= BN_bn2bin.3 BN_dec2bn.3
MLINKS+= BN_bn2bin.3 BN_hex2bn.3
+MLINKS+= BN_bn2bin.3 BN_lebin2bn.3
MLINKS+= BN_bn2bin.3 BN_mpi2bn.3
MLINKS+= BN_bn2bin.3 BN_print.3
MLINKS+= BN_bn2bin.3 BN_print_fp.3
@@ -389,7 +833,11 @@ MLINKS+= BN_cmp.3 BN_is_word.3
MLINKS+= BN_cmp.3 BN_is_zero.3
MLINKS+= BN_cmp.3 BN_ucmp.3
MLINKS+= BN_copy.3 BN_dup.3
+MLINKS+= BN_copy.3 BN_with_flags.3
MLINKS+= BN_generate_prime.3 BN_GENCB_call.3
+MLINKS+= BN_generate_prime.3 BN_GENCB_free.3
+MLINKS+= BN_generate_prime.3 BN_GENCB_get_arg.3
+MLINKS+= BN_generate_prime.3 BN_GENCB_new.3
MLINKS+= BN_generate_prime.3 BN_GENCB_set.3
MLINKS+= BN_generate_prime.3 BN_GENCB_set_old.3
MLINKS+= BN_generate_prime.3 BN_generate_prime_ex.3
@@ -399,22 +847,22 @@ MLINKS+= BN_generate_prime.3 BN_is_prime_fasttest.3
MLINKS+= BN_generate_prime.3 BN_is_prime_fasttest_ex.3
MLINKS+= BN_mod_mul_montgomery.3 BN_MONT_CTX_copy.3
MLINKS+= BN_mod_mul_montgomery.3 BN_MONT_CTX_free.3
-MLINKS+= BN_mod_mul_montgomery.3 BN_MONT_CTX_init.3
MLINKS+= BN_mod_mul_montgomery.3 BN_MONT_CTX_new.3
MLINKS+= BN_mod_mul_montgomery.3 BN_MONT_CTX_set.3
MLINKS+= BN_mod_mul_montgomery.3 BN_from_montgomery.3
MLINKS+= BN_mod_mul_montgomery.3 BN_to_montgomery.3
MLINKS+= BN_mod_mul_reciprocal.3 BN_RECP_CTX_free.3
-MLINKS+= BN_mod_mul_reciprocal.3 BN_RECP_CTX_init.3
MLINKS+= BN_mod_mul_reciprocal.3 BN_RECP_CTX_new.3
MLINKS+= BN_mod_mul_reciprocal.3 BN_RECP_CTX_set.3
MLINKS+= BN_mod_mul_reciprocal.3 BN_div_recp.3
MLINKS+= BN_new.3 BN_clear.3
MLINKS+= BN_new.3 BN_clear_free.3
MLINKS+= BN_new.3 BN_free.3
-MLINKS+= BN_new.3 BN_init.3
+MLINKS+= BN_new.3 BN_secure_new.3
MLINKS+= BN_num_bytes.3 BN_num_bits.3
MLINKS+= BN_num_bytes.3 BN_num_bits_word.3
+MLINKS+= BN_rand.3 BN_priv_rand.3
+MLINKS+= BN_rand.3 BN_priv_rand_range.3
MLINKS+= BN_rand.3 BN_pseudo_rand.3
MLINKS+= BN_rand.3 BN_pseudo_rand_range.3
MLINKS+= BN_rand.3 BN_rand_range.3
@@ -429,6 +877,11 @@ MLINKS+= BN_zero.3 BN_get_word.3
MLINKS+= BN_zero.3 BN_one.3
MLINKS+= BN_zero.3 BN_set_word.3
MLINKS+= BN_zero.3 BN_value_one.3
+MLINKS+= BUF_MEM_new.3 BUF_MEM_free.3
+MLINKS+= BUF_MEM_new.3 BUF_MEM_grow.3
+MLINKS+= BUF_MEM_new.3 BUF_MEM_grow_clean.3
+MLINKS+= BUF_MEM_new.3 BUF_MEM_new_ex.3
+MLINKS+= BUF_MEM_new.3 BUF_reverse.3
MLINKS+= CMS_add0_cert.3 CMS_add0_crl.3
MLINKS+= CMS_add0_cert.3 CMS_add1_cert.3
MLINKS+= CMS_add0_cert.3 CMS_add1_crl.3
@@ -448,7 +901,7 @@ MLINKS+= CMS_get0_RecipientInfos.3 CMS_RecipientInfo_type.3
MLINKS+= CMS_get0_SignerInfos.3 CMS_SignerInfo_cert_cmp.3
MLINKS+= CMS_get0_SignerInfos.3 CMS_SignerInfo_get0_signature.3
MLINKS+= CMS_get0_SignerInfos.3 CMS_SignerInfo_get0_signer_id.3
-MLINKS+= CMS_get0_SignerInfos.3 CMS_set1_signer_cert.3
+MLINKS+= CMS_get0_SignerInfos.3 CMS_SignerInfo_set1_signer_cert.3
MLINKS+= CMS_get0_type.3 CMS_get0_content.3
MLINKS+= CMS_get0_type.3 CMS_get0_eContentType.3
MLINKS+= CMS_get0_type.3 CMS_set1_eContentType.3
@@ -459,22 +912,199 @@ MLINKS+= CMS_verify.3 CMS_get0_signers.3
MLINKS+= CONF_modules_free.3 CONF_modules_finish.3
MLINKS+= CONF_modules_free.3 CONF_modules_unload.3
MLINKS+= CONF_modules_load_file.3 CONF_modules_load.3
-MLINKS+= CRYPTO_set_ex_data.3 CRYPTO_get_ex_data.3
+MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_lock_free.3
+MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_lock_new.3
+MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_read_lock.3
+MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_unlock.3
+MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_THREAD_write_lock.3
+MLINKS+= CRYPTO_THREAD_run_once.3 CRYPTO_atomic_add.3
+MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_EX_dup.3
+MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_EX_free.3
+MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_EX_new.3
+MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_free_ex_data.3
+MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_free_ex_index.3
+MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_get_ex_data.3
+MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_new_ex_data.3
+MLINKS+= CRYPTO_get_ex_new_index.3 CRYPTO_set_ex_data.3
+MLINKS+= CTLOG_STORE_new.3 CTLOG_STORE_free.3
+MLINKS+= CTLOG_STORE_new.3 CTLOG_STORE_load_default_file.3
+MLINKS+= CTLOG_STORE_new.3 CTLOG_STORE_load_file.3
+MLINKS+= CTLOG_new.3 CTLOG_free.3
+MLINKS+= CTLOG_new.3 CTLOG_get0_log_id.3
+MLINKS+= CTLOG_new.3 CTLOG_get0_name.3
+MLINKS+= CTLOG_new.3 CTLOG_get0_public_key.3
+MLINKS+= CTLOG_new.3 CTLOG_new_from_base64.3
+MLINKS+= CT_POLICY_EVAL_CTX_new.3 CT_POLICY_EVAL_CTX_free.3
+MLINKS+= CT_POLICY_EVAL_CTX_new.3 CT_POLICY_EVAL_CTX_get0_cert.3
+MLINKS+= CT_POLICY_EVAL_CTX_new.3 CT_POLICY_EVAL_CTX_get0_issuer.3
+MLINKS+= CT_POLICY_EVAL_CTX_new.3 CT_POLICY_EVAL_CTX_get0_log_store.3
+MLINKS+= CT_POLICY_EVAL_CTX_new.3 CT_POLICY_EVAL_CTX_get_time.3
+MLINKS+= CT_POLICY_EVAL_CTX_new.3 CT_POLICY_EVAL_CTX_set1_cert.3
+MLINKS+= CT_POLICY_EVAL_CTX_new.3 CT_POLICY_EVAL_CTX_set1_issuer.3
+MLINKS+= CT_POLICY_EVAL_CTX_new.3 CT_POLICY_EVAL_CTX_set_shared_CTLOG_STORE.3
+MLINKS+= CT_POLICY_EVAL_CTX_new.3 CT_POLICY_EVAL_CTX_set_time.3
+MLINKS+= DEFINE_STACK_OF.3 DEFINE_SPECIAL_STACK_OF.3
+MLINKS+= DEFINE_STACK_OF.3 DEFINE_SPECIAL_STACK_OF_CONST.3
+MLINKS+= DEFINE_STACK_OF.3 DEFINE_STACK_OF_CONST.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_deep_copy.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_delete.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_delete_ptr.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_dup.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_find.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_find_ex.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_free.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_insert.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_is_sorted.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_new.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_new_null.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_new_reserve.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_num.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_pop.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_pop_free.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_push.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_reserve.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_set.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_set_cmp_func.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_shift.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_sort.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_unshift.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_value.3
+MLINKS+= DEFINE_STACK_OF.3 sk_TYPE_zero.3
+MLINKS+= DES_random_key.3 DES_cbc_cksum.3
+MLINKS+= DES_random_key.3 DES_cfb64_encrypt.3
+MLINKS+= DES_random_key.3 DES_cfb_encrypt.3
+MLINKS+= DES_random_key.3 DES_crypt.3
+MLINKS+= DES_random_key.3 DES_ecb2_encrypt.3
+MLINKS+= DES_random_key.3 DES_ecb3_encrypt.3
+MLINKS+= DES_random_key.3 DES_ecb_encrypt.3
+MLINKS+= DES_random_key.3 DES_ede2_cbc_encrypt.3
+MLINKS+= DES_random_key.3 DES_ede2_cfb64_encrypt.3
+MLINKS+= DES_random_key.3 DES_ede2_ofb64_encrypt.3
+MLINKS+= DES_random_key.3 DES_ede3_cbc_encrypt.3
+MLINKS+= DES_random_key.3 DES_ede3_cfb64_encrypt.3
+MLINKS+= DES_random_key.3 DES_ede3_ofb64_encrypt.3
+MLINKS+= DES_random_key.3 DES_fcrypt.3
+MLINKS+= DES_random_key.3 DES_is_weak_key.3
+MLINKS+= DES_random_key.3 DES_key_sched.3
+MLINKS+= DES_random_key.3 DES_ncbc_encrypt.3
+MLINKS+= DES_random_key.3 DES_ofb64_encrypt.3
+MLINKS+= DES_random_key.3 DES_ofb_encrypt.3
+MLINKS+= DES_random_key.3 DES_pcbc_encrypt.3
+MLINKS+= DES_random_key.3 DES_quad_cksum.3
+MLINKS+= DES_random_key.3 DES_set_key.3
+MLINKS+= DES_random_key.3 DES_set_key_checked.3
+MLINKS+= DES_random_key.3 DES_set_key_unchecked.3
+MLINKS+= DES_random_key.3 DES_set_odd_parity.3
+MLINKS+= DES_random_key.3 DES_string_to_2keys.3
+MLINKS+= DES_random_key.3 DES_string_to_key.3
+MLINKS+= DES_random_key.3 DES_xcbc_encrypt.3
MLINKS+= DH_generate_key.3 DH_compute_key.3
MLINKS+= DH_generate_parameters.3 DH_check.3
+MLINKS+= DH_generate_parameters.3 DH_check_ex.3
+MLINKS+= DH_generate_parameters.3 DH_check_params.3
+MLINKS+= DH_generate_parameters.3 DH_check_params_ex.3
+MLINKS+= DH_generate_parameters.3 DH_check_pub_key_ex.3
MLINKS+= DH_generate_parameters.3 DH_generate_parameters_ex.3
-MLINKS+= DH_get_ex_new_index.3 DH_get_ex_data.3
-MLINKS+= DH_get_ex_new_index.3 DH_set_ex_data.3
+MLINKS+= DH_get0_pqg.3 DH_clear_flags.3
+MLINKS+= DH_get0_pqg.3 DH_get0_engine.3
+MLINKS+= DH_get0_pqg.3 DH_get0_g.3
+MLINKS+= DH_get0_pqg.3 DH_get0_key.3
+MLINKS+= DH_get0_pqg.3 DH_get0_p.3
+MLINKS+= DH_get0_pqg.3 DH_get0_priv_key.3
+MLINKS+= DH_get0_pqg.3 DH_get0_pub_key.3
+MLINKS+= DH_get0_pqg.3 DH_get0_q.3
+MLINKS+= DH_get0_pqg.3 DH_get_length.3
+MLINKS+= DH_get0_pqg.3 DH_set0_key.3
+MLINKS+= DH_get0_pqg.3 DH_set0_pqg.3
+MLINKS+= DH_get0_pqg.3 DH_set_flags.3
+MLINKS+= DH_get0_pqg.3 DH_set_length.3
+MLINKS+= DH_get0_pqg.3 DH_test_flags.3
+MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_192.3
+MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_224.3
+MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_256.3
+MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_384.3
+MLINKS+= DH_get_1024_160.3 BN_get0_nist_prime_521.3
+MLINKS+= DH_get_1024_160.3 BN_get_rfc2409_prime_1024.3
+MLINKS+= DH_get_1024_160.3 BN_get_rfc2409_prime_768.3
+MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_1536.3
+MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_2048.3
+MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_3072.3
+MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_4096.3
+MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_6144.3
+MLINKS+= DH_get_1024_160.3 BN_get_rfc3526_prime_8192.3
+MLINKS+= DH_get_1024_160.3 DH_get_2048_224.3
+MLINKS+= DH_get_1024_160.3 DH_get_2048_256.3
+MLINKS+= DH_meth_new.3 DH_meth_dup.3
+MLINKS+= DH_meth_new.3 DH_meth_free.3
+MLINKS+= DH_meth_new.3 DH_meth_get0_app_data.3
+MLINKS+= DH_meth_new.3 DH_meth_get0_name.3
+MLINKS+= DH_meth_new.3 DH_meth_get_bn_mod_exp.3
+MLINKS+= DH_meth_new.3 DH_meth_get_compute_key.3
+MLINKS+= DH_meth_new.3 DH_meth_get_finish.3
+MLINKS+= DH_meth_new.3 DH_meth_get_flags.3
+MLINKS+= DH_meth_new.3 DH_meth_get_generate_key.3
+MLINKS+= DH_meth_new.3 DH_meth_get_generate_params.3
+MLINKS+= DH_meth_new.3 DH_meth_get_init.3
+MLINKS+= DH_meth_new.3 DH_meth_set0_app_data.3
+MLINKS+= DH_meth_new.3 DH_meth_set1_name.3
+MLINKS+= DH_meth_new.3 DH_meth_set_bn_mod_exp.3
+MLINKS+= DH_meth_new.3 DH_meth_set_compute_key.3
+MLINKS+= DH_meth_new.3 DH_meth_set_finish.3
+MLINKS+= DH_meth_new.3 DH_meth_set_flags.3
+MLINKS+= DH_meth_new.3 DH_meth_set_generate_key.3
+MLINKS+= DH_meth_new.3 DH_meth_set_generate_params.3
+MLINKS+= DH_meth_new.3 DH_meth_set_init.3
MLINKS+= DH_new.3 DH_free.3
+MLINKS+= DH_new_by_nid.3 DH_get_nid.3
MLINKS+= DH_set_method.3 DH_OpenSSL.3
MLINKS+= DH_set_method.3 DH_get_default_method.3
MLINKS+= DH_set_method.3 DH_new_method.3
MLINKS+= DH_set_method.3 DH_set_default_method.3
+MLINKS+= DH_size.3 DH_bits.3
+MLINKS+= DH_size.3 DH_security_bits.3
MLINKS+= DSA_SIG_new.3 DSA_SIG_free.3
+MLINKS+= DSA_SIG_new.3 DSA_SIG_get0.3
+MLINKS+= DSA_SIG_new.3 DSA_SIG_set0.3
MLINKS+= DSA_do_sign.3 DSA_do_verify.3
MLINKS+= DSA_generate_parameters.3 DSA_generate_parameters_ex.3
-MLINKS+= DSA_get_ex_new_index.3 DSA_get_ex_data.3
-MLINKS+= DSA_get_ex_new_index.3 DSA_set_ex_data.3
+MLINKS+= DSA_get0_pqg.3 DSA_clear_flags.3
+MLINKS+= DSA_get0_pqg.3 DSA_get0_engine.3
+MLINKS+= DSA_get0_pqg.3 DSA_get0_g.3
+MLINKS+= DSA_get0_pqg.3 DSA_get0_key.3
+MLINKS+= DSA_get0_pqg.3 DSA_get0_p.3
+MLINKS+= DSA_get0_pqg.3 DSA_get0_priv_key.3
+MLINKS+= DSA_get0_pqg.3 DSA_get0_pub_key.3
+MLINKS+= DSA_get0_pqg.3 DSA_get0_q.3
+MLINKS+= DSA_get0_pqg.3 DSA_set0_key.3
+MLINKS+= DSA_get0_pqg.3 DSA_set0_pqg.3
+MLINKS+= DSA_get0_pqg.3 DSA_set_flags.3
+MLINKS+= DSA_get0_pqg.3 DSA_test_flags.3
+MLINKS+= DSA_meth_new.3 DSA_meth_dup.3
+MLINKS+= DSA_meth_new.3 DSA_meth_free.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get0_app_data.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get0_name.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_bn_mod_exp.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_finish.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_flags.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_init.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_keygen.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_mod_exp.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_paramgen.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_sign.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_sign_setup.3
+MLINKS+= DSA_meth_new.3 DSA_meth_get_verify.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set0_app_data.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set1_name.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_bn_mod_exp.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_finish.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_flags.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_init.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_keygen.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_mod_exp.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_paramgen.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_sign.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_sign_setup.3
+MLINKS+= DSA_meth_new.3 DSA_meth_set_verify.3
MLINKS+= DSA_new.3 DSA_free.3
MLINKS+= DSA_set_method.3 DSA_OpenSSL.3
MLINKS+= DSA_set_method.3 DSA_get_default_method.3
@@ -482,6 +1112,26 @@ MLINKS+= DSA_set_method.3 DSA_new_method.3
MLINKS+= DSA_set_method.3 DSA_set_default_method.3
MLINKS+= DSA_sign.3 DSA_sign_setup.3
MLINKS+= DSA_sign.3 DSA_verify.3
+MLINKS+= DSA_size.3 DSA_bits.3
+MLINKS+= DSA_size.3 DSA_security_bits.3
+MLINKS+= DTLS_set_timer_cb.3 DTLS_timer_cb.3
+MLINKS+= DTLSv1_listen.3 SSL_stateless.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_SIG_free.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_SIG_get0.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_SIG_get0_r.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_SIG_get0_s.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_SIG_set0.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_do_sign.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_do_sign_ex.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_do_verify.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_sign.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_sign_ex.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_sign_setup.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_size.3
+MLINKS+= ECDSA_SIG_new.3 ECDSA_verify.3
+MLINKS+= ECDSA_SIG_new.3 d2i_ECDSA_SIG.3
+MLINKS+= ECDSA_SIG_new.3 i2d_ECDSA_SIG.3
+MLINKS+= ECPKParameters_print.3 ECPKParameters_print_fp.3
MLINKS+= EC_GFp_simple_method.3 EC_GF2m_simple_method.3
MLINKS+= EC_GFp_simple_method.3 EC_GFp_mont_method.3
MLINKS+= EC_GFp_simple_method.3 EC_GFp_nist_method.3
@@ -493,7 +1143,9 @@ MLINKS+= EC_GROUP_copy.3 EC_GROUP_check.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_check_discriminant.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_cmp.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_dup.3
+MLINKS+= EC_GROUP_copy.3 EC_GROUP_get0_cofactor.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_get0_generator.3
+MLINKS+= EC_GROUP_copy.3 EC_GROUP_get0_order.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_get0_seed.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_get_asn1_flag.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_get_basis_type.3
@@ -506,6 +1158,7 @@ MLINKS+= EC_GROUP_copy.3 EC_GROUP_get_point_conversion_form.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_get_seed_len.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_get_trinomial_basis.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_method_of.3
+MLINKS+= EC_GROUP_copy.3 EC_GROUP_order_bits.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_set_asn1_flag.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_set_curve_name.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_set_generator.3
@@ -513,35 +1166,46 @@ MLINKS+= EC_GROUP_copy.3 EC_GROUP_set_point_conversion_form.3
MLINKS+= EC_GROUP_copy.3 EC_GROUP_set_seed.3
MLINKS+= EC_GROUP_new.3 EC_GROUP_clear_free.3
MLINKS+= EC_GROUP_new.3 EC_GROUP_free.3
+MLINKS+= EC_GROUP_new.3 EC_GROUP_get_curve.3
MLINKS+= EC_GROUP_new.3 EC_GROUP_get_curve_GF2m.3
MLINKS+= EC_GROUP_new.3 EC_GROUP_get_curve_GFp.3
+MLINKS+= EC_GROUP_new.3 EC_GROUP_get_ecparameters.3
+MLINKS+= EC_GROUP_new.3 EC_GROUP_get_ecpkparameters.3
MLINKS+= EC_GROUP_new.3 EC_GROUP_new_by_curve_name.3
MLINKS+= EC_GROUP_new.3 EC_GROUP_new_curve_GF2m.3
MLINKS+= EC_GROUP_new.3 EC_GROUP_new_curve_GFp.3
+MLINKS+= EC_GROUP_new.3 EC_GROUP_new_from_ecparameters.3
+MLINKS+= EC_GROUP_new.3 EC_GROUP_new_from_ecpkparameters.3
+MLINKS+= EC_GROUP_new.3 EC_GROUP_set_curve.3
MLINKS+= EC_GROUP_new.3 EC_GROUP_set_curve_GF2m.3
MLINKS+= EC_GROUP_new.3 EC_GROUP_set_curve_GFp.3
MLINKS+= EC_GROUP_new.3 EC_get_builtin_curves.3
+MLINKS+= EC_KEY_get_enc_flags.3 EC_KEY_set_enc_flags.3
MLINKS+= EC_KEY_new.3 EC_KEY_check_key.3
MLINKS+= EC_KEY_new.3 EC_KEY_clear_flags.3
MLINKS+= EC_KEY_new.3 EC_KEY_copy.3
MLINKS+= EC_KEY_new.3 EC_KEY_dup.3
MLINKS+= EC_KEY_new.3 EC_KEY_free.3
MLINKS+= EC_KEY_new.3 EC_KEY_generate_key.3
+MLINKS+= EC_KEY_new.3 EC_KEY_get0_engine.3
MLINKS+= EC_KEY_new.3 EC_KEY_get0_group.3
MLINKS+= EC_KEY_new.3 EC_KEY_get0_private_key.3
MLINKS+= EC_KEY_new.3 EC_KEY_get0_public_key.3
MLINKS+= EC_KEY_new.3 EC_KEY_get_conv_form.3
-MLINKS+= EC_KEY_new.3 EC_KEY_get_enc_flags.3
MLINKS+= EC_KEY_new.3 EC_KEY_get_flags.3
-MLINKS+= EC_KEY_new.3 EC_KEY_get_key_method_data.3
-MLINKS+= EC_KEY_new.3 EC_KEY_insert_key_method_data.3
+MLINKS+= EC_KEY_new.3 EC_KEY_get_method.3
+MLINKS+= EC_KEY_new.3 EC_KEY_key2buf.3
MLINKS+= EC_KEY_new.3 EC_KEY_new_by_curve_name.3
+MLINKS+= EC_KEY_new.3 EC_KEY_oct2key.3
+MLINKS+= EC_KEY_new.3 EC_KEY_oct2priv.3
MLINKS+= EC_KEY_new.3 EC_KEY_precompute_mult.3
+MLINKS+= EC_KEY_new.3 EC_KEY_priv2buf.3
+MLINKS+= EC_KEY_new.3 EC_KEY_priv2oct.3
MLINKS+= EC_KEY_new.3 EC_KEY_set_asn1_flag.3
MLINKS+= EC_KEY_new.3 EC_KEY_set_conv_form.3
-MLINKS+= EC_KEY_new.3 EC_KEY_set_enc_flags.3
MLINKS+= EC_KEY_new.3 EC_KEY_set_flags.3
MLINKS+= EC_KEY_new.3 EC_KEY_set_group.3
+MLINKS+= EC_KEY_new.3 EC_KEY_set_method.3
MLINKS+= EC_KEY_new.3 EC_KEY_set_private_key.3
MLINKS+= EC_KEY_new.3 EC_KEY_set_public_key.3
MLINKS+= EC_KEY_new.3 EC_KEY_set_public_key_affine_coordinates.3
@@ -563,20 +1227,114 @@ MLINKS+= EC_POINT_new.3 EC_POINT_copy.3
MLINKS+= EC_POINT_new.3 EC_POINT_dup.3
MLINKS+= EC_POINT_new.3 EC_POINT_free.3
MLINKS+= EC_POINT_new.3 EC_POINT_get_Jprojective_coordinates_GFp.3
+MLINKS+= EC_POINT_new.3 EC_POINT_get_affine_coordinates.3
MLINKS+= EC_POINT_new.3 EC_POINT_get_affine_coordinates_GF2m.3
MLINKS+= EC_POINT_new.3 EC_POINT_get_affine_coordinates_GFp.3
MLINKS+= EC_POINT_new.3 EC_POINT_hex2point.3
MLINKS+= EC_POINT_new.3 EC_POINT_method_of.3
MLINKS+= EC_POINT_new.3 EC_POINT_oct2point.3
MLINKS+= EC_POINT_new.3 EC_POINT_point2bn.3
+MLINKS+= EC_POINT_new.3 EC_POINT_point2buf.3
MLINKS+= EC_POINT_new.3 EC_POINT_point2hex.3
MLINKS+= EC_POINT_new.3 EC_POINT_point2oct.3
-MLINKS+= EC_POINT_new.3 EC_POINT_set_Jprojective_coordinates.3
+MLINKS+= EC_POINT_new.3 EC_POINT_set_Jprojective_coordinates_GFp.3
+MLINKS+= EC_POINT_new.3 EC_POINT_set_affine_coordinates.3
MLINKS+= EC_POINT_new.3 EC_POINT_set_affine_coordinates_GF2m.3
MLINKS+= EC_POINT_new.3 EC_POINT_set_affine_coordinates_GFp.3
+MLINKS+= EC_POINT_new.3 EC_POINT_set_compressed_coordinates.3
MLINKS+= EC_POINT_new.3 EC_POINT_set_compressed_coordinates_GF2m.3
MLINKS+= EC_POINT_new.3 EC_POINT_set_compressed_coordinates_GFp.3
MLINKS+= EC_POINT_new.3 EC_POINT_set_to_infinity.3
+MLINKS+= ENGINE_add.3 ENGINE_by_id.3
+MLINKS+= ENGINE_add.3 ENGINE_cleanup.3
+MLINKS+= ENGINE_add.3 ENGINE_cmd_is_executable.3
+MLINKS+= ENGINE_add.3 ENGINE_ctrl.3
+MLINKS+= ENGINE_add.3 ENGINE_ctrl_cmd.3
+MLINKS+= ENGINE_add.3 ENGINE_ctrl_cmd_string.3
+MLINKS+= ENGINE_add.3 ENGINE_finish.3
+MLINKS+= ENGINE_add.3 ENGINE_free.3
+MLINKS+= ENGINE_add.3 ENGINE_get_DH.3
+MLINKS+= ENGINE_add.3 ENGINE_get_DSA.3
+MLINKS+= ENGINE_add.3 ENGINE_get_RAND.3
+MLINKS+= ENGINE_add.3 ENGINE_get_RSA.3
+MLINKS+= ENGINE_add.3 ENGINE_get_cipher.3
+MLINKS+= ENGINE_add.3 ENGINE_get_cipher_engine.3
+MLINKS+= ENGINE_add.3 ENGINE_get_ciphers.3
+MLINKS+= ENGINE_add.3 ENGINE_get_cmd_defns.3
+MLINKS+= ENGINE_add.3 ENGINE_get_ctrl_function.3
+MLINKS+= ENGINE_add.3 ENGINE_get_default_DH.3
+MLINKS+= ENGINE_add.3 ENGINE_get_default_DSA.3
+MLINKS+= ENGINE_add.3 ENGINE_get_default_RAND.3
+MLINKS+= ENGINE_add.3 ENGINE_get_default_RSA.3
+MLINKS+= ENGINE_add.3 ENGINE_get_destroy_function.3
+MLINKS+= ENGINE_add.3 ENGINE_get_digest.3
+MLINKS+= ENGINE_add.3 ENGINE_get_digest_engine.3
+MLINKS+= ENGINE_add.3 ENGINE_get_digests.3
+MLINKS+= ENGINE_add.3 ENGINE_get_finish_function.3
+MLINKS+= ENGINE_add.3 ENGINE_get_first.3
+MLINKS+= ENGINE_add.3 ENGINE_get_flags.3
+MLINKS+= ENGINE_add.3 ENGINE_get_id.3
+MLINKS+= ENGINE_add.3 ENGINE_get_init_function.3
+MLINKS+= ENGINE_add.3 ENGINE_get_last.3
+MLINKS+= ENGINE_add.3 ENGINE_get_load_privkey_function.3
+MLINKS+= ENGINE_add.3 ENGINE_get_load_pubkey_function.3
+MLINKS+= ENGINE_add.3 ENGINE_get_name.3
+MLINKS+= ENGINE_add.3 ENGINE_get_next.3
+MLINKS+= ENGINE_add.3 ENGINE_get_prev.3
+MLINKS+= ENGINE_add.3 ENGINE_get_table_flags.3
+MLINKS+= ENGINE_add.3 ENGINE_init.3
+MLINKS+= ENGINE_add.3 ENGINE_load_builtin_engines.3
+MLINKS+= ENGINE_add.3 ENGINE_load_private_key.3
+MLINKS+= ENGINE_add.3 ENGINE_load_public_key.3
+MLINKS+= ENGINE_add.3 ENGINE_new.3
+MLINKS+= ENGINE_add.3 ENGINE_register_DH.3
+MLINKS+= ENGINE_add.3 ENGINE_register_DSA.3
+MLINKS+= ENGINE_add.3 ENGINE_register_RAND.3
+MLINKS+= ENGINE_add.3 ENGINE_register_RSA.3
+MLINKS+= ENGINE_add.3 ENGINE_register_all_DH.3
+MLINKS+= ENGINE_add.3 ENGINE_register_all_DSA.3
+MLINKS+= ENGINE_add.3 ENGINE_register_all_RAND.3
+MLINKS+= ENGINE_add.3 ENGINE_register_all_RSA.3
+MLINKS+= ENGINE_add.3 ENGINE_register_all_ciphers.3
+MLINKS+= ENGINE_add.3 ENGINE_register_all_complete.3
+MLINKS+= ENGINE_add.3 ENGINE_register_all_digests.3
+MLINKS+= ENGINE_add.3 ENGINE_register_ciphers.3
+MLINKS+= ENGINE_add.3 ENGINE_register_complete.3
+MLINKS+= ENGINE_add.3 ENGINE_register_digests.3
+MLINKS+= ENGINE_add.3 ENGINE_remove.3
+MLINKS+= ENGINE_add.3 ENGINE_set_DH.3
+MLINKS+= ENGINE_add.3 ENGINE_set_DSA.3
+MLINKS+= ENGINE_add.3 ENGINE_set_RAND.3
+MLINKS+= ENGINE_add.3 ENGINE_set_RSA.3
+MLINKS+= ENGINE_add.3 ENGINE_set_ciphers.3
+MLINKS+= ENGINE_add.3 ENGINE_set_cmd_defns.3
+MLINKS+= ENGINE_add.3 ENGINE_set_ctrl_function.3
+MLINKS+= ENGINE_add.3 ENGINE_set_default.3
+MLINKS+= ENGINE_add.3 ENGINE_set_default_DH.3
+MLINKS+= ENGINE_add.3 ENGINE_set_default_DSA.3
+MLINKS+= ENGINE_add.3 ENGINE_set_default_RAND.3
+MLINKS+= ENGINE_add.3 ENGINE_set_default_RSA.3
+MLINKS+= ENGINE_add.3 ENGINE_set_default_ciphers.3
+MLINKS+= ENGINE_add.3 ENGINE_set_default_digests.3
+MLINKS+= ENGINE_add.3 ENGINE_set_default_string.3
+MLINKS+= ENGINE_add.3 ENGINE_set_destroy_function.3
+MLINKS+= ENGINE_add.3 ENGINE_set_digests.3
+MLINKS+= ENGINE_add.3 ENGINE_set_finish_function.3
+MLINKS+= ENGINE_add.3 ENGINE_set_flags.3
+MLINKS+= ENGINE_add.3 ENGINE_set_id.3
+MLINKS+= ENGINE_add.3 ENGINE_set_init_function.3
+MLINKS+= ENGINE_add.3 ENGINE_set_load_privkey_function.3
+MLINKS+= ENGINE_add.3 ENGINE_set_load_pubkey_function.3
+MLINKS+= ENGINE_add.3 ENGINE_set_name.3
+MLINKS+= ENGINE_add.3 ENGINE_set_table_flags.3
+MLINKS+= ENGINE_add.3 ENGINE_unregister_DH.3
+MLINKS+= ENGINE_add.3 ENGINE_unregister_DSA.3
+MLINKS+= ENGINE_add.3 ENGINE_unregister_RAND.3
+MLINKS+= ENGINE_add.3 ENGINE_unregister_RSA.3
+MLINKS+= ENGINE_add.3 ENGINE_unregister_ciphers.3
+MLINKS+= ENGINE_add.3 ENGINE_unregister_digests.3
+MLINKS+= ENGINE_add.3 ENGINE_up_ref.3
+MLINKS+= ERR_GET_LIB.3 ERR_FATAL_ERROR.3
MLINKS+= ERR_GET_LIB.3 ERR_GET_FUNC.3
MLINKS+= ERR_GET_LIB.3 ERR_GET_REASON.3
MLINKS+= ERR_error_string.3 ERR_error_string_n.3
@@ -595,67 +1353,87 @@ MLINKS+= ERR_load_crypto_strings.3 ERR_free_strings.3
MLINKS+= ERR_load_crypto_strings.3 SSL_load_error_strings.3
MLINKS+= ERR_load_strings.3 ERR_PACK.3
MLINKS+= ERR_load_strings.3 ERR_get_next_error_library.3
+MLINKS+= ERR_print_errors.3 ERR_print_errors_cb.3
MLINKS+= ERR_print_errors.3 ERR_print_errors_fp.3
MLINKS+= ERR_put_error.3 ERR_add_error_data.3
+MLINKS+= ERR_put_error.3 ERR_add_error_vdata.3
MLINKS+= ERR_remove_state.3 ERR_remove_thread_state.3
MLINKS+= ERR_set_mark.3 ERR_pop_to_mark.3
+MLINKS+= EVP_CIPHER_CTX_get_cipher_data.3 EVP_CIPHER_CTX_set_cipher_data.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_dup.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_free.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_get_cleanup.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_get_ctrl.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_get_do_cipher.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_get_get_asn1_params.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_get_init.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_get_set_asn1_params.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_set_cleanup.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_set_ctrl.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_set_do_cipher.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_set_flags.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_set_get_asn1_params.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_set_impl_ctx_size.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_set_init.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_set_iv_length.3
+MLINKS+= EVP_CIPHER_meth_new.3 EVP_CIPHER_meth_set_set_asn1_params.3
MLINKS+= EVP_DigestInit.3 EVP_DigestFinal.3
+MLINKS+= EVP_DigestInit.3 EVP_DigestFinalXOF.3
MLINKS+= EVP_DigestInit.3 EVP_DigestFinal_ex.3
MLINKS+= EVP_DigestInit.3 EVP_DigestInit_ex.3
MLINKS+= EVP_DigestInit.3 EVP_DigestUpdate.3
-MLINKS+= EVP_DigestInit.3 EVP_MAX_MD_SIZE.3
MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_block_size.3
-MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_cleanup.3
+MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_clear_flags.3
MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_copy.3
MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_copy_ex.3
-MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_create.3
-MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_destroy.3
-MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_init.3
+MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_ctrl.3
+MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_free.3
MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_md.3
+MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_md_data.3
+MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_new.3
+MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_reset.3
+MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_set_flags.3
+MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_set_pkey_ctx.3
MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_size.3
+MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_test_flags.3
MLINKS+= EVP_DigestInit.3 EVP_MD_CTX_type.3
MLINKS+= EVP_DigestInit.3 EVP_MD_block_size.3
MLINKS+= EVP_DigestInit.3 EVP_MD_pkey_type.3
MLINKS+= EVP_DigestInit.3 EVP_MD_size.3
MLINKS+= EVP_DigestInit.3 EVP_MD_type.3
-MLINKS+= EVP_DigestInit.3 EVP_dss.3
-MLINKS+= EVP_DigestInit.3 EVP_dss1.3
MLINKS+= EVP_DigestInit.3 EVP_get_digestbyname.3
MLINKS+= EVP_DigestInit.3 EVP_get_digestbynid.3
MLINKS+= EVP_DigestInit.3 EVP_get_digestbyobj.3
-MLINKS+= EVP_DigestInit.3 EVP_md2.3
-MLINKS+= EVP_DigestInit.3 EVP_md5.3
MLINKS+= EVP_DigestInit.3 EVP_md_null.3
-MLINKS+= EVP_DigestInit.3 EVP_mdc2.3
-MLINKS+= EVP_DigestInit.3 EVP_ripemd160.3
-MLINKS+= EVP_DigestInit.3 EVP_sha.3
-MLINKS+= EVP_DigestInit.3 EVP_sha1.3
-MLINKS+= EVP_DigestInit.3 EVP_sha224.3
-MLINKS+= EVP_DigestInit.3 EVP_sha256.3
-MLINKS+= EVP_DigestInit.3 EVP_sha384.3
-MLINKS+= EVP_DigestInit.3 EVP_sha512.3
+MLINKS+= EVP_DigestSignInit.3 EVP_DigestSign.3
MLINKS+= EVP_DigestSignInit.3 EVP_DigestSignFinal.3
MLINKS+= EVP_DigestSignInit.3 EVP_DigestSignUpdate.3
+MLINKS+= EVP_DigestVerifyInit.3 EVP_DigestVerify.3
MLINKS+= EVP_DigestVerifyInit.3 EVP_DigestVerifyFinal.3
MLINKS+= EVP_DigestVerifyInit.3 EVP_DigestVerifyUpdate.3
MLINKS+= EVP_EncodeInit.3 EVP_DecodeBlock.3
MLINKS+= EVP_EncodeInit.3 EVP_DecodeFinal.3
MLINKS+= EVP_EncodeInit.3 EVP_DecodeInit.3
MLINKS+= EVP_EncodeInit.3 EVP_DecodeUpdate.3
+MLINKS+= EVP_EncodeInit.3 EVP_ENCODE_CTX_copy.3
+MLINKS+= EVP_EncodeInit.3 EVP_ENCODE_CTX_free.3
+MLINKS+= EVP_EncodeInit.3 EVP_ENCODE_CTX_new.3
+MLINKS+= EVP_EncodeInit.3 EVP_ENCODE_CTX_num.3
MLINKS+= EVP_EncodeInit.3 EVP_EncodeBlock.3
MLINKS+= EVP_EncodeInit.3 EVP_EncodeFinal.3
MLINKS+= EVP_EncodeInit.3 EVP_EncodeUpdate.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_block_size.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_cipher.3
-MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_cleanup.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_ctrl.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_flags.3
+MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_free.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_get_app_data.3
-MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_init.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_iv_length.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_key_length.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_mode.3
+MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_new.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_nid.3
+MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_reset.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_set_app_data.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_set_key_length.3
MLINKS+= EVP_EncryptInit.3 EVP_CIPHER_CTX_set_padding.3
@@ -683,73 +1461,92 @@ MLINKS+= EVP_EncryptInit.3 EVP_EncryptFinal.3
MLINKS+= EVP_EncryptInit.3 EVP_EncryptFinal_ex.3
MLINKS+= EVP_EncryptInit.3 EVP_EncryptInit_ex.3
MLINKS+= EVP_EncryptInit.3 EVP_EncryptUpdate.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_128_cbc_hmac_sha1.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_128_cbc_hmac_sha256.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_128_ccm.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_128_gcm.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_192_ccm.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_192_gcm.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_256_cbc_hmac_sha1.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_256_cbc_hmac_sha256.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_256_ccm.3
-MLINKS+= EVP_EncryptInit.3 EVP_aes_256_gcm.3
-MLINKS+= EVP_EncryptInit.3 EVP_bf_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_bf_cfb.3
-MLINKS+= EVP_EncryptInit.3 EVP_bf_ecb.3
-MLINKS+= EVP_EncryptInit.3 EVP_bf_ofb.3
-MLINKS+= EVP_EncryptInit.3 EVP_cast5_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_cast5_cfb.3
-MLINKS+= EVP_EncryptInit.3 EVP_cast5_ecb.3
-MLINKS+= EVP_EncryptInit.3 EVP_cast5_ofb.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_cfb.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ecb.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ede.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ede3.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ede3_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ede3_cfb.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ede3_ofb.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ede_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ede_cfb.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ede_ofb.3
-MLINKS+= EVP_EncryptInit.3 EVP_des_ofb.3
-MLINKS+= EVP_EncryptInit.3 EVP_desx_cbc.3
MLINKS+= EVP_EncryptInit.3 EVP_enc_null.3
MLINKS+= EVP_EncryptInit.3 EVP_get_cipherbyname.3
MLINKS+= EVP_EncryptInit.3 EVP_get_cipherbynid.3
MLINKS+= EVP_EncryptInit.3 EVP_get_cipherbyobj.3
-MLINKS+= EVP_EncryptInit.3 EVP_idea_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_idea_cfb.3
-MLINKS+= EVP_EncryptInit.3 EVP_idea_ecb.3
-MLINKS+= EVP_EncryptInit.3 EVP_idea_ofb.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc2_40_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc2_64_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc2_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc2_cfb.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc2_ecb.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc2_ofb.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc4.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc4_40.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc4_hmac_md5.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc5_32_12_16_cbc.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc5_32_12_16_cfb.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc5_32_12_16_ecb.3
-MLINKS+= EVP_EncryptInit.3 EVP_rc5_32_12_16_ofb.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_dup.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_free.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_app_datasize.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_cleanup.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_copy.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_ctrl.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_final.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_flags.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_init.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_input_blocksize.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_result_size.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_get_update.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_app_datasize.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_cleanup.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_copy.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_ctrl.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_final.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_flags.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_init.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_input_blocksize.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_result_size.3
+MLINKS+= EVP_MD_meth_new.3 EVP_MD_meth_set_update.3
MLINKS+= EVP_OpenInit.3 EVP_OpenFinal.3
MLINKS+= EVP_OpenInit.3 EVP_OpenUpdate.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_add0.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_add_alias.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_copy.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_free.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_new.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_check.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_ctrl.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_free.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_get_priv_key.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_get_pub_key.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_item.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_param.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_param_check.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_private.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_public.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_public_check.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_security_bits.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_set_priv_key.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_set_pub_key.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_asn1_set_siginf.3
+MLINKS+= EVP_PKEY_ASN1_METHOD.3 EVP_PKEY_get0_asn1.3
MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_ctrl_str.3
+MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_get1_id.3
+MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_get1_id_len.3
+MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_get_signature_md.3
+MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set1_id.3
+MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_dh_nid.3
+MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_dh_pad.3
MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_dh_paramgen_generator.3
MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_dh_paramgen_prime_len.3
MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_dsa_paramgen_bits.3
+MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_ec_param_enc.3
MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_ec_paramgen_curve_nid.3
+MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_mac_key.3
+MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_rsa_keygen_bits.3
MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_rsa_keygen_pubexp.3
MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_rsa_padding.3
MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_rsa_pss_saltlen.3
-MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_rsa_rsa_keygen_bits.3
MLINKS+= EVP_PKEY_CTX_ctrl.3 EVP_PKEY_CTX_set_signature_md.3
MLINKS+= EVP_PKEY_CTX_new.3 EVP_PKEY_CTX_dup.3
MLINKS+= EVP_PKEY_CTX_new.3 EVP_PKEY_CTX_free.3
MLINKS+= EVP_PKEY_CTX_new.3 EVP_PKEY_CTX_new_id.3
+MLINKS+= EVP_PKEY_CTX_set_hkdf_md.3 EVP_PKEY_CTX_add1_hkdf_info.3
+MLINKS+= EVP_PKEY_CTX_set_hkdf_md.3 EVP_PKEY_CTX_hkdf_mode.3
+MLINKS+= EVP_PKEY_CTX_set_hkdf_md.3 EVP_PKEY_CTX_set1_hkdf_key.3
+MLINKS+= EVP_PKEY_CTX_set_hkdf_md.3 EVP_PKEY_CTX_set1_hkdf_salt.3
+MLINKS+= EVP_PKEY_CTX_set_rsa_pss_keygen_md.3 EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md.3
+MLINKS+= EVP_PKEY_CTX_set_rsa_pss_keygen_md.3 EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen.3
+MLINKS+= EVP_PKEY_CTX_set_scrypt_N.3 EVP_PKEY_CTX_set1_scrypt_salt.3
+MLINKS+= EVP_PKEY_CTX_set_scrypt_N.3 EVP_PKEY_CTX_set_scrypt_maxmem_bytes.3
+MLINKS+= EVP_PKEY_CTX_set_scrypt_N.3 EVP_PKEY_CTX_set_scrypt_p.3
+MLINKS+= EVP_PKEY_CTX_set_scrypt_N.3 EVP_PKEY_CTX_set_scrypt_r.3
+MLINKS+= EVP_PKEY_CTX_set_tls1_prf_md.3 EVP_PKEY_CTX_add1_tls1_prf_seed.3
+MLINKS+= EVP_PKEY_CTX_set_tls1_prf_md.3 EVP_PKEY_CTX_set1_tls1_prf_secret.3
+MLINKS+= EVP_PKEY_asn1_get_count.3 EVP_PKEY_asn1_find.3
+MLINKS+= EVP_PKEY_asn1_get_count.3 EVP_PKEY_asn1_find_str.3
+MLINKS+= EVP_PKEY_asn1_get_count.3 EVP_PKEY_asn1_get0.3
+MLINKS+= EVP_PKEY_asn1_get_count.3 EVP_PKEY_asn1_get0_info.3
MLINKS+= EVP_PKEY_cmp.3 EVP_PKEY_cmp_parameters.3
MLINKS+= EVP_PKEY_cmp.3 EVP_PKEY_copy_parameters.3
MLINKS+= EVP_PKEY_cmp.3 EVP_PKEY_missing_parameters.3
@@ -757,77 +1554,282 @@ MLINKS+= EVP_PKEY_decrypt.3 EVP_PKEY_decrypt_init.3
MLINKS+= EVP_PKEY_derive.3 EVP_PKEY_derive_init.3
MLINKS+= EVP_PKEY_derive.3 EVP_PKEY_derive_set_peer.3
MLINKS+= EVP_PKEY_encrypt.3 EVP_PKEY_encrypt_init.3
-MLINKS+= EVP_PKEY_get_default_digest.3 EVP_PKEY_get_default_digest_nid.3
-MLINKS+= EVP_PKEY_keygen.3 EVP_PKEVP_PKEY_CTX_set_app_data.3
MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_CTX_get_app_data.3
MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_CTX_get_cb.3
MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_CTX_get_keygen_info.3
+MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_CTX_set_app_data.3
MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_CTX_set_cb.3
+MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_check.3
+MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_gen_cb.3
MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_keygen_init.3
+MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_param_check.3
MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_paramgen.3
MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_paramgen_init.3
+MLINKS+= EVP_PKEY_keygen.3 EVP_PKEY_public_check.3
+MLINKS+= EVP_PKEY_meth_get_count.3 EVP_PKEY_meth_get0.3
+MLINKS+= EVP_PKEY_meth_get_count.3 EVP_PKEY_meth_get0_info.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_METHOD.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_add0.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_copy.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_find.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_free.3
+MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_check.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_cleanup.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_copy.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_ctrl.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_decrypt.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_derive.3
+MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_digest_custom.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_encrypt.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_init.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_keygen.3
+MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_param_check.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_paramgen.3
+MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_public_check.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_sign.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_signctx.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_verify.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_verify_recover.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_get_verifyctx.3
+MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_remove.3
+MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_check.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_cleanup.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_copy.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_ctrl.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_decrypt.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_derive.3
+MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_digest_custom.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_encrypt.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_init.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_keygen.3
+MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_param_check.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_paramgen.3
+MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_public_check.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_sign.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_signctx.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_verify.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_verify_recover.3
MLINKS+= EVP_PKEY_meth_new.3 EVP_PKEY_meth_set_verifyctx.3
MLINKS+= EVP_PKEY_new.3 EVP_PKEY_free.3
+MLINKS+= EVP_PKEY_new.3 EVP_PKEY_get_raw_private_key.3
+MLINKS+= EVP_PKEY_new.3 EVP_PKEY_get_raw_public_key.3
+MLINKS+= EVP_PKEY_new.3 EVP_PKEY_new_CMAC_key.3
+MLINKS+= EVP_PKEY_new.3 EVP_PKEY_new_mac_key.3
+MLINKS+= EVP_PKEY_new.3 EVP_PKEY_new_raw_private_key.3
+MLINKS+= EVP_PKEY_new.3 EVP_PKEY_new_raw_public_key.3
+MLINKS+= EVP_PKEY_new.3 EVP_PKEY_up_ref.3
MLINKS+= EVP_PKEY_print_private.3 EVP_PKEY_print_params.3
MLINKS+= EVP_PKEY_print_private.3 EVP_PKEY_print_public.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_assign_DH.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_assign_DSA.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_assign_EC_KEY.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_assign_RSA.3
+MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_base_id.3
+MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_get0_DH.3
+MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_get0_DSA.3
+MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_get0_EC_KEY.3
+MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_get0_RSA.3
+MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_get0_hmac.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_get1_DH.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_get1_DSA.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_get1_EC_KEY.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_get1_RSA.3
+MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_id.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_set1_DH.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_set1_DSA.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_set1_EC_KEY.3
+MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_set1_engine.3
+MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_set_alias_type.3
MLINKS+= EVP_PKEY_set1_RSA.3 EVP_PKEY_type.3
MLINKS+= EVP_PKEY_sign.3 EVP_PKEY_sign_init.3
MLINKS+= EVP_PKEY_verify.3 EVP_PKEY_verify_init.3
MLINKS+= EVP_PKEY_verify_recover.3 EVP_PKEY_verify_recover_init.3
MLINKS+= EVP_SealInit.3 EVP_SealFinal.3
MLINKS+= EVP_SealInit.3 EVP_SealUpdate.3
+MLINKS+= EVP_SignInit.3 EVP_PKEY_security_bits.3
+MLINKS+= EVP_SignInit.3 EVP_PKEY_size.3
MLINKS+= EVP_SignInit.3 EVP_SignFinal.3
MLINKS+= EVP_SignInit.3 EVP_SignInit_ex.3
MLINKS+= EVP_SignInit.3 EVP_SignUpdate.3
MLINKS+= EVP_VerifyInit.3 EVP_VerifyFinal.3
+MLINKS+= EVP_VerifyInit.3 EVP_VerifyInit_ex.3
MLINKS+= EVP_VerifyInit.3 EVP_VerifyUpdate.3
+MLINKS+= EVP_aes.3 EVP_aes_128_cbc.3
+MLINKS+= EVP_aes.3 EVP_aes_128_cbc_hmac_sha1.3
+MLINKS+= EVP_aes.3 EVP_aes_128_cbc_hmac_sha256.3
+MLINKS+= EVP_aes.3 EVP_aes_128_ccm.3
+MLINKS+= EVP_aes.3 EVP_aes_128_cfb.3
+MLINKS+= EVP_aes.3 EVP_aes_128_cfb1.3
+MLINKS+= EVP_aes.3 EVP_aes_128_cfb8.3
+MLINKS+= EVP_aes.3 EVP_aes_128_ctr.3
+MLINKS+= EVP_aes.3 EVP_aes_128_ecb.3
+MLINKS+= EVP_aes.3 EVP_aes_128_gcm.3
+MLINKS+= EVP_aes.3 EVP_aes_128_ocb.3
+MLINKS+= EVP_aes.3 EVP_aes_128_ofb.3
+MLINKS+= EVP_aes.3 EVP_aes_128_wrap.3
+MLINKS+= EVP_aes.3 EVP_aes_128_wrap_pad.3
+MLINKS+= EVP_aes.3 EVP_aes_128_xts.3
+MLINKS+= EVP_aes.3 EVP_aes_192_cbc.3
+MLINKS+= EVP_aes.3 EVP_aes_192_ccm.3
+MLINKS+= EVP_aes.3 EVP_aes_192_cfb.3
+MLINKS+= EVP_aes.3 EVP_aes_192_cfb1.3
+MLINKS+= EVP_aes.3 EVP_aes_192_cfb8.3
+MLINKS+= EVP_aes.3 EVP_aes_192_ctr.3
+MLINKS+= EVP_aes.3 EVP_aes_192_ecb.3
+MLINKS+= EVP_aes.3 EVP_aes_192_gcm.3
+MLINKS+= EVP_aes.3 EVP_aes_192_ocb.3
+MLINKS+= EVP_aes.3 EVP_aes_192_ofb.3
+MLINKS+= EVP_aes.3 EVP_aes_192_wrap.3
+MLINKS+= EVP_aes.3 EVP_aes_192_wrap_pad.3
+MLINKS+= EVP_aes.3 EVP_aes_256_cbc.3
+MLINKS+= EVP_aes.3 EVP_aes_256_cbc_hmac_sha1.3
+MLINKS+= EVP_aes.3 EVP_aes_256_cbc_hmac_sha256.3
+MLINKS+= EVP_aes.3 EVP_aes_256_ccm.3
+MLINKS+= EVP_aes.3 EVP_aes_256_cfb.3
+MLINKS+= EVP_aes.3 EVP_aes_256_cfb1.3
+MLINKS+= EVP_aes.3 EVP_aes_256_cfb8.3
+MLINKS+= EVP_aes.3 EVP_aes_256_ctr.3
+MLINKS+= EVP_aes.3 EVP_aes_256_ecb.3
+MLINKS+= EVP_aes.3 EVP_aes_256_gcm.3
+MLINKS+= EVP_aes.3 EVP_aes_256_ocb.3
+MLINKS+= EVP_aes.3 EVP_aes_256_ofb.3
+MLINKS+= EVP_aes.3 EVP_aes_256_wrap.3
+MLINKS+= EVP_aes.3 EVP_aes_256_wrap_pad.3
+MLINKS+= EVP_aes.3 EVP_aes_256_xts.3
+MLINKS+= EVP_aria.3 EVP_aria_128_cbc.3
+MLINKS+= EVP_aria.3 EVP_aria_128_ccm.3
+MLINKS+= EVP_aria.3 EVP_aria_128_cfb.3
+MLINKS+= EVP_aria.3 EVP_aria_128_cfb1.3
+MLINKS+= EVP_aria.3 EVP_aria_128_cfb8.3
+MLINKS+= EVP_aria.3 EVP_aria_128_ctr.3
+MLINKS+= EVP_aria.3 EVP_aria_128_ecb.3
+MLINKS+= EVP_aria.3 EVP_aria_128_gcm.3
+MLINKS+= EVP_aria.3 EVP_aria_128_ofb.3
+MLINKS+= EVP_aria.3 EVP_aria_192_cbc.3
+MLINKS+= EVP_aria.3 EVP_aria_192_ccm.3
+MLINKS+= EVP_aria.3 EVP_aria_192_cfb.3
+MLINKS+= EVP_aria.3 EVP_aria_192_cfb1.3
+MLINKS+= EVP_aria.3 EVP_aria_192_cfb8.3
+MLINKS+= EVP_aria.3 EVP_aria_192_ctr.3
+MLINKS+= EVP_aria.3 EVP_aria_192_ecb.3
+MLINKS+= EVP_aria.3 EVP_aria_192_gcm.3
+MLINKS+= EVP_aria.3 EVP_aria_192_ofb.3
+MLINKS+= EVP_aria.3 EVP_aria_256_cbc.3
+MLINKS+= EVP_aria.3 EVP_aria_256_ccm.3
+MLINKS+= EVP_aria.3 EVP_aria_256_cfb.3
+MLINKS+= EVP_aria.3 EVP_aria_256_cfb1.3
+MLINKS+= EVP_aria.3 EVP_aria_256_cfb8.3
+MLINKS+= EVP_aria.3 EVP_aria_256_ctr.3
+MLINKS+= EVP_aria.3 EVP_aria_256_ecb.3
+MLINKS+= EVP_aria.3 EVP_aria_256_gcm.3
+MLINKS+= EVP_aria.3 EVP_aria_256_ofb.3
+MLINKS+= EVP_bf_cbc.3 EVP_bf_cfb.3
+MLINKS+= EVP_bf_cbc.3 EVP_bf_ecb.3
+MLINKS+= EVP_bf_cbc.3 EVP_bf_ofb.3
+MLINKS+= EVP_blake2b512.3 EVP_blake2s256.3
+MLINKS+= EVP_camellia.3 EVP_camellia_128_cbc.3
+MLINKS+= EVP_camellia.3 EVP_camellia_128_cfb.3
+MLINKS+= EVP_camellia.3 EVP_camellia_128_cfb1.3
+MLINKS+= EVP_camellia.3 EVP_camellia_128_cfb8.3
+MLINKS+= EVP_camellia.3 EVP_camellia_128_ctr.3
+MLINKS+= EVP_camellia.3 EVP_camellia_128_ecb.3
+MLINKS+= EVP_camellia.3 EVP_camellia_128_ofb.3
+MLINKS+= EVP_camellia.3 EVP_camellia_192_cbc.3
+MLINKS+= EVP_camellia.3 EVP_camellia_192_cfb.3
+MLINKS+= EVP_camellia.3 EVP_camellia_192_cfb1.3
+MLINKS+= EVP_camellia.3 EVP_camellia_192_cfb8.3
+MLINKS+= EVP_camellia.3 EVP_camellia_192_ctr.3
+MLINKS+= EVP_camellia.3 EVP_camellia_192_ecb.3
+MLINKS+= EVP_camellia.3 EVP_camellia_192_ofb.3
+MLINKS+= EVP_camellia.3 EVP_camellia_256_cbc.3
+MLINKS+= EVP_camellia.3 EVP_camellia_256_cfb.3
+MLINKS+= EVP_camellia.3 EVP_camellia_256_cfb1.3
+MLINKS+= EVP_camellia.3 EVP_camellia_256_cfb8.3
+MLINKS+= EVP_camellia.3 EVP_camellia_256_ctr.3
+MLINKS+= EVP_camellia.3 EVP_camellia_256_ecb.3
+MLINKS+= EVP_camellia.3 EVP_camellia_256_ofb.3
+MLINKS+= EVP_cast5_cbc.3 EVP_cast5_cfb.3
+MLINKS+= EVP_cast5_cbc.3 EVP_cast5_ecb.3
+MLINKS+= EVP_cast5_cbc.3 EVP_cast5_ofb.3
+MLINKS+= EVP_chacha20.3 EVP_chacha20_poly1305.3
+MLINKS+= EVP_des.3 EVP_des_cbc.3
+MLINKS+= EVP_des.3 EVP_des_cfb.3
+MLINKS+= EVP_des.3 EVP_des_cfb1.3
+MLINKS+= EVP_des.3 EVP_des_cfb8.3
+MLINKS+= EVP_des.3 EVP_des_ecb.3
+MLINKS+= EVP_des.3 EVP_des_ede.3
+MLINKS+= EVP_des.3 EVP_des_ede3.3
+MLINKS+= EVP_des.3 EVP_des_ede3_cbc.3
+MLINKS+= EVP_des.3 EVP_des_ede3_cfb.3
+MLINKS+= EVP_des.3 EVP_des_ede3_cfb1.3
+MLINKS+= EVP_des.3 EVP_des_ede3_cfb8.3
+MLINKS+= EVP_des.3 EVP_des_ede3_ofb.3
+MLINKS+= EVP_des.3 EVP_des_ede3_wrap.3
+MLINKS+= EVP_des.3 EVP_des_ede_cbc.3
+MLINKS+= EVP_des.3 EVP_des_ede_cfb.3
+MLINKS+= EVP_des.3 EVP_des_ede_ofb.3
+MLINKS+= EVP_des.3 EVP_des_ofb.3
+MLINKS+= EVP_idea_cbc.3 EVP_idea_cfb.3
+MLINKS+= EVP_idea_cbc.3 EVP_idea_ecb.3
+MLINKS+= EVP_idea_cbc.3 EVP_idea_ofb.3
+MLINKS+= EVP_rc2_cbc.3 EVP_rc2_40_cbc.3
+MLINKS+= EVP_rc2_cbc.3 EVP_rc2_64_cbc.3
+MLINKS+= EVP_rc2_cbc.3 EVP_rc2_cfb.3
+MLINKS+= EVP_rc2_cbc.3 EVP_rc2_ecb.3
+MLINKS+= EVP_rc2_cbc.3 EVP_rc2_ofb.3
+MLINKS+= EVP_rc4.3 EVP_rc4_40.3
+MLINKS+= EVP_rc4.3 EVP_rc4_hmac_md5.3
+MLINKS+= EVP_rc5_32_12_16_cbc.3 EVP_rc5_32_12_16_cfb.3
+MLINKS+= EVP_rc5_32_12_16_cbc.3 EVP_rc5_32_12_16_ecb.3
+MLINKS+= EVP_rc5_32_12_16_cbc.3 EVP_rc5_32_12_16_ofb.3
+MLINKS+= EVP_seed_cbc.3 EVP_seed_cfb.3
+MLINKS+= EVP_seed_cbc.3 EVP_seed_ecb.3
+MLINKS+= EVP_seed_cbc.3 EVP_seed_ofb.3
+MLINKS+= EVP_sha224.3 EVP_sha256.3
+MLINKS+= EVP_sha224.3 EVP_sha384.3
+MLINKS+= EVP_sha224.3 EVP_sha512.3
+MLINKS+= EVP_sha224.3 EVP_sha512_224.3
+MLINKS+= EVP_sha224.3 EVP_sha512_256.3
+MLINKS+= EVP_sha3_224.3 EVP_sha3_256.3
+MLINKS+= EVP_sha3_224.3 EVP_sha3_384.3
+MLINKS+= EVP_sha3_224.3 EVP_sha3_512.3
+MLINKS+= EVP_sha3_224.3 EVP_shake128.3
+MLINKS+= EVP_sha3_224.3 EVP_shake256.3
+MLINKS+= EVP_sm4_cbc.3 EVP_sm4_cfb.3
+MLINKS+= EVP_sm4_cbc.3 EVP_sm4_ctr.3
+MLINKS+= EVP_sm4_cbc.3 EVP_sm4_ecb.3
+MLINKS+= EVP_sm4_cbc.3 EVP_sm4_ofb.3
+MLINKS+= HMAC.3 HMAC_CTX_copy.3
+MLINKS+= HMAC.3 HMAC_CTX_free.3
+MLINKS+= HMAC.3 HMAC_CTX_get_md.3
+MLINKS+= HMAC.3 HMAC_CTX_new.3
+MLINKS+= HMAC.3 HMAC_CTX_reset.3
+MLINKS+= HMAC.3 HMAC_CTX_set_flags.3
+MLINKS+= HMAC.3 HMAC_Final.3
+MLINKS+= HMAC.3 HMAC_Init.3
+MLINKS+= HMAC.3 HMAC_Init_ex.3
+MLINKS+= HMAC.3 HMAC_Update.3
+MLINKS+= HMAC.3 HMAC_size.3
+MLINKS+= MD5.3 MD2.3
+MLINKS+= MD5.3 MD2_Final.3
+MLINKS+= MD5.3 MD2_Init.3
+MLINKS+= MD5.3 MD2_Update.3
+MLINKS+= MD5.3 MD4.3
+MLINKS+= MD5.3 MD4_Final.3
+MLINKS+= MD5.3 MD4_Init.3
+MLINKS+= MD5.3 MD4_Update.3
+MLINKS+= MD5.3 MD5_Final.3
+MLINKS+= MD5.3 MD5_Init.3
+MLINKS+= MD5.3 MD5_Update.3
+MLINKS+= MDC2_Init.3 MDC2.3
+MLINKS+= MDC2_Init.3 MDC2_Final.3
+MLINKS+= MDC2_Init.3 MDC2_Update.3
MLINKS+= OBJ_nid2obj.3 OBJ_cleanup.3
MLINKS+= OBJ_nid2obj.3 OBJ_cmp.3
MLINKS+= OBJ_nid2obj.3 OBJ_create.3
MLINKS+= OBJ_nid2obj.3 OBJ_dup.3
+MLINKS+= OBJ_nid2obj.3 OBJ_get0_data.3
+MLINKS+= OBJ_nid2obj.3 OBJ_length.3
MLINKS+= OBJ_nid2obj.3 OBJ_ln2nid.3
MLINKS+= OBJ_nid2obj.3 OBJ_nid2ln.3
MLINKS+= OBJ_nid2obj.3 OBJ_nid2sn.3
@@ -836,32 +1838,400 @@ MLINKS+= OBJ_nid2obj.3 OBJ_obj2txt.3
MLINKS+= OBJ_nid2obj.3 OBJ_sn2nid.3
MLINKS+= OBJ_nid2obj.3 OBJ_txt2nid.3
MLINKS+= OBJ_nid2obj.3 OBJ_txt2obj.3
-MLINKS+= OPENSSL_VERSION_NUMBER.3 SSLeay.3
-MLINKS+= OPENSSL_VERSION_NUMBER.3 SSLeay_version.3
+MLINKS+= OBJ_nid2obj.3 i2t_ASN1_OBJECT.3
+MLINKS+= OCSP_REQUEST_new.3 OCSP_REQUEST_free.3
+MLINKS+= OCSP_REQUEST_new.3 OCSP_request_add0_id.3
+MLINKS+= OCSP_REQUEST_new.3 OCSP_request_add1_cert.3
+MLINKS+= OCSP_REQUEST_new.3 OCSP_request_onereq_count.3
+MLINKS+= OCSP_REQUEST_new.3 OCSP_request_onereq_get0.3
+MLINKS+= OCSP_REQUEST_new.3 OCSP_request_sign.3
+MLINKS+= OCSP_cert_to_id.3 OCSP_CERTID_free.3
+MLINKS+= OCSP_cert_to_id.3 OCSP_cert_id_new.3
+MLINKS+= OCSP_cert_to_id.3 OCSP_id_cmp.3
+MLINKS+= OCSP_cert_to_id.3 OCSP_id_get0_info.3
+MLINKS+= OCSP_cert_to_id.3 OCSP_id_issuer_cmp.3
+MLINKS+= OCSP_request_add1_nonce.3 OCSP_basic_add1_nonce.3
+MLINKS+= OCSP_request_add1_nonce.3 OCSP_check_nonce.3
+MLINKS+= OCSP_request_add1_nonce.3 OCSP_copy_nonce.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_basic_verify.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_check_validity.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_count.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_find.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_get0.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_get0_certs.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_get0_id.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_get0_produced_at.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_get0_respdata.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_get0_signature.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_get0_signer.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_get0_tbs_sigalg.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_resp_get1_id.3
+MLINKS+= OCSP_resp_find_status.3 OCSP_single_get0_status.3
+MLINKS+= OCSP_response_status.3 OCSP_RESPID_match.3
+MLINKS+= OCSP_response_status.3 OCSP_RESPID_set_by_key.3
+MLINKS+= OCSP_response_status.3 OCSP_RESPID_set_by_name.3
+MLINKS+= OCSP_response_status.3 OCSP_RESPONSE_free.3
+MLINKS+= OCSP_response_status.3 OCSP_basic_sign.3
+MLINKS+= OCSP_response_status.3 OCSP_basic_sign_ctx.3
+MLINKS+= OCSP_response_status.3 OCSP_response_create.3
+MLINKS+= OCSP_response_status.3 OCSP_response_get1_basic.3
+MLINKS+= OCSP_sendreq_new.3 OCSP_REQ_CTX_add1_header.3
+MLINKS+= OCSP_sendreq_new.3 OCSP_REQ_CTX_free.3
+MLINKS+= OCSP_sendreq_new.3 OCSP_REQ_CTX_set1_req.3
+MLINKS+= OCSP_sendreq_new.3 OCSP_sendreq_bio.3
+MLINKS+= OCSP_sendreq_new.3 OCSP_sendreq_nbio.3
+MLINKS+= OCSP_sendreq_new.3 OCSP_set_max_response_length.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 DECLARE_LHASH_OF.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 IMPLEMENT_LHASH_COMP_FN.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 IMPLEMENT_LHASH_HASH_FN.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 LHASH.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 LHASH_DOALL_ARG_FN_TYPE.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 OPENSSL_LH_DOALL_FUNC.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 OPENSSL_LH_HASHFUNC.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 lh_TYPE_delete.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 lh_TYPE_doall.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 lh_TYPE_doall_arg.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 lh_TYPE_error.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 lh_TYPE_free.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 lh_TYPE_insert.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 lh_TYPE_new.3
+MLINKS+= OPENSSL_LH_COMPFUNC.3 lh_TYPE_retrieve.3
+MLINKS+= OPENSSL_LH_stats.3 OPENSSL_LH_node_stats.3
+MLINKS+= OPENSSL_LH_stats.3 OPENSSL_LH_node_stats_bio.3
+MLINKS+= OPENSSL_LH_stats.3 OPENSSL_LH_node_usage_stats.3
+MLINKS+= OPENSSL_LH_stats.3 OPENSSL_LH_node_usage_stats_bio.3
+MLINKS+= OPENSSL_LH_stats.3 OPENSSL_LH_stats_bio.3
+MLINKS+= OPENSSL_VERSION_NUMBER.3 OpenSSL_version.3
+MLINKS+= OPENSSL_VERSION_NUMBER.3 OpenSSL_version_num.3
MLINKS+= OPENSSL_config.3 OPENSSL_no_config.3
-MLINKS+= OPENSSL_ia32cap.3 OPENSSL_ia32cap_loc.3
+MLINKS+= OPENSSL_fork_prepare.3 OPENSSL_fork_child.3
+MLINKS+= OPENSSL_fork_prepare.3 OPENSSL_fork_parent.3
+MLINKS+= OPENSSL_init_crypto.3 OPENSSL_INIT_free.3
+MLINKS+= OPENSSL_init_crypto.3 OPENSSL_INIT_new.3
+MLINKS+= OPENSSL_init_crypto.3 OPENSSL_INIT_set_config_appname.3
+MLINKS+= OPENSSL_init_crypto.3 OPENSSL_atexit.3
+MLINKS+= OPENSSL_init_crypto.3 OPENSSL_cleanup.3
+MLINKS+= OPENSSL_init_crypto.3 OPENSSL_thread_stop.3
MLINKS+= OPENSSL_instrument_bus.3 OPENSSL_instrument_bus2.3
MLINKS+= OPENSSL_load_builtin_modules.3 ASN1_add_oid_module.3
MLINKS+= OPENSSL_load_builtin_modules.3 ENGINE_add_conf_module.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_clear_free.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_clear_realloc.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_free.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_get_alloc_counts.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_get_mem_functions.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_malloc.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_mem_ctrl.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_mem_debug_pop.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_mem_debug_push.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_mem_leaks.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_mem_leaks_cb.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_mem_leaks_fp.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_realloc.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_set_mem_debug.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_set_mem_functions.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_strdup.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_strndup.3
+MLINKS+= OPENSSL_malloc.3 CRYPTO_zalloc.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_MALLOC_FAILURES.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_MALLOC_FD.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_buf2hexstr.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_cleanse.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_clear_free.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_clear_realloc.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_free.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_hexchar2int.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_hexstr2buf.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_malloc_init.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_mem_debug_pop.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_mem_debug_push.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_memdup.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_realloc.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_strdup.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_strlcat.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_strlcpy.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_strndup.3
+MLINKS+= OPENSSL_malloc.3 OPENSSL_zalloc.3
+MLINKS+= OPENSSL_secure_malloc.3 CRYPTO_secure_clear_free.3
+MLINKS+= OPENSSL_secure_malloc.3 CRYPTO_secure_free.3
+MLINKS+= OPENSSL_secure_malloc.3 CRYPTO_secure_malloc.3
+MLINKS+= OPENSSL_secure_malloc.3 CRYPTO_secure_malloc_done.3
+MLINKS+= OPENSSL_secure_malloc.3 CRYPTO_secure_malloc_init.3
+MLINKS+= OPENSSL_secure_malloc.3 CRYPTO_secure_malloc_initialized.3
+MLINKS+= OPENSSL_secure_malloc.3 CRYPTO_secure_used.3
+MLINKS+= OPENSSL_secure_malloc.3 CRYPTO_secure_zalloc.3
+MLINKS+= OPENSSL_secure_malloc.3 OPENSSL_secure_actual_size.3
+MLINKS+= OPENSSL_secure_malloc.3 OPENSSL_secure_clear_free.3
+MLINKS+= OPENSSL_secure_malloc.3 OPENSSL_secure_free.3
+MLINKS+= OPENSSL_secure_malloc.3 OPENSSL_secure_zalloc.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_free.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get0_CERT.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get0_CRL.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get0_NAME.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get0_NAME_description.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get0_PARAMS.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get0_PKEY.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get1_CERT.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get1_CRL.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get1_NAME.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get1_NAME_description.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get1_PARAMS.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get1_PKEY.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_get_type.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_new_CERT.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_new_CRL.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_new_NAME.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_new_PARAMS.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_new_PKEY.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_set0_NAME_description.3
+MLINKS+= OSSL_STORE_INFO.3 OSSL_STORE_INFO_type_string.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_CTX.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_free.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_get0_engine.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_get0_scheme.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_new.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_set_close.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_set_ctrl.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_set_eof.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_set_error.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_set_expect.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_set_find.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_set_load.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_LOADER_set_open.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_close_fn.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_ctrl_fn.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_eof_fn.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_error_fn.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_expect_fn.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_find_fn.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_load_fn.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_open_fn.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_register_loader.3
+MLINKS+= OSSL_STORE_LOADER.3 OSSL_STORE_unregister_loader.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_by_alias.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_by_issuer_serial.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_by_key_fingerprint.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_by_name.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_free.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_get0_bytes.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_get0_digest.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_get0_name.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_get0_serial.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_get0_string.3
+MLINKS+= OSSL_STORE_SEARCH.3 OSSL_STORE_SEARCH_get_type.3
+MLINKS+= OSSL_STORE_expect.3 OSSL_STORE_find.3
+MLINKS+= OSSL_STORE_expect.3 OSSL_STORE_supports_search.3
+MLINKS+= OSSL_STORE_open.3 OSSL_STORE_CTX.3
+MLINKS+= OSSL_STORE_open.3 OSSL_STORE_close.3
+MLINKS+= OSSL_STORE_open.3 OSSL_STORE_ctrl.3
+MLINKS+= OSSL_STORE_open.3 OSSL_STORE_eof.3
+MLINKS+= OSSL_STORE_open.3 OSSL_STORE_error.3
+MLINKS+= OSSL_STORE_open.3 OSSL_STORE_load.3
+MLINKS+= OSSL_STORE_open.3 OSSL_STORE_post_process_info_fn.3
MLINKS+= OpenSSL_add_all_algorithms.3 EVP_cleanup.3
MLINKS+= OpenSSL_add_all_algorithms.3 OpenSSL_add_all_ciphers.3
MLINKS+= OpenSSL_add_all_algorithms.3 OpenSSL_add_all_digests.3
+MLINKS+= PEM_bytes_read_bio.3 PEM_bytes_read_bio_secmem.3
+MLINKS+= PEM_read.3 PEM_do_header.3
+MLINKS+= PEM_read.3 PEM_get_EVP_CIPHER_INFO.3
+MLINKS+= PEM_read.3 PEM_read_bio.3
+MLINKS+= PEM_read.3 PEM_write.3
+MLINKS+= PEM_read.3 PEM_write_bio.3
+MLINKS+= PEM_read_CMS.3 DECLARE_PEM_rw.3
+MLINKS+= PEM_read_CMS.3 PEM_read_ECPKParameters.3
+MLINKS+= PEM_read_CMS.3 PEM_read_ECPrivateKey.3
+MLINKS+= PEM_read_CMS.3 PEM_read_EC_PUBKEY.3
+MLINKS+= PEM_read_CMS.3 PEM_read_NETSCAPE_CERT_SEQUENCE.3
+MLINKS+= PEM_read_CMS.3 PEM_read_PKCS8.3
+MLINKS+= PEM_read_CMS.3 PEM_read_PKCS8_PRIV_KEY_INFO.3
+MLINKS+= PEM_read_CMS.3 PEM_read_SSL_SESSION.3
+MLINKS+= PEM_read_CMS.3 PEM_read_bio_CMS.3
+MLINKS+= PEM_read_CMS.3 PEM_read_bio_ECPKParameters.3
+MLINKS+= PEM_read_CMS.3 PEM_read_bio_EC_PUBKEY.3
+MLINKS+= PEM_read_CMS.3 PEM_read_bio_NETSCAPE_CERT_SEQUENCE.3
+MLINKS+= PEM_read_CMS.3 PEM_read_bio_PKCS8.3
+MLINKS+= PEM_read_CMS.3 PEM_read_bio_PKCS8_PRIV_KEY_INFO.3
+MLINKS+= PEM_read_CMS.3 PEM_read_bio_SSL_SESSION.3
+MLINKS+= PEM_read_CMS.3 PEM_write_CMS.3
+MLINKS+= PEM_read_CMS.3 PEM_write_DHxparams.3
+MLINKS+= PEM_read_CMS.3 PEM_write_ECPKParameters.3
+MLINKS+= PEM_read_CMS.3 PEM_write_ECPrivateKey.3
+MLINKS+= PEM_read_CMS.3 PEM_write_EC_PUBKEY.3
+MLINKS+= PEM_read_CMS.3 PEM_write_NETSCAPE_CERT_SEQUENCE.3
+MLINKS+= PEM_read_CMS.3 PEM_write_PKCS8.3
+MLINKS+= PEM_read_CMS.3 PEM_write_PKCS8_PRIV_KEY_INFO.3
+MLINKS+= PEM_read_CMS.3 PEM_write_SSL_SESSION.3
+MLINKS+= PEM_read_CMS.3 PEM_write_bio_CMS.3
+MLINKS+= PEM_read_CMS.3 PEM_write_bio_DHxparams.3
+MLINKS+= PEM_read_CMS.3 PEM_write_bio_ECPKParameters.3
+MLINKS+= PEM_read_CMS.3 PEM_write_bio_ECPrivateKey.3
+MLINKS+= PEM_read_CMS.3 PEM_write_bio_EC_PUBKEY.3
+MLINKS+= PEM_read_CMS.3 PEM_write_bio_NETSCAPE_CERT_SEQUENCE.3
+MLINKS+= PEM_read_CMS.3 PEM_write_bio_PKCS8.3
+MLINKS+= PEM_read_CMS.3 PEM_write_bio_PKCS8_PRIV_KEY_INFO.3
+MLINKS+= PEM_read_CMS.3 PEM_write_bio_SSL_SESSION.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_DHparams.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_DSAPrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_DSA_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_DSAparams.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_PKCS7.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_PrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_RSAPrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_RSAPublicKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_RSA_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_X509.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_X509_AUX.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_X509_CRL.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_X509_REQ.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_DHparams.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_DSAPrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_DSA_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_DSAparams.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_PKCS7.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_RSAPrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_RSAPublicKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_RSA_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_X509.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_X509_AUX.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_X509_CRL.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_read_bio_X509_REQ.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_DHparams.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_DSAPrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_DSA_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_DSAparams.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_PKCS7.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_PKCS8PrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_PKCS8PrivateKey_nid.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_PrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_RSAPrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_RSAPublicKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_RSA_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_X509.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_X509_AUX.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_X509_CRL.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_X509_REQ.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_X509_REQ_NEW.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_DHparams.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_DSAPrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_DSA_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_DSAparams.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_PKCS7.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_PKCS8PrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_PKCS8PrivateKey_nid.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_PrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_PrivateKey_traditional.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_RSAPrivateKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_RSAPublicKey.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_RSA_PUBKEY.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_X509.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_X509_AUX.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_X509_CRL.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_X509_REQ.3
+MLINKS+= PEM_read_bio_PrivateKey.3 PEM_write_bio_X509_REQ_NEW.3
+MLINKS+= PEM_read_bio_PrivateKey.3 pem_password_cb.3
+MLINKS+= PEM_read_bio_ex.3 PEM_FLAG_EAY_COMPATIBLE.3
+MLINKS+= PEM_read_bio_ex.3 PEM_FLAG_ONLY_B64.3
+MLINKS+= PEM_read_bio_ex.3 PEM_FLAG_SECURE.3
+MLINKS+= PKCS5_PBKDF2_HMAC.3 PKCS5_PBKDF2_HMAC_SHA1.3
MLINKS+= PKCS7_verify.3 PKCS7_get0_signers.3
+MLINKS+= RAND_DRBG_generate.3 RAND_DRBG_bytes.3
+MLINKS+= RAND_DRBG_get0_master.3 RAND_DRBG_get0_private.3
+MLINKS+= RAND_DRBG_get0_master.3 RAND_DRBG_get0_public.3
+MLINKS+= RAND_DRBG_new.3 RAND_DRBG_free.3
+MLINKS+= RAND_DRBG_new.3 RAND_DRBG_instantiate.3
+MLINKS+= RAND_DRBG_new.3 RAND_DRBG_secure_new.3
+MLINKS+= RAND_DRBG_new.3 RAND_DRBG_set.3
+MLINKS+= RAND_DRBG_new.3 RAND_DRBG_set_defaults.3
+MLINKS+= RAND_DRBG_new.3 RAND_DRBG_uninstantiate.3
+MLINKS+= RAND_DRBG_reseed.3 RAND_DRBG_set_reseed_defaults.3
+MLINKS+= RAND_DRBG_reseed.3 RAND_DRBG_set_reseed_interval.3
+MLINKS+= RAND_DRBG_reseed.3 RAND_DRBG_set_reseed_time_interval.3
+MLINKS+= RAND_DRBG_set_callbacks.3 RAND_DRBG_cleanup_entropy_fn.3
+MLINKS+= RAND_DRBG_set_callbacks.3 RAND_DRBG_cleanup_nonce_fn.3
+MLINKS+= RAND_DRBG_set_callbacks.3 RAND_DRBG_get_entropy_fn.3
+MLINKS+= RAND_DRBG_set_callbacks.3 RAND_DRBG_get_nonce_fn.3
+MLINKS+= RAND_DRBG_set_ex_data.3 RAND_DRBG_get_ex_data.3
+MLINKS+= RAND_DRBG_set_ex_data.3 RAND_DRBG_get_ex_new_index.3
MLINKS+= RAND_add.3 RAND_event.3
+MLINKS+= RAND_add.3 RAND_keep_random_devices_open.3
+MLINKS+= RAND_add.3 RAND_poll.3
MLINKS+= RAND_add.3 RAND_screen.3
MLINKS+= RAND_add.3 RAND_seed.3
MLINKS+= RAND_add.3 RAND_status.3
+MLINKS+= RAND_bytes.3 RAND_priv_bytes.3
MLINKS+= RAND_bytes.3 RAND_pseudo_bytes.3
MLINKS+= RAND_egd.3 RAND_egd_bytes.3
MLINKS+= RAND_egd.3 RAND_query_egd_bytes.3
MLINKS+= RAND_load_file.3 RAND_file_name.3
MLINKS+= RAND_load_file.3 RAND_write_file.3
-MLINKS+= RAND_set_rand_method.3 RAND_SSLeay.3
+MLINKS+= RAND_set_rand_method.3 RAND_OpenSSL.3
MLINKS+= RAND_set_rand_method.3 RAND_get_rand_method.3
+MLINKS+= RC4_set_key.3 RC4.3
+MLINKS+= RIPEMD160_Init.3 RIPEMD160.3
+MLINKS+= RIPEMD160_Init.3 RIPEMD160_Final.3
+MLINKS+= RIPEMD160_Init.3 RIPEMD160_Update.3
MLINKS+= RSA_blinding_on.3 RSA_blinding_off.3
+MLINKS+= RSA_check_key.3 RSA_check_key_ex.3
MLINKS+= RSA_generate_key.3 RSA_generate_key_ex.3
-MLINKS+= RSA_get_ex_new_index.3 RSA_get_ex_data.3
-MLINKS+= RSA_get_ex_new_index.3 RSA_set_ex_data.3
+MLINKS+= RSA_generate_key.3 RSA_generate_multi_prime_key.3
+MLINKS+= RSA_get0_key.3 RSA_clear_flags.3
+MLINKS+= RSA_get0_key.3 RSA_get0_crt_params.3
+MLINKS+= RSA_get0_key.3 RSA_get0_d.3
+MLINKS+= RSA_get0_key.3 RSA_get0_dmp1.3
+MLINKS+= RSA_get0_key.3 RSA_get0_dmq1.3
+MLINKS+= RSA_get0_key.3 RSA_get0_e.3
+MLINKS+= RSA_get0_key.3 RSA_get0_engine.3
+MLINKS+= RSA_get0_key.3 RSA_get0_factors.3
+MLINKS+= RSA_get0_key.3 RSA_get0_iqmp.3
+MLINKS+= RSA_get0_key.3 RSA_get0_multi_prime_crt_params.3
+MLINKS+= RSA_get0_key.3 RSA_get0_multi_prime_factors.3
+MLINKS+= RSA_get0_key.3 RSA_get0_n.3
+MLINKS+= RSA_get0_key.3 RSA_get0_p.3
+MLINKS+= RSA_get0_key.3 RSA_get0_q.3
+MLINKS+= RSA_get0_key.3 RSA_get_multi_prime_extra_count.3
+MLINKS+= RSA_get0_key.3 RSA_get_version.3
+MLINKS+= RSA_get0_key.3 RSA_set0_crt_params.3
+MLINKS+= RSA_get0_key.3 RSA_set0_factors.3
+MLINKS+= RSA_get0_key.3 RSA_set0_key.3
+MLINKS+= RSA_get0_key.3 RSA_set0_multi_prime_params.3
+MLINKS+= RSA_get0_key.3 RSA_set_flags.3
+MLINKS+= RSA_get0_key.3 RSA_test_flags.3
+MLINKS+= RSA_meth_new.3 RSA_meth_dup.3
+MLINKS+= RSA_meth_new.3 RSA_meth_free.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get0_app_data.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get0_name.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_bn_mod_exp.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_finish.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_flags.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_init.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_keygen.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_mod_exp.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_multi_prime_keygen.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_priv_dec.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_priv_enc.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_pub_dec.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_pub_enc.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_sign.3
+MLINKS+= RSA_meth_new.3 RSA_meth_get_verify.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set0_app_data.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set1_name.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_bn_mod_exp.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_finish.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_flags.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_init.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_keygen.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_mod_exp.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_multi_prime_keygen.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_priv_dec.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_priv_enc.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_pub_dec.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_pub_enc.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_sign.3
+MLINKS+= RSA_meth_new.3 RSA_meth_set_verify.3
MLINKS+= RSA_new.3 RSA_free.3
MLINKS+= RSA_padding_add_PKCS1_type_1.3 RSA_padding_add_PKCS1_OAEP.3
MLINKS+= RSA_padding_add_PKCS1_type_1.3 RSA_padding_add_PKCS1_type_2.3
@@ -881,15 +2251,628 @@ MLINKS+= RSA_print.3 DSAparams_print_fp.3
MLINKS+= RSA_print.3 RSA_print_fp.3
MLINKS+= RSA_private_encrypt.3 RSA_public_decrypt.3
MLINKS+= RSA_public_encrypt.3 RSA_private_decrypt.3
-MLINKS+= RSA_set_method.3 RSA_PKCS1_SSLeay.3
+MLINKS+= RSA_set_method.3 RSA_PKCS1_OpenSSL.3
MLINKS+= RSA_set_method.3 RSA_flags.3
MLINKS+= RSA_set_method.3 RSA_get_default_method.3
MLINKS+= RSA_set_method.3 RSA_get_method.3
MLINKS+= RSA_set_method.3 RSA_new_method.3
-MLINKS+= RSA_set_method.3 RSA_null_method.3
MLINKS+= RSA_set_method.3 RSA_set_default_method.3
MLINKS+= RSA_sign.3 RSA_verify.3
MLINKS+= RSA_sign_ASN1_OCTET_STRING.3 RSA_verify_ASN1_OCTET_STRING.3
+MLINKS+= RSA_size.3 RSA_bits.3
+MLINKS+= RSA_size.3 RSA_security_bits.3
+MLINKS+= SCT_new.3 SCT_LIST_free.3
+MLINKS+= SCT_new.3 SCT_free.3
+MLINKS+= SCT_new.3 SCT_get0_extensions.3
+MLINKS+= SCT_new.3 SCT_get0_log_id.3
+MLINKS+= SCT_new.3 SCT_get0_signature.3
+MLINKS+= SCT_new.3 SCT_get_log_entry_type.3
+MLINKS+= SCT_new.3 SCT_get_signature_nid.3
+MLINKS+= SCT_new.3 SCT_get_source.3
+MLINKS+= SCT_new.3 SCT_get_timestamp.3
+MLINKS+= SCT_new.3 SCT_get_version.3
+MLINKS+= SCT_new.3 SCT_new_from_base64.3
+MLINKS+= SCT_new.3 SCT_set0_extensions.3
+MLINKS+= SCT_new.3 SCT_set0_log_id.3
+MLINKS+= SCT_new.3 SCT_set0_signature.3
+MLINKS+= SCT_new.3 SCT_set1_extensions.3
+MLINKS+= SCT_new.3 SCT_set1_log_id.3
+MLINKS+= SCT_new.3 SCT_set1_signature.3
+MLINKS+= SCT_new.3 SCT_set_log_entry_type.3
+MLINKS+= SCT_new.3 SCT_set_signature_nid.3
+MLINKS+= SCT_new.3 SCT_set_source.3
+MLINKS+= SCT_new.3 SCT_set_timestamp.3
+MLINKS+= SCT_new.3 SCT_set_version.3
+MLINKS+= SCT_print.3 SCT_LIST_print.3
+MLINKS+= SCT_print.3 SCT_validation_status_string.3
+MLINKS+= SCT_validate.3 SCT_LIST_validate.3
+MLINKS+= SCT_validate.3 SCT_get_validation_status.3
+MLINKS+= SHA256_Init.3 SHA1.3
+MLINKS+= SHA256_Init.3 SHA1_Final.3
+MLINKS+= SHA256_Init.3 SHA1_Init.3
+MLINKS+= SHA256_Init.3 SHA1_Update.3
+MLINKS+= SHA256_Init.3 SHA224.3
+MLINKS+= SHA256_Init.3 SHA224_Final.3
+MLINKS+= SHA256_Init.3 SHA224_Init.3
+MLINKS+= SHA256_Init.3 SHA224_Update.3
+MLINKS+= SHA256_Init.3 SHA256.3
+MLINKS+= SHA256_Init.3 SHA256_Final.3
+MLINKS+= SHA256_Init.3 SHA256_Update.3
+MLINKS+= SHA256_Init.3 SHA384.3
+MLINKS+= SHA256_Init.3 SHA384_Final.3
+MLINKS+= SHA256_Init.3 SHA384_Init.3
+MLINKS+= SHA256_Init.3 SHA384_Update.3
+MLINKS+= SHA256_Init.3 SHA512.3
+MLINKS+= SHA256_Init.3 SHA512_Final.3
+MLINKS+= SHA256_Init.3 SHA512_Init.3
+MLINKS+= SHA256_Init.3 SHA512_Update.3
+MLINKS+= SSL_CIPHER_get_name.3 OPENSSL_cipher_name.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_description.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_find.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_get_auth_nid.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_get_bits.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_get_cipher_nid.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_get_digest_nid.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_get_handshake_digest.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_get_id.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_get_kx_nid.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_get_protocol_id.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_get_version.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_is_aead.3
+MLINKS+= SSL_CIPHER_get_name.3 SSL_CIPHER_standard_name.3
+MLINKS+= SSL_COMP_add_compression_method.3 SSL_COMP_free_compression_methods.3
+MLINKS+= SSL_COMP_add_compression_method.3 SSL_COMP_get0_name.3
+MLINKS+= SSL_COMP_add_compression_method.3 SSL_COMP_get_compression_methods.3
+MLINKS+= SSL_COMP_add_compression_method.3 SSL_COMP_get_id.3
+MLINKS+= SSL_CONF_CTX_new.3 SSL_CONF_CTX_free.3
+MLINKS+= SSL_CONF_CTX_set_flags.3 SSL_CONF_CTX_clear_flags.3
+MLINKS+= SSL_CONF_CTX_set_ssl_ctx.3 SSL_CONF_CTX_set_ssl.3
+MLINKS+= SSL_CONF_cmd.3 SSL_CONF_cmd_value_type.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_CTX_add0_chain_cert.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_CTX_build_cert_chain.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_CTX_clear_chain_certs.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_CTX_get0_chain_certs.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_CTX_select_current_cert.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_CTX_set0_chain.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_CTX_set1_chain.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_CTX_set_current_cert.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_add0_chain_cert.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_add1_chain_cert.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_build_cert_chain.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_clear_chain_certs.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_get0_chain_certs.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_select_current_cert.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_set0_chain.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_set1_chain.3
+MLINKS+= SSL_CTX_add1_chain_cert.3 SSL_set_current_cert.3
+MLINKS+= SSL_CTX_add_extra_chain_cert.3 SSL_CTX_clear_extra_chain_certs.3
+MLINKS+= SSL_CTX_add_session.3 SSL_CTX_remove_session.3
+MLINKS+= SSL_CTX_config.3 SSL_config.3
+MLINKS+= SSL_CTX_ctrl.3 SSL_CTX_callback_ctrl.3
+MLINKS+= SSL_CTX_ctrl.3 SSL_callback_ctrl.3
+MLINKS+= SSL_CTX_ctrl.3 SSL_ctrl.3
+MLINKS+= SSL_CTX_dane_enable.3 SSL_CTX_dane_clear_flags.3
+MLINKS+= SSL_CTX_dane_enable.3 SSL_CTX_dane_mtype_set.3
+MLINKS+= SSL_CTX_dane_enable.3 SSL_CTX_dane_set_flags.3
+MLINKS+= SSL_CTX_dane_enable.3 SSL_dane_clear_flags.3
+MLINKS+= SSL_CTX_dane_enable.3 SSL_dane_enable.3
+MLINKS+= SSL_CTX_dane_enable.3 SSL_dane_set_flags.3
+MLINKS+= SSL_CTX_dane_enable.3 SSL_dane_tlsa_add.3
+MLINKS+= SSL_CTX_dane_enable.3 SSL_get0_dane_authority.3
+MLINKS+= SSL_CTX_dane_enable.3 SSL_get0_dane_tlsa.3
+MLINKS+= SSL_CTX_get0_param.3 SSL_CTX_set1_param.3
+MLINKS+= SSL_CTX_get0_param.3 SSL_get0_param.3
+MLINKS+= SSL_CTX_get0_param.3 SSL_set1_param.3
+MLINKS+= SSL_CTX_get_verify_mode.3 SSL_CTX_get_verify_callback.3
+MLINKS+= SSL_CTX_get_verify_mode.3 SSL_CTX_get_verify_depth.3
+MLINKS+= SSL_CTX_get_verify_mode.3 SSL_get_verify_callback.3
+MLINKS+= SSL_CTX_get_verify_mode.3 SSL_get_verify_depth.3
+MLINKS+= SSL_CTX_get_verify_mode.3 SSL_get_verify_mode.3
+MLINKS+= SSL_CTX_load_verify_locations.3 SSL_CTX_set_default_verify_dir.3
+MLINKS+= SSL_CTX_load_verify_locations.3 SSL_CTX_set_default_verify_file.3
+MLINKS+= SSL_CTX_load_verify_locations.3 SSL_CTX_set_default_verify_paths.3
+MLINKS+= SSL_CTX_new.3 DTLS_client_method.3
+MLINKS+= SSL_CTX_new.3 DTLS_method.3
+MLINKS+= SSL_CTX_new.3 DTLS_server_method.3
+MLINKS+= SSL_CTX_new.3 DTLSv1_2_client_method.3
+MLINKS+= SSL_CTX_new.3 DTLSv1_2_method.3
+MLINKS+= SSL_CTX_new.3 DTLSv1_2_server_method.3
+MLINKS+= SSL_CTX_new.3 DTLSv1_client_method.3
+MLINKS+= SSL_CTX_new.3 DTLSv1_method.3
+MLINKS+= SSL_CTX_new.3 DTLSv1_server_method.3
+MLINKS+= SSL_CTX_new.3 SSL_CTX_up_ref.3
+MLINKS+= SSL_CTX_new.3 SSLv23_client_method.3
+MLINKS+= SSL_CTX_new.3 SSLv23_method.3
+MLINKS+= SSL_CTX_new.3 SSLv23_server_method.3
+MLINKS+= SSL_CTX_new.3 SSLv3_client_method.3
+MLINKS+= SSL_CTX_new.3 SSLv3_method.3
+MLINKS+= SSL_CTX_new.3 SSLv3_server_method.3
+MLINKS+= SSL_CTX_new.3 TLS_client_method.3
+MLINKS+= SSL_CTX_new.3 TLS_method.3
+MLINKS+= SSL_CTX_new.3 TLS_server_method.3
+MLINKS+= SSL_CTX_new.3 TLSv1_1_client_method.3
+MLINKS+= SSL_CTX_new.3 TLSv1_1_method.3
+MLINKS+= SSL_CTX_new.3 TLSv1_1_server_method.3
+MLINKS+= SSL_CTX_new.3 TLSv1_2_client_method.3
+MLINKS+= SSL_CTX_new.3 TLSv1_2_method.3
+MLINKS+= SSL_CTX_new.3 TLSv1_2_server_method.3
+MLINKS+= SSL_CTX_new.3 TLSv1_client_method.3
+MLINKS+= SSL_CTX_new.3 TLSv1_method.3
+MLINKS+= SSL_CTX_new.3 TLSv1_server_method.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_accept.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_accept_good.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_accept_renegotiate.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_cache_full.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_cb_hits.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_connect.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_connect_good.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_connect_renegotiate.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_hits.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_misses.3
+MLINKS+= SSL_CTX_sess_number.3 SSL_CTX_sess_timeouts.3
+MLINKS+= SSL_CTX_sess_set_cache_size.3 SSL_CTX_sess_get_cache_size.3
+MLINKS+= SSL_CTX_sess_set_get_cb.3 SSL_CTX_sess_get_get_cb.3
+MLINKS+= SSL_CTX_sess_set_get_cb.3 SSL_CTX_sess_get_new_cb.3
+MLINKS+= SSL_CTX_sess_set_get_cb.3 SSL_CTX_sess_get_remove_cb.3
+MLINKS+= SSL_CTX_sess_set_get_cb.3 SSL_CTX_sess_set_new_cb.3
+MLINKS+= SSL_CTX_sess_set_get_cb.3 SSL_CTX_sess_set_remove_cb.3
+MLINKS+= SSL_CTX_set0_CA_list.3 SSL_CTX_add1_to_CA_list.3
+MLINKS+= SSL_CTX_set0_CA_list.3 SSL_CTX_get0_CA_list.3
+MLINKS+= SSL_CTX_set0_CA_list.3 SSL_add1_to_CA_list.3
+MLINKS+= SSL_CTX_set0_CA_list.3 SSL_get0_CA_list.3
+MLINKS+= SSL_CTX_set0_CA_list.3 SSL_get0_peer_CA_list.3
+MLINKS+= SSL_CTX_set0_CA_list.3 SSL_set0_CA_list.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_CTX_set1_curves_list.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_CTX_set1_groups.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_CTX_set1_groups_list.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_get1_curves.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_get1_groups.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_get_shared_curve.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_get_shared_group.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_set1_curves.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_set1_curves_list.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_set1_groups.3
+MLINKS+= SSL_CTX_set1_curves.3 SSL_set1_groups_list.3
+MLINKS+= SSL_CTX_set1_sigalgs.3 SSL_CTX_set1_client_sigalgs.3
+MLINKS+= SSL_CTX_set1_sigalgs.3 SSL_CTX_set1_client_sigalgs_list.3
+MLINKS+= SSL_CTX_set1_sigalgs.3 SSL_CTX_set1_sigalgs_list.3
+MLINKS+= SSL_CTX_set1_sigalgs.3 SSL_set1_client_sigalgs.3
+MLINKS+= SSL_CTX_set1_sigalgs.3 SSL_set1_client_sigalgs_list.3
+MLINKS+= SSL_CTX_set1_sigalgs.3 SSL_set1_sigalgs.3
+MLINKS+= SSL_CTX_set1_sigalgs.3 SSL_set1_sigalgs_list.3
+MLINKS+= SSL_CTX_set1_verify_cert_store.3 SSL_CTX_set0_chain_cert_store.3
+MLINKS+= SSL_CTX_set1_verify_cert_store.3 SSL_CTX_set0_verify_cert_store.3
+MLINKS+= SSL_CTX_set1_verify_cert_store.3 SSL_CTX_set1_chain_cert_store.3
+MLINKS+= SSL_CTX_set1_verify_cert_store.3 SSL_set0_chain_cert_store.3
+MLINKS+= SSL_CTX_set1_verify_cert_store.3 SSL_set0_verify_cert_store.3
+MLINKS+= SSL_CTX_set1_verify_cert_store.3 SSL_set1_chain_cert_store.3
+MLINKS+= SSL_CTX_set1_verify_cert_store.3 SSL_set1_verify_cert_store.3
+MLINKS+= SSL_CTX_set_alpn_select_cb.3 SSL_CTX_set_alpn_protos.3
+MLINKS+= SSL_CTX_set_alpn_select_cb.3 SSL_CTX_set_next_proto_select_cb.3
+MLINKS+= SSL_CTX_set_alpn_select_cb.3 SSL_CTX_set_next_protos_advertised_cb.3
+MLINKS+= SSL_CTX_set_alpn_select_cb.3 SSL_get0_alpn_selected.3
+MLINKS+= SSL_CTX_set_alpn_select_cb.3 SSL_get0_next_proto_negotiated.3
+MLINKS+= SSL_CTX_set_alpn_select_cb.3 SSL_select_next_proto.3
+MLINKS+= SSL_CTX_set_alpn_select_cb.3 SSL_set_alpn_protos.3
+MLINKS+= SSL_CTX_set_cert_cb.3 SSL_set_cert_cb.3
+MLINKS+= SSL_CTX_set_cert_store.3 SSL_CTX_get_cert_store.3
+MLINKS+= SSL_CTX_set_cert_store.3 SSL_CTX_set1_cert_store.3
+MLINKS+= SSL_CTX_set_cipher_list.3 SSL_CTX_set_ciphersuites.3
+MLINKS+= SSL_CTX_set_cipher_list.3 SSL_set_cipher_list.3
+MLINKS+= SSL_CTX_set_cipher_list.3 SSL_set_ciphersuites.3
+MLINKS+= SSL_CTX_set_client_CA_list.3 SSL_CTX_add_client_CA.3
+MLINKS+= SSL_CTX_set_client_CA_list.3 SSL_add_client_CA.3
+MLINKS+= SSL_CTX_set_client_CA_list.3 SSL_set_client_CA_list.3
+MLINKS+= SSL_CTX_set_client_cert_cb.3 SSL_CTX_get_client_cert_cb.3
+MLINKS+= SSL_CTX_set_client_hello_cb.3 SSL_client_hello_cb_fn.3
+MLINKS+= SSL_CTX_set_client_hello_cb.3 SSL_client_hello_get0_ciphers.3
+MLINKS+= SSL_CTX_set_client_hello_cb.3 SSL_client_hello_get0_compression_methods.3
+MLINKS+= SSL_CTX_set_client_hello_cb.3 SSL_client_hello_get0_ext.3
+MLINKS+= SSL_CTX_set_client_hello_cb.3 SSL_client_hello_get0_legacy_version.3
+MLINKS+= SSL_CTX_set_client_hello_cb.3 SSL_client_hello_get0_random.3
+MLINKS+= SSL_CTX_set_client_hello_cb.3 SSL_client_hello_get0_session_id.3
+MLINKS+= SSL_CTX_set_client_hello_cb.3 SSL_client_hello_get1_extensions_present.3
+MLINKS+= SSL_CTX_set_client_hello_cb.3 SSL_client_hello_isv2.3
+MLINKS+= SSL_CTX_set_ct_validation_callback.3 SSL_CTX_ct_is_enabled.3
+MLINKS+= SSL_CTX_set_ct_validation_callback.3 SSL_CTX_disable_ct.3
+MLINKS+= SSL_CTX_set_ct_validation_callback.3 SSL_CTX_enable_ct.3
+MLINKS+= SSL_CTX_set_ct_validation_callback.3 SSL_ct_is_enabled.3
+MLINKS+= SSL_CTX_set_ct_validation_callback.3 SSL_disable_ct.3
+MLINKS+= SSL_CTX_set_ct_validation_callback.3 SSL_enable_ct.3
+MLINKS+= SSL_CTX_set_ct_validation_callback.3 SSL_set_ct_validation_callback.3
+MLINKS+= SSL_CTX_set_ct_validation_callback.3 ssl_ct_validation_cb.3
+MLINKS+= SSL_CTX_set_ctlog_list_file.3 SSL_CTX_set_default_ctlog_list_file.3
+MLINKS+= SSL_CTX_set_default_passwd_cb.3 SSL_CTX_get_default_passwd_cb.3
+MLINKS+= SSL_CTX_set_default_passwd_cb.3 SSL_CTX_get_default_passwd_cb_userdata.3
+MLINKS+= SSL_CTX_set_default_passwd_cb.3 SSL_CTX_set_default_passwd_cb_userdata.3
+MLINKS+= SSL_CTX_set_default_passwd_cb.3 SSL_get_default_passwd_cb.3
+MLINKS+= SSL_CTX_set_default_passwd_cb.3 SSL_get_default_passwd_cb_userdata.3
+MLINKS+= SSL_CTX_set_default_passwd_cb.3 SSL_set_default_passwd_cb.3
+MLINKS+= SSL_CTX_set_default_passwd_cb.3 SSL_set_default_passwd_cb_userdata.3
+MLINKS+= SSL_CTX_set_ex_data.3 SSL_CTX_get_ex_data.3
+MLINKS+= SSL_CTX_set_ex_data.3 SSL_get_ex_data.3
+MLINKS+= SSL_CTX_set_ex_data.3 SSL_set_ex_data.3
+MLINKS+= SSL_CTX_set_generate_session_id.3 GEN_SESSION_CB.3
+MLINKS+= SSL_CTX_set_generate_session_id.3 SSL_has_matching_session_id.3
+MLINKS+= SSL_CTX_set_generate_session_id.3 SSL_set_generate_session_id.3
+MLINKS+= SSL_CTX_set_info_callback.3 SSL_CTX_get_info_callback.3
+MLINKS+= SSL_CTX_set_info_callback.3 SSL_get_info_callback.3
+MLINKS+= SSL_CTX_set_info_callback.3 SSL_set_info_callback.3
+MLINKS+= SSL_CTX_set_keylog_callback.3 SSL_CTX_get_keylog_callback.3
+MLINKS+= SSL_CTX_set_keylog_callback.3 SSL_CTX_keylog_cb_func.3
+MLINKS+= SSL_CTX_set_max_cert_list.3 SSL_CTX_get_max_cert_list.3
+MLINKS+= SSL_CTX_set_max_cert_list.3 SSL_get_max_cert_list.3
+MLINKS+= SSL_CTX_set_max_cert_list.3 SSL_set_max_cert_list.3
+MLINKS+= SSL_CTX_set_min_proto_version.3 SSL_CTX_get_max_proto_version.3
+MLINKS+= SSL_CTX_set_min_proto_version.3 SSL_CTX_get_min_proto_version.3
+MLINKS+= SSL_CTX_set_min_proto_version.3 SSL_CTX_set_max_proto_version.3
+MLINKS+= SSL_CTX_set_min_proto_version.3 SSL_get_max_proto_version.3
+MLINKS+= SSL_CTX_set_min_proto_version.3 SSL_get_min_proto_version.3
+MLINKS+= SSL_CTX_set_min_proto_version.3 SSL_set_max_proto_version.3
+MLINKS+= SSL_CTX_set_min_proto_version.3 SSL_set_min_proto_version.3
+MLINKS+= SSL_CTX_set_mode.3 SSL_CTX_clear_mode.3
+MLINKS+= SSL_CTX_set_mode.3 SSL_CTX_get_mode.3
+MLINKS+= SSL_CTX_set_mode.3 SSL_clear_mode.3
+MLINKS+= SSL_CTX_set_mode.3 SSL_get_mode.3
+MLINKS+= SSL_CTX_set_mode.3 SSL_set_mode.3
+MLINKS+= SSL_CTX_set_msg_callback.3 SSL_CTX_set_msg_callback_arg.3
+MLINKS+= SSL_CTX_set_msg_callback.3 SSL_set_msg_callback.3
+MLINKS+= SSL_CTX_set_msg_callback.3 SSL_set_msg_callback_arg.3
+MLINKS+= SSL_CTX_set_num_tickets.3 SSL_CTX_get_num_tickets.3
+MLINKS+= SSL_CTX_set_num_tickets.3 SSL_get_num_tickets.3
+MLINKS+= SSL_CTX_set_num_tickets.3 SSL_set_num_tickets.3
+MLINKS+= SSL_CTX_set_options.3 SSL_CTX_clear_options.3
+MLINKS+= SSL_CTX_set_options.3 SSL_CTX_get_options.3
+MLINKS+= SSL_CTX_set_options.3 SSL_clear_options.3
+MLINKS+= SSL_CTX_set_options.3 SSL_get_options.3
+MLINKS+= SSL_CTX_set_options.3 SSL_get_secure_renegotiation_support.3
+MLINKS+= SSL_CTX_set_options.3 SSL_set_options.3
+MLINKS+= SSL_CTX_set_psk_client_callback.3 SSL_CTX_set_psk_use_session_callback.3
+MLINKS+= SSL_CTX_set_psk_client_callback.3 SSL_psk_client_cb_func.3
+MLINKS+= SSL_CTX_set_psk_client_callback.3 SSL_psk_use_session_cb_func.3
+MLINKS+= SSL_CTX_set_psk_client_callback.3 SSL_set_psk_client_callback.3
+MLINKS+= SSL_CTX_set_psk_client_callback.3 SSL_set_psk_use_session_callback.3
+MLINKS+= SSL_CTX_set_quiet_shutdown.3 SSL_CTX_get_quiet_shutdown.3
+MLINKS+= SSL_CTX_set_quiet_shutdown.3 SSL_get_quiet_shutdown.3
+MLINKS+= SSL_CTX_set_quiet_shutdown.3 SSL_set_quiet_shutdown.3
+MLINKS+= SSL_CTX_set_read_ahead.3 SSL_CTX_get_default_read_ahead.3
+MLINKS+= SSL_CTX_set_read_ahead.3 SSL_CTX_get_read_ahead.3
+MLINKS+= SSL_CTX_set_read_ahead.3 SSL_get_read_ahead.3
+MLINKS+= SSL_CTX_set_read_ahead.3 SSL_set_read_ahead.3
+MLINKS+= SSL_CTX_set_record_padding_callback.3 SSL_CTX_get_record_padding_callback_arg.3
+MLINKS+= SSL_CTX_set_record_padding_callback.3 SSL_CTX_set_block_padding.3
+MLINKS+= SSL_CTX_set_record_padding_callback.3 SSL_CTX_set_record_padding_callback_arg.3
+MLINKS+= SSL_CTX_set_record_padding_callback.3 SSL_get_record_padding_callback_arg.3
+MLINKS+= SSL_CTX_set_record_padding_callback.3 SSL_set_block_padding.3
+MLINKS+= SSL_CTX_set_record_padding_callback.3 SSL_set_record_padding_callback.3
+MLINKS+= SSL_CTX_set_record_padding_callback.3 SSL_set_record_padding_callback_arg.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_CTX_get0_security_ex_data.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_CTX_get_security_callback.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_CTX_get_security_level.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_CTX_set0_security_ex_data.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_CTX_set_security_callback.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_get0_security_ex_data.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_get_security_callback.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_get_security_level.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_set0_security_ex_data.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_set_security_callback.3
+MLINKS+= SSL_CTX_set_security_level.3 SSL_set_security_level.3
+MLINKS+= SSL_CTX_set_session_cache_mode.3 SSL_CTX_get_session_cache_mode.3
+MLINKS+= SSL_CTX_set_session_id_context.3 SSL_set_session_id_context.3
+MLINKS+= SSL_CTX_set_session_ticket_cb.3 SSL_CTX_decrypt_session_ticket_fn.3
+MLINKS+= SSL_CTX_set_session_ticket_cb.3 SSL_CTX_generate_session_ticket_fn.3
+MLINKS+= SSL_CTX_set_session_ticket_cb.3 SSL_SESSION_get0_ticket_appdata.3
+MLINKS+= SSL_CTX_set_session_ticket_cb.3 SSL_SESSION_set1_ticket_appdata.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_CTX_set_default_read_buffer_len.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_CTX_set_max_pipelines.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_CTX_set_max_send_fragment.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_CTX_set_tlsext_max_fragment_length.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_SESSION_get_max_fragment_length.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_set_default_read_buffer_len.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_set_max_pipelines.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_set_max_send_fragment.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_set_split_send_fragment.3
+MLINKS+= SSL_CTX_set_split_send_fragment.3 SSL_set_tlsext_max_fragment_length.3
+MLINKS+= SSL_CTX_set_ssl_version.3 SSL_get_ssl_method.3
+MLINKS+= SSL_CTX_set_ssl_version.3 SSL_set_ssl_method.3
+MLINKS+= SSL_CTX_set_stateless_cookie_generate_cb.3 SSL_CTX_set_stateless_cookie_verify_cb.3
+MLINKS+= SSL_CTX_set_timeout.3 SSL_CTX_get_timeout.3
+MLINKS+= SSL_CTX_set_tlsext_servername_callback.3 SSL_CTX_set_tlsext_servername_arg.3
+MLINKS+= SSL_CTX_set_tlsext_servername_callback.3 SSL_get_servername.3
+MLINKS+= SSL_CTX_set_tlsext_servername_callback.3 SSL_get_servername_type.3
+MLINKS+= SSL_CTX_set_tlsext_servername_callback.3 SSL_set_tlsext_host_name.3
+MLINKS+= SSL_CTX_set_tlsext_status_cb.3 SSL_CTX_get_tlsext_status_arg.3
+MLINKS+= SSL_CTX_set_tlsext_status_cb.3 SSL_CTX_get_tlsext_status_cb.3
+MLINKS+= SSL_CTX_set_tlsext_status_cb.3 SSL_CTX_get_tlsext_status_type.3
+MLINKS+= SSL_CTX_set_tlsext_status_cb.3 SSL_CTX_set_tlsext_status_arg.3
+MLINKS+= SSL_CTX_set_tlsext_status_cb.3 SSL_CTX_set_tlsext_status_type.3
+MLINKS+= SSL_CTX_set_tlsext_status_cb.3 SSL_get_tlsext_status_ocsp_resp.3
+MLINKS+= SSL_CTX_set_tlsext_status_cb.3 SSL_get_tlsext_status_type.3
+MLINKS+= SSL_CTX_set_tlsext_status_cb.3 SSL_set_tlsext_status_ocsp_resp.3
+MLINKS+= SSL_CTX_set_tlsext_status_cb.3 SSL_set_tlsext_status_type.3
+MLINKS+= SSL_CTX_set_tlsext_use_srtp.3 SSL_get_selected_srtp_profile.3
+MLINKS+= SSL_CTX_set_tlsext_use_srtp.3 SSL_get_srtp_profiles.3
+MLINKS+= SSL_CTX_set_tlsext_use_srtp.3 SSL_set_tlsext_use_srtp.3
+MLINKS+= SSL_CTX_set_tmp_dh_callback.3 SSL_CTX_set_tmp_dh.3
+MLINKS+= SSL_CTX_set_tmp_dh_callback.3 SSL_set_tmp_dh.3
+MLINKS+= SSL_CTX_set_tmp_dh_callback.3 SSL_set_tmp_dh_callback.3
+MLINKS+= SSL_CTX_set_verify.3 SSL_CTX_set_post_handshake_auth.3
+MLINKS+= SSL_CTX_set_verify.3 SSL_CTX_set_verify_depth.3
+MLINKS+= SSL_CTX_set_verify.3 SSL_get_ex_data_X509_STORE_CTX_idx.3
+MLINKS+= SSL_CTX_set_verify.3 SSL_set_post_handshake_auth.3
+MLINKS+= SSL_CTX_set_verify.3 SSL_set_verify.3
+MLINKS+= SSL_CTX_set_verify.3 SSL_set_verify_depth.3
+MLINKS+= SSL_CTX_set_verify.3 SSL_verify_cb.3
+MLINKS+= SSL_CTX_set_verify.3 SSL_verify_client_post_handshake.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_check_private_key.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_PrivateKey.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_PrivateKey_ASN1.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_PrivateKey_file.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_RSAPrivateKey.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_RSAPrivateKey_ASN1.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_RSAPrivateKey_file.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_cert_and_key.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_certificate_ASN1.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_certificate_chain_file.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_CTX_use_certificate_file.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_check_private_key.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_PrivateKey.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_PrivateKey_ASN1.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_PrivateKey_file.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_RSAPrivateKey.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_RSAPrivateKey_ASN1.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_RSAPrivateKey_file.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_cert_and_key.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_certificate.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_certificate_ASN1.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_certificate_chain_file.3
+MLINKS+= SSL_CTX_use_certificate.3 SSL_use_certificate_file.3
+MLINKS+= SSL_CTX_use_psk_identity_hint.3 SSL_CTX_set_psk_find_session_callback.3
+MLINKS+= SSL_CTX_use_psk_identity_hint.3 SSL_CTX_set_psk_server_callback.3
+MLINKS+= SSL_CTX_use_psk_identity_hint.3 SSL_psk_find_session_cb_func.3
+MLINKS+= SSL_CTX_use_psk_identity_hint.3 SSL_psk_server_cb_func.3
+MLINKS+= SSL_CTX_use_psk_identity_hint.3 SSL_set_psk_find_session_callback.3
+MLINKS+= SSL_CTX_use_psk_identity_hint.3 SSL_set_psk_server_callback.3
+MLINKS+= SSL_CTX_use_psk_identity_hint.3 SSL_use_psk_identity_hint.3
+MLINKS+= SSL_CTX_use_serverinfo.3 SSL_CTX_use_serverinfo_ex.3
+MLINKS+= SSL_CTX_use_serverinfo.3 SSL_CTX_use_serverinfo_file.3
+MLINKS+= SSL_SESSION_free.3 SSL_SESSION_dup.3
+MLINKS+= SSL_SESSION_free.3 SSL_SESSION_new.3
+MLINKS+= SSL_SESSION_free.3 SSL_SESSION_up_ref.3
+MLINKS+= SSL_SESSION_get0_cipher.3 SSL_SESSION_set_cipher.3
+MLINKS+= SSL_SESSION_get0_hostname.3 SSL_SESSION_get0_alpn_selected.3
+MLINKS+= SSL_SESSION_get0_hostname.3 SSL_SESSION_set1_alpn_selected.3
+MLINKS+= SSL_SESSION_get0_hostname.3 SSL_SESSION_set1_hostname.3
+MLINKS+= SSL_SESSION_get0_id_context.3 SSL_SESSION_set1_id_context.3
+MLINKS+= SSL_SESSION_get_ex_data.3 SSL_SESSION_set_ex_data.3
+MLINKS+= SSL_SESSION_get_protocol_version.3 SSL_SESSION_set_protocol_version.3
+MLINKS+= SSL_SESSION_get_time.3 SSL_SESSION_get_timeout.3
+MLINKS+= SSL_SESSION_get_time.3 SSL_SESSION_set_time.3
+MLINKS+= SSL_SESSION_get_time.3 SSL_SESSION_set_timeout.3
+MLINKS+= SSL_SESSION_get_time.3 SSL_get_time.3
+MLINKS+= SSL_SESSION_get_time.3 SSL_get_timeout.3
+MLINKS+= SSL_SESSION_get_time.3 SSL_set_time.3
+MLINKS+= SSL_SESSION_get_time.3 SSL_set_timeout.3
+MLINKS+= SSL_SESSION_has_ticket.3 SSL_SESSION_get0_ticket.3
+MLINKS+= SSL_SESSION_has_ticket.3 SSL_SESSION_get_ticket_lifetime_hint.3
+MLINKS+= SSL_SESSION_print.3 SSL_SESSION_print_fp.3
+MLINKS+= SSL_SESSION_print.3 SSL_SESSION_print_keylog.3
+MLINKS+= SSL_SESSION_set1_id.3 SSL_SESSION_get_id.3
+MLINKS+= SSL_alert_type_string.3 SSL_alert_desc_string.3
+MLINKS+= SSL_alert_type_string.3 SSL_alert_desc_string_long.3
+MLINKS+= SSL_alert_type_string.3 SSL_alert_type_string_long.3
+MLINKS+= SSL_alloc_buffers.3 SSL_free_buffers.3
+MLINKS+= SSL_export_keying_material.3 SSL_export_keying_material_early.3
+MLINKS+= SSL_extension_supported.3 SSL_CTX_add_client_custom_ext.3
+MLINKS+= SSL_extension_supported.3 SSL_CTX_add_custom_ext.3
+MLINKS+= SSL_extension_supported.3 SSL_CTX_add_server_custom_ext.3
+MLINKS+= SSL_extension_supported.3 custom_ext_add_cb.3
+MLINKS+= SSL_extension_supported.3 custom_ext_free_cb.3
+MLINKS+= SSL_extension_supported.3 custom_ext_parse_cb.3
+MLINKS+= SSL_get_all_async_fds.3 SSL_get_changed_async_fds.3
+MLINKS+= SSL_get_all_async_fds.3 SSL_waiting_for_async.3
+MLINKS+= SSL_get_ciphers.3 SSL_CTX_get_ciphers.3
+MLINKS+= SSL_get_ciphers.3 SSL_bytes_to_cipher_list.3
+MLINKS+= SSL_get_ciphers.3 SSL_get1_supported_ciphers.3
+MLINKS+= SSL_get_ciphers.3 SSL_get_cipher_list.3
+MLINKS+= SSL_get_ciphers.3 SSL_get_client_ciphers.3
+MLINKS+= SSL_get_ciphers.3 SSL_get_shared_ciphers.3
+MLINKS+= SSL_get_client_CA_list.3 SSL_CTX_get_client_CA_list.3
+MLINKS+= SSL_get_client_random.3 SSL_SESSION_get_master_key.3
+MLINKS+= SSL_get_client_random.3 SSL_SESSION_set1_master_key.3
+MLINKS+= SSL_get_client_random.3 SSL_get_server_random.3
+MLINKS+= SSL_get_current_cipher.3 SSL_get_cipher.3
+MLINKS+= SSL_get_current_cipher.3 SSL_get_cipher_bits.3
+MLINKS+= SSL_get_current_cipher.3 SSL_get_cipher_name.3
+MLINKS+= SSL_get_current_cipher.3 SSL_get_cipher_version.3
+MLINKS+= SSL_get_current_cipher.3 SSL_get_pending_cipher.3
+MLINKS+= SSL_get_fd.3 SSL_get_rfd.3
+MLINKS+= SSL_get_fd.3 SSL_get_wfd.3
+MLINKS+= SSL_get_peer_cert_chain.3 SSL_get0_verified_chain.3
+MLINKS+= SSL_get_peer_signature_nid.3 SSL_get_peer_signature_type_nid.3
+MLINKS+= SSL_get_psk_identity.3 SSL_get_psk_identity_hint.3
+MLINKS+= SSL_get_rbio.3 SSL_get_wbio.3
+MLINKS+= SSL_get_session.3 SSL_get0_session.3
+MLINKS+= SSL_get_session.3 SSL_get1_session.3
+MLINKS+= SSL_get_shared_sigalgs.3 SSL_get_sigalgs.3
+MLINKS+= SSL_get_version.3 SSL_client_version.3
+MLINKS+= SSL_get_version.3 SSL_is_dtls.3
+MLINKS+= SSL_get_version.3 SSL_version.3
+MLINKS+= SSL_in_init.3 SSL_get_state.3
+MLINKS+= SSL_in_init.3 SSL_in_accept_init.3
+MLINKS+= SSL_in_init.3 SSL_in_before.3
+MLINKS+= SSL_in_init.3 SSL_in_connect_init.3
+MLINKS+= SSL_in_init.3 SSL_is_init_finished.3
+MLINKS+= SSL_key_update.3 SSL_get_key_update_type.3
+MLINKS+= SSL_key_update.3 SSL_renegotiate.3
+MLINKS+= SSL_key_update.3 SSL_renegotiate_abbreviated.3
+MLINKS+= SSL_key_update.3 SSL_renegotiate_pending.3
+MLINKS+= SSL_library_init.3 OpenSSL_add_ssl_algorithms.3
+MLINKS+= SSL_new.3 SSL_dup.3
+MLINKS+= SSL_new.3 SSL_up_ref.3
+MLINKS+= SSL_pending.3 SSL_has_pending.3
+MLINKS+= SSL_read.3 SSL_peek.3
+MLINKS+= SSL_read.3 SSL_peek_ex.3
+MLINKS+= SSL_read.3 SSL_read_ex.3
+MLINKS+= SSL_read_early_data.3 SSL_CTX_get_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_CTX_get_recv_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_CTX_set_allow_early_data_cb.3
+MLINKS+= SSL_read_early_data.3 SSL_CTX_set_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_CTX_set_recv_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_SESSION_get_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_SESSION_set_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_allow_early_data_cb_fn.3
+MLINKS+= SSL_read_early_data.3 SSL_get_early_data_status.3
+MLINKS+= SSL_read_early_data.3 SSL_get_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_get_recv_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_set_allow_early_data_cb.3
+MLINKS+= SSL_read_early_data.3 SSL_set_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_set_recv_max_early_data.3
+MLINKS+= SSL_read_early_data.3 SSL_write_early_data.3
+MLINKS+= SSL_rstate_string.3 SSL_rstate_string_long.3
+MLINKS+= SSL_set1_host.3 SSL_add1_host.3
+MLINKS+= SSL_set1_host.3 SSL_get0_peername.3
+MLINKS+= SSL_set1_host.3 SSL_set_hostflags.3
+MLINKS+= SSL_set_bio.3 SSL_set0_rbio.3
+MLINKS+= SSL_set_bio.3 SSL_set0_wbio.3
+MLINKS+= SSL_set_connect_state.3 SSL_is_server.3
+MLINKS+= SSL_set_connect_state.3 SSL_set_accept_state.3
+MLINKS+= SSL_set_fd.3 SSL_set_rfd.3
+MLINKS+= SSL_set_fd.3 SSL_set_wfd.3
+MLINKS+= SSL_set_shutdown.3 SSL_get_shutdown.3
+MLINKS+= SSL_state_string.3 SSL_state_string_long.3
+MLINKS+= SSL_want.3 SSL_want_async.3
+MLINKS+= SSL_want.3 SSL_want_async_job.3
+MLINKS+= SSL_want.3 SSL_want_client_hello_cb.3
+MLINKS+= SSL_want.3 SSL_want_nothing.3
+MLINKS+= SSL_want.3 SSL_want_read.3
+MLINKS+= SSL_want.3 SSL_want_write.3
+MLINKS+= SSL_want.3 SSL_want_x509_lookup.3
+MLINKS+= SSL_write.3 SSL_write_ex.3
+MLINKS+= UI_STRING.3 UI_get0_action_string.3
+MLINKS+= UI_STRING.3 UI_get0_output_string.3
+MLINKS+= UI_STRING.3 UI_get0_result_string.3
+MLINKS+= UI_STRING.3 UI_get0_test_string.3
+MLINKS+= UI_STRING.3 UI_get_input_flags.3
+MLINKS+= UI_STRING.3 UI_get_result_maxsize.3
+MLINKS+= UI_STRING.3 UI_get_result_minsize.3
+MLINKS+= UI_STRING.3 UI_get_result_string_length.3
+MLINKS+= UI_STRING.3 UI_get_string_type.3
+MLINKS+= UI_STRING.3 UI_set_result.3
+MLINKS+= UI_STRING.3 UI_set_result_ex.3
+MLINKS+= UI_STRING.3 UI_string_types.3
+MLINKS+= UI_UTIL_read_pw.3 UI_UTIL_read_pw_string.3
+MLINKS+= UI_UTIL_read_pw.3 UI_UTIL_wrap_read_pem_callback.3
+MLINKS+= UI_create_method.3 UI_METHOD.3
+MLINKS+= UI_create_method.3 UI_destroy_method.3
+MLINKS+= UI_create_method.3 UI_method_get_closer.3
+MLINKS+= UI_create_method.3 UI_method_get_data_destructor.3
+MLINKS+= UI_create_method.3 UI_method_get_data_duplicator.3
+MLINKS+= UI_create_method.3 UI_method_get_ex_data.3
+MLINKS+= UI_create_method.3 UI_method_get_flusher.3
+MLINKS+= UI_create_method.3 UI_method_get_opener.3
+MLINKS+= UI_create_method.3 UI_method_get_prompt_constructor.3
+MLINKS+= UI_create_method.3 UI_method_get_reader.3
+MLINKS+= UI_create_method.3 UI_method_get_writer.3
+MLINKS+= UI_create_method.3 UI_method_set_closer.3
+MLINKS+= UI_create_method.3 UI_method_set_data_duplicator.3
+MLINKS+= UI_create_method.3 UI_method_set_ex_data.3
+MLINKS+= UI_create_method.3 UI_method_set_flusher.3
+MLINKS+= UI_create_method.3 UI_method_set_opener.3
+MLINKS+= UI_create_method.3 UI_method_set_prompt_constructor.3
+MLINKS+= UI_create_method.3 UI_method_set_reader.3
+MLINKS+= UI_create_method.3 UI_method_set_writer.3
+MLINKS+= UI_new.3 UI.3
+MLINKS+= UI_new.3 UI_OpenSSL.3
+MLINKS+= UI_new.3 UI_add_error_string.3
+MLINKS+= UI_new.3 UI_add_info_string.3
+MLINKS+= UI_new.3 UI_add_input_boolean.3
+MLINKS+= UI_new.3 UI_add_input_string.3
+MLINKS+= UI_new.3 UI_add_user_data.3
+MLINKS+= UI_new.3 UI_add_verify_string.3
+MLINKS+= UI_new.3 UI_construct_prompt.3
+MLINKS+= UI_new.3 UI_ctrl.3
+MLINKS+= UI_new.3 UI_dup_error_string.3
+MLINKS+= UI_new.3 UI_dup_info_string.3
+MLINKS+= UI_new.3 UI_dup_input_boolean.3
+MLINKS+= UI_new.3 UI_dup_input_string.3
+MLINKS+= UI_new.3 UI_dup_user_data.3
+MLINKS+= UI_new.3 UI_dup_verify_string.3
+MLINKS+= UI_new.3 UI_free.3
+MLINKS+= UI_new.3 UI_get0_result.3
+MLINKS+= UI_new.3 UI_get0_user_data.3
+MLINKS+= UI_new.3 UI_get_default_method.3
+MLINKS+= UI_new.3 UI_get_method.3
+MLINKS+= UI_new.3 UI_get_result_length.3
+MLINKS+= UI_new.3 UI_new_method.3
+MLINKS+= UI_new.3 UI_null.3
+MLINKS+= UI_new.3 UI_process.3
+MLINKS+= UI_new.3 UI_set_default_method.3
+MLINKS+= UI_new.3 UI_set_method.3
+MLINKS+= X509V3_get_d2i.3 X509V3_EXT_d2i.3
+MLINKS+= X509V3_get_d2i.3 X509V3_EXT_i2d.3
+MLINKS+= X509V3_get_d2i.3 X509V3_add1_i2d.3
+MLINKS+= X509V3_get_d2i.3 X509_CRL_add1_ext_i2d.3
+MLINKS+= X509V3_get_d2i.3 X509_CRL_get0_extensions.3
+MLINKS+= X509V3_get_d2i.3 X509_CRL_get_ext_d2i.3
+MLINKS+= X509V3_get_d2i.3 X509_REVOKED_add1_ext_i2d.3
+MLINKS+= X509V3_get_d2i.3 X509_REVOKED_get0_extensions.3
+MLINKS+= X509V3_get_d2i.3 X509_REVOKED_get_ext_d2i.3
+MLINKS+= X509V3_get_d2i.3 X509_add1_ext_i2d.3
+MLINKS+= X509V3_get_d2i.3 X509_get0_extensions.3
+MLINKS+= X509V3_get_d2i.3 X509_get_ext_d2i.3
+MLINKS+= X509_ALGOR_dup.3 X509_ALGOR_cmp.3
+MLINKS+= X509_ALGOR_dup.3 X509_ALGOR_get0.3
+MLINKS+= X509_ALGOR_dup.3 X509_ALGOR_set0.3
+MLINKS+= X509_ALGOR_dup.3 X509_ALGOR_set_md.3
+MLINKS+= X509_CRL_get0_by_serial.3 X509_CRL_add0_revoked.3
+MLINKS+= X509_CRL_get0_by_serial.3 X509_CRL_get0_by_cert.3
+MLINKS+= X509_CRL_get0_by_serial.3 X509_CRL_get_REVOKED.3
+MLINKS+= X509_CRL_get0_by_serial.3 X509_CRL_sort.3
+MLINKS+= X509_CRL_get0_by_serial.3 X509_REVOKED_get0_revocationDate.3
+MLINKS+= X509_CRL_get0_by_serial.3 X509_REVOKED_get0_serialNumber.3
+MLINKS+= X509_CRL_get0_by_serial.3 X509_REVOKED_set_revocationDate.3
+MLINKS+= X509_CRL_get0_by_serial.3 X509_REVOKED_set_serialNumber.3
+MLINKS+= X509_EXTENSION_set_object.3 X509_EXTENSION_create_by_NID.3
+MLINKS+= X509_EXTENSION_set_object.3 X509_EXTENSION_create_by_OBJ.3
+MLINKS+= X509_EXTENSION_set_object.3 X509_EXTENSION_get_critical.3
+MLINKS+= X509_EXTENSION_set_object.3 X509_EXTENSION_get_data.3
+MLINKS+= X509_EXTENSION_set_object.3 X509_EXTENSION_get_object.3
+MLINKS+= X509_EXTENSION_set_object.3 X509_EXTENSION_set_critical.3
+MLINKS+= X509_EXTENSION_set_object.3 X509_EXTENSION_set_data.3
+MLINKS+= X509_LOOKUP_hash_dir.3 X509_LOOKUP_file.3
+MLINKS+= X509_LOOKUP_hash_dir.3 X509_load_cert_crl_file.3
+MLINKS+= X509_LOOKUP_hash_dir.3 X509_load_cert_file.3
+MLINKS+= X509_LOOKUP_hash_dir.3 X509_load_crl_file.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_ctrl_fn.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_get_by_alias_fn.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_get_by_fingerprint_fn.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_get_by_issuer_serial_fn.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_get_by_subject_fn.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_get_method_data.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_get_store.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_free.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_get_ctrl.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_get_free.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_get_get_by_alias.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_get_get_by_fingerprint.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_get_get_by_issuer_serial.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_get_get_by_subject.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_get_init.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_get_new_item.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_get_shutdown.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_set_ctrl.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_set_free.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_set_get_by_alias.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_set_get_by_fingerprint.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_set_get_by_issuer_serial.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_set_get_by_subject.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_set_init.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_set_new_item.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_meth_set_shutdown.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_LOOKUP_set_method_data.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_OBJECT_set1_X509.3
+MLINKS+= X509_LOOKUP_meth_new.3 X509_OBJECT_set1_X509_CRL.3
MLINKS+= X509_NAME_ENTRY_get_object.3 X509_NAME_ENTRY_create_by_NID.3
MLINKS+= X509_NAME_ENTRY_get_object.3 X509_NAME_ENTRY_create_by_OBJ.3
MLINKS+= X509_NAME_ENTRY_get_object.3 X509_NAME_ENTRY_create_by_txt.3
@@ -908,37 +2891,123 @@ MLINKS+= X509_NAME_get_index_by_NID.3 X509_NAME_get_text_by_OBJ.3
MLINKS+= X509_NAME_print_ex.3 X509_NAME_oneline.3
MLINKS+= X509_NAME_print_ex.3 X509_NAME_print.3
MLINKS+= X509_NAME_print_ex.3 X509_NAME_print_ex_fp.3
+MLINKS+= X509_PUBKEY_new.3 X509_PUBKEY_free.3
+MLINKS+= X509_PUBKEY_new.3 X509_PUBKEY_get.3
+MLINKS+= X509_PUBKEY_new.3 X509_PUBKEY_get0.3
+MLINKS+= X509_PUBKEY_new.3 X509_PUBKEY_get0_param.3
+MLINKS+= X509_PUBKEY_new.3 X509_PUBKEY_set.3
+MLINKS+= X509_PUBKEY_new.3 X509_PUBKEY_set0_param.3
+MLINKS+= X509_PUBKEY_new.3 d2i_PUBKEY.3
+MLINKS+= X509_PUBKEY_new.3 d2i_PUBKEY_bio.3
+MLINKS+= X509_PUBKEY_new.3 d2i_PUBKEY_fp.3
+MLINKS+= X509_PUBKEY_new.3 i2d_PUBKEY.3
+MLINKS+= X509_PUBKEY_new.3 i2d_PUBKEY_bio.3
+MLINKS+= X509_PUBKEY_new.3 i2d_PUBKEY_fp.3
+MLINKS+= X509_SIG_get0.3 X509_SIG_getm.3
+MLINKS+= X509_STORE_CTX_get_error.3 X509_STORE_CTX_get0_cert.3
MLINKS+= X509_STORE_CTX_get_error.3 X509_STORE_CTX_get1_chain.3
MLINKS+= X509_STORE_CTX_get_error.3 X509_STORE_CTX_get_current_cert.3
MLINKS+= X509_STORE_CTX_get_error.3 X509_STORE_CTX_get_error_depth.3
+MLINKS+= X509_STORE_CTX_get_error.3 X509_STORE_CTX_set_current_cert.3
MLINKS+= X509_STORE_CTX_get_error.3 X509_STORE_CTX_set_error.3
+MLINKS+= X509_STORE_CTX_get_error.3 X509_STORE_CTX_set_error_depth.3
MLINKS+= X509_STORE_CTX_get_error.3 X509_verify_cert_error_string.3
-MLINKS+= X509_STORE_CTX_get_ex_new_index.3 X509_STORE_CTX_get_ex_data.3
-MLINKS+= X509_STORE_CTX_get_ex_new_index.3 X509_STORE_CTX_set_ex_data.3
MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_cleanup.3
MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_free.3
+MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_get0_chain.3
MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_get0_param.3
+MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_get0_untrusted.3
+MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_get_num_untrusted.3
MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_init.3
MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_set0_crls.3
MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_set0_param.3
+MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_set0_trusted_stack.3
+MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_set0_untrusted.3
+MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_set0_verified_chain.3
MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_set_cert.3
-MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_set_chain.3
MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_set_default.3
-MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_trusted_stack.3
+MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_set_verify.3
+MLINKS+= X509_STORE_CTX_new.3 X509_STORE_CTX_verify_fn.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_cert_crl.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_check_crl.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_check_issued.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_check_policy.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_check_revocation.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_cleanup.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_get_crl.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_get_issuer.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_lookup_certs.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_lookup_crls.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_get_verify_cb.3
+MLINKS+= X509_STORE_CTX_set_verify_cb.3 X509_STORE_CTX_verify_cb.3
+MLINKS+= X509_STORE_add_cert.3 X509_STORE_add_crl.3
+MLINKS+= X509_STORE_add_cert.3 X509_STORE_load_locations.3
+MLINKS+= X509_STORE_add_cert.3 X509_STORE_set_default_paths.3
+MLINKS+= X509_STORE_add_cert.3 X509_STORE_set_depth.3
+MLINKS+= X509_STORE_add_cert.3 X509_STORE_set_flags.3
+MLINKS+= X509_STORE_add_cert.3 X509_STORE_set_purpose.3
+MLINKS+= X509_STORE_add_cert.3 X509_STORE_set_trust.3
+MLINKS+= X509_STORE_get0_param.3 X509_STORE_get0_objects.3
+MLINKS+= X509_STORE_get0_param.3 X509_STORE_set1_param.3
+MLINKS+= X509_STORE_new.3 X509_STORE_free.3
+MLINKS+= X509_STORE_new.3 X509_STORE_lock.3
+MLINKS+= X509_STORE_new.3 X509_STORE_unlock.3
+MLINKS+= X509_STORE_new.3 X509_STORE_up_ref.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_cert_crl_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_check_crl_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_check_issued_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_check_policy_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_check_revocation_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_cleanup_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_get_crl_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_get_issuer_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_get_verify.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_lookup_certs_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_CTX_lookup_crls_fn.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_cert_crl.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_check_crl.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_check_issued.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_check_policy.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_check_revocation.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_cleanup.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_get_crl.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_get_issuer.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_lookup_certs.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_lookup_crls.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_get_verify_cb.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_cert_crl.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_check_crl.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_check_issued.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_check_policy.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_check_revocation.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_cleanup.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_get_crl.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_get_issuer.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_lookup_certs.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_lookup_crls.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_lookup_crls_cb.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_verify.3
MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_verify_cb.3
+MLINKS+= X509_STORE_set_verify_cb_func.3 X509_STORE_set_verify_func.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_add0_policy.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_add1_host.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_clear_flags.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_get0_peername.3
+MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_get_auth_level.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_get_depth.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_get_flags.3
+MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_get_hostflags.3
+MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_get_inh_flags.3
+MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_get_time.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set1_email.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set1_host.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set1_ip.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set1_ip_asc.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set1_policies.3
+MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set_auth_level.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set_depth.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set_hostflags.3
+MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set_inh_flags.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set_purpose.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set_time.3
MLINKS+= X509_VERIFY_PARAM_set_flags.3 X509_VERIFY_PARAM_set_trust.3
@@ -946,322 +3015,711 @@ MLINKS+= X509_check_host.3 X509_check_email.3
MLINKS+= X509_check_host.3 X509_check_ip.3
MLINKS+= X509_check_host.3 X509_check_ip_asc.3
MLINKS+= X509_check_private_key.3 X509_REQ_check_private_key.3
+MLINKS+= X509_cmp_time.3 X509_cmp_current_time.3
+MLINKS+= X509_cmp_time.3 X509_time_adj.3
+MLINKS+= X509_cmp_time.3 X509_time_adj_ex.3
+MLINKS+= X509_digest.3 PKCS7_ISSUER_AND_SERIAL_digest.3
+MLINKS+= X509_digest.3 X509_CRL_digest.3
+MLINKS+= X509_digest.3 X509_NAME_digest.3
+MLINKS+= X509_digest.3 X509_REQ_digest.3
+MLINKS+= X509_digest.3 X509_pubkey_digest.3
+MLINKS+= X509_dup.3 ACCESS_DESCRIPTION_free.3
+MLINKS+= X509_dup.3 ACCESS_DESCRIPTION_new.3
+MLINKS+= X509_dup.3 ADMISSIONS_free.3
+MLINKS+= X509_dup.3 ADMISSIONS_new.3
+MLINKS+= X509_dup.3 ADMISSION_SYNTAX_free.3
+MLINKS+= X509_dup.3 ADMISSION_SYNTAX_new.3
+MLINKS+= X509_dup.3 ASIdOrRange_free.3
+MLINKS+= X509_dup.3 ASIdOrRange_new.3
+MLINKS+= X509_dup.3 ASIdentifierChoice_free.3
+MLINKS+= X509_dup.3 ASIdentifierChoice_new.3
+MLINKS+= X509_dup.3 ASIdentifiers_free.3
+MLINKS+= X509_dup.3 ASIdentifiers_new.3
+MLINKS+= X509_dup.3 ASN1_ITEM.3
+MLINKS+= X509_dup.3 ASRange_free.3
+MLINKS+= X509_dup.3 ASRange_new.3
+MLINKS+= X509_dup.3 AUTHORITY_INFO_ACCESS_free.3
+MLINKS+= X509_dup.3 AUTHORITY_INFO_ACCESS_new.3
+MLINKS+= X509_dup.3 AUTHORITY_KEYID_free.3
+MLINKS+= X509_dup.3 AUTHORITY_KEYID_new.3
+MLINKS+= X509_dup.3 BASIC_CONSTRAINTS_free.3
+MLINKS+= X509_dup.3 BASIC_CONSTRAINTS_new.3
+MLINKS+= X509_dup.3 CERTIFICATEPOLICIES_free.3
+MLINKS+= X509_dup.3 CERTIFICATEPOLICIES_new.3
+MLINKS+= X509_dup.3 CMS_ContentInfo_free.3
+MLINKS+= X509_dup.3 CMS_ContentInfo_new.3
+MLINKS+= X509_dup.3 CMS_ContentInfo_print_ctx.3
+MLINKS+= X509_dup.3 CMS_ReceiptRequest_free.3
+MLINKS+= X509_dup.3 CMS_ReceiptRequest_new.3
+MLINKS+= X509_dup.3 CRL_DIST_POINTS_free.3
+MLINKS+= X509_dup.3 CRL_DIST_POINTS_new.3
+MLINKS+= X509_dup.3 DECLARE_ASN1_FUNCTIONS.3
+MLINKS+= X509_dup.3 DIRECTORYSTRING_free.3
+MLINKS+= X509_dup.3 DIRECTORYSTRING_new.3
+MLINKS+= X509_dup.3 DISPLAYTEXT_free.3
+MLINKS+= X509_dup.3 DISPLAYTEXT_new.3
+MLINKS+= X509_dup.3 DIST_POINT_NAME_free.3
+MLINKS+= X509_dup.3 DIST_POINT_NAME_new.3
+MLINKS+= X509_dup.3 DIST_POINT_free.3
+MLINKS+= X509_dup.3 DIST_POINT_new.3
+MLINKS+= X509_dup.3 DSAparams_dup.3
+MLINKS+= X509_dup.3 ECPARAMETERS_free.3
+MLINKS+= X509_dup.3 ECPARAMETERS_new.3
+MLINKS+= X509_dup.3 ECPKPARAMETERS_free.3
+MLINKS+= X509_dup.3 ECPKPARAMETERS_new.3
+MLINKS+= X509_dup.3 EDIPARTYNAME_free.3
+MLINKS+= X509_dup.3 EDIPARTYNAME_new.3
+MLINKS+= X509_dup.3 ESS_CERT_ID_dup.3
+MLINKS+= X509_dup.3 ESS_CERT_ID_free.3
+MLINKS+= X509_dup.3 ESS_CERT_ID_new.3
+MLINKS+= X509_dup.3 ESS_ISSUER_SERIAL_dup.3
+MLINKS+= X509_dup.3 ESS_ISSUER_SERIAL_free.3
+MLINKS+= X509_dup.3 ESS_ISSUER_SERIAL_new.3
+MLINKS+= X509_dup.3 ESS_SIGNING_CERT_dup.3
+MLINKS+= X509_dup.3 ESS_SIGNING_CERT_free.3
+MLINKS+= X509_dup.3 ESS_SIGNING_CERT_new.3
+MLINKS+= X509_dup.3 EXTENDED_KEY_USAGE_free.3
+MLINKS+= X509_dup.3 EXTENDED_KEY_USAGE_new.3
+MLINKS+= X509_dup.3 GENERAL_NAMES_free.3
+MLINKS+= X509_dup.3 GENERAL_NAMES_new.3
+MLINKS+= X509_dup.3 GENERAL_NAME_dup.3
+MLINKS+= X509_dup.3 GENERAL_NAME_free.3
+MLINKS+= X509_dup.3 GENERAL_NAME_new.3
+MLINKS+= X509_dup.3 GENERAL_SUBTREE_free.3
+MLINKS+= X509_dup.3 GENERAL_SUBTREE_new.3
+MLINKS+= X509_dup.3 IMPLEMENT_ASN1_FUNCTIONS.3
+MLINKS+= X509_dup.3 IPAddressChoice_free.3
+MLINKS+= X509_dup.3 IPAddressChoice_new.3
+MLINKS+= X509_dup.3 IPAddressFamily_free.3
+MLINKS+= X509_dup.3 IPAddressFamily_new.3
+MLINKS+= X509_dup.3 IPAddressOrRange_free.3
+MLINKS+= X509_dup.3 IPAddressOrRange_new.3
+MLINKS+= X509_dup.3 IPAddressRange_free.3
+MLINKS+= X509_dup.3 IPAddressRange_new.3
+MLINKS+= X509_dup.3 ISSUING_DIST_POINT_free.3
+MLINKS+= X509_dup.3 ISSUING_DIST_POINT_new.3
+MLINKS+= X509_dup.3 NAME_CONSTRAINTS_free.3
+MLINKS+= X509_dup.3 NAME_CONSTRAINTS_new.3
+MLINKS+= X509_dup.3 NAMING_AUTHORITY_free.3
+MLINKS+= X509_dup.3 NAMING_AUTHORITY_new.3
+MLINKS+= X509_dup.3 NETSCAPE_CERT_SEQUENCE_free.3
+MLINKS+= X509_dup.3 NETSCAPE_CERT_SEQUENCE_new.3
+MLINKS+= X509_dup.3 NETSCAPE_SPKAC_free.3
+MLINKS+= X509_dup.3 NETSCAPE_SPKAC_new.3
+MLINKS+= X509_dup.3 NETSCAPE_SPKI_free.3
+MLINKS+= X509_dup.3 NETSCAPE_SPKI_new.3
+MLINKS+= X509_dup.3 NOTICEREF_free.3
+MLINKS+= X509_dup.3 NOTICEREF_new.3
+MLINKS+= X509_dup.3 OCSP_BASICRESP_free.3
+MLINKS+= X509_dup.3 OCSP_BASICRESP_new.3
+MLINKS+= X509_dup.3 OCSP_CERTID_dup.3
+MLINKS+= X509_dup.3 OCSP_CERTID_new.3
+MLINKS+= X509_dup.3 OCSP_CERTSTATUS_free.3
+MLINKS+= X509_dup.3 OCSP_CERTSTATUS_new.3
+MLINKS+= X509_dup.3 OCSP_CRLID_free.3
+MLINKS+= X509_dup.3 OCSP_CRLID_new.3
+MLINKS+= X509_dup.3 OCSP_ONEREQ_free.3
+MLINKS+= X509_dup.3 OCSP_ONEREQ_new.3
+MLINKS+= X509_dup.3 OCSP_REQINFO_free.3
+MLINKS+= X509_dup.3 OCSP_REQINFO_new.3
+MLINKS+= X509_dup.3 OCSP_RESPBYTES_free.3
+MLINKS+= X509_dup.3 OCSP_RESPBYTES_new.3
+MLINKS+= X509_dup.3 OCSP_RESPDATA_free.3
+MLINKS+= X509_dup.3 OCSP_RESPDATA_new.3
+MLINKS+= X509_dup.3 OCSP_RESPID_free.3
+MLINKS+= X509_dup.3 OCSP_RESPID_new.3
+MLINKS+= X509_dup.3 OCSP_RESPONSE_new.3
+MLINKS+= X509_dup.3 OCSP_REVOKEDINFO_free.3
+MLINKS+= X509_dup.3 OCSP_REVOKEDINFO_new.3
+MLINKS+= X509_dup.3 OCSP_SERVICELOC_free.3
+MLINKS+= X509_dup.3 OCSP_SERVICELOC_new.3
+MLINKS+= X509_dup.3 OCSP_SIGNATURE_free.3
+MLINKS+= X509_dup.3 OCSP_SIGNATURE_new.3
+MLINKS+= X509_dup.3 OCSP_SINGLERESP_free.3
+MLINKS+= X509_dup.3 OCSP_SINGLERESP_new.3
+MLINKS+= X509_dup.3 OTHERNAME_free.3
+MLINKS+= X509_dup.3 OTHERNAME_new.3
+MLINKS+= X509_dup.3 PBE2PARAM_free.3
+MLINKS+= X509_dup.3 PBE2PARAM_new.3
+MLINKS+= X509_dup.3 PBEPARAM_free.3
+MLINKS+= X509_dup.3 PBEPARAM_new.3
+MLINKS+= X509_dup.3 PBKDF2PARAM_free.3
+MLINKS+= X509_dup.3 PBKDF2PARAM_new.3
+MLINKS+= X509_dup.3 PKCS12_BAGS_free.3
+MLINKS+= X509_dup.3 PKCS12_BAGS_new.3
+MLINKS+= X509_dup.3 PKCS12_MAC_DATA_free.3
+MLINKS+= X509_dup.3 PKCS12_MAC_DATA_new.3
+MLINKS+= X509_dup.3 PKCS12_SAFEBAG_free.3
+MLINKS+= X509_dup.3 PKCS12_SAFEBAG_new.3
+MLINKS+= X509_dup.3 PKCS12_free.3
+MLINKS+= X509_dup.3 PKCS12_new.3
+MLINKS+= X509_dup.3 PKCS7_DIGEST_free.3
+MLINKS+= X509_dup.3 PKCS7_DIGEST_new.3
+MLINKS+= X509_dup.3 PKCS7_ENCRYPT_free.3
+MLINKS+= X509_dup.3 PKCS7_ENCRYPT_new.3
+MLINKS+= X509_dup.3 PKCS7_ENC_CONTENT_free.3
+MLINKS+= X509_dup.3 PKCS7_ENC_CONTENT_new.3
+MLINKS+= X509_dup.3 PKCS7_ENVELOPE_free.3
+MLINKS+= X509_dup.3 PKCS7_ENVELOPE_new.3
+MLINKS+= X509_dup.3 PKCS7_ISSUER_AND_SERIAL_free.3
+MLINKS+= X509_dup.3 PKCS7_ISSUER_AND_SERIAL_new.3
+MLINKS+= X509_dup.3 PKCS7_RECIP_INFO_free.3
+MLINKS+= X509_dup.3 PKCS7_RECIP_INFO_new.3
+MLINKS+= X509_dup.3 PKCS7_SIGNED_free.3
+MLINKS+= X509_dup.3 PKCS7_SIGNED_new.3
+MLINKS+= X509_dup.3 PKCS7_SIGNER_INFO_free.3
+MLINKS+= X509_dup.3 PKCS7_SIGNER_INFO_new.3
+MLINKS+= X509_dup.3 PKCS7_SIGN_ENVELOPE_free.3
+MLINKS+= X509_dup.3 PKCS7_SIGN_ENVELOPE_new.3
+MLINKS+= X509_dup.3 PKCS7_dup.3
+MLINKS+= X509_dup.3 PKCS7_free.3
+MLINKS+= X509_dup.3 PKCS7_new.3
+MLINKS+= X509_dup.3 PKCS7_print_ctx.3
+MLINKS+= X509_dup.3 PKCS8_PRIV_KEY_INFO_free.3
+MLINKS+= X509_dup.3 PKCS8_PRIV_KEY_INFO_new.3
+MLINKS+= X509_dup.3 PKEY_USAGE_PERIOD_free.3
+MLINKS+= X509_dup.3 PKEY_USAGE_PERIOD_new.3
+MLINKS+= X509_dup.3 POLICYINFO_free.3
+MLINKS+= X509_dup.3 POLICYINFO_new.3
+MLINKS+= X509_dup.3 POLICYQUALINFO_free.3
+MLINKS+= X509_dup.3 POLICYQUALINFO_new.3
+MLINKS+= X509_dup.3 POLICY_CONSTRAINTS_free.3
+MLINKS+= X509_dup.3 POLICY_CONSTRAINTS_new.3
+MLINKS+= X509_dup.3 POLICY_MAPPING_free.3
+MLINKS+= X509_dup.3 POLICY_MAPPING_new.3
+MLINKS+= X509_dup.3 PROFESSION_INFOS_free.3
+MLINKS+= X509_dup.3 PROFESSION_INFOS_new.3
+MLINKS+= X509_dup.3 PROFESSION_INFO_free.3
+MLINKS+= X509_dup.3 PROFESSION_INFO_new.3
+MLINKS+= X509_dup.3 PROXY_CERT_INFO_EXTENSION_free.3
+MLINKS+= X509_dup.3 PROXY_CERT_INFO_EXTENSION_new.3
+MLINKS+= X509_dup.3 PROXY_POLICY_free.3
+MLINKS+= X509_dup.3 PROXY_POLICY_new.3
+MLINKS+= X509_dup.3 RSAPrivateKey_dup.3
+MLINKS+= X509_dup.3 RSAPublicKey_dup.3
+MLINKS+= X509_dup.3 RSA_OAEP_PARAMS_free.3
+MLINKS+= X509_dup.3 RSA_OAEP_PARAMS_new.3
+MLINKS+= X509_dup.3 RSA_PSS_PARAMS_free.3
+MLINKS+= X509_dup.3 RSA_PSS_PARAMS_new.3
+MLINKS+= X509_dup.3 SCRYPT_PARAMS_free.3
+MLINKS+= X509_dup.3 SCRYPT_PARAMS_new.3
+MLINKS+= X509_dup.3 SXNETID_free.3
+MLINKS+= X509_dup.3 SXNETID_new.3
+MLINKS+= X509_dup.3 SXNET_free.3
+MLINKS+= X509_dup.3 SXNET_new.3
+MLINKS+= X509_dup.3 TLS_FEATURE_free.3
+MLINKS+= X509_dup.3 TLS_FEATURE_new.3
+MLINKS+= X509_dup.3 TS_ACCURACY_dup.3
+MLINKS+= X509_dup.3 TS_ACCURACY_free.3
+MLINKS+= X509_dup.3 TS_ACCURACY_new.3
+MLINKS+= X509_dup.3 TS_MSG_IMPRINT_dup.3
+MLINKS+= X509_dup.3 TS_MSG_IMPRINT_free.3
+MLINKS+= X509_dup.3 TS_MSG_IMPRINT_new.3
+MLINKS+= X509_dup.3 TS_REQ_dup.3
+MLINKS+= X509_dup.3 TS_REQ_free.3
+MLINKS+= X509_dup.3 TS_REQ_new.3
+MLINKS+= X509_dup.3 TS_RESP_dup.3
+MLINKS+= X509_dup.3 TS_RESP_free.3
+MLINKS+= X509_dup.3 TS_RESP_new.3
+MLINKS+= X509_dup.3 TS_STATUS_INFO_dup.3
+MLINKS+= X509_dup.3 TS_STATUS_INFO_free.3
+MLINKS+= X509_dup.3 TS_STATUS_INFO_new.3
+MLINKS+= X509_dup.3 TS_TST_INFO_dup.3
+MLINKS+= X509_dup.3 TS_TST_INFO_free.3
+MLINKS+= X509_dup.3 TS_TST_INFO_new.3
+MLINKS+= X509_dup.3 USERNOTICE_free.3
+MLINKS+= X509_dup.3 USERNOTICE_new.3
+MLINKS+= X509_dup.3 X509_ALGOR_free.3
+MLINKS+= X509_dup.3 X509_ALGOR_new.3
+MLINKS+= X509_dup.3 X509_ATTRIBUTE_dup.3
+MLINKS+= X509_dup.3 X509_ATTRIBUTE_free.3
+MLINKS+= X509_dup.3 X509_ATTRIBUTE_new.3
+MLINKS+= X509_dup.3 X509_CERT_AUX_free.3
+MLINKS+= X509_dup.3 X509_CERT_AUX_new.3
+MLINKS+= X509_dup.3 X509_CINF_free.3
+MLINKS+= X509_dup.3 X509_CINF_new.3
+MLINKS+= X509_dup.3 X509_CRL_INFO_free.3
+MLINKS+= X509_dup.3 X509_CRL_INFO_new.3
+MLINKS+= X509_dup.3 X509_CRL_dup.3
+MLINKS+= X509_dup.3 X509_CRL_free.3
+MLINKS+= X509_dup.3 X509_CRL_new.3
+MLINKS+= X509_dup.3 X509_EXTENSION_dup.3
+MLINKS+= X509_dup.3 X509_EXTENSION_free.3
+MLINKS+= X509_dup.3 X509_EXTENSION_new.3
+MLINKS+= X509_dup.3 X509_NAME_ENTRY_dup.3
+MLINKS+= X509_dup.3 X509_NAME_ENTRY_free.3
+MLINKS+= X509_dup.3 X509_NAME_ENTRY_new.3
+MLINKS+= X509_dup.3 X509_NAME_dup.3
+MLINKS+= X509_dup.3 X509_NAME_free.3
+MLINKS+= X509_dup.3 X509_NAME_new.3
+MLINKS+= X509_dup.3 X509_REQ_INFO_free.3
+MLINKS+= X509_dup.3 X509_REQ_INFO_new.3
+MLINKS+= X509_dup.3 X509_REQ_dup.3
+MLINKS+= X509_dup.3 X509_REQ_free.3
+MLINKS+= X509_dup.3 X509_REQ_new.3
+MLINKS+= X509_dup.3 X509_REVOKED_dup.3
+MLINKS+= X509_dup.3 X509_REVOKED_free.3
+MLINKS+= X509_dup.3 X509_REVOKED_new.3
+MLINKS+= X509_dup.3 X509_SIG_free.3
+MLINKS+= X509_dup.3 X509_SIG_new.3
+MLINKS+= X509_dup.3 X509_VAL_free.3
+MLINKS+= X509_dup.3 X509_VAL_new.3
+MLINKS+= X509_get0_notBefore.3 X509_CRL_get0_lastUpdate.3
+MLINKS+= X509_get0_notBefore.3 X509_CRL_get0_nextUpdate.3
+MLINKS+= X509_get0_notBefore.3 X509_CRL_set1_lastUpdate.3
+MLINKS+= X509_get0_notBefore.3 X509_CRL_set1_nextUpdate.3
+MLINKS+= X509_get0_notBefore.3 X509_get0_notAfter.3
+MLINKS+= X509_get0_notBefore.3 X509_getm_notAfter.3
+MLINKS+= X509_get0_notBefore.3 X509_getm_notBefore.3
+MLINKS+= X509_get0_notBefore.3 X509_set1_notAfter.3
+MLINKS+= X509_get0_notBefore.3 X509_set1_notBefore.3
+MLINKS+= X509_get0_signature.3 X509_CRL_get0_signature.3
+MLINKS+= X509_get0_signature.3 X509_CRL_get_signature_nid.3
+MLINKS+= X509_get0_signature.3 X509_REQ_get0_signature.3
+MLINKS+= X509_get0_signature.3 X509_REQ_get_signature_nid.3
+MLINKS+= X509_get0_signature.3 X509_SIG_INFO_get.3
+MLINKS+= X509_get0_signature.3 X509_SIG_INFO_set.3
+MLINKS+= X509_get0_signature.3 X509_get0_tbs_sigalg.3
+MLINKS+= X509_get0_signature.3 X509_get_signature_info.3
+MLINKS+= X509_get0_signature.3 X509_get_signature_nid.3
+MLINKS+= X509_get_extension_flags.3 X509_get0_authority_key_id.3
+MLINKS+= X509_get_extension_flags.3 X509_get0_subject_key_id.3
+MLINKS+= X509_get_extension_flags.3 X509_get_extended_key_usage.3
+MLINKS+= X509_get_extension_flags.3 X509_get_key_usage.3
+MLINKS+= X509_get_extension_flags.3 X509_get_pathlen.3
+MLINKS+= X509_get_extension_flags.3 X509_get_proxy_pathlen.3
+MLINKS+= X509_get_extension_flags.3 X509_set_proxy_flag.3
+MLINKS+= X509_get_extension_flags.3 X509_set_proxy_pathlen.3
+MLINKS+= X509_get_pubkey.3 X509_REQ_get0_pubkey.3
+MLINKS+= X509_get_pubkey.3 X509_REQ_get_X509_PUBKEY.3
+MLINKS+= X509_get_pubkey.3 X509_REQ_get_pubkey.3
+MLINKS+= X509_get_pubkey.3 X509_REQ_set_pubkey.3
+MLINKS+= X509_get_pubkey.3 X509_get0_pubkey.3
+MLINKS+= X509_get_pubkey.3 X509_get_X509_PUBKEY.3
+MLINKS+= X509_get_pubkey.3 X509_set_pubkey.3
+MLINKS+= X509_get_serialNumber.3 X509_get0_serialNumber.3
+MLINKS+= X509_get_serialNumber.3 X509_set_serialNumber.3
+MLINKS+= X509_get_subject_name.3 X509_CRL_get_issuer.3
+MLINKS+= X509_get_subject_name.3 X509_CRL_set_issuer_name.3
+MLINKS+= X509_get_subject_name.3 X509_REQ_get_subject_name.3
+MLINKS+= X509_get_subject_name.3 X509_REQ_set_subject_name.3
+MLINKS+= X509_get_subject_name.3 X509_get_issuer_name.3
+MLINKS+= X509_get_subject_name.3 X509_set_issuer_name.3
+MLINKS+= X509_get_subject_name.3 X509_set_subject_name.3
+MLINKS+= X509_get_version.3 X509_CRL_get_version.3
+MLINKS+= X509_get_version.3 X509_CRL_set_version.3
+MLINKS+= X509_get_version.3 X509_REQ_get_version.3
+MLINKS+= X509_get_version.3 X509_REQ_set_version.3
+MLINKS+= X509_get_version.3 X509_set_version.3
+MLINKS+= X509_new.3 X509_chain_up_ref.3
MLINKS+= X509_new.3 X509_free.3
-MLINKS+= blowfish.3 BF_cbc_encrypt.3
-MLINKS+= blowfish.3 BF_cfb64_encrypt.3
-MLINKS+= blowfish.3 BF_decrypt.3
-MLINKS+= blowfish.3 BF_ecb_encrypt.3
-MLINKS+= blowfish.3 BF_encrypt.3
-MLINKS+= blowfish.3 BF_ofb64_encrypt.3
-MLINKS+= blowfish.3 BF_options.3
-MLINKS+= blowfish.3 BF_set_key.3
-MLINKS+= bn_internal.3 bn_add_words.3
-MLINKS+= bn_internal.3 bn_check_top.3
-MLINKS+= bn_internal.3 bn_cmp_words.3
-MLINKS+= bn_internal.3 bn_div_words.3
-MLINKS+= bn_internal.3 bn_dump.3
-MLINKS+= bn_internal.3 bn_expand.3
-MLINKS+= bn_internal.3 bn_expand2.3
-MLINKS+= bn_internal.3 bn_fix_top.3
-MLINKS+= bn_internal.3 bn_mul_add_words.3
-MLINKS+= bn_internal.3 bn_mul_comba4.3
-MLINKS+= bn_internal.3 bn_mul_comba8.3
-MLINKS+= bn_internal.3 bn_mul_high.3
-MLINKS+= bn_internal.3 bn_mul_low_normal.3
-MLINKS+= bn_internal.3 bn_mul_low_recursive.3
-MLINKS+= bn_internal.3 bn_mul_normal.3
-MLINKS+= bn_internal.3 bn_mul_part_recursive.3
-MLINKS+= bn_internal.3 bn_mul_recursive.3
-MLINKS+= bn_internal.3 bn_mul_words.3
-MLINKS+= bn_internal.3 bn_print.3
-MLINKS+= bn_internal.3 bn_set_high.3
-MLINKS+= bn_internal.3 bn_set_low.3
-MLINKS+= bn_internal.3 bn_set_max.3
-MLINKS+= bn_internal.3 bn_sqr_comba4.3
-MLINKS+= bn_internal.3 bn_sqr_comba8.3
-MLINKS+= bn_internal.3 bn_sqr_normal.3
-MLINKS+= bn_internal.3 bn_sqr_recursive.3
-MLINKS+= bn_internal.3 bn_sqr_words.3
-MLINKS+= bn_internal.3 bn_sub_words.3
-MLINKS+= bn_internal.3 bn_wexpand.3
-MLINKS+= buffer.3 BUF_MEM_free.3
-MLINKS+= buffer.3 BUF_MEM_grow.3
-MLINKS+= buffer.3 BUF_MEM_new.3
-MLINKS+= buffer.3 BUF_MEM_new_ex.3
-MLINKS+= buffer.3 BUF_memdup.3
-MLINKS+= buffer.3 BUF_strdup.3
-MLINKS+= buffer.3 BUF_strlcat.3
-MLINKS+= buffer.3 BUF_strlcpy.3
-MLINKS+= buffer.3 BUF_strndup.3
-MLINKS+= d2i_ASN1_OBJECT.3 i2d_ASN1_OBJECT.3
-MLINKS+= d2i_CMS_ContentInfo.3 i2d_CMS_ContentInfo.3
+MLINKS+= X509_new.3 X509_up_ref.3
+MLINKS+= X509_sign.3 X509_CRL_sign.3
+MLINKS+= X509_sign.3 X509_CRL_sign_ctx.3
+MLINKS+= X509_sign.3 X509_CRL_verify.3
+MLINKS+= X509_sign.3 X509_REQ_sign.3
+MLINKS+= X509_sign.3 X509_REQ_sign_ctx.3
+MLINKS+= X509_sign.3 X509_REQ_verify.3
+MLINKS+= X509_sign.3 X509_sign_ctx.3
+MLINKS+= X509_sign.3 X509_verify.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_CRL_add_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_CRL_delete_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_CRL_get_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_CRL_get_ext_by_NID.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_CRL_get_ext_by_OBJ.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_CRL_get_ext_by_critical.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_CRL_get_ext_count.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_REVOKED_add_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_REVOKED_delete_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_REVOKED_get_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_REVOKED_get_ext_by_NID.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_REVOKED_get_ext_by_OBJ.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_REVOKED_get_ext_by_critical.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_REVOKED_get_ext_count.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_add_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_delete_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_get_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_get_ext_by_NID.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_get_ext_by_OBJ.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_get_ext_by_critical.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509_get_ext_count.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509v3_add_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509v3_delete_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509v3_get_ext.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509v3_get_ext_by_OBJ.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509v3_get_ext_by_critical.3
+MLINKS+= X509v3_get_ext_by_NID.3 X509v3_get_ext_count.3
MLINKS+= d2i_DHparams.3 i2d_DHparams.3
-MLINKS+= d2i_DSAPublicKey.3 d2i_DSAPrivateKey.3
-MLINKS+= d2i_DSAPublicKey.3 d2i_DSA_PUBKEY.3
-MLINKS+= d2i_DSAPublicKey.3 d2i_DSA_SIG.3
-MLINKS+= d2i_DSAPublicKey.3 d2i_DSAparams.3
-MLINKS+= d2i_DSAPublicKey.3 i2d_DSAPrivateKey.3
-MLINKS+= d2i_DSAPublicKey.3 i2d_DSAPublicKey.3
-MLINKS+= d2i_DSAPublicKey.3 i2d_DSA_PUBKEY.3
-MLINKS+= d2i_DSAPublicKey.3 i2d_DSA_SIG.3
-MLINKS+= d2i_DSAPublicKey.3 i2d_DSAparams.3
-MLINKS+= d2i_ECPKParameters.3 ECPKParameters_print.3
-MLINKS+= d2i_ECPKParameters.3 ECPKParameters_print_fp.3
-MLINKS+= d2i_ECPKParameters.3 d2i_ECPKParameters_bio.3
-MLINKS+= d2i_ECPKParameters.3 d2i_ECPKParameters_fp.3
-MLINKS+= d2i_ECPKParameters.3 i2d_ECPKParameters.3
-MLINKS+= d2i_ECPKParameters.3 i2d_ECPKParameters_bio.3
-MLINKS+= d2i_ECPKParameters.3 i2d_ECPKParameters_fp.3
-MLINKS+= d2i_ECPrivateKey.3 d2i_ECPrivate_key.3
-MLINKS+= d2i_ECPrivateKey.3 i2d_ECPrivateKey.3
-MLINKS+= d2i_PKCS8PrivateKey.3 d2i_PKCS8PrivateKey_bio.3
-MLINKS+= d2i_PKCS8PrivateKey.3 d2i_PKCS8PrivateKey_fp.3
-MLINKS+= d2i_PKCS8PrivateKey.3 i2d_PKCS8PrivateKey_bio.3
-MLINKS+= d2i_PKCS8PrivateKey.3 i2d_PKCS8PrivateKey_fp.3
-MLINKS+= d2i_PKCS8PrivateKey.3 i2d_PKCS8PrivateKey_nid_bio.3
-MLINKS+= d2i_PKCS8PrivateKey.3 i2d_PKCS8PrivateKey_nid_fp.3
+MLINKS+= d2i_PKCS8PrivateKey_bio.3 d2i_PKCS8PrivateKey_fp.3
+MLINKS+= d2i_PKCS8PrivateKey_bio.3 i2d_PKCS8PrivateKey_bio.3
+MLINKS+= d2i_PKCS8PrivateKey_bio.3 i2d_PKCS8PrivateKey_fp.3
+MLINKS+= d2i_PKCS8PrivateKey_bio.3 i2d_PKCS8PrivateKey_nid_bio.3
+MLINKS+= d2i_PKCS8PrivateKey_bio.3 i2d_PKCS8PrivateKey_nid_fp.3
MLINKS+= d2i_PrivateKey.3 d2i_AutoPrivateKey.3
-MLINKS+= d2i_PrivateKey.3 d2i_Private_key.3
+MLINKS+= d2i_PrivateKey.3 d2i_PrivateKey_bio.3
+MLINKS+= d2i_PrivateKey.3 d2i_PrivateKey_fp.3
+MLINKS+= d2i_PrivateKey.3 d2i_PublicKey.3
MLINKS+= d2i_PrivateKey.3 i2d_PrivateKey.3
-MLINKS+= d2i_RSAPublicKey.3 d2i_Netscape_RSA.3
-MLINKS+= d2i_RSAPublicKey.3 d2i_RSAPrivateKey.3
-MLINKS+= d2i_RSAPublicKey.3 d2i_RSA_PUBKEY.3
-MLINKS+= d2i_RSAPublicKey.3 i2d_Netscape_RSA.3
-MLINKS+= d2i_RSAPublicKey.3 i2d_RSAPrivateKey.3
-MLINKS+= d2i_RSAPublicKey.3 i2d_RSAPublicKey.3
-MLINKS+= d2i_RSAPublicKey.3 i2d_RSA_PUBKEY.3
-MLINKS+= d2i_X509.3 d2i_X509_bio.3
-MLINKS+= d2i_X509.3 d2i_X509_fp.3
+MLINKS+= d2i_PrivateKey.3 i2d_PublicKey.3
+MLINKS+= d2i_SSL_SESSION.3 i2d_SSL_SESSION.3
+MLINKS+= d2i_X509.3 d2i_ACCESS_DESCRIPTION.3
+MLINKS+= d2i_X509.3 d2i_ADMISSIONS.3
+MLINKS+= d2i_X509.3 d2i_ADMISSION_SYNTAX.3
+MLINKS+= d2i_X509.3 d2i_ASIdOrRange.3
+MLINKS+= d2i_X509.3 d2i_ASIdentifierChoice.3
+MLINKS+= d2i_X509.3 d2i_ASIdentifiers.3
+MLINKS+= d2i_X509.3 d2i_ASN1_BIT_STRING.3
+MLINKS+= d2i_X509.3 d2i_ASN1_BMPSTRING.3
+MLINKS+= d2i_X509.3 d2i_ASN1_ENUMERATED.3
+MLINKS+= d2i_X509.3 d2i_ASN1_GENERALIZEDTIME.3
+MLINKS+= d2i_X509.3 d2i_ASN1_GENERALSTRING.3
+MLINKS+= d2i_X509.3 d2i_ASN1_IA5STRING.3
+MLINKS+= d2i_X509.3 d2i_ASN1_INTEGER.3
+MLINKS+= d2i_X509.3 d2i_ASN1_NULL.3
+MLINKS+= d2i_X509.3 d2i_ASN1_OBJECT.3
+MLINKS+= d2i_X509.3 d2i_ASN1_OCTET_STRING.3
+MLINKS+= d2i_X509.3 d2i_ASN1_PRINTABLE.3
+MLINKS+= d2i_X509.3 d2i_ASN1_PRINTABLESTRING.3
+MLINKS+= d2i_X509.3 d2i_ASN1_SEQUENCE_ANY.3
+MLINKS+= d2i_X509.3 d2i_ASN1_SET_ANY.3
+MLINKS+= d2i_X509.3 d2i_ASN1_T61STRING.3
+MLINKS+= d2i_X509.3 d2i_ASN1_TIME.3
+MLINKS+= d2i_X509.3 d2i_ASN1_TYPE.3
+MLINKS+= d2i_X509.3 d2i_ASN1_UINTEGER.3
+MLINKS+= d2i_X509.3 d2i_ASN1_UNIVERSALSTRING.3
+MLINKS+= d2i_X509.3 d2i_ASN1_UTCTIME.3
+MLINKS+= d2i_X509.3 d2i_ASN1_UTF8STRING.3
+MLINKS+= d2i_X509.3 d2i_ASN1_VISIBLESTRING.3
+MLINKS+= d2i_X509.3 d2i_ASRange.3
+MLINKS+= d2i_X509.3 d2i_AUTHORITY_INFO_ACCESS.3
+MLINKS+= d2i_X509.3 d2i_AUTHORITY_KEYID.3
+MLINKS+= d2i_X509.3 d2i_BASIC_CONSTRAINTS.3
+MLINKS+= d2i_X509.3 d2i_CERTIFICATEPOLICIES.3
+MLINKS+= d2i_X509.3 d2i_CMS_ContentInfo.3
+MLINKS+= d2i_X509.3 d2i_CMS_ReceiptRequest.3
+MLINKS+= d2i_X509.3 d2i_CMS_bio.3
+MLINKS+= d2i_X509.3 d2i_CRL_DIST_POINTS.3
+MLINKS+= d2i_X509.3 d2i_DHxparams.3
+MLINKS+= d2i_X509.3 d2i_DIRECTORYSTRING.3
+MLINKS+= d2i_X509.3 d2i_DISPLAYTEXT.3
+MLINKS+= d2i_X509.3 d2i_DIST_POINT.3
+MLINKS+= d2i_X509.3 d2i_DIST_POINT_NAME.3
+MLINKS+= d2i_X509.3 d2i_DSAPrivateKey.3
+MLINKS+= d2i_X509.3 d2i_DSAPrivateKey_bio.3
+MLINKS+= d2i_X509.3 d2i_DSAPrivateKey_fp.3
+MLINKS+= d2i_X509.3 d2i_DSAPublicKey.3
+MLINKS+= d2i_X509.3 d2i_DSA_PUBKEY.3
+MLINKS+= d2i_X509.3 d2i_DSA_PUBKEY_bio.3
+MLINKS+= d2i_X509.3 d2i_DSA_PUBKEY_fp.3
+MLINKS+= d2i_X509.3 d2i_DSA_SIG.3
+MLINKS+= d2i_X509.3 d2i_DSAparams.3
+MLINKS+= d2i_X509.3 d2i_ECPKParameters.3
+MLINKS+= d2i_X509.3 d2i_ECParameters.3
+MLINKS+= d2i_X509.3 d2i_ECPrivateKey.3
+MLINKS+= d2i_X509.3 d2i_ECPrivateKey_bio.3
+MLINKS+= d2i_X509.3 d2i_ECPrivateKey_fp.3
+MLINKS+= d2i_X509.3 d2i_EC_PUBKEY.3
+MLINKS+= d2i_X509.3 d2i_EC_PUBKEY_bio.3
+MLINKS+= d2i_X509.3 d2i_EC_PUBKEY_fp.3
+MLINKS+= d2i_X509.3 d2i_EDIPARTYNAME.3
+MLINKS+= d2i_X509.3 d2i_ESS_CERT_ID.3
+MLINKS+= d2i_X509.3 d2i_ESS_ISSUER_SERIAL.3
+MLINKS+= d2i_X509.3 d2i_ESS_SIGNING_CERT.3
+MLINKS+= d2i_X509.3 d2i_EXTENDED_KEY_USAGE.3
+MLINKS+= d2i_X509.3 d2i_GENERAL_NAME.3
+MLINKS+= d2i_X509.3 d2i_GENERAL_NAMES.3
+MLINKS+= d2i_X509.3 d2i_IPAddressChoice.3
+MLINKS+= d2i_X509.3 d2i_IPAddressFamily.3
+MLINKS+= d2i_X509.3 d2i_IPAddressOrRange.3
+MLINKS+= d2i_X509.3 d2i_IPAddressRange.3
+MLINKS+= d2i_X509.3 d2i_ISSUING_DIST_POINT.3
+MLINKS+= d2i_X509.3 d2i_NAMING_AUTHORITY.3
+MLINKS+= d2i_X509.3 d2i_NETSCAPE_CERT_SEQUENCE.3
+MLINKS+= d2i_X509.3 d2i_NETSCAPE_SPKAC.3
+MLINKS+= d2i_X509.3 d2i_NETSCAPE_SPKI.3
+MLINKS+= d2i_X509.3 d2i_NOTICEREF.3
+MLINKS+= d2i_X509.3 d2i_OCSP_BASICRESP.3
+MLINKS+= d2i_X509.3 d2i_OCSP_CERTID.3
+MLINKS+= d2i_X509.3 d2i_OCSP_CERTSTATUS.3
+MLINKS+= d2i_X509.3 d2i_OCSP_CRLID.3
+MLINKS+= d2i_X509.3 d2i_OCSP_ONEREQ.3
+MLINKS+= d2i_X509.3 d2i_OCSP_REQINFO.3
+MLINKS+= d2i_X509.3 d2i_OCSP_REQUEST.3
+MLINKS+= d2i_X509.3 d2i_OCSP_RESPBYTES.3
+MLINKS+= d2i_X509.3 d2i_OCSP_RESPDATA.3
+MLINKS+= d2i_X509.3 d2i_OCSP_RESPID.3
+MLINKS+= d2i_X509.3 d2i_OCSP_RESPONSE.3
+MLINKS+= d2i_X509.3 d2i_OCSP_REVOKEDINFO.3
+MLINKS+= d2i_X509.3 d2i_OCSP_SERVICELOC.3
+MLINKS+= d2i_X509.3 d2i_OCSP_SIGNATURE.3
+MLINKS+= d2i_X509.3 d2i_OCSP_SINGLERESP.3
+MLINKS+= d2i_X509.3 d2i_OTHERNAME.3
+MLINKS+= d2i_X509.3 d2i_PBE2PARAM.3
+MLINKS+= d2i_X509.3 d2i_PBEPARAM.3
+MLINKS+= d2i_X509.3 d2i_PBKDF2PARAM.3
+MLINKS+= d2i_X509.3 d2i_PKCS12.3
+MLINKS+= d2i_X509.3 d2i_PKCS12_BAGS.3
+MLINKS+= d2i_X509.3 d2i_PKCS12_MAC_DATA.3
+MLINKS+= d2i_X509.3 d2i_PKCS12_SAFEBAG.3
+MLINKS+= d2i_X509.3 d2i_PKCS12_bio.3
+MLINKS+= d2i_X509.3 d2i_PKCS12_fp.3
+MLINKS+= d2i_X509.3 d2i_PKCS7.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_DIGEST.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_ENCRYPT.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_ENC_CONTENT.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_ENVELOPE.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_ISSUER_AND_SERIAL.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_RECIP_INFO.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_SIGNED.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_SIGNER_INFO.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_SIGN_ENVELOPE.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_bio.3
+MLINKS+= d2i_X509.3 d2i_PKCS7_fp.3
+MLINKS+= d2i_X509.3 d2i_PKCS8_PRIV_KEY_INFO.3
+MLINKS+= d2i_X509.3 d2i_PKCS8_PRIV_KEY_INFO_bio.3
+MLINKS+= d2i_X509.3 d2i_PKCS8_PRIV_KEY_INFO_fp.3
+MLINKS+= d2i_X509.3 d2i_PKCS8_bio.3
+MLINKS+= d2i_X509.3 d2i_PKCS8_fp.3
+MLINKS+= d2i_X509.3 d2i_PKEY_USAGE_PERIOD.3
+MLINKS+= d2i_X509.3 d2i_POLICYINFO.3
+MLINKS+= d2i_X509.3 d2i_POLICYQUALINFO.3
+MLINKS+= d2i_X509.3 d2i_PROFESSION_INFO.3
+MLINKS+= d2i_X509.3 d2i_PROXY_CERT_INFO_EXTENSION.3
+MLINKS+= d2i_X509.3 d2i_PROXY_POLICY.3
+MLINKS+= d2i_X509.3 d2i_RSAPrivateKey.3
+MLINKS+= d2i_X509.3 d2i_RSAPrivateKey_bio.3
+MLINKS+= d2i_X509.3 d2i_RSAPrivateKey_fp.3
+MLINKS+= d2i_X509.3 d2i_RSAPublicKey.3
+MLINKS+= d2i_X509.3 d2i_RSAPublicKey_bio.3
+MLINKS+= d2i_X509.3 d2i_RSAPublicKey_fp.3
+MLINKS+= d2i_X509.3 d2i_RSA_OAEP_PARAMS.3
+MLINKS+= d2i_X509.3 d2i_RSA_PSS_PARAMS.3
+MLINKS+= d2i_X509.3 d2i_RSA_PUBKEY.3
+MLINKS+= d2i_X509.3 d2i_RSA_PUBKEY_bio.3
+MLINKS+= d2i_X509.3 d2i_RSA_PUBKEY_fp.3
+MLINKS+= d2i_X509.3 d2i_SCRYPT_PARAMS.3
+MLINKS+= d2i_X509.3 d2i_SCT_LIST.3
+MLINKS+= d2i_X509.3 d2i_SXNET.3
+MLINKS+= d2i_X509.3 d2i_SXNETID.3
+MLINKS+= d2i_X509.3 d2i_TS_ACCURACY.3
+MLINKS+= d2i_X509.3 d2i_TS_MSG_IMPRINT.3
+MLINKS+= d2i_X509.3 d2i_TS_MSG_IMPRINT_bio.3
+MLINKS+= d2i_X509.3 d2i_TS_MSG_IMPRINT_fp.3
+MLINKS+= d2i_X509.3 d2i_TS_REQ.3
+MLINKS+= d2i_X509.3 d2i_TS_REQ_bio.3
+MLINKS+= d2i_X509.3 d2i_TS_REQ_fp.3
+MLINKS+= d2i_X509.3 d2i_TS_RESP.3
+MLINKS+= d2i_X509.3 d2i_TS_RESP_bio.3
+MLINKS+= d2i_X509.3 d2i_TS_RESP_fp.3
+MLINKS+= d2i_X509.3 d2i_TS_STATUS_INFO.3
+MLINKS+= d2i_X509.3 d2i_TS_TST_INFO.3
+MLINKS+= d2i_X509.3 d2i_TS_TST_INFO_bio.3
+MLINKS+= d2i_X509.3 d2i_TS_TST_INFO_fp.3
+MLINKS+= d2i_X509.3 d2i_USERNOTICE.3
+MLINKS+= d2i_X509.3 d2i_X509_ALGOR.3
+MLINKS+= d2i_X509.3 d2i_X509_ALGORS.3
+MLINKS+= d2i_X509.3 d2i_X509_ATTRIBUTE.3
+MLINKS+= d2i_X509.3 d2i_X509_CERT_AUX.3
+MLINKS+= d2i_X509.3 d2i_X509_CINF.3
+MLINKS+= d2i_X509.3 d2i_X509_CRL.3
+MLINKS+= d2i_X509.3 d2i_X509_CRL_INFO.3
+MLINKS+= d2i_X509.3 d2i_X509_CRL_bio.3
+MLINKS+= d2i_X509.3 d2i_X509_CRL_fp.3
+MLINKS+= d2i_X509.3 d2i_X509_EXTENSION.3
+MLINKS+= d2i_X509.3 d2i_X509_EXTENSIONS.3
+MLINKS+= d2i_X509.3 d2i_X509_NAME.3
+MLINKS+= d2i_X509.3 d2i_X509_NAME_ENTRY.3
+MLINKS+= d2i_X509.3 d2i_X509_PUBKEY.3
+MLINKS+= d2i_X509.3 d2i_X509_REQ.3
+MLINKS+= d2i_X509.3 d2i_X509_REQ_INFO.3
+MLINKS+= d2i_X509.3 d2i_X509_REQ_bio.3
+MLINKS+= d2i_X509.3 d2i_X509_REQ_fp.3
+MLINKS+= d2i_X509.3 d2i_X509_REVOKED.3
+MLINKS+= d2i_X509.3 d2i_X509_SIG.3
+MLINKS+= d2i_X509.3 d2i_X509_VAL.3
+MLINKS+= d2i_X509.3 i2d_ACCESS_DESCRIPTION.3
+MLINKS+= d2i_X509.3 i2d_ADMISSIONS.3
+MLINKS+= d2i_X509.3 i2d_ADMISSION_SYNTAX.3
+MLINKS+= d2i_X509.3 i2d_ASIdOrRange.3
+MLINKS+= d2i_X509.3 i2d_ASIdentifierChoice.3
+MLINKS+= d2i_X509.3 i2d_ASIdentifiers.3
+MLINKS+= d2i_X509.3 i2d_ASN1_BIT_STRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_BMPSTRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_ENUMERATED.3
+MLINKS+= d2i_X509.3 i2d_ASN1_GENERALIZEDTIME.3
+MLINKS+= d2i_X509.3 i2d_ASN1_GENERALSTRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_IA5STRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_INTEGER.3
+MLINKS+= d2i_X509.3 i2d_ASN1_NULL.3
+MLINKS+= d2i_X509.3 i2d_ASN1_OBJECT.3
+MLINKS+= d2i_X509.3 i2d_ASN1_OCTET_STRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_PRINTABLE.3
+MLINKS+= d2i_X509.3 i2d_ASN1_PRINTABLESTRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_SEQUENCE_ANY.3
+MLINKS+= d2i_X509.3 i2d_ASN1_SET_ANY.3
+MLINKS+= d2i_X509.3 i2d_ASN1_T61STRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_TIME.3
+MLINKS+= d2i_X509.3 i2d_ASN1_TYPE.3
+MLINKS+= d2i_X509.3 i2d_ASN1_UNIVERSALSTRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_UTCTIME.3
+MLINKS+= d2i_X509.3 i2d_ASN1_UTF8STRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_VISIBLESTRING.3
+MLINKS+= d2i_X509.3 i2d_ASN1_bio_stream.3
+MLINKS+= d2i_X509.3 i2d_ASRange.3
+MLINKS+= d2i_X509.3 i2d_AUTHORITY_INFO_ACCESS.3
+MLINKS+= d2i_X509.3 i2d_AUTHORITY_KEYID.3
+MLINKS+= d2i_X509.3 i2d_BASIC_CONSTRAINTS.3
+MLINKS+= d2i_X509.3 i2d_CERTIFICATEPOLICIES.3
+MLINKS+= d2i_X509.3 i2d_CMS_ContentInfo.3
+MLINKS+= d2i_X509.3 i2d_CMS_ReceiptRequest.3
+MLINKS+= d2i_X509.3 i2d_CMS_bio.3
+MLINKS+= d2i_X509.3 i2d_CRL_DIST_POINTS.3
+MLINKS+= d2i_X509.3 i2d_DHxparams.3
+MLINKS+= d2i_X509.3 i2d_DIRECTORYSTRING.3
+MLINKS+= d2i_X509.3 i2d_DISPLAYTEXT.3
+MLINKS+= d2i_X509.3 i2d_DIST_POINT.3
+MLINKS+= d2i_X509.3 i2d_DIST_POINT_NAME.3
+MLINKS+= d2i_X509.3 i2d_DSAPrivateKey.3
+MLINKS+= d2i_X509.3 i2d_DSAPrivateKey_bio.3
+MLINKS+= d2i_X509.3 i2d_DSAPrivateKey_fp.3
+MLINKS+= d2i_X509.3 i2d_DSAPublicKey.3
+MLINKS+= d2i_X509.3 i2d_DSA_PUBKEY.3
+MLINKS+= d2i_X509.3 i2d_DSA_PUBKEY_bio.3
+MLINKS+= d2i_X509.3 i2d_DSA_PUBKEY_fp.3
+MLINKS+= d2i_X509.3 i2d_DSA_SIG.3
+MLINKS+= d2i_X509.3 i2d_DSAparams.3
+MLINKS+= d2i_X509.3 i2d_ECPKParameters.3
+MLINKS+= d2i_X509.3 i2d_ECParameters.3
+MLINKS+= d2i_X509.3 i2d_ECPrivateKey.3
+MLINKS+= d2i_X509.3 i2d_ECPrivateKey_bio.3
+MLINKS+= d2i_X509.3 i2d_ECPrivateKey_fp.3
+MLINKS+= d2i_X509.3 i2d_EC_PUBKEY.3
+MLINKS+= d2i_X509.3 i2d_EC_PUBKEY_bio.3
+MLINKS+= d2i_X509.3 i2d_EC_PUBKEY_fp.3
+MLINKS+= d2i_X509.3 i2d_EDIPARTYNAME.3
+MLINKS+= d2i_X509.3 i2d_ESS_CERT_ID.3
+MLINKS+= d2i_X509.3 i2d_ESS_ISSUER_SERIAL.3
+MLINKS+= d2i_X509.3 i2d_ESS_SIGNING_CERT.3
+MLINKS+= d2i_X509.3 i2d_EXTENDED_KEY_USAGE.3
+MLINKS+= d2i_X509.3 i2d_GENERAL_NAME.3
+MLINKS+= d2i_X509.3 i2d_GENERAL_NAMES.3
+MLINKS+= d2i_X509.3 i2d_IPAddressChoice.3
+MLINKS+= d2i_X509.3 i2d_IPAddressFamily.3
+MLINKS+= d2i_X509.3 i2d_IPAddressOrRange.3
+MLINKS+= d2i_X509.3 i2d_IPAddressRange.3
+MLINKS+= d2i_X509.3 i2d_ISSUING_DIST_POINT.3
+MLINKS+= d2i_X509.3 i2d_NAMING_AUTHORITY.3
+MLINKS+= d2i_X509.3 i2d_NETSCAPE_CERT_SEQUENCE.3
+MLINKS+= d2i_X509.3 i2d_NETSCAPE_SPKAC.3
+MLINKS+= d2i_X509.3 i2d_NETSCAPE_SPKI.3
+MLINKS+= d2i_X509.3 i2d_NOTICEREF.3
+MLINKS+= d2i_X509.3 i2d_OCSP_BASICRESP.3
+MLINKS+= d2i_X509.3 i2d_OCSP_CERTID.3
+MLINKS+= d2i_X509.3 i2d_OCSP_CERTSTATUS.3
+MLINKS+= d2i_X509.3 i2d_OCSP_CRLID.3
+MLINKS+= d2i_X509.3 i2d_OCSP_ONEREQ.3
+MLINKS+= d2i_X509.3 i2d_OCSP_REQINFO.3
+MLINKS+= d2i_X509.3 i2d_OCSP_REQUEST.3
+MLINKS+= d2i_X509.3 i2d_OCSP_RESPBYTES.3
+MLINKS+= d2i_X509.3 i2d_OCSP_RESPDATA.3
+MLINKS+= d2i_X509.3 i2d_OCSP_RESPID.3
+MLINKS+= d2i_X509.3 i2d_OCSP_RESPONSE.3
+MLINKS+= d2i_X509.3 i2d_OCSP_REVOKEDINFO.3
+MLINKS+= d2i_X509.3 i2d_OCSP_SERVICELOC.3
+MLINKS+= d2i_X509.3 i2d_OCSP_SIGNATURE.3
+MLINKS+= d2i_X509.3 i2d_OCSP_SINGLERESP.3
+MLINKS+= d2i_X509.3 i2d_OTHERNAME.3
+MLINKS+= d2i_X509.3 i2d_PBE2PARAM.3
+MLINKS+= d2i_X509.3 i2d_PBEPARAM.3
+MLINKS+= d2i_X509.3 i2d_PBKDF2PARAM.3
+MLINKS+= d2i_X509.3 i2d_PKCS12.3
+MLINKS+= d2i_X509.3 i2d_PKCS12_BAGS.3
+MLINKS+= d2i_X509.3 i2d_PKCS12_MAC_DATA.3
+MLINKS+= d2i_X509.3 i2d_PKCS12_SAFEBAG.3
+MLINKS+= d2i_X509.3 i2d_PKCS12_bio.3
+MLINKS+= d2i_X509.3 i2d_PKCS12_fp.3
+MLINKS+= d2i_X509.3 i2d_PKCS7.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_DIGEST.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_ENCRYPT.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_ENC_CONTENT.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_ENVELOPE.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_ISSUER_AND_SERIAL.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_NDEF.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_RECIP_INFO.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_SIGNED.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_SIGNER_INFO.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_SIGN_ENVELOPE.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_bio.3
+MLINKS+= d2i_X509.3 i2d_PKCS7_fp.3
+MLINKS+= d2i_X509.3 i2d_PKCS8PrivateKeyInfo_bio.3
+MLINKS+= d2i_X509.3 i2d_PKCS8PrivateKeyInfo_fp.3
+MLINKS+= d2i_X509.3 i2d_PKCS8_PRIV_KEY_INFO.3
+MLINKS+= d2i_X509.3 i2d_PKCS8_PRIV_KEY_INFO_bio.3
+MLINKS+= d2i_X509.3 i2d_PKCS8_PRIV_KEY_INFO_fp.3
+MLINKS+= d2i_X509.3 i2d_PKCS8_bio.3
+MLINKS+= d2i_X509.3 i2d_PKCS8_fp.3
+MLINKS+= d2i_X509.3 i2d_PKEY_USAGE_PERIOD.3
+MLINKS+= d2i_X509.3 i2d_POLICYINFO.3
+MLINKS+= d2i_X509.3 i2d_POLICYQUALINFO.3
+MLINKS+= d2i_X509.3 i2d_PROFESSION_INFO.3
+MLINKS+= d2i_X509.3 i2d_PROXY_CERT_INFO_EXTENSION.3
+MLINKS+= d2i_X509.3 i2d_PROXY_POLICY.3
+MLINKS+= d2i_X509.3 i2d_RSAPrivateKey.3
+MLINKS+= d2i_X509.3 i2d_RSAPrivateKey_bio.3
+MLINKS+= d2i_X509.3 i2d_RSAPrivateKey_fp.3
+MLINKS+= d2i_X509.3 i2d_RSAPublicKey.3
+MLINKS+= d2i_X509.3 i2d_RSAPublicKey_bio.3
+MLINKS+= d2i_X509.3 i2d_RSAPublicKey_fp.3
+MLINKS+= d2i_X509.3 i2d_RSA_OAEP_PARAMS.3
+MLINKS+= d2i_X509.3 i2d_RSA_PSS_PARAMS.3
+MLINKS+= d2i_X509.3 i2d_RSA_PUBKEY.3
+MLINKS+= d2i_X509.3 i2d_RSA_PUBKEY_bio.3
+MLINKS+= d2i_X509.3 i2d_RSA_PUBKEY_fp.3
+MLINKS+= d2i_X509.3 i2d_SCRYPT_PARAMS.3
+MLINKS+= d2i_X509.3 i2d_SCT_LIST.3
+MLINKS+= d2i_X509.3 i2d_SXNET.3
+MLINKS+= d2i_X509.3 i2d_SXNETID.3
+MLINKS+= d2i_X509.3 i2d_TS_ACCURACY.3
+MLINKS+= d2i_X509.3 i2d_TS_MSG_IMPRINT.3
+MLINKS+= d2i_X509.3 i2d_TS_MSG_IMPRINT_bio.3
+MLINKS+= d2i_X509.3 i2d_TS_MSG_IMPRINT_fp.3
+MLINKS+= d2i_X509.3 i2d_TS_REQ.3
+MLINKS+= d2i_X509.3 i2d_TS_REQ_bio.3
+MLINKS+= d2i_X509.3 i2d_TS_REQ_fp.3
+MLINKS+= d2i_X509.3 i2d_TS_RESP.3
+MLINKS+= d2i_X509.3 i2d_TS_RESP_bio.3
+MLINKS+= d2i_X509.3 i2d_TS_RESP_fp.3
+MLINKS+= d2i_X509.3 i2d_TS_STATUS_INFO.3
+MLINKS+= d2i_X509.3 i2d_TS_TST_INFO.3
+MLINKS+= d2i_X509.3 i2d_TS_TST_INFO_bio.3
+MLINKS+= d2i_X509.3 i2d_TS_TST_INFO_fp.3
+MLINKS+= d2i_X509.3 i2d_USERNOTICE.3
MLINKS+= d2i_X509.3 i2d_X509.3
-MLINKS+= d2i_X509.3 i2d_X509_bio.3
-MLINKS+= d2i_X509.3 i2d_X509_fp.3
-MLINKS+= d2i_X509_ALGOR.3 i2d_X509_ALGOR.3
-MLINKS+= d2i_X509_CRL.3 d2i_X509_CRL_bio.3
-MLINKS+= d2i_X509_CRL.3 d2i_X509_CRL_fp.3
-MLINKS+= d2i_X509_CRL.3 i2d_X509_CRL.3
-MLINKS+= d2i_X509_CRL.3 i2d_X509_CRL_bio.3
-MLINKS+= d2i_X509_CRL.3 i2d_X509_CRL_fp.3
-MLINKS+= d2i_X509_NAME.3 i2d_X509_NAME.3
-MLINKS+= d2i_X509_REQ.3 d2i_X509_REQ_bio.3
-MLINKS+= d2i_X509_REQ.3 d2i_X509_REQ_fp.3
-MLINKS+= d2i_X509_REQ.3 i2d_X509_REQ.3
-MLINKS+= d2i_X509_REQ.3 i2d_X509_REQ_bio.3
-MLINKS+= d2i_X509_REQ.3 i2d_X509_REQ_fp.3
-MLINKS+= d2i_X509_SIG.3 i2d_X509_SIG.3
-MLINKS+= des.3 DES_cbc_cksum.3
-MLINKS+= des.3 DES_cfb64_encrypt.3
-MLINKS+= des.3 DES_cfb_encrypt.3
-MLINKS+= des.3 DES_crypt.3
-MLINKS+= des.3 DES_ecb2_encrypt.3
-MLINKS+= des.3 DES_ecb3_encrypt.3
-MLINKS+= des.3 DES_ecb_encrypt.3
-MLINKS+= des.3 DES_ede2_cbc_encrypt.3
-MLINKS+= des.3 DES_ede2_cfb64_encrypt.3
-MLINKS+= des.3 DES_ede2_ofb64_encrypt.3
-MLINKS+= des.3 DES_ede3_cbc_encrypt.3
-MLINKS+= des.3 DES_ede3_cbcm_encrypt.3
-MLINKS+= des.3 DES_ede3_cfb64_encrypt.3
-MLINKS+= des.3 DES_ede3_ofb64_encrypt.3
-MLINKS+= des.3 DES_enc_read.3
-MLINKS+= des.3 DES_enc_write.3
-MLINKS+= des.3 DES_fcrypt.3
-MLINKS+= des.3 DES_is_weak_key.3
-MLINKS+= des.3 DES_key_sched.3
-MLINKS+= des.3 DES_ncbc_encrypt.3
-MLINKS+= des.3 DES_ofb64_encrypt.3
-MLINKS+= des.3 DES_ofb_encrypt.3
-MLINKS+= des.3 DES_pcbc_encrypt.3
-MLINKS+= des.3 DES_quad_cksum.3
-MLINKS+= des.3 DES_random_key.3
-MLINKS+= des.3 DES_set_key.3
-MLINKS+= des.3 DES_set_key_checked.3
-MLINKS+= des.3 DES_set_key_unchecked.3
-MLINKS+= des.3 DES_set_odd_parity.3
-MLINKS+= des.3 DES_string_to_2keys.3
-MLINKS+= des.3 DES_string_to_key.3
-MLINKS+= des.3 DES_xcbc_encrypt.3
-MLINKS+= ecdsa.3 ECDSA_SIG_free.3
-MLINKS+= ecdsa.3 ECDSA_SIG_new.3
-MLINKS+= ecdsa.3 ECDSA_do_sign.3
-MLINKS+= ecdsa.3 ECDSA_do_sign_ex.3
-MLINKS+= ecdsa.3 ECDSA_do_verify.3
-MLINKS+= ecdsa.3 ECDSA_sign.3
-MLINKS+= ecdsa.3 ECDSA_sign_ex.3
-MLINKS+= ecdsa.3 ECDSA_sign_setup.3
-MLINKS+= ecdsa.3 ECDSA_size.3
-MLINKS+= ecdsa.3 ECDSA_verify.3
-MLINKS+= ecdsa.3 d2i_ECDSA_SIG.3
-MLINKS+= ecdsa.3 i2d_ECDSA_SIG.3
-MLINKS+= hmac.3 HMAC.3
-MLINKS+= hmac.3 HMAC_CTX_cleanup.3
-MLINKS+= hmac.3 HMAC_CTX_init.3
-MLINKS+= hmac.3 HMAC_Final.3
-MLINKS+= hmac.3 HMAC_Init.3
-MLINKS+= hmac.3 HMAC_Init_ex.3
-MLINKS+= hmac.3 HMAC_Update.3
-MLINKS+= hmac.3 HMAC_cleanup.3
-MLINKS+= lh_stats.3 lh_node_stats.3
-MLINKS+= lh_stats.3 lh_node_stats_bio.3
-MLINKS+= lh_stats.3 lh_node_usage_stats.3
-MLINKS+= lh_stats.3 lh_node_usage_stats_bio.3
-MLINKS+= lh_stats.3 lh_stats_bio.3
-MLINKS+= lhash.3 lh_delete.3
-MLINKS+= lhash.3 lh_doall.3
-MLINKS+= lhash.3 lh_doall_arg.3
-MLINKS+= lhash.3 lh_error.3
-MLINKS+= lhash.3 lh_free.3
-MLINKS+= lhash.3 lh_insert.3
-MLINKS+= lhash.3 lh_new.3
-MLINKS+= lhash.3 lh_retrieve.3
-MLINKS+= md5.3 MD2.3
-MLINKS+= md5.3 MD2_Final.3
-MLINKS+= md5.3 MD2_Init.3
-MLINKS+= md5.3 MD2_Update.3
-MLINKS+= md5.3 MD4.3
-MLINKS+= md5.3 MD4_Final.3
-MLINKS+= md5.3 MD4_Init.3
-MLINKS+= md5.3 MD4_Update.3
-MLINKS+= md5.3 MD5.3
-MLINKS+= md5.3 MD5_Final.3
-MLINKS+= md5.3 MD5_Init.3
-MLINKS+= md5.3 MD5_Update.3
-MLINKS+= mdc2.3 MDC2.3
-MLINKS+= mdc2.3 MDC2_Final.3
-MLINKS+= mdc2.3 MDC2_Init.3
-MLINKS+= mdc2.3 MDC2_Update.3
-MLINKS+= pem.3 PEM.3
-MLINKS+= pem.3 PEM_read_DHparams.3
-MLINKS+= pem.3 PEM_read_DSAPrivateKey.3
-MLINKS+= pem.3 PEM_read_DSA_PUBKEY.3
-MLINKS+= pem.3 PEM_read_DSAparams.3
-MLINKS+= pem.3 PEM_read_NETSCAPE_CERT_SEQUENCE.3
-MLINKS+= pem.3 PEM_read_PKCS7.3
-MLINKS+= pem.3 PEM_read_PUBKEY.3
-MLINKS+= pem.3 PEM_read_PrivateKey.3
-MLINKS+= pem.3 PEM_read_RSAPrivateKey.3
-MLINKS+= pem.3 PEM_read_RSAPublicKey.3
-MLINKS+= pem.3 PEM_read_RSA_PUBKEY.3
-MLINKS+= pem.3 PEM_read_X509.3
-MLINKS+= pem.3 PEM_read_X509_AUX.3
-MLINKS+= pem.3 PEM_read_X509_CRL.3
-MLINKS+= pem.3 PEM_read_X509_REQ.3
-MLINKS+= pem.3 PEM_read_bio_DHparams.3
-MLINKS+= pem.3 PEM_read_bio_DSAPrivateKey.3
-MLINKS+= pem.3 PEM_read_bio_DSA_PUBKEY.3
-MLINKS+= pem.3 PEM_read_bio_DSAparams.3
-MLINKS+= pem.3 PEM_read_bio_NETSCAPE_CERT_SEQUENCE.3
-MLINKS+= pem.3 PEM_read_bio_PKCS7.3
-MLINKS+= pem.3 PEM_read_bio_PUBKEY.3
-MLINKS+= pem.3 PEM_read_bio_PrivateKey.3
-MLINKS+= pem.3 PEM_read_bio_RSAPrivateKey.3
-MLINKS+= pem.3 PEM_read_bio_RSAPublicKey.3
-MLINKS+= pem.3 PEM_read_bio_RSA_PUBKEY.3
-MLINKS+= pem.3 PEM_read_bio_X509.3
-MLINKS+= pem.3 PEM_read_bio_X509_AUX.3
-MLINKS+= pem.3 PEM_read_bio_X509_CRL.3
-MLINKS+= pem.3 PEM_read_bio_X509_REQ.3
-MLINKS+= pem.3 PEM_write_DHparams.3
-MLINKS+= pem.3 PEM_write_DSAPrivateKey.3
-MLINKS+= pem.3 PEM_write_DSA_PUBKEY.3
-MLINKS+= pem.3 PEM_write_DSAparams.3
-MLINKS+= pem.3 PEM_write_NETSCAPE_CERT_SEQUENCE.3
-MLINKS+= pem.3 PEM_write_PKCS7.3
-MLINKS+= pem.3 PEM_write_PKCS8PrivateKey.3
-MLINKS+= pem.3 PEM_write_PKCS8PrivateKey_nid.3
-MLINKS+= pem.3 PEM_write_PUBKEY.3
-MLINKS+= pem.3 PEM_write_PrivateKey.3
-MLINKS+= pem.3 PEM_write_RSAPrivateKey.3
-MLINKS+= pem.3 PEM_write_RSAPublicKey.3
-MLINKS+= pem.3 PEM_write_RSA_PUBKEY.3
-MLINKS+= pem.3 PEM_write_X509.3
-MLINKS+= pem.3 PEM_write_X509_AUX.3
-MLINKS+= pem.3 PEM_write_X509_CRL.3
-MLINKS+= pem.3 PEM_write_X509_REQ.3
-MLINKS+= pem.3 PEM_write_X509_REQ_NEW.3
-MLINKS+= pem.3 PEM_write_bio_DHparams.3
-MLINKS+= pem.3 PEM_write_bio_DSAPrivateKey.3
-MLINKS+= pem.3 PEM_write_bio_DSA_PUBKEY.3
-MLINKS+= pem.3 PEM_write_bio_DSAparams.3
-MLINKS+= pem.3 PEM_write_bio_NETSCAPE_CERT_SEQUENCE.3
-MLINKS+= pem.3 PEM_write_bio_PKCS7.3
-MLINKS+= pem.3 PEM_write_bio_PKCS8PrivateKey.3
-MLINKS+= pem.3 PEM_write_bio_PKCS8PrivateKey_nid.3
-MLINKS+= pem.3 PEM_write_bio_PUBKEY.3
-MLINKS+= pem.3 PEM_write_bio_PrivateKey.3
-MLINKS+= pem.3 PEM_write_bio_RSAPrivateKey.3
-MLINKS+= pem.3 PEM_write_bio_RSAPublicKey.3
-MLINKS+= pem.3 PEM_write_bio_RSA_PUBKEY.3
-MLINKS+= pem.3 PEM_write_bio_X509.3
-MLINKS+= pem.3 PEM_write_bio_X509_AUX.3
-MLINKS+= pem.3 PEM_write_bio_X509_CRL.3
-MLINKS+= pem.3 PEM_write_bio_X509_REQ.3
-MLINKS+= pem.3 PEM_write_bio_X509_REQ_NEW.3
-MLINKS+= rc4.3 RC4.3
-MLINKS+= rc4.3 RC4_set_key.3
-MLINKS+= ripemd.3 RIPEMD160.3
-MLINKS+= ripemd.3 RIPEMD160_Final.3
-MLINKS+= ripemd.3 RIPEMD160_Init.3
-MLINKS+= ripemd.3 RIPEMD160_Update.3
-MLINKS+= sha.3 SHA1.3
-MLINKS+= sha.3 SHA1_Final.3
-MLINKS+= sha.3 SHA1_Init.3
-MLINKS+= sha.3 SHA1_Update.3
-MLINKS+= sha.3 SHA224.3
-MLINKS+= sha.3 SHA224_Final.3
-MLINKS+= sha.3 SHA224_Init.3
-MLINKS+= sha.3 SHA224_Update.3
-MLINKS+= sha.3 SHA256.3
-MLINKS+= sha.3 SHA256_Final.3
-MLINKS+= sha.3 SHA256_Init.3
-MLINKS+= sha.3 SHA256_Update.3
-MLINKS+= sha.3 SHA384.3
-MLINKS+= sha.3 SHA384_Final.3
-MLINKS+= sha.3 SHA384_Init.3
-MLINKS+= sha.3 SHA384_Update.3
-MLINKS+= sha.3 SHA512.3
-MLINKS+= sha.3 SHA512_Final.3
-MLINKS+= sha.3 SHA512_Init.3
-MLINKS+= sha.3 SHA512_Update.3
-MLINKS+= threads.3 CRYPTO_THREADID_cmp.3
-MLINKS+= threads.3 CRYPTO_THREADID_cpy.3
-MLINKS+= threads.3 CRYPTO_THREADID_current.3
-MLINKS+= threads.3 CRYPTO_THREADID_get_callback.3
-MLINKS+= threads.3 CRYPTO_THREADID_hash.3
-MLINKS+= threads.3 CRYPTO_THREADID_set_callback.3
-MLINKS+= threads.3 CRYPTO_destroy_dynlockid.3
-MLINKS+= threads.3 CRYPTO_get_new_dynlockid.3
-MLINKS+= threads.3 CRYPTO_lock.3
-MLINKS+= threads.3 CRYPTO_num_locks.3
-MLINKS+= threads.3 CRYPTO_set_dynlock_create_callback.3
-MLINKS+= threads.3 CRYPTO_set_dynlock_destroy_callback.3
-MLINKS+= threads.3 CRYPTO_set_dynlock_lock_callback.3
-MLINKS+= threads.3 CRYPTO_set_locking_callback.3
-MLINKS+= ui.3 ERR_load_UI_strings.3
-MLINKS+= ui.3 UI_OpenSSL.3
-MLINKS+= ui.3 UI_add_error_string.3
-MLINKS+= ui.3 UI_add_info_string.3
-MLINKS+= ui.3 UI_add_input_boolean.3
-MLINKS+= ui.3 UI_add_input_string.3
-MLINKS+= ui.3 UI_add_user_data.3
-MLINKS+= ui.3 UI_add_verify_string.3
-MLINKS+= ui.3 UI_construct_prompt.3
-MLINKS+= ui.3 UI_ctrl.3
-MLINKS+= ui.3 UI_dup_error_string.3
-MLINKS+= ui.3 UI_dup_info_string.3
-MLINKS+= ui.3 UI_dup_input_boolean.3
-MLINKS+= ui.3 UI_dup_input_string.3
-MLINKS+= ui.3 UI_dup_verify_string.3
-MLINKS+= ui.3 UI_free.3
-MLINKS+= ui.3 UI_get0_result.3
-MLINKS+= ui.3 UI_get0_user_data.3
-MLINKS+= ui.3 UI_get_default_method.3
-MLINKS+= ui.3 UI_get_method.3
-MLINKS+= ui.3 UI_new.3
-MLINKS+= ui.3 UI_new_method.3
-MLINKS+= ui.3 UI_process.3
-MLINKS+= ui.3 UI_set_default_method.3
-MLINKS+= ui.3 UI_set_method.3
-MLINKS+= ui_compat.3 des_read_2passwords.3
-MLINKS+= ui_compat.3 des_read_password.3
-MLINKS+= ui_compat.3 des_read_pw.3
-MLINKS+= ui_compat.3 des_read_pw_string.3
+MLINKS+= d2i_X509.3 i2d_X509_ALGOR.3
+MLINKS+= d2i_X509.3 i2d_X509_ALGORS.3
+MLINKS+= d2i_X509.3 i2d_X509_ATTRIBUTE.3
+MLINKS+= d2i_X509.3 i2d_X509_CERT_AUX.3
+MLINKS+= d2i_X509.3 i2d_X509_CINF.3
+MLINKS+= d2i_X509.3 i2d_X509_CRL.3
+MLINKS+= d2i_X509.3 i2d_X509_CRL_INFO.3
+MLINKS+= d2i_X509.3 i2d_X509_CRL_bio.3
+MLINKS+= d2i_X509.3 i2d_X509_CRL_fp.3
+MLINKS+= d2i_X509.3 i2d_X509_EXTENSION.3
+MLINKS+= d2i_X509.3 i2d_X509_EXTENSIONS.3
+MLINKS+= d2i_X509.3 i2d_X509_NAME.3
+MLINKS+= d2i_X509.3 i2d_X509_NAME_ENTRY.3
+MLINKS+= d2i_X509.3 i2d_X509_PUBKEY.3
+MLINKS+= d2i_X509.3 i2d_X509_REQ.3
+MLINKS+= d2i_X509.3 i2d_X509_REQ_INFO.3
+MLINKS+= d2i_X509.3 i2d_X509_REQ_bio.3
+MLINKS+= d2i_X509.3 i2d_X509_REQ_fp.3
+MLINKS+= d2i_X509.3 i2d_X509_REVOKED.3
+MLINKS+= d2i_X509.3 i2d_X509_SIG.3
+MLINKS+= d2i_X509.3 i2d_X509_VAL.3
+MLINKS+= i2d_re_X509_tbs.3 d2i_X509_AUX.3
+MLINKS+= i2d_re_X509_tbs.3 i2d_X509_AUX.3
+MLINKS+= i2d_re_X509_tbs.3 i2d_re_X509_CRL_tbs.3
+MLINKS+= i2d_re_X509_tbs.3 i2d_re_X509_REQ_tbs.3
+MLINKS+= o2i_SCT_LIST.3 i2o_SCT.3
+MLINKS+= o2i_SCT_LIST.3 i2o_SCT_LIST.3
+MLINKS+= o2i_SCT_LIST.3 o2i_SCT.3
diff --git a/secure/lib/libcrypto/man/ADMISSIONS.3 b/secure/lib/libcrypto/man/ADMISSIONS.3
new file mode 100644
index 000000000000..aaeb6031febe
--- /dev/null
+++ b/secure/lib/libcrypto/man/ADMISSIONS.3
@@ -0,0 +1,276 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "ADMISSIONS 3"
+.TH ADMISSIONS 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+ADMISSIONS, ADMISSIONS_get0_admissionAuthority, ADMISSIONS_get0_namingAuthority, ADMISSIONS_get0_professionInfos, ADMISSIONS_set0_admissionAuthority, ADMISSIONS_set0_namingAuthority, ADMISSIONS_set0_professionInfos, ADMISSION_SYNTAX, ADMISSION_SYNTAX_get0_admissionAuthority, ADMISSION_SYNTAX_get0_contentsOfAdmissions, ADMISSION_SYNTAX_set0_admissionAuthority, ADMISSION_SYNTAX_set0_contentsOfAdmissions, NAMING_AUTHORITY, NAMING_AUTHORITY_get0_authorityId, NAMING_AUTHORITY_get0_authorityURL, NAMING_AUTHORITY_get0_authorityText, NAMING_AUTHORITY_set0_authorityId, NAMING_AUTHORITY_set0_authorityURL, NAMING_AUTHORITY_set0_authorityText, PROFESSION_INFO, PROFESSION_INFOS, PROFESSION_INFO_get0_addProfessionInfo, PROFESSION_INFO_get0_namingAuthority, PROFESSION_INFO_get0_professionItems, PROFESSION_INFO_get0_professionOIDs, PROFESSION_INFO_get0_registrationNumber, PROFESSION_INFO_set0_addProfessionInfo, PROFESSION_INFO_set0_namingAuthority, PROFESSION_INFO_set0_professionItems, PROFESSION_INFO_set0_professionOIDs, PROFESSION_INFO_set0_registrationNumber \&\- Accessors and settors for ADMISSION_SYNTAX
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 5
+\& typedef struct NamingAuthority_st NAMING_AUTHORITY;
+\& typedef struct ProfessionInfo_st PROFESSION_INFO;
+\& typedef STACK_OF(PROFESSION_INFO) PROFESSION_INFOS;
+\& typedef struct Admissions_st ADMISSIONS;
+\& typedef struct AdmissionSyntax_st ADMISSION_SYNTAX;
+\&
+\& const ASN1_OBJECT *NAMING_AUTHORITY_get0_authorityId(
+\& const NAMING_AUTHORITY *n);
+\& void NAMING_AUTHORITY_set0_authorityId(NAMING_AUTHORITY *n,
+\& ASN1_OBJECT* namingAuthorityId);
+\& const ASN1_IA5STRING *NAMING_AUTHORITY_get0_authorityURL(
+\& const NAMING_AUTHORITY *n);
+\& void NAMING_AUTHORITY_set0_authorityURL(NAMING_AUTHORITY *n,
+\& ASN1_IA5STRING* namingAuthorityUrl);
+\& const ASN1_STRING *NAMING_AUTHORITY_get0_authorityText(
+\& const NAMING_AUTHORITY *n);
+\& void NAMING_AUTHORITY_set0_authorityText(NAMING_AUTHORITY *n,
+\& ASN1_STRING* namingAuthorityText);
+\&
+\& const GENERAL_NAME *ADMISSION_SYNTAX_get0_admissionAuthority(
+\& const ADMISSION_SYNTAX *as);
+\& void ADMISSION_SYNTAX_set0_admissionAuthority(
+\& ADMISSION_SYNTAX *as, GENERAL_NAME *aa);
+\& const STACK_OF(ADMISSIONS) *ADMISSION_SYNTAX_get0_contentsOfAdmissions(
+\& const ADMISSION_SYNTAX *as);
+\& void ADMISSION_SYNTAX_set0_contentsOfAdmissions(
+\& ADMISSION_SYNTAX *as, STACK_OF(ADMISSIONS) *a);
+\&
+\& const GENERAL_NAME *ADMISSIONS_get0_admissionAuthority(const ADMISSIONS *a);
+\& void ADMISSIONS_set0_admissionAuthority(ADMISSIONS *a, GENERAL_NAME *aa);
+\& const NAMING_AUTHORITY *ADMISSIONS_get0_namingAuthority(const ADMISSIONS *a);
+\& void ADMISSIONS_set0_namingAuthority(ADMISSIONS *a, NAMING_AUTHORITY *na);
+\& const PROFESSION_INFOS *ADMISSIONS_get0_professionInfos(const ADMISSIONS *a);
+\& void ADMISSIONS_set0_professionInfos(ADMISSIONS *a, PROFESSION_INFOS *pi);
+\&
+\& const ASN1_OCTET_STRING *PROFESSION_INFO_get0_addProfessionInfo(
+\& const PROFESSION_INFO *pi);
+\& void PROFESSION_INFO_set0_addProfessionInfo(
+\& PROFESSION_INFO *pi, ASN1_OCTET_STRING *aos);
+\& const NAMING_AUTHORITY *PROFESSION_INFO_get0_namingAuthority(
+\& const PROFESSION_INFO *pi);
+\& void PROFESSION_INFO_set0_namingAuthority(
+\& PROFESSION_INFO *pi, NAMING_AUTHORITY *na);
+\& const STACK_OF(ASN1_STRING) *PROFESSION_INFO_get0_professionItems(
+\& const PROFESSION_INFO *pi);
+\& void PROFESSION_INFO_set0_professionItems(
+\& PROFESSION_INFO *pi, STACK_OF(ASN1_STRING) *as);
+\& const STACK_OF(ASN1_OBJECT) *PROFESSION_INFO_get0_professionOIDs(
+\& const PROFESSION_INFO *pi);
+\& void PROFESSION_INFO_set0_professionOIDs(
+\& PROFESSION_INFO *pi, STACK_OF(ASN1_OBJECT) *po);
+\& const ASN1_PRINTABLESTRING *PROFESSION_INFO_get0_registrationNumber(
+\& const PROFESSION_INFO *pi);
+\& void PROFESSION_INFO_set0_registrationNumber(
+\& PROFESSION_INFO *pi, ASN1_PRINTABLESTRING *rn);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+The \fB\s-1PROFESSION_INFOS\s0\fR, \fB\s-1ADMISSION_SYNTAX\s0\fR, \fB\s-1ADMISSIONS\s0\fR, and
+\&\fB\s-1PROFESSION_INFO\s0\fR types are opaque structures representing the
+analogous types defined in the Common \s-1PKI\s0 Specification published
+by <https://www.t7ev.org>.
+Knowledge of those structures and their semantics is assumed.
+.PP
+The conventional routines to convert between \s-1DER\s0 and the local format
+are described in \fId2i_X509\fR\|(3).
+The conventional routines to allocate and free the types are defined
+in \fIX509_dup\fR\|(3).
+.PP
+The \fB\s-1PROFESSION_INFOS\s0\fR type is a stack of \fB\s-1PROFESSION_INFO\s0\fR; see
+\&\s-1\fIDEFINE_STACK_OF\s0\fR\|(3) for details.
+.PP
+The \fB\s-1NAMING_AUTHORITY\s0\fR type has an authority \s-1ID\s0 and \s-1URL,\s0 and text fields.
+The \fINAMING_AUTHORITY_get0_authorityId()\fR,
+\&\fINAMING_AUTHORITY_get0_get0_authorityURL()\fR, and
+\&\fINAMING_AUTHORITY_get0_get0_authorityText()\fR, functions return pointers
+to those values within the object.
+The \fINAMING_AUTHORITY_set0_authorityId()\fR,
+\&\fINAMING_AUTHORITY_set0_get0_authorityURL()\fR, and
+\&\fINAMING_AUTHORITY_set0_get0_authorityText()\fR,
+functions free any existing value and set the pointer to the specified value.
+.PP
+The \fB\s-1ADMISSION_SYNTAX\s0\fR type has an authority name and a stack of
+\&\fB\s-1ADMISSION\s0\fR objects.
+The \fIADMISSION_SYNTAX_get0_admissionAuthority()\fR
+and \fIADMISSION_SYNTAX_get0_contentsOfAdmissions()\fR functions return pointers
+to those values within the object.
+The
+\&\fIADMISSION_SYNTAX_set0_admissionAuthority()\fR and
+\&\fIADMISSION_SYNTAX_set0_contentsOfAdmissions()\fR
+functions free any existing value and set the pointer to the specified value.
+.PP
+The \fB\s-1ADMISSION\s0\fR type has an authority name, authority object, and a
+stack of \fB\s-1PROFSSION_INFO\s0\fR items.
+The \fIADMISSIONS_get0_admissionAuthority()\fR, \fIADMISSIONS_get0_namingAuthority()\fR,
+and \fIADMISSIONS_get0_professionInfos()\fR
+functions return pointers to those values within the object.
+The
+\&\fIADMISSIONS_set0_admissionAuthority()\fR,
+\&\fIADMISSIONS_set0_namingAuthority()\fR, and
+\&\fIADMISSIONS_set0_professionInfos()\fR
+functions free any existing value and set the pointer to the specified value.
+.PP
+The \fB\s-1PROFESSION_INFO\s0\fR type has a name authority, stacks of
+profession Items and OIDs, a registration number, and additional
+profession info.
+The functions \fIPROFESSION_INFO_get0_addProfessionInfo()\fR,
+\&\fIPROFESSION_INFO_get0_namingAuthority()\fR, \fIPROFESSION_INFO_get0_professionItems()\fR,
+\&\fIPROFESSION_INFO_get0_professionOIDs()\fR, and
+\&\fIPROFESSION_INFO_get0_registrationNumber()\fR
+functions return pointers to those values within the object.
+The
+\&\fIPROFESSION_INFO_set0_addProfessionInfo()\fR,
+\&\fIPROFESSION_INFO_set0_namingAuthority()\fR,
+\&\fIPROFESSION_INFO_set0_professionItems()\fR,
+\&\fIPROFESSION_INFO_set0_professionOIDs()\fR, and
+\&\fIPROFESSION_INFO_set0_registrationNumber()\fR
+functions free any existing value and set the pointer to the specified value.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+Described above.
+Note that all of the \fIget0\fR functions return a pointer to the internal data
+structure and must not be freed.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIX509_dup\fR\|(3),
+\&\fId2i_X509\fR\|(3),
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2017\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_INTEGER_get_int64.3 b/secure/lib/libcrypto/man/ASN1_INTEGER_get_int64.3
new file mode 100644
index 000000000000..9a3f910feb82
--- /dev/null
+++ b/secure/lib/libcrypto/man/ASN1_INTEGER_get_int64.3
@@ -0,0 +1,256 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "ASN1_INTEGER_GET_INT64 3"
+.TH ASN1_INTEGER_GET_INT64 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+ASN1_INTEGER_get_uint64, ASN1_INTEGER_set_uint64, ASN1_INTEGER_get_int64, ASN1_INTEGER_get, ASN1_INTEGER_set_int64, ASN1_INTEGER_set, BN_to_ASN1_INTEGER, ASN1_INTEGER_to_BN, ASN1_ENUMERATED_get_int64, ASN1_ENUMERATED_get, ASN1_ENUMERATED_set_int64, ASN1_ENUMERATED_set, BN_to_ASN1_ENUMERATED, ASN1_ENUMERATED_to_BN \&\- ASN.1 INTEGER and ENUMERATED utilities
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/asn1.h>
+\&
+\& int ASN1_INTEGER_get_int64(int64_t *pr, const ASN1_INTEGER *a);
+\& long ASN1_INTEGER_get(const ASN1_INTEGER *a);
+\&
+\& int ASN1_INTEGER_set_int64(ASN1_INTEGER *a, int64_t r);
+\& int ASN1_INTEGER_set(const ASN1_INTEGER *a, long v);
+\&
+\& int ASN1_INTEGER_get_uint64(uint64_t *pr, const ASN1_INTEGER *a);
+\& int ASN1_INTEGER_set_uint64(ASN1_INTEGER *a, uint64_t r);
+\&
+\& ASN1_INTEGER *BN_to_ASN1_INTEGER(const BIGNUM *bn, ASN1_INTEGER *ai);
+\& BIGNUM *ASN1_INTEGER_to_BN(const ASN1_INTEGER *ai, BIGNUM *bn);
+\&
+\& int ASN1_ENUMERATED_get_int64(int64_t *pr, const ASN1_INTEGER *a);
+\& long ASN1_ENUMERATED_get(const ASN1_ENUMERATED *a);
+\&
+\& int ASN1_ENUMERATED_set_int64(ASN1_INTEGER *a, int64_t r);
+\& int ASN1_ENUMERATED_set(ASN1_ENUMERATED *a, long v);
+\&
+\& ASN1_ENUMERATED *BN_to_ASN1_ENUMERATED(BIGNUM *bn, ASN1_ENUMERATED *ai);
+\& BIGNUM *ASN1_ENUMERATED_to_BN(ASN1_ENUMERATED *ai, BIGNUM *bn);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+These functions convert to and from \fB\s-1ASN1_INTEGER\s0\fR and \fB\s-1ASN1_ENUMERATED\s0\fR
+structures.
+.PP
+\&\fIASN1_INTEGER_get_int64()\fR converts an \fB\s-1ASN1_INTEGER\s0\fR into an \fBint64_t\fR type
+If successful it returns 1 and sets \fB*pr\fR to the value of \fBa\fR. If it fails
+(due to invalid type or the value being too big to fit into an \fBint64_t\fR type)
+it returns 0.
+.PP
+\&\fIASN1_INTEGER_get_uint64()\fR is similar to \fIASN1_INTEGER_get_int64_t()\fR except it
+converts to a \fBuint64_t\fR type and an error is returned if the passed integer
+is negative.
+.PP
+\&\fIASN1_INTEGER_get()\fR also returns the value of \fBa\fR but it returns 0 if \fBa\fR is
+\&\s-1NULL\s0 and \-1 on error (which is ambiguous because \-1 is a legitimate value for
+an \fB\s-1ASN1_INTEGER\s0\fR). New applications should use \fIASN1_INTEGER_get_int64()\fR
+instead.
+.PP
+\&\fIASN1_INTEGER_set_int64()\fR sets the value of \fB\s-1ASN1_INTEGER\s0\fR \fBa\fR to the
+\&\fBint64_t\fR value \fBr\fR.
+.PP
+\&\fIASN1_INTEGER_set_uint64()\fR sets the value of \fB\s-1ASN1_INTEGER\s0\fR \fBa\fR to the
+\&\fBuint64_t\fR value \fBr\fR.
+.PP
+\&\fIASN1_INTEGER_set()\fR sets the value of \fB\s-1ASN1_INTEGER\s0\fR \fBa\fR to the \fBlong\fR value
+\&\fBv\fR.
+.PP
+\&\fIBN_to_ASN1_INTEGER()\fR converts \fB\s-1BIGNUM\s0\fR \fBbn\fR to an \fB\s-1ASN1_INTEGER\s0\fR. If \fBai\fR
+is \s-1NULL\s0 a new \fB\s-1ASN1_INTEGER\s0\fR structure is returned. If \fBai\fR is not \s-1NULL\s0 then
+the existing structure will be used instead.
+.PP
+\&\fIASN1_INTEGER_to_BN()\fR converts \s-1ASN1_INTEGER\s0 \fBai\fR into a \fB\s-1BIGNUM\s0\fR. If \fBbn\fR is
+\&\s-1NULL\s0 a new \fB\s-1BIGNUM\s0\fR structure is returned. If \fBbn\fR is not \s-1NULL\s0 then the
+existing structure will be used instead.
+.PP
+\&\fIASN1_ENUMERATED_get_int64()\fR, \fIASN1_ENUMERATED_set_int64()\fR,
+\&\fIASN1_ENUMERATED_set()\fR, \fIBN_to_ASN1_ENUMERATED()\fR and \fIASN1_ENUMERATED_to_BN()\fR
+behave in an identical way to their \s-1ASN1_INTEGER\s0 counterparts except they
+operate on an \fB\s-1ASN1_ENUMERATED\s0\fR value.
+.PP
+\&\fIASN1_ENUMERATED_get()\fR returns the value of \fBa\fR in a similar way to
+\&\fIASN1_INTEGER_get()\fR but it returns \fB0xffffffffL\fR if the value of \fBa\fR will not
+fit in a long type. New applications should use \fIASN1_ENUMERATED_get_int64()\fR
+instead.
+.SH "NOTES"
+.IX Header "NOTES"
+In general an \fB\s-1ASN1_INTEGER\s0\fR or \fB\s-1ASN1_ENUMERATED\s0\fR type can contain an
+integer of almost arbitrary size and so cannot always be represented by a C
+\&\fBint64_t\fR type. However in many cases (for example version numbers) they
+represent small integers which can be more easily manipulated if converted to
+an appropriate C integer type.
+.SH "BUGS"
+.IX Header "BUGS"
+The ambiguous return values of \fIASN1_INTEGER_get()\fR and \fIASN1_ENUMERATED_get()\fR
+mean these functions should be avoided if possible. They are retained for
+compatibility. Normally the ambiguous return values are not legitimate
+values for the fields they represent.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIASN1_INTEGER_set_int64()\fR, \fIASN1_INTEGER_set()\fR, \fIASN1_ENUMERATED_set_int64()\fR and
+\&\fIASN1_ENUMERATED_set()\fR return 1 for success and 0 for failure. They will only
+fail if a memory allocation error occurs.
+.PP
+\&\fIASN1_INTEGER_get_int64()\fR and \fIASN1_ENUMERATED_get_int64()\fR return 1 for success
+and 0 for failure. They will fail if the passed type is incorrect (this will
+only happen if there is a programming error) or if the value exceeds the range
+of an \fBint64_t\fR type.
+.PP
+\&\fIBN_to_ASN1_INTEGER()\fR and \fIBN_to_ASN1_ENUMERATED()\fR return an \fB\s-1ASN1_INTEGER\s0\fR or
+\&\fB\s-1ASN1_ENUMERATED\s0\fR structure respectively or \s-1NULL\s0 if an error occurs. They will
+only fail due to a memory allocation error.
+.PP
+\&\fIASN1_INTEGER_to_BN()\fR and \fIASN1_ENUMERATED_to_BN()\fR return a \fB\s-1BIGNUM\s0\fR structure
+of \s-1NULL\s0 if an error occurs. They can fail if the passed type is incorrect
+(due to programming error) or due to a memory allocation failure.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIERR_get_error\fR\|(3)
+.SH "HISTORY"
+.IX Header "HISTORY"
+\&\fIASN1_INTEGER_set_int64()\fR, \fIASN1_INTEGER_get_int64()\fR,
+\&\fIASN1_ENUMERATED_set_int64()\fR and \fIASN1_ENUMERATED_get_int64()\fR
+were added to OpenSSL 1.1.0.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2015\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_ITEM_lookup.3 b/secure/lib/libcrypto/man/ASN1_ITEM_lookup.3
new file mode 100644
index 000000000000..96cc5d413490
--- /dev/null
+++ b/secure/lib/libcrypto/man/ASN1_ITEM_lookup.3
@@ -0,0 +1,167 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "ASN1_ITEM_LOOKUP 3"
+.TH ASN1_ITEM_LOOKUP 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+ASN1_ITEM_lookup, ASN1_ITEM_get \- lookup ASN.1 structures
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/asn1.h>
+\&
+\& const ASN1_ITEM *ASN1_ITEM_lookup(const char *name);
+\& const ASN1_ITEM *ASN1_ITEM_get(size_t i);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fIASN1_ITEM_lookup()\fR returns the \fB\s-1ASN1_ITEM\s0 name\fR.
+.PP
+\&\fIASN1_ITEM_get()\fR returns the \fB\s-1ASN1_ITEM\s0\fR with index \fBi\fR. This function
+returns \fB\s-1NULL\s0\fR if the index \fBi\fR is out of range.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIASN1_ITEM_lookup()\fR and \fIASN1_ITEM_get()\fR return a valid \fB\s-1ASN1_ITEM\s0\fR structure
+or \fB\s-1NULL\s0\fR if an error occurred.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIERR_get_error\fR\|(3)
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_OBJECT_new.3 b/secure/lib/libcrypto/man/ASN1_OBJECT_new.3
index d43f1b2c89fd..ec50615f6955 100644
--- a/secure/lib/libcrypto/man/ASN1_OBJECT_new.3
+++ b/secure/lib/libcrypto/man/ASN1_OBJECT_new.3
@@ -128,14 +128,14 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "ASN1_OBJECT_new 3"
-.TH ASN1_OBJECT_new 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "ASN1_OBJECT_NEW 3"
+.TH ASN1_OBJECT_NEW 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-ASN1_OBJECT_new, ASN1_OBJECT_free, \- object allocation functions
+ASN1_OBJECT_new, ASN1_OBJECT_free \- object allocation functions
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
@@ -149,9 +149,10 @@ ASN1_OBJECT_new, ASN1_OBJECT_free, \- object allocation functions
The \s-1ASN1_OBJECT\s0 allocation routines, allocate and free an
\&\s-1ASN1_OBJECT\s0 structure, which represents an \s-1ASN1 OBJECT IDENTIFIER.\s0
.PP
-\&\fIASN1_OBJECT_new()\fR allocates and initializes a \s-1ASN1_OBJECT\s0 structure.
+\&\fIASN1_OBJECT_new()\fR allocates and initializes an \s-1ASN1_OBJECT\s0 structure.
.PP
\&\fIASN1_OBJECT_free()\fR frees up the \fB\s-1ASN1_OBJECT\s0\fR structure \fBa\fR.
+If \fBa\fR is \s-1NULL,\s0 nothing is done.
.SH "NOTES"
.IX Header "NOTES"
Although \fIASN1_OBJECT_new()\fR allocates a new \s-1ASN1_OBJECT\s0 structure it
@@ -167,6 +168,11 @@ Otherwise it returns a pointer to the newly allocated structure.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fIERR_get_error\fR\|(3), \fId2i_ASN1_OBJECT\fR\|(3)
-.SH "HISTORY"
-.IX Header "HISTORY"
-\&\fIASN1_OBJECT_new()\fR and \fIASN1_OBJECT_free()\fR are available in all versions of SSLeay and OpenSSL.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2002\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_STRING_TABLE_add.3 b/secure/lib/libcrypto/man/ASN1_STRING_TABLE_add.3
new file mode 100644
index 000000000000..519a6efd39fd
--- /dev/null
+++ b/secure/lib/libcrypto/man/ASN1_STRING_TABLE_add.3
@@ -0,0 +1,191 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "ASN1_STRING_TABLE_ADD 3"
+.TH ASN1_STRING_TABLE_ADD 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+ASN1_STRING_TABLE, ASN1_STRING_TABLE_add, ASN1_STRING_TABLE_get, ASN1_STRING_TABLE_cleanup \- ASN1_STRING_TABLE manipulation functions
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/asn1.h>
+\&
+\& typedef struct asn1_string_table_st ASN1_STRING_TABLE;
+\&
+\& int ASN1_STRING_TABLE_add(int nid, long minsize, long maxsize,
+\& unsigned long mask, unsigned long flags);
+\& ASN1_STRING_TABLE * ASN1_STRING_TABLE_get(int nid);
+\& void ASN1_STRING_TABLE_cleanup(void);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+.SS "Types"
+.IX Subsection "Types"
+\&\fB\s-1ASN1_STRING_TABLE\s0\fR is a table which holds string information
+(basically minimum size, maximum size, type and etc) for a \s-1NID\s0 object.
+.SS "Functions"
+.IX Subsection "Functions"
+\&\fIASN1_STRING_TABLE_add()\fR adds a new \fB\s-1ASN1_STRING_TABLE\s0\fR item into the
+local \s-1ASN1\s0 string table based on the \fBnid\fR along with other parameters.
+.PP
+If the item is already in the table, fields of \fB\s-1ASN1_STRING_TABLE\s0\fR are
+updated (depending on the values of those parameters, e.g., \fBminsize\fR
+and \fBmaxsize\fR >= 0, \fBmask\fR and \fBflags\fR != 0). If the \fBnid\fR is standard,
+a copy of the standard \fB\s-1ASN1_STRING_TABLE\s0\fR is created and updated with
+other parameters.
+.PP
+\&\fIASN1_STRING_TABLE_get()\fR searches for an \fB\s-1ASN1_STRING_TABLE\s0\fR item based
+on \fBnid\fR. It will search the local table first, then the standard one.
+.PP
+\&\fIASN1_STRING_TABLE_cleanup()\fR frees all \fB\s-1ASN1_STRING_TABLE\s0\fR items added
+by \fIASN1_STRING_TABLE_add()\fR.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIASN1_STRING_TABLE_add()\fR returns 1 on success, 0 if an error occurred.
+.PP
+\&\fIASN1_STRING_TABLE_get()\fR returns a valid \fB\s-1ASN1_STRING_TABLE\s0\fR structure
+or \fB\s-1NULL\s0\fR if nothing is found.
+.PP
+\&\fIASN1_STRING_TABLE_cleanup()\fR does not return a value.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIERR_get_error\fR\|(3)
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2017 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_STRING_length.3 b/secure/lib/libcrypto/man/ASN1_STRING_length.3
index e5d15efe0fce..f33855999fcc 100644
--- a/secure/lib/libcrypto/man/ASN1_STRING_length.3
+++ b/secure/lib/libcrypto/man/ASN1_STRING_length.3
@@ -128,22 +128,21 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "ASN1_STRING_length 3"
-.TH ASN1_STRING_length 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "ASN1_STRING_LENGTH 3"
+.TH ASN1_STRING_LENGTH 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-ASN1_STRING_dup, ASN1_STRING_cmp, ASN1_STRING_set, ASN1_STRING_length,
-ASN1_STRING_length_set, ASN1_STRING_type, ASN1_STRING_data, ASN1_STRING_to_UTF8 \-
-ASN1_STRING utility functions
+ASN1_STRING_dup, ASN1_STRING_cmp, ASN1_STRING_set, ASN1_STRING_length, ASN1_STRING_type, ASN1_STRING_get0_data, ASN1_STRING_data, ASN1_STRING_to_UTF8 \- ASN1_STRING utility functions
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/asn1.h>
\&
\& int ASN1_STRING_length(ASN1_STRING *x);
+\& const unsigned char * ASN1_STRING_get0_data(const ASN1_STRING *x);
\& unsigned char * ASN1_STRING_data(ASN1_STRING *x);
\&
\& ASN1_STRING * ASN1_STRING_dup(ASN1_STRING *a);
@@ -152,9 +151,9 @@ ASN1_STRING utility functions
\&
\& int ASN1_STRING_set(ASN1_STRING *str, const void *data, int len);
\&
-\& int ASN1_STRING_type(ASN1_STRING *x);
+\& int ASN1_STRING_type(const ASN1_STRING *x);
\&
-\& int ASN1_STRING_to_UTF8(unsigned char **out, ASN1_STRING *in);
+\& int ASN1_STRING_to_UTF8(unsigned char **out, const ASN1_STRING *in);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -162,10 +161,14 @@ These functions allow an \fB\s-1ASN1_STRING\s0\fR structure to be manipulated.
.PP
\&\fIASN1_STRING_length()\fR returns the length of the content of \fBx\fR.
.PP
-\&\fIASN1_STRING_data()\fR returns an internal pointer to the data of \fBx\fR.
+\&\fIASN1_STRING_get0_data()\fR returns an internal pointer to the data of \fBx\fR.
Since this is an internal pointer it should \fBnot\fR be freed or
modified in any way.
.PP
+\&\fIASN1_STRING_data()\fR is similar to \fIASN1_STRING_get0_data()\fR except the
+returned value is not constant. This function is deprecated:
+applications should use \fIASN1_STRING_get0_data()\fR instead.
+.PP
\&\fIASN1_STRING_dup()\fR returns a copy of the structure \fBa\fR.
.PP
\&\fIASN1_STRING_cmp()\fR compares \fBa\fR and \fBb\fR returning 0 if the two
@@ -181,11 +184,11 @@ such as \fBV_ASN1_OCTET_STRING\fR.
\&\fIASN1_STRING_to_UTF8()\fR converts the string \fBin\fR to \s-1UTF8\s0 format, the
converted data is allocated in a buffer in \fB*out\fR. The length of
\&\fBout\fR is returned or a negative error code. The buffer \fB*out\fR
-should be free using \fIOPENSSL_free()\fR.
+should be freed using \fIOPENSSL_free()\fR.
.SH "NOTES"
.IX Header "NOTES"
Almost all \s-1ASN1\s0 types in OpenSSL are represented as an \fB\s-1ASN1_STRING\s0\fR
-structure. Other types such as \fB\s-1ASN1_OCTET_STRING\s0\fR are simply typedefed
+structure. Other types such as \fB\s-1ASN1_OCTET_STRING\s0\fR are simply typedef'ed
to \fB\s-1ASN1_STRING\s0\fR and the functions call the \fB\s-1ASN1_STRING\s0\fR equivalents.
\&\fB\s-1ASN1_STRING\s0\fR is also used for some \fB\s-1CHOICE\s0\fR types which consist
entirely of primitive string types such as \fBDirectoryString\fR and
@@ -205,8 +208,31 @@ Similar care should be take to ensure the data is in the correct format
when calling \fIASN1_STRING_set()\fR.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
+\&\fIASN1_STRING_length()\fR returns the length of the content of \fBx\fR.
+.PP
+\&\fIASN1_STRING_get0_data()\fR and \fIASN1_STRING_data()\fR return an internal pointer to
+the data of \fBx\fR.
+.PP
+\&\fIASN1_STRING_dup()\fR returns a valid \fB\s-1ASN1_STRING\s0\fR structure or \fB\s-1NULL\s0\fR if an
+error occurred.
+.PP
+\&\fIASN1_STRING_cmp()\fR returns an integer greater than, equal to, or less than 0,
+according to whether \fBa\fR is greater than, equal to, or less than \fBb\fR.
+.PP
+\&\fIASN1_STRING_set()\fR returns 1 on success or 0 on error.
+.PP
+\&\fIASN1_STRING_type()\fR returns the type of \fBx\fR.
+.PP
+\&\fIASN1_STRING_to_UTF8()\fR returns the number of bytes in output string \fBout\fR or a
+negative value if an error occurred.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fIERR_get_error\fR\|(3)
-.SH "HISTORY"
-.IX Header "HISTORY"
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2002\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_STRING_new.3 b/secure/lib/libcrypto/man/ASN1_STRING_new.3
index b4bac8a706f4..af959985f97c 100644
--- a/secure/lib/libcrypto/man/ASN1_STRING_new.3
+++ b/secure/lib/libcrypto/man/ASN1_STRING_new.3
@@ -128,15 +128,14 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "ASN1_STRING_new 3"
-.TH ASN1_STRING_new 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "ASN1_STRING_NEW 3"
+.TH ASN1_STRING_NEW 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-ASN1_STRING_new, ASN1_STRING_type_new, ASN1_STRING_free \-
-ASN1_STRING allocation functions
+ASN1_STRING_new, ASN1_STRING_type_new, ASN1_STRING_free \- ASN1_STRING allocation functions
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
@@ -155,6 +154,7 @@ is undefined.
type \fBtype\fR.
.PP
\&\fIASN1_STRING_free()\fR frees up \fBa\fR.
+If \fBa\fR is \s-1NULL\s0 nothing is done.
.SH "NOTES"
.IX Header "NOTES"
Other string types call the \fB\s-1ASN1_STRING\s0\fR functions. For example
@@ -168,6 +168,11 @@ Other string types call the \fB\s-1ASN1_STRING\s0\fR functions. For example
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fIERR_get_error\fR\|(3)
-.SH "HISTORY"
-.IX Header "HISTORY"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2002\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3 b/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3
index 76a6b29f6947..6684262df88b 100644
--- a/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3
+++ b/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3
@@ -128,22 +128,24 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "ASN1_STRING_print_ex 3"
-.TH ASN1_STRING_print_ex 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "ASN1_STRING_PRINT_EX 3"
+.TH ASN1_STRING_PRINT_EX 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-ASN1_STRING_print_ex, ASN1_STRING_print_ex_fp, ASN1_STRING_print \- ASN1_STRING output routines.
+ASN1_tag2str, ASN1_STRING_print_ex, ASN1_STRING_print_ex_fp, ASN1_STRING_print \&\- ASN1_STRING output routines
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/asn1.h>
\&
-\& int ASN1_STRING_print_ex(BIO *out, ASN1_STRING *str, unsigned long flags);
-\& int ASN1_STRING_print_ex_fp(FILE *fp, ASN1_STRING *str, unsigned long flags);
-\& int ASN1_STRING_print(BIO *out, ASN1_STRING *str);
+\& int ASN1_STRING_print_ex(BIO *out, const ASN1_STRING *str, unsigned long flags);
+\& int ASN1_STRING_print_ex_fp(FILE *fp, const ASN1_STRING *str, unsigned long flags);
+\& int ASN1_STRING_print(BIO *out, const ASN1_STRING *str);
+\&
+\& const char *ASN1_tag2str(int tag);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -157,11 +159,14 @@ to \fBfp\fR instead.
\&\fIASN1_STRING_print()\fR prints \fBstr\fR to \fBout\fR but using a different format to
\&\fIASN1_STRING_print_ex()\fR. It replaces unprintable characters (other than \s-1CR, LF\s0)
with '.'.
+.PP
+\&\fIASN1_tag2str()\fR returns a human-readable name of the specified \s-1ASN.1\s0 \fBtag\fR.
.SH "NOTES"
.IX Header "NOTES"
-\&\fIASN1_STRING_print()\fR is a legacy function which should be avoided in new applications.
+\&\fIASN1_STRING_print()\fR is a deprecated function which should be avoided; use
+\&\fIASN1_STRING_print_ex()\fR instead.
.PP
-Although there are a large number of options frequently \fB\s-1ASN1_STRFLGS_RFC2253\s0\fR is
+Although there are a large number of options frequently \fB\s-1ASN1_STRFLGS_RFC2253\s0\fR is
suitable, or on \s-1UTF8\s0 terminals \fB\s-1ASN1_STRFLGS_RFC2253 &\s0 ~ASN1_STRFLGS_ESC_MSB\fR.
.PP
The complete set of supported options for \fBflags\fR is listed below.
@@ -206,7 +211,7 @@ Normally non character string types (such as \s-1OCTET STRING\s0) are assumed to
one byte per character, if \fB\s-1ASN1_STRFLGS_DUMP_UNKNOWN\s0\fR is set then they will
be dumped instead.
.PP
-When a type is dumped normally just the content octets are printed, if
+When a type is dumped normally just the content octets are printed, if
\&\fB\s-1ASN1_STRFLGS_DUMP_DER\s0\fR is set then the complete encoding is dumped
instead (including tag and length octets).
.PP
@@ -214,10 +219,23 @@ instead (including tag and length octets).
equivalent to:
\s-1ASN1_STRFLGS_ESC_2253\s0 | \s-1ASN1_STRFLGS_ESC_CTRL\s0 | \s-1ASN1_STRFLGS_ESC_MSB\s0 |
\s-1ASN1_STRFLGS_UTF8_CONVERT\s0 | \s-1ASN1_STRFLGS_DUMP_UNKNOWN ASN1_STRFLGS_DUMP_DER\s0
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIASN1_STRING_print_ex()\fR and \fIASN1_STRING_print_ex_fp()\fR return the number of
+characters written or \-1 if an error occurred.
+.PP
+\&\fIASN1_STRING_print()\fR returns 1 on success or 0 on error.
+.PP
+\&\fIASN1_tag2str()\fR returns a human-readable name of the specified \s-1ASN.1\s0 \fBtag\fR.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fIX509_NAME_print_ex\fR\|(3),
\&\fIASN1_tag2str\fR\|(3)
-.SH "HISTORY"
-.IX Header "HISTORY"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2002\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_TIME_set.3 b/secure/lib/libcrypto/man/ASN1_TIME_set.3
index e9dc9c2b77e2..bc75640881fd 100644
--- a/secure/lib/libcrypto/man/ASN1_TIME_set.3
+++ b/secure/lib/libcrypto/man/ASN1_TIME_set.3
@@ -128,52 +128,110 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "ASN1_TIME_set 3"
-.TH ASN1_TIME_set 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "ASN1_TIME_SET 3"
+.TH ASN1_TIME_SET 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-ASN1_TIME_set, ASN1_TIME_adj, ASN1_TIME_check, ASN1_TIME_set_string,
-ASN1_TIME_print, ASN1_TIME_diff \- ASN.1 Time functions.
+ASN1_TIME_set, ASN1_UTCTIME_set, ASN1_GENERALIZEDTIME_set, ASN1_TIME_adj, ASN1_UTCTIME_adj, ASN1_GENERALIZEDTIME_adj, ASN1_TIME_check, ASN1_UTCTIME_check, ASN1_GENERALIZEDTIME_check, ASN1_TIME_set_string, ASN1_UTCTIME_set_string, ASN1_GENERALIZEDTIME_set_string, ASN1_TIME_set_string_X509, ASN1_TIME_normalize, ASN1_TIME_to_tm, ASN1_TIME_print, ASN1_UTCTIME_print, ASN1_GENERALIZEDTIME_print, ASN1_TIME_diff, ASN1_TIME_cmp_time_t, ASN1_UTCTIME_cmp_time_t, ASN1_TIME_compare, ASN1_TIME_to_generalizedtime \- ASN.1 Time functions
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
-.Vb 6
+.Vb 4
\& ASN1_TIME *ASN1_TIME_set(ASN1_TIME *s, time_t t);
-\& ASN1_TIME *ASN1_TIME_adj(ASN1_TIME *s, time_t t,
-\& int offset_day, long offset_sec);
+\& ASN1_UTCTIME *ASN1_UTCTIME_set(ASN1_UTCTIME *s, time_t t);
+\& ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_set(ASN1_GENERALIZEDTIME *s,
+\& time_t t);
+\&
+\& ASN1_TIME *ASN1_TIME_adj(ASN1_TIME *s, time_t t, int offset_day,
+\& long offset_sec);
+\& ASN1_UTCTIME *ASN1_UTCTIME_adj(ASN1_UTCTIME *s, time_t t,
+\& int offset_day, long offset_sec);
+\& ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s,
+\& time_t t, int offset_day,
+\& long offset_sec);
+\&
\& int ASN1_TIME_set_string(ASN1_TIME *s, const char *str);
+\& int ASN1_TIME_set_string_X509(ASN1_TIME *s, const char *str);
+\& int ASN1_UTCTIME_set_string(ASN1_UTCTIME *s, const char *str);
+\& int ASN1_GENERALIZEDTIME_set_string(ASN1_GENERALIZEDTIME *s,
+\& const char *str);
+\&
+\& int ASN1_TIME_normalize(ASN1_TIME *s);
+\&
\& int ASN1_TIME_check(const ASN1_TIME *t);
+\& int ASN1_UTCTIME_check(const ASN1_UTCTIME *t);
+\& int ASN1_GENERALIZEDTIME_check(const ASN1_GENERALIZEDTIME *t);
+\&
\& int ASN1_TIME_print(BIO *b, const ASN1_TIME *s);
+\& int ASN1_UTCTIME_print(BIO *b, const ASN1_UTCTIME *s);
+\& int ASN1_GENERALIZEDTIME_print(BIO *b, const ASN1_GENERALIZEDTIME *s);
+\&
+\& int ASN1_TIME_to_tm(const ASN1_TIME *s, struct tm *tm);
+\& int ASN1_TIME_diff(int *pday, int *psec, const ASN1_TIME *from,
+\& const ASN1_TIME *to);
+\&
+\& int ASN1_TIME_cmp_time_t(const ASN1_TIME *s, time_t t);
+\& int ASN1_UTCTIME_cmp_time_t(const ASN1_UTCTIME *s, time_t t);
\&
-\& int ASN1_TIME_diff(int *pday, int *psec,
-\& const ASN1_TIME *from, const ASN1_TIME *to);
+\& int ASN1_TIME_compare(const ASN1_TIME *a, const ASN1_TIME *b);
+\&
+\& ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(ASN1_TIME *t,
+\& ASN1_GENERALIZEDTIME **out);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
-The function \fIASN1_TIME_set()\fR sets the \s-1ASN1_TIME\s0 structure \fBs\fR to the
-time represented by the time_t value \fBt\fR. If \fBs\fR is \s-1NULL\s0 a new \s-1ASN1_TIME\s0
-structure is allocated and returned.
+The \fIASN1_TIME_set()\fR, \fIASN1_UTCTIME_set()\fR and \fIASN1_GENERALIZEDTIME_set()\fR
+functions set the structure \fBs\fR to the time represented by the time_t
+value \fBt\fR. If \fBs\fR is \s-1NULL\s0 a new time structure is allocated and returned.
.PP
-\&\fIASN1_TIME_adj()\fR sets the \s-1ASN1_TIME\s0 structure \fBs\fR to the time represented
+The \fIASN1_TIME_adj()\fR, \fIASN1_UTCTIME_adj()\fR and \fIASN1_GENERALIZEDTIME_adj()\fR
+functions set the time structure \fBs\fR to the time represented
by the time \fBoffset_day\fR and \fBoffset_sec\fR after the time_t value \fBt\fR.
The values of \fBoffset_day\fR or \fBoffset_sec\fR can be negative to set a
time before \fBt\fR. The \fBoffset_sec\fR value can also exceed the number of
-seconds in a day. If \fBs\fR is \s-1NULL\s0 a new \s-1ASN1_TIME\s0 structure is allocated
+seconds in a day. If \fBs\fR is \s-1NULL\s0 a new structure is allocated
and returned.
.PP
-\&\fIASN1_TIME_set_string()\fR sets \s-1ASN1_TIME\s0 structure \fBs\fR to the time
-represented by string \fBstr\fR which must be in appropriate \s-1ASN.1\s0 time
-format (for example \s-1YYMMDDHHMMSSZ\s0 or \s-1YYYYMMDDHHMMSSZ\s0).
+The \fIASN1_TIME_set_string()\fR, \fIASN1_UTCTIME_set_string()\fR and
+\&\fIASN1_GENERALIZEDTIME_set_string()\fR functions set the time structure \fBs\fR
+to the time represented by string \fBstr\fR which must be in appropriate \s-1ASN.1\s0
+time format (for example \s-1YYMMDDHHMMSSZ\s0 or \s-1YYYYMMDDHHMMSSZ\s0). If \fBs\fR is \s-1NULL\s0
+this function performs a format check on \fBstr\fR only. The string \fBstr\fR
+is copied into \fBs\fR.
+.PP
+\&\fIASN1_TIME_set_string_X509()\fR sets \s-1ASN1_TIME\s0 structure \fBs\fR to the time
+represented by string \fBstr\fR which must be in appropriate time format
+that \s-1RFC 5280\s0 requires, which means it only allows \s-1YYMMDDHHMMSSZ\s0 and
+\&\s-1YYYYMMDDHHMMSSZ\s0 (leap second is rejected), all other \s-1ASN.1\s0 time format
+are not allowed. If \fBs\fR is \s-1NULL\s0 this function performs a format check
+on \fBstr\fR only.
+.PP
+The \fIASN1_TIME_normalize()\fR function converts an \s-1ASN1_GENERALIZEDTIME\s0 or
+\&\s-1ASN1_UTCTIME\s0 into a time value that can be used in a certificate. It
+should be used after the \fIASN1_TIME_set_string()\fR functions and before
+\&\fIASN1_TIME_print()\fR functions to get consistent (i.e. \s-1GMT\s0) results.
.PP
-\&\fIASN1_TIME_check()\fR checks the syntax of \s-1ASN1_TIME\s0 structure \fBs\fR.
+The \fIASN1_TIME_check()\fR, \fIASN1_UTCTIME_check()\fR and \fIASN1_GENERALIZEDTIME_check()\fR
+functions check the syntax of the time structure \fBs\fR.
.PP
-\&\fIASN1_TIME_print()\fR prints out the time \fBs\fR to \s-1BIO\s0 \fBb\fR in human readable
+The \fIASN1_TIME_print()\fR, \fIASN1_UTCTIME_print()\fR and \fIASN1_GENERALIZEDTIME_print()\fR
+functions print the time structure \fBs\fR to \s-1BIO\s0 \fBb\fR in human readable
format. It will be of the format \s-1MMM DD HH:MM:SS YYYY\s0 [\s-1GMT\s0], for example
\&\*(L"Feb 3 00:55:52 2015 \s-1GMT\*(R"\s0 it does not include a newline. If the time
structure has invalid format it prints out \*(L"Bad time value\*(R" and returns
-an error.
+an error. The output for generalized time may include a fractional part
+following the second.
+.PP
+\&\fIASN1_TIME_to_tm()\fR converts the time \fBs\fR to the standard \fBtm\fR structure.
+If \fBs\fR is \s-1NULL,\s0 then the current time is converted. The output time is \s-1GMT.\s0
+The \fBtm_sec\fR, \fBtm_min\fR, \fBtm_hour\fR, \fBtm_mday\fR, \fBtm_wday\fR, \fBtm_yday\fR,
+\&\fBtm_mon\fR and \fBtm_year\fR fields of \fBtm\fR structure are set to proper values,
+whereas all other fields are set to 0. If \fBtm\fR is \s-1NULL\s0 this function performs
+a format check on \fBs\fR only. If \fBs\fR is in Generalized format with fractional
+seconds, e.g. \s-1YYYYMMDDHHMMSS.SSSZ,\s0 the fractional seconds will be lost while
+converting \fBs\fR to \fBtm\fR structure.
.PP
\&\fIASN1_TIME_diff()\fR sets \fB*pday\fR and \fB*psec\fR to the time difference between
\&\fBfrom\fR and \fBto\fR. If \fBto\fR represents a time later than \fBfrom\fR then
@@ -184,6 +242,16 @@ represent the same time then \fB*pday\fR and \fB*psec\fR will both be zero.
If both \fB*pday\fR and \fB*psec\fR are non-zero they will always have the same
sign. The value of \fB*psec\fR will always be less than the number of seconds
in a day. If \fBfrom\fR or \fBto\fR is \s-1NULL\s0 the current time is used.
+.PP
+The \fIASN1_TIME_cmp_time_t()\fR and \fIASN1_UTCTIME_cmp_time_t()\fR functions compare
+the two times represented by the time structure \fBs\fR and the time_t \fBt\fR.
+.PP
+The \fIASN1_TIME_compare()\fR function compares the two times represented by the
+time structures \fBa\fR and \fBb\fR.
+.PP
+The \fIASN1_TIME_to_generalizedtime()\fR function converts an \s-1ASN1_TIME\s0 to an
+\&\s-1ASN1_GENERALIZEDTIME,\s0 regardless of year. If either \fBout\fR or
+\&\fB*out\fR are \s-1NULL,\s0 then a new object is allocated and must be freed after use.
.SH "NOTES"
.IX Header "NOTES"
The \s-1ASN1_TIME\s0 structure corresponds to the \s-1ASN.1\s0 structure \fBTime\fR
@@ -191,34 +259,51 @@ defined in \s-1RFC5280\s0 et al. The time setting functions obey the rules outli
in \s-1RFC5280:\s0 if the date can be represented by UTCTime it is used, else
GeneralizedTime is used.
.PP
-The \s-1ASN1_TIME\s0 structure is represented as an \s-1ASN1_STRING\s0 internally and can
-be freed up using \fIASN1_STRING_free()\fR.
+The \s-1ASN1_TIME, ASN1_UTCTIME\s0 and \s-1ASN1_GENERALIZEDTIME\s0 structures are represented
+as an \s-1ASN1_STRING\s0 internally and can be freed up using \fIASN1_STRING_free()\fR.
.PP
The \s-1ASN1_TIME\s0 structure can represent years from 0000 to 9999 but no attempt
is made to correct ancient calendar changes (for example from Julian to
Gregorian calendars).
.PP
+\&\s-1ASN1_UTCTIME\s0 is limited to a year range of 1950 through 2049.
+.PP
Some applications add offset times directly to a time_t value and pass the
results to \fIASN1_TIME_set()\fR (or equivalent). This can cause problems as the
time_t value can overflow on some systems resulting in unexpected results.
New applications should use \fIASN1_TIME_adj()\fR instead and pass the offset value
in the \fBoffset_sec\fR and \fBoffset_day\fR parameters instead of directly
manipulating a time_t value.
+.PP
+\&\fIASN1_TIME_adj()\fR may change the type from \s-1ASN1_GENERALIZEDTIME\s0 to \s-1ASN1_UTCTIME,\s0
+or vice versa, based on the resulting year. The \fIASN1_GENERALIZEDTIME_adj()\fR and
+\&\fIASN1_UTCTIME_adj()\fR functions will not modify the type of the return structure.
+.PP
+It is recommended that functions starting with \s-1ASN1_TIME\s0 be used instead of
+those starting with \s-1ASN1_UTCTIME\s0 or \s-1ASN1_GENERALIZEDTIME.\s0 The functions
+starting with \s-1ASN1_UTCTIME\s0 and \s-1ASN1_GENERALIZEDTIME\s0 act only on that specific
+time format. The functions starting with \s-1ASN1_TIME\s0 will operate on either
+format.
.SH "BUGS"
.IX Header "BUGS"
-\&\fIASN1_TIME_print()\fR currently does not print out the time zone: it either prints
-out \*(L"\s-1GMT\*(R"\s0 or nothing. But all certificates complying with \s-1RFC5280\s0 et al use \s-1GMT\s0
-anyway.
+\&\fIASN1_TIME_print()\fR, \fIASN1_UTCTIME_print()\fR and \fIASN1_GENERALIZEDTIME_print()\fR
+do not print out the time zone: it either prints out \*(L"\s-1GMT\*(R"\s0 or nothing. But all
+certificates complying with \s-1RFC5280\s0 et al use \s-1GMT\s0 anyway.
+.PP
+Use the \fIASN1_TIME_normalize()\fR function to normalize the time value before
+printing to get \s-1GMT\s0 results.
.SH "EXAMPLES"
.IX Header "EXAMPLES"
Set a time structure to one hour after the current time and print it out:
.PP
-.Vb 11
+.Vb 2
\& #include <time.h>
\& #include <openssl/asn1.h>
+\&
\& ASN1_TIME *tm;
\& time_t t;
\& BIO *b;
+\&
\& t = time(NULL);
\& tm = ASN1_TIME_adj(NULL, t, 0, 60 * 60);
\& b = BIO_new_fp(stdout, BIO_NOCLOSE);
@@ -233,28 +318,59 @@ Determine if one time is later or sooner than the current time:
\& int day, sec;
\&
\& if (!ASN1_TIME_diff(&day, &sec, NULL, to))
-\& /* Invalid time format */
+\& /* Invalid time format */
\&
\& if (day > 0 || sec > 0)
-\& printf("Later\en");
+\& printf("Later\en");
\& else if (day < 0 || sec < 0)
-\& printf("Sooner\en");
+\& printf("Sooner\en");
\& else
-\& printf("Same\en");
+\& printf("Same\en");
.Ve
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
-\&\fIASN1_TIME_set()\fR and \fIASN1_TIME_adj()\fR return a pointer to an \s-1ASN1_TIME\s0 structure
+\&\fIASN1_TIME_set()\fR, \fIASN1_UTCTIME_set()\fR, \fIASN1_GENERALIZEDTIME_set()\fR, \fIASN1_TIME_adj()\fR,
+ASN1_UTCTIME_adj and ASN1_GENERALIZEDTIME_set return a pointer to a time structure
or \s-1NULL\s0 if an error occurred.
.PP
-\&\fIASN1_TIME_set_string()\fR returns 1 if the time value is successfully set and
-0 otherwise.
+\&\fIASN1_TIME_set_string()\fR, \fIASN1_UTCTIME_set_string()\fR, \fIASN1_GENERALIZEDTIME_set_string()\fR
+\&\fIASN1_TIME_set_string_X509()\fR return 1 if the time value is successfully set and 0 otherwise.
+.PP
+\&\fIASN1_TIME_normalize()\fR returns 1 on success, and 0 on error.
+.PP
+\&\fIASN1_TIME_check()\fR, ASN1_UTCTIME_check and \fIASN1_GENERALIZEDTIME_check()\fR return 1
+if the structure is syntactically correct and 0 otherwise.
+.PP
+\&\fIASN1_TIME_print()\fR, \fIASN1_UTCTIME_print()\fR and \fIASN1_GENERALIZEDTIME_print()\fR return 1
+if the time is successfully printed out and 0 if an error occurred (I/O error or
+invalid time format).
+.PP
+\&\fIASN1_TIME_to_tm()\fR returns 1 if the time is successfully parsed and 0 if an
+error occurred (invalid time format).
+.PP
+\&\fIASN1_TIME_diff()\fR returns 1 for success and 0 for failure. It can fail if the
+passed-in time structure has invalid syntax, for example.
+.PP
+\&\fIASN1_TIME_cmp_time_t()\fR and \fIASN1_UTCTIME_cmp_time_t()\fR return \-1 if \fBs\fR is
+before \fBt\fR, 0 if \fBs\fR equals \fBt\fR, or 1 if \fBs\fR is after \fBt\fR. \-2 is returned
+on error.
.PP
-\&\fIASN1_TIME_check()\fR returns 1 if the structure is syntactically correct and 0
-otherwise.
+\&\fIASN1_TIME_compare()\fR returns \-1 if \fBa\fR is before \fBb\fR, 0 if \fBa\fR equals \fBb\fR, or 1 if \fBa\fR is after \fBb\fR. \-2 is returned on error.
.PP
-\&\fIASN1_TIME_print()\fR returns 1 if the time is successfully printed out and 0 if
-an error occurred (I/O error or invalid time format).
+\&\fIASN1_TIME_to_generalizedtime()\fR returns a pointer to
+the appropriate time structure on success or \s-1NULL\s0 if an error occurred.
+.SH "HISTORY"
+.IX Header "HISTORY"
+The \fIASN1_TIME_to_tm()\fR function was added in OpenSSL 1.1.1.
+The \fIASN1_TIME_set_string_X509()\fR function was added in OpenSSL 1.1.1.
+The \fIASN1_TIME_normalize()\fR function was added in OpenSSL 1.1.1.
+The \fIASN1_TIME_cmp_time_t()\fR function was added in OpenSSL 1.1.1.
+The \fIASN1_TIME_compare()\fR function was added in OpenSSL 1.1.1.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2015\-2018 The OpenSSL Project Authors. All Rights Reserved.
.PP
-\&\fIASN1_TIME_diff()\fR returns 1 for sucess and 0 for failure. It can fail if the
-pass \s-1ASN1_TIME\s0 structure has invalid syntax for example.
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_TYPE_get.3 b/secure/lib/libcrypto/man/ASN1_TYPE_get.3
new file mode 100644
index 000000000000..20f8be910001
--- /dev/null
+++ b/secure/lib/libcrypto/man/ASN1_TYPE_get.3
@@ -0,0 +1,227 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "ASN1_TYPE_GET 3"
+.TH ASN1_TYPE_GET 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+ASN1_TYPE_get, ASN1_TYPE_set, ASN1_TYPE_set1, ASN1_TYPE_cmp, ASN1_TYPE_unpack_sequence, ASN1_TYPE_pack_sequence \- ASN1_TYPE utility functions
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/asn1.h>
+\&
+\& int ASN1_TYPE_get(const ASN1_TYPE *a);
+\& void ASN1_TYPE_set(ASN1_TYPE *a, int type, void *value);
+\& int ASN1_TYPE_set1(ASN1_TYPE *a, int type, const void *value);
+\& int ASN1_TYPE_cmp(const ASN1_TYPE *a, const ASN1_TYPE *b);
+\&
+\& void *ASN1_TYPE_unpack_sequence(const ASN1_ITEM *it, const ASN1_TYPE *t);
+\& ASN1_TYPE *ASN1_TYPE_pack_sequence(const ASN1_ITEM *it, void *s,
+\& ASN1_TYPE **t);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+These functions allow an \s-1ASN1_TYPE\s0 structure to be manipulated. The
+\&\s-1ASN1_TYPE\s0 structure can contain any \s-1ASN.1\s0 type or constructed type
+such as a \s-1SEQUENCE:\s0 it is effectively equivalent to the \s-1ASN.1 ANY\s0 type.
+.PP
+\&\fIASN1_TYPE_get()\fR returns the type of \fBa\fR.
+.PP
+\&\fIASN1_TYPE_set()\fR sets the value of \fBa\fR to \fBtype\fR and \fBvalue\fR. This
+function uses the pointer \fBvalue\fR internally so it must \fBnot\fR be freed
+up after the call.
+.PP
+\&\fIASN1_TYPE_set1()\fR sets the value of \fBa\fR to \fBtype\fR a copy of \fBvalue\fR.
+.PP
+\&\fIASN1_TYPE_cmp()\fR compares \s-1ASN.1\s0 types \fBa\fR and \fBb\fR and returns 0 if
+they are identical and non-zero otherwise.
+.PP
+\&\fIASN1_TYPE_unpack_sequence()\fR attempts to parse the \s-1SEQUENCE\s0 present in
+\&\fBt\fR using the \s-1ASN.1\s0 structure \fBit\fR. If successful it returns a pointer
+to the \s-1ASN.1\s0 structure corresponding to \fBit\fR which must be freed by the
+caller. If it fails it return \s-1NULL.\s0
+.PP
+\&\fIASN1_TYPE_pack_sequence()\fR attempts to encode the \s-1ASN.1\s0 structure \fBs\fR
+corresponding to \fBit\fR into an \s-1ASN1_TYPE.\s0 If successful the encoded
+\&\s-1ASN1_TYPE\s0 is returned. If \fBt\fR and \fB*t\fR are not \s-1NULL\s0 the encoded type
+is written to \fBt\fR overwriting any existing data. If \fBt\fR is not \s-1NULL\s0
+but \fB*t\fR is \s-1NULL\s0 the returned \s-1ASN1_TYPE\s0 is written to \fB*t\fR.
+.SH "NOTES"
+.IX Header "NOTES"
+The type and meaning of the \fBvalue\fR parameter for \fIASN1_TYPE_set()\fR and
+\&\fIASN1_TYPE_set1()\fR is determined by the \fBtype\fR parameter.
+If \fBtype\fR is V_ASN1_NULL \fBvalue\fR is ignored. If \fBtype\fR is V_ASN1_BOOLEAN
+then the boolean is set to \s-1TRUE\s0 if \fBvalue\fR is not \s-1NULL.\s0 If \fBtype\fR is
+V_ASN1_OBJECT then value is an \s-1ASN1_OBJECT\s0 structure. Otherwise \fBtype\fR
+is and \s-1ASN1_STRING\s0 structure. If \fBtype\fR corresponds to a primitive type
+(or a string type) then the contents of the \s-1ASN1_STRING\s0 contain the content
+octets of the type. If \fBtype\fR corresponds to a constructed type or
+a tagged type (V_ASN1_SEQUENCE, V_ASN1_SET or V_ASN1_OTHER) then the
+\&\s-1ASN1_STRING\s0 contains the entire \s-1ASN.1\s0 encoding verbatim (including tag and
+length octets).
+.PP
+\&\fIASN1_TYPE_cmp()\fR may not return zero if two types are equivalent but have
+different encodings. For example the single content octet of the boolean \s-1TRUE\s0
+value under \s-1BER\s0 can have any non-zero encoding but \fIASN1_TYPE_cmp()\fR will
+only return zero if the values are the same.
+.PP
+If either or both of the parameters passed to \fIASN1_TYPE_cmp()\fR is \s-1NULL\s0 the
+return value is non-zero. Technically if both parameters are \s-1NULL\s0 the two
+types could be absent \s-1OPTIONAL\s0 fields and so should match, however passing
+\&\s-1NULL\s0 values could also indicate a programming error (for example an
+unparseable type which returns \s-1NULL\s0) for types which do \fBnot\fR match. So
+applications should handle the case of two absent values separately.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIASN1_TYPE_get()\fR returns the type of the \s-1ASN1_TYPE\s0 argument.
+.PP
+\&\fIASN1_TYPE_set()\fR does not return a value.
+.PP
+\&\fIASN1_TYPE_set1()\fR returns 1 for success and 0 for failure.
+.PP
+\&\fIASN1_TYPE_cmp()\fR returns 0 if the types are identical and non-zero otherwise.
+.PP
+\&\fIASN1_TYPE_unpack_sequence()\fR returns a pointer to an \s-1ASN.1\s0 structure or
+\&\s-1NULL\s0 on failure.
+.PP
+\&\fIASN1_TYPE_pack_sequence()\fR return an \s-1ASN1_TYPE\s0 structure if it succeeds or
+\&\s-1NULL\s0 on failure.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2015\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASN1_generate_nconf.3 b/secure/lib/libcrypto/man/ASN1_generate_nconf.3
index d0bf6ab5d2b4..192463e9dbcc 100644
--- a/secure/lib/libcrypto/man/ASN1_generate_nconf.3
+++ b/secure/lib/libcrypto/man/ASN1_generate_nconf.3
@@ -128,8 +128,8 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "ASN1_generate_nconf 3"
-.TH ASN1_generate_nconf 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "ASN1_GENERATE_NCONF 3"
+.TH ASN1_GENERATE_NCONF 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -141,8 +141,8 @@ ASN1_generate_nconf, ASN1_generate_v3 \- ASN1 generation functions
.Vb 1
\& #include <openssl/asn1.h>
\&
-\& ASN1_TYPE *ASN1_generate_nconf(char *str, CONF *nconf);
-\& ASN1_TYPE *ASN1_generate_v3(char *str, X509V3_CTX *cnf);
+\& ASN1_TYPE *ASN1_generate_nconf(const char *str, CONF *nconf);
+\& ASN1_TYPE *ASN1_generate_v3(const char *str, X509V3_CTX *cnf);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -152,7 +152,7 @@ in an \fB\s-1ASN1_TYPE\s0\fR structure.
\&\fBstr\fR contains the string to encode \fBnconf\fR or \fBcnf\fR contains
the optional configuration information where additional strings
will be read from. \fBnconf\fR will typically come from a config
-file wherease \fBcnf\fR is obtained from an \fBX509V3_CTX\fR structure
+file whereas \fBcnf\fR is obtained from an \fBX509V3_CTX\fR structure
which will typically be used by X509 v3 certificate extension
functions. \fBcnf\fR or \fBnconf\fR can be set to \fB\s-1NULL\s0\fR if no additional
configuration will be used.
@@ -161,53 +161,53 @@ configuration will be used.
The actual data encoded is determined by the string \fBstr\fR and
the configuration information. The general format of the string
is:
-.IP "\fB[modifier,]type[:value]\fR" 2
+.IP "\fB[modifier,]type[:value]\fR" 4
.IX Item "[modifier,]type[:value]"
.PP
That is zero or more comma separated modifiers followed by a type
followed by an optional colon and a value. The formats of \fBtype\fR,
\&\fBvalue\fR and \fBmodifier\fR are explained below.
-.SS "\s-1SUPPORTED TYPES\s0"
-.IX Subsection "SUPPORTED TYPES"
+.SS "Supported Types"
+.IX Subsection "Supported Types"
The supported types are listed below. Unless otherwise specified
only the \fB\s-1ASCII\s0\fR format is permissible.
-.IP "\fB\s-1BOOLEAN\s0\fR, \fB\s-1BOOL\s0\fR" 2
+.IP "\fB\s-1BOOLEAN\s0\fR, \fB\s-1BOOL\s0\fR" 4
.IX Item "BOOLEAN, BOOL"
This encodes a boolean type. The \fBvalue\fR string is mandatory and
should be \fB\s-1TRUE\s0\fR or \fB\s-1FALSE\s0\fR. Additionally \fB\s-1TRUE\s0\fR, \fBtrue\fR, \fBY\fR,
\&\fBy\fR, \fB\s-1YES\s0\fR, \fByes\fR, \fB\s-1FALSE\s0\fR, \fBfalse\fR, \fBN\fR, \fBn\fR, \fB\s-1NO\s0\fR and \fBno\fR
are acceptable.
-.IP "\fB\s-1NULL\s0\fR" 2
+.IP "\fB\s-1NULL\s0\fR" 4
.IX Item "NULL"
Encode the \fB\s-1NULL\s0\fR type, the \fBvalue\fR string must not be present.
-.IP "\fB\s-1INTEGER\s0\fR, \fB\s-1INT\s0\fR" 2
+.IP "\fB\s-1INTEGER\s0\fR, \fB\s-1INT\s0\fR" 4
.IX Item "INTEGER, INT"
Encodes an \s-1ASN1\s0 \fB\s-1INTEGER\s0\fR type. The \fBvalue\fR string represents
the value of the integer, it can be prefaced by a minus sign and
is normally interpreted as a decimal value unless the prefix \fB0x\fR
is included.
-.IP "\fB\s-1ENUMERATED\s0\fR, \fB\s-1ENUM\s0\fR" 2
+.IP "\fB\s-1ENUMERATED\s0\fR, \fB\s-1ENUM\s0\fR" 4
.IX Item "ENUMERATED, ENUM"
Encodes the \s-1ASN1\s0 \fB\s-1ENUMERATED\s0\fR type, it is otherwise identical to
\&\fB\s-1INTEGER\s0\fR.
-.IP "\fB\s-1OBJECT\s0\fR, \fB\s-1OID\s0\fR" 2
+.IP "\fB\s-1OBJECT\s0\fR, \fB\s-1OID\s0\fR" 4
.IX Item "OBJECT, OID"
Encodes an \s-1ASN1\s0 \fB\s-1OBJECT IDENTIFIER\s0\fR, the \fBvalue\fR string can be
a short name, a long name or numerical format.
-.IP "\fB\s-1UTCTIME\s0\fR, \fB\s-1UTC\s0\fR" 2
+.IP "\fB\s-1UTCTIME\s0\fR, \fB\s-1UTC\s0\fR" 4
.IX Item "UTCTIME, UTC"
Encodes an \s-1ASN1\s0 \fBUTCTime\fR structure, the value should be in
the format \fB\s-1YYMMDDHHMMSSZ\s0\fR.
-.IP "\fB\s-1GENERALIZEDTIME\s0\fR, \fB\s-1GENTIME\s0\fR" 2
+.IP "\fB\s-1GENERALIZEDTIME\s0\fR, \fB\s-1GENTIME\s0\fR" 4
.IX Item "GENERALIZEDTIME, GENTIME"
Encodes an \s-1ASN1\s0 \fBGeneralizedTime\fR structure, the value should be in
the format \fB\s-1YYYYMMDDHHMMSSZ\s0\fR.
-.IP "\fB\s-1OCTETSTRING\s0\fR, \fB\s-1OCT\s0\fR" 2
+.IP "\fB\s-1OCTETSTRING\s0\fR, \fB\s-1OCT\s0\fR" 4
.IX Item "OCTETSTRING, OCT"
Encodes an \s-1ASN1\s0 \fB\s-1OCTET STRING\s0\fR. \fBvalue\fR represents the contents
of this structure, the format strings \fB\s-1ASCII\s0\fR and \fB\s-1HEX\s0\fR can be
used to specify the format of \fBvalue\fR.
-.IP "\fB\s-1BITSTRING\s0\fR, \fB\s-1BITSTR\s0\fR" 2
+.IP "\fB\s-1BITSTRING\s0\fR, \fB\s-1BITSTR\s0\fR" 4
.IX Item "BITSTRING, BITSTR"
Encodes an \s-1ASN1\s0 \fB\s-1BIT STRING\s0\fR. \fBvalue\fR represents the contents
of this structure, the format strings \fB\s-1ASCII\s0\fR, \fB\s-1HEX\s0\fR and \fB\s-1BITLIST\s0\fR
@@ -215,24 +215,24 @@ can be used to specify the format of \fBvalue\fR.
.Sp
If the format is anything other than \fB\s-1BITLIST\s0\fR the number of unused
bits is set to zero.
-.IP "\fB\s-1UNIVERSALSTRING\s0\fR, \fB\s-1UNIV\s0\fR, \fB\s-1IA5\s0\fR, \fB\s-1IA5STRING\s0\fR, \fB\s-1UTF8\s0\fR, \fBUTF8String\fR, \fB\s-1BMP\s0\fR, \fB\s-1BMPSTRING\s0\fR, \fB\s-1VISIBLESTRING\s0\fR, \fB\s-1VISIBLE\s0\fR, \fB\s-1PRINTABLESTRING\s0\fR, \fB\s-1PRINTABLE\s0\fR, \fBT61\fR, \fBT61STRING\fR, \fB\s-1TELETEXSTRING\s0\fR, \fBGeneralString\fR, \fB\s-1NUMERICSTRING\s0\fR, \fB\s-1NUMERIC\s0\fR" 2
+.IP "\fB\s-1UNIVERSALSTRING\s0\fR, \fB\s-1UNIV\s0\fR, \fB\s-1IA5\s0\fR, \fB\s-1IA5STRING\s0\fR, \fB\s-1UTF8\s0\fR, \fBUTF8String\fR, \fB\s-1BMP\s0\fR, \fB\s-1BMPSTRING\s0\fR, \fB\s-1VISIBLESTRING\s0\fR, \fB\s-1VISIBLE\s0\fR, \fB\s-1PRINTABLESTRING\s0\fR, \fB\s-1PRINTABLE\s0\fR, \fBT61\fR, \fBT61STRING\fR, \fB\s-1TELETEXSTRING\s0\fR, \fBGeneralString\fR, \fB\s-1NUMERICSTRING\s0\fR, \fB\s-1NUMERIC\s0\fR" 4
.IX Item "UNIVERSALSTRING, UNIV, IA5, IA5STRING, UTF8, UTF8String, BMP, BMPSTRING, VISIBLESTRING, VISIBLE, PRINTABLESTRING, PRINTABLE, T61, T61STRING, TELETEXSTRING, GeneralString, NUMERICSTRING, NUMERIC"
These encode the corresponding string types. \fBvalue\fR represents the
contents of this structure. The format can be \fB\s-1ASCII\s0\fR or \fB\s-1UTF8\s0\fR.
-.IP "\fB\s-1SEQUENCE\s0\fR, \fB\s-1SEQ\s0\fR, \fB\s-1SET\s0\fR" 2
+.IP "\fB\s-1SEQUENCE\s0\fR, \fB\s-1SEQ\s0\fR, \fB\s-1SET\s0\fR" 4
.IX Item "SEQUENCE, SEQ, SET"
Formats the result as an \s-1ASN1\s0 \fB\s-1SEQUENCE\s0\fR or \fB\s-1SET\s0\fR type. \fBvalue\fR
should be a section name which will contain the contents. The
field names in the section are ignored and the values are in the
generated string format. If \fBvalue\fR is absent then an empty \s-1SEQUENCE\s0
will be encoded.
-.SS "\s-1MODIFIERS\s0"
-.IX Subsection "MODIFIERS"
+.SS "Modifiers"
+.IX Subsection "Modifiers"
Modifiers affect the following structure, they can be used to
add \s-1EXPLICIT\s0 or \s-1IMPLICIT\s0 tagging, add wrappers or to change
the string format of the final type and value. The supported
formats are documented below.
-.IP "\fB\s-1EXPLICIT\s0\fR, \fB\s-1EXP\s0\fR" 2
+.IP "\fB\s-1EXPLICIT\s0\fR, \fB\s-1EXP\s0\fR" 4
.IX Item "EXPLICIT, EXP"
Add an explicit tag to the following structure. This string
should be followed by a colon and the tag value to use as a
@@ -241,16 +241,16 @@ decimal value.
By following the number with \fBU\fR, \fBA\fR, \fBP\fR or \fBC\fR \s-1UNIVERSAL,
APPLICATION, PRIVATE\s0 or \s-1CONTEXT SPECIFIC\s0 tagging can be used,
the default is \s-1CONTEXT SPECIFIC.\s0
-.IP "\fB\s-1IMPLICIT\s0\fR, \fB\s-1IMP\s0\fR" 2
+.IP "\fB\s-1IMPLICIT\s0\fR, \fB\s-1IMP\s0\fR" 4
.IX Item "IMPLICIT, IMP"
This is the same as \fB\s-1EXPLICIT\s0\fR except \s-1IMPLICIT\s0 tagging is used
instead.
-.IP "\fB\s-1OCTWRAP\s0\fR, \fB\s-1SEQWRAP\s0\fR, \fB\s-1SETWRAP\s0\fR, \fB\s-1BITWRAP\s0\fR" 2
+.IP "\fB\s-1OCTWRAP\s0\fR, \fB\s-1SEQWRAP\s0\fR, \fB\s-1SETWRAP\s0\fR, \fB\s-1BITWRAP\s0\fR" 4
.IX Item "OCTWRAP, SEQWRAP, SETWRAP, BITWRAP"
The following structure is surrounded by an \s-1OCTET STRING,\s0 a \s-1SEQUENCE,\s0
a \s-1SET\s0 or a \s-1BIT STRING\s0 respectively. For a \s-1BIT STRING\s0 the number of unused
bits is set to zero.
-.IP "\fB\s-1FORMAT\s0\fR" 2
+.IP "\fB\s-1FORMAT\s0\fR" 4
.IX Item "FORMAT"
This specifies the format of the ultimate value. It should be followed
by a colon and one of the strings \fB\s-1ASCII\s0\fR, \fB\s-1UTF8\s0\fR, \fB\s-1HEX\s0\fR or \fB\s-1BITLIST\s0\fR.
@@ -287,7 +287,7 @@ A \s-1BITSTRING\s0 with bits 1 and 5 set and all others zero:
.Ve
.PP
A more complex example using a config file to produce a
-\&\s-1SEQUENCE\s0 consiting of a \s-1BOOL\s0 an \s-1OID\s0 and a UTF8String:
+\&\s-1SEQUENCE\s0 consisting of a \s-1BOOL\s0 an \s-1OID\s0 and a UTF8String:
.PP
.Vb 1
\& asn1 = SEQUENCE:seq_section
@@ -367,6 +367,11 @@ The error codes that can be obtained by \fIERR_get_error\fR\|(3).
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fIERR_get_error\fR\|(3)
-.SH "HISTORY"
-.IX Header "HISTORY"
-\&\fIASN1_generate_nconf()\fR and \fIASN1_generate_v3()\fR were added to OpenSSL 0.9.8
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2002\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASYNC_WAIT_CTX_new.3 b/secure/lib/libcrypto/man/ASYNC_WAIT_CTX_new.3
new file mode 100644
index 000000000000..3c4d63ec93d7
--- /dev/null
+++ b/secure/lib/libcrypto/man/ASYNC_WAIT_CTX_new.3
@@ -0,0 +1,266 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "ASYNC_WAIT_CTX_NEW 3"
+.TH ASYNC_WAIT_CTX_NEW 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+ASYNC_WAIT_CTX_new, ASYNC_WAIT_CTX_free, ASYNC_WAIT_CTX_set_wait_fd, ASYNC_WAIT_CTX_get_fd, ASYNC_WAIT_CTX_get_all_fds, ASYNC_WAIT_CTX_get_changed_fds, ASYNC_WAIT_CTX_clear_fd \- functions to manage waiting for asynchronous jobs to complete
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/async.h>
+\&
+\& ASYNC_WAIT_CTX *ASYNC_WAIT_CTX_new(void);
+\& void ASYNC_WAIT_CTX_free(ASYNC_WAIT_CTX *ctx);
+\& int ASYNC_WAIT_CTX_set_wait_fd(ASYNC_WAIT_CTX *ctx, const void *key,
+\& OSSL_ASYNC_FD fd,
+\& void *custom_data,
+\& void (*cleanup)(ASYNC_WAIT_CTX *, const void *,
+\& OSSL_ASYNC_FD, void *));
+\& int ASYNC_WAIT_CTX_get_fd(ASYNC_WAIT_CTX *ctx, const void *key,
+\& OSSL_ASYNC_FD *fd, void **custom_data);
+\& int ASYNC_WAIT_CTX_get_all_fds(ASYNC_WAIT_CTX *ctx, OSSL_ASYNC_FD *fd,
+\& size_t *numfds);
+\& int ASYNC_WAIT_CTX_get_changed_fds(ASYNC_WAIT_CTX *ctx, OSSL_ASYNC_FD *addfd,
+\& size_t *numaddfds, OSSL_ASYNC_FD *delfd,
+\& size_t *numdelfds);
+\& int ASYNC_WAIT_CTX_clear_fd(ASYNC_WAIT_CTX *ctx, const void *key);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+For an overview of how asynchronous operations are implemented in OpenSSL see
+\&\fIASYNC_start_job\fR\|(3). An \s-1ASYNC_WAIT_CTX\s0 object represents an asynchronous
+\&\*(L"session\*(R", i.e. a related set of crypto operations. For example in \s-1SSL\s0 terms
+this would have a one-to-one correspondence with an \s-1SSL\s0 connection.
+.PP
+Application code must create an \s-1ASYNC_WAIT_CTX\s0 using the \fIASYNC_WAIT_CTX_new()\fR
+function prior to calling \fIASYNC_start_job()\fR (see \fIASYNC_start_job\fR\|(3)). When
+the job is started it is associated with the \s-1ASYNC_WAIT_CTX\s0 for the duration of
+that job. An \s-1ASYNC_WAIT_CTX\s0 should only be used for one \s-1ASYNC_JOB\s0 at any one
+time, but can be reused after an \s-1ASYNC_JOB\s0 has finished for a subsequent
+\&\s-1ASYNC_JOB.\s0 When the session is complete (e.g. the \s-1SSL\s0 connection is closed),
+application code cleans up with \fIASYNC_WAIT_CTX_free()\fR.
+.PP
+ASYNC_WAIT_CTXs can have \*(L"wait\*(R" file descriptors associated with them. Calling
+\&\fIASYNC_WAIT_CTX_get_all_fds()\fR and passing in a pointer to an \s-1ASYNC_WAIT_CTX\s0 in
+the \fBctx\fR parameter will return the wait file descriptors associated with that
+job in \fB*fd\fR. The number of file descriptors returned will be stored in
+\&\fB*numfds\fR. It is the caller's responsibility to ensure that sufficient memory
+has been allocated in \fB*fd\fR to receive all the file descriptors. Calling
+\&\fIASYNC_WAIT_CTX_get_all_fds()\fR with a \s-1NULL\s0 \fBfd\fR value will return no file
+descriptors but will still populate \fB*numfds\fR. Therefore application code is
+typically expected to call this function twice: once to get the number of fds,
+and then again when sufficient memory has been allocated. If only one
+asynchronous engine is being used then normally this call will only ever return
+one fd. If multiple asynchronous engines are being used then more could be
+returned.
+.PP
+The function \fIASYNC_WAIT_CTX_get_changed_fds()\fR can be used to detect if any fds
+have changed since the last call time \fIASYNC_start_job()\fR returned an \s-1ASYNC_PAUSE\s0
+result (or since the \s-1ASYNC_WAIT_CTX\s0 was created if no \s-1ASYNC_PAUSE\s0 result has
+been received). The \fBnumaddfds\fR and \fBnumdelfds\fR parameters will be populated
+with the number of fds added or deleted respectively. \fB*addfd\fR and \fB*delfd\fR
+will be populated with the list of added and deleted fds respectively. Similarly
+to \fIASYNC_WAIT_CTX_get_all_fds()\fR either of these can be \s-1NULL,\s0 but if they are not
+\&\s-1NULL\s0 then the caller is responsible for ensuring sufficient memory is allocated.
+.PP
+Implementors of async aware code (e.g. engines) are encouraged to return a
+stable fd for the lifetime of the \s-1ASYNC_WAIT_CTX\s0 in order to reduce the \*(L"churn\*(R"
+of regularly changing fds \- although no guarantees of this are provided to
+applications.
+.PP
+Applications can wait for the file descriptor to be ready for \*(L"read\*(R" using a
+system function call such as select or poll (being ready for \*(L"read\*(R" indicates
+that the job should be resumed). If no file descriptor is made available then an
+application will have to periodically \*(L"poll\*(R" the job by attempting to restart it
+to see if it is ready to continue.
+.PP
+Async aware code (e.g. engines) can get the current \s-1ASYNC_WAIT_CTX\s0 from the job
+via \fIASYNC_get_wait_ctx\fR\|(3) and provide a file descriptor to use for waiting
+on by calling \fIASYNC_WAIT_CTX_set_wait_fd()\fR. Typically this would be done by an
+engine immediately prior to calling \fIASYNC_pause_job()\fR and not by end user code.
+An existing association with a file descriptor can be obtained using
+\&\fIASYNC_WAIT_CTX_get_fd()\fR and cleared using \fIASYNC_WAIT_CTX_clear_fd()\fR. Both of
+these functions requires a \fBkey\fR value which is unique to the async aware
+code. This could be any unique value but a good candidate might be the
+\&\fB\s-1ENGINE\s0 *\fR for the engine. The \fBcustom_data\fR parameter can be any value, and
+will be returned in a subsequent call to \fIASYNC_WAIT_CTX_get_fd()\fR. The
+\&\fIASYNC_WAIT_CTX_set_wait_fd()\fR function also expects a pointer to a \*(L"cleanup\*(R"
+routine. This can be \s-1NULL\s0 but if provided will automatically get called when
+the \s-1ASYNC_WAIT_CTX\s0 is freed, and gives the engine the opportunity to close the
+fd or any other resources. Note: The \*(L"cleanup\*(R" routine does not get called if
+the fd is cleared directly via a call to \fIASYNC_WAIT_CTX_clear_fd()\fR.
+.PP
+An example of typical usage might be an async capable engine. User code would
+initiate cryptographic operations. The engine would initiate those operations
+asynchronously and then call \fIASYNC_WAIT_CTX_set_wait_fd()\fR followed by
+\&\fIASYNC_pause_job()\fR to return control to the user code. The user code can then
+perform other tasks or wait for the job to be ready by calling \*(L"select\*(R" or other
+similar function on the wait file descriptor. The engine can signal to the user
+code that the job should be resumed by making the wait file descriptor
+\&\*(L"readable\*(R". Once resumed the engine should clear the wake signal on the wait
+file descriptor.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIASYNC_WAIT_CTX_new()\fR returns a pointer to the newly allocated \s-1ASYNC_WAIT_CTX\s0 or
+\&\s-1NULL\s0 on error.
+.PP
+ASYNC_WAIT_CTX_set_wait_fd, ASYNC_WAIT_CTX_get_fd, ASYNC_WAIT_CTX_get_all_fds,
+ASYNC_WAIT_CTX_get_changed_fds and ASYNC_WAIT_CTX_clear_fd all return 1 on
+success or 0 on error.
+.SH "NOTES"
+.IX Header "NOTES"
+On Windows platforms the openssl/async.h header is dependent on some
+of the types customarily made available by including windows.h. The
+application developer is likely to require control over when the latter
+is included, commonly as one of the first included headers. Therefore
+it is defined as an application developer's responsibility to include
+windows.h prior to async.h.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIcrypto\fR\|(7), \fIASYNC_start_job\fR\|(3)
+.SH "HISTORY"
+.IX Header "HISTORY"
+ASYNC_WAIT_CTX_new, ASYNC_WAIT_CTX_free, ASYNC_WAIT_CTX_set_wait_fd,
+ASYNC_WAIT_CTX_get_fd, ASYNC_WAIT_CTX_get_all_fds,
+ASYNC_WAIT_CTX_get_changed_fds, ASYNC_WAIT_CTX_clear_fd were first added to
+OpenSSL 1.1.0.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/ASYNC_start_job.3 b/secure/lib/libcrypto/man/ASYNC_start_job.3
new file mode 100644
index 000000000000..e788935f7746
--- /dev/null
+++ b/secure/lib/libcrypto/man/ASYNC_start_job.3
@@ -0,0 +1,449 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "ASYNC_START_JOB 3"
+.TH ASYNC_START_JOB 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+ASYNC_get_wait_ctx, ASYNC_init_thread, ASYNC_cleanup_thread, ASYNC_start_job, ASYNC_pause_job, ASYNC_get_current_job, ASYNC_block_pause, ASYNC_unblock_pause, ASYNC_is_capable \&\- asynchronous job management functions
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/async.h>
+\&
+\& int ASYNC_init_thread(size_t max_size, size_t init_size);
+\& void ASYNC_cleanup_thread(void);
+\&
+\& int ASYNC_start_job(ASYNC_JOB **job, ASYNC_WAIT_CTX *ctx, int *ret,
+\& int (*func)(void *), void *args, size_t size);
+\& int ASYNC_pause_job(void);
+\&
+\& ASYNC_JOB *ASYNC_get_current_job(void);
+\& ASYNC_WAIT_CTX *ASYNC_get_wait_ctx(ASYNC_JOB *job);
+\& void ASYNC_block_pause(void);
+\& void ASYNC_unblock_pause(void);
+\&
+\& int ASYNC_is_capable(void);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+OpenSSL implements asynchronous capabilities through an \s-1ASYNC_JOB.\s0 This
+represents code that can be started and executes until some event occurs. At
+that point the code can be paused and control returns to user code until some
+subsequent event indicates that the job can be resumed.
+.PP
+The creation of an \s-1ASYNC_JOB\s0 is a relatively expensive operation. Therefore, for
+efficiency reasons, jobs can be created up front and reused many times. They are
+held in a pool until they are needed, at which point they are removed from the
+pool, used, and then returned to the pool when the job completes. If the user
+application is multi-threaded, then \fIASYNC_init_thread()\fR may be called for each
+thread that will initiate asynchronous jobs. Before
+user code exits per-thread resources need to be cleaned up. This will normally
+occur automatically (see \fIOPENSSL_init_crypto\fR\|(3)) but may be explicitly
+initiated by using \fIASYNC_cleanup_thread()\fR. No asynchronous jobs must be
+outstanding for the thread when \fIASYNC_cleanup_thread()\fR is called. Failing to
+ensure this will result in memory leaks.
+.PP
+The \fBmax_size\fR argument limits the number of ASYNC_JOBs that will be held in
+the pool. If \fBmax_size\fR is set to 0 then no upper limit is set. When an
+\&\s-1ASYNC_JOB\s0 is needed but there are none available in the pool already then one
+will be automatically created, as long as the total of ASYNC_JOBs managed by the
+pool does not exceed \fBmax_size\fR. When the pool is first initialised
+\&\fBinit_size\fR ASYNC_JOBs will be created immediately. If \fIASYNC_init_thread()\fR is
+not called before the pool is first used then it will be called automatically
+with a \fBmax_size\fR of 0 (no upper limit) and an \fBinit_size\fR of 0 (no ASYNC_JOBs
+created up front).
+.PP
+An asynchronous job is started by calling the \fIASYNC_start_job()\fR function.
+Initially \fB*job\fR should be \s-1NULL.\s0 \fBctx\fR should point to an \s-1ASYNC_WAIT_CTX\s0
+object created through the \fIASYNC_WAIT_CTX_new\fR\|(3) function. \fBret\fR should
+point to a location where the return value of the asynchronous function should
+be stored on completion of the job. \fBfunc\fR represents the function that should
+be started asynchronously. The data pointed to by \fBargs\fR and of size \fBsize\fR
+will be copied and then passed as an argument to \fBfunc\fR when the job starts.
+ASYNC_start_job will return one of the following values:
+.IP "\fB\s-1ASYNC_ERR\s0\fR" 4
+.IX Item "ASYNC_ERR"
+An error occurred trying to start the job. Check the OpenSSL error queue (e.g.
+see \fIERR_print_errors\fR\|(3)) for more details.
+.IP "\fB\s-1ASYNC_NO_JOBS\s0\fR" 4
+.IX Item "ASYNC_NO_JOBS"
+There are no jobs currently available in the pool. This call can be retried
+again at a later time.
+.IP "\fB\s-1ASYNC_PAUSE\s0\fR" 4
+.IX Item "ASYNC_PAUSE"
+The job was successfully started but was \*(L"paused\*(R" before it completed (see
+\&\fIASYNC_pause_job()\fR below). A handle to the job is placed in \fB*job\fR. Other work
+can be performed (if desired) and the job restarted at a later time. To restart
+a job call \fIASYNC_start_job()\fR again passing the job handle in \fB*job\fR. The
+\&\fBfunc\fR, \fBargs\fR and \fBsize\fR parameters will be ignored when restarting a job.
+When restarting a job \fIASYNC_start_job()\fR \fBmust\fR be called from the same thread
+that the job was originally started from.
+.IP "\fB\s-1ASYNC_FINISH\s0\fR" 4
+.IX Item "ASYNC_FINISH"
+The job completed. \fB*job\fR will be \s-1NULL\s0 and the return value from \fBfunc\fR will
+be placed in \fB*ret\fR.
+.PP
+At any one time there can be a maximum of one job actively running per thread
+(you can have many that are paused). \fIASYNC_get_current_job()\fR can be used to get
+a pointer to the currently executing \s-1ASYNC_JOB.\s0 If no job is currently executing
+then this will return \s-1NULL.\s0
+.PP
+If executing within the context of a job (i.e. having been called directly or
+indirectly by the function \*(L"func\*(R" passed as an argument to \fIASYNC_start_job()\fR)
+then \fIASYNC_pause_job()\fR will immediately return control to the calling
+application with \s-1ASYNC_PAUSE\s0 returned from the \fIASYNC_start_job()\fR call. A
+subsequent call to ASYNC_start_job passing in the relevant \s-1ASYNC_JOB\s0 in the
+\&\fB*job\fR parameter will resume execution from the \fIASYNC_pause_job()\fR call. If
+\&\fIASYNC_pause_job()\fR is called whilst not within the context of a job then no
+action is taken and \fIASYNC_pause_job()\fR returns immediately.
+.PP
+\&\fIASYNC_get_wait_ctx()\fR can be used to get a pointer to the \s-1ASYNC_WAIT_CTX\s0
+for the \fBjob\fR. ASYNC_WAIT_CTXs can have a \*(L"wait\*(R" file descriptor associated
+with them. Applications can wait for the file descriptor to be ready for \*(L"read\*(R"
+using a system function call such as select or poll (being ready for \*(L"read\*(R"
+indicates that the job should be resumed). If no file descriptor is made
+available then an application will have to periodically \*(L"poll\*(R" the job by
+attempting to restart it to see if it is ready to continue.
+.PP
+An example of typical usage might be an async capable engine. User code would
+initiate cryptographic operations. The engine would initiate those operations
+asynchronously and then call \fIASYNC_WAIT_CTX_set_wait_fd\fR\|(3) followed by
+\&\fIASYNC_pause_job()\fR to return control to the user code. The user code can then
+perform other tasks or wait for the job to be ready by calling \*(L"select\*(R" or other
+similar function on the wait file descriptor. The engine can signal to the user
+code that the job should be resumed by making the wait file descriptor
+\&\*(L"readable\*(R". Once resumed the engine should clear the wake signal on the wait
+file descriptor.
+.PP
+The \fIASYNC_block_pause()\fR function will prevent the currently active job from
+pausing. The block will remain in place until a subsequent call to
+\&\fIASYNC_unblock_pause()\fR. These functions can be nested, e.g. if you call
+\&\fIASYNC_block_pause()\fR twice then you must call \fIASYNC_unblock_pause()\fR twice in
+order to re-enable pausing. If these functions are called while there is no
+currently active job then they have no effect. This functionality can be useful
+to avoid deadlock scenarios. For example during the execution of an \s-1ASYNC_JOB\s0 an
+application acquires a lock. It then calls some cryptographic function which
+invokes \fIASYNC_pause_job()\fR. This returns control back to the code that created
+the \s-1ASYNC_JOB.\s0 If that code then attempts to acquire the same lock before
+resuming the original job then a deadlock can occur. By calling
+\&\fIASYNC_block_pause()\fR immediately after acquiring the lock and
+\&\fIASYNC_unblock_pause()\fR immediately before releasing it then this situation cannot
+occur.
+.PP
+Some platforms cannot support async operations. The \fIASYNC_is_capable()\fR function
+can be used to detect whether the current platform is async capable or not.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+ASYNC_init_thread returns 1 on success or 0 otherwise.
+.PP
+ASYNC_start_job returns one of \s-1ASYNC_ERR, ASYNC_NO_JOBS, ASYNC_PAUSE\s0 or
+\&\s-1ASYNC_FINISH\s0 as described above.
+.PP
+ASYNC_pause_job returns 0 if an error occurred or 1 on success. If called when
+not within the context of an \s-1ASYNC_JOB\s0 then this is counted as success so 1 is
+returned.
+.PP
+ASYNC_get_current_job returns a pointer to the currently executing \s-1ASYNC_JOB\s0 or
+\&\s-1NULL\s0 if not within the context of a job.
+.PP
+\&\fIASYNC_get_wait_ctx()\fR returns a pointer to the \s-1ASYNC_WAIT_CTX\s0 for the job.
+.PP
+\&\fIASYNC_is_capable()\fR returns 1 if the current platform is async capable or 0
+otherwise.
+.SH "NOTES"
+.IX Header "NOTES"
+On Windows platforms the openssl/async.h header is dependent on some
+of the types customarily made available by including windows.h. The
+application developer is likely to require control over when the latter
+is included, commonly as one of the first included headers. Therefore
+it is defined as an application developer's responsibility to include
+windows.h prior to async.h.
+.SH "EXAMPLE"
+.IX Header "EXAMPLE"
+The following example demonstrates how to use most of the core async APIs:
+.PP
+.Vb 7
+\& #ifdef _WIN32
+\& # include <windows.h>
+\& #endif
+\& #include <stdio.h>
+\& #include <unistd.h>
+\& #include <openssl/async.h>
+\& #include <openssl/crypto.h>
+\&
+\& int unique = 0;
+\&
+\& void cleanup(ASYNC_WAIT_CTX *ctx, const void *key, OSSL_ASYNC_FD r, void *vw)
+\& {
+\& OSSL_ASYNC_FD *w = (OSSL_ASYNC_FD *)vw;
+\&
+\& close(r);
+\& close(*w);
+\& OPENSSL_free(w);
+\& }
+\&
+\& int jobfunc(void *arg)
+\& {
+\& ASYNC_JOB *currjob;
+\& unsigned char *msg;
+\& int pipefds[2] = {0, 0};
+\& OSSL_ASYNC_FD *wptr;
+\& char buf = \*(AqX\*(Aq;
+\&
+\& currjob = ASYNC_get_current_job();
+\& if (currjob != NULL) {
+\& printf("Executing within a job\en");
+\& } else {
+\& printf("Not executing within a job \- should not happen\en");
+\& return 0;
+\& }
+\&
+\& msg = (unsigned char *)arg;
+\& printf("Passed in message is: %s\en", msg);
+\&
+\& if (pipe(pipefds) != 0) {
+\& printf("Failed to create pipe\en");
+\& return 0;
+\& }
+\& wptr = OPENSSL_malloc(sizeof(OSSL_ASYNC_FD));
+\& if (wptr == NULL) {
+\& printf("Failed to malloc\en");
+\& return 0;
+\& }
+\& *wptr = pipefds[1];
+\& ASYNC_WAIT_CTX_set_wait_fd(ASYNC_get_wait_ctx(currjob), &unique,
+\& pipefds[0], wptr, cleanup);
+\&
+\& /*
+\& * Normally some external event would cause this to happen at some
+\& * later point \- but we do it here for demo purposes, i.e.
+\& * immediately signalling that the job is ready to be woken up after
+\& * we return to main via ASYNC_pause_job().
+\& */
+\& write(pipefds[1], &buf, 1);
+\&
+\& /* Return control back to main */
+\& ASYNC_pause_job();
+\&
+\& /* Clear the wake signal */
+\& read(pipefds[0], &buf, 1);
+\&
+\& printf ("Resumed the job after a pause\en");
+\&
+\& return 1;
+\& }
+\&
+\& int main(void)
+\& {
+\& ASYNC_JOB *job = NULL;
+\& ASYNC_WAIT_CTX *ctx = NULL;
+\& int ret;
+\& OSSL_ASYNC_FD waitfd;
+\& fd_set waitfdset;
+\& size_t numfds;
+\& unsigned char msg[13] = "Hello world!";
+\&
+\& printf("Starting...\en");
+\&
+\& ctx = ASYNC_WAIT_CTX_new();
+\& if (ctx == NULL) {
+\& printf("Failed to create ASYNC_WAIT_CTX\en");
+\& abort();
+\& }
+\&
+\& for (;;) {
+\& switch (ASYNC_start_job(&job, ctx, &ret, jobfunc, msg, sizeof(msg))) {
+\& case ASYNC_ERR:
+\& case ASYNC_NO_JOBS:
+\& printf("An error occurred\en");
+\& goto end;
+\& case ASYNC_PAUSE:
+\& printf("Job was paused\en");
+\& break;
+\& case ASYNC_FINISH:
+\& printf("Job finished with return value %d\en", ret);
+\& goto end;
+\& }
+\&
+\& /* Wait for the job to be woken */
+\& printf("Waiting for the job to be woken up\en");
+\&
+\& if (!ASYNC_WAIT_CTX_get_all_fds(ctx, NULL, &numfds)
+\& || numfds > 1) {
+\& printf("Unexpected number of fds\en");
+\& abort();
+\& }
+\& ASYNC_WAIT_CTX_get_all_fds(ctx, &waitfd, &numfds);
+\& FD_ZERO(&waitfdset);
+\& FD_SET(waitfd, &waitfdset);
+\& select(waitfd + 1, &waitfdset, NULL, NULL, NULL);
+\& }
+\&
+\& end:
+\& ASYNC_WAIT_CTX_free(ctx);
+\& printf("Finishing\en");
+\&
+\& return 0;
+\& }
+.Ve
+.PP
+The expected output from executing the above example program is:
+.PP
+.Vb 8
+\& Starting...
+\& Executing within a job
+\& Passed in message is: Hello world!
+\& Job was paused
+\& Waiting for the job to be woken up
+\& Resumed the job after a pause
+\& Job finished with return value 1
+\& Finishing
+.Ve
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIcrypto\fR\|(7), \fIERR_print_errors\fR\|(3)
+.SH "HISTORY"
+.IX Header "HISTORY"
+ASYNC_init_thread, ASYNC_cleanup_thread,
+ASYNC_start_job, ASYNC_pause_job, ASYNC_get_current_job, \fIASYNC_get_wait_ctx()\fR,
+\&\fIASYNC_block_pause()\fR, \fIASYNC_unblock_pause()\fR and \fIASYNC_is_capable()\fR were first
+added to OpenSSL 1.1.0.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2015\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/blowfish.3 b/secure/lib/libcrypto/man/BF_encrypt.3
index 4b52bb890a9a..ac2d3421a013 100644
--- a/secure/lib/libcrypto/man/blowfish.3
+++ b/secure/lib/libcrypto/man/BF_encrypt.3
@@ -128,15 +128,14 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "blowfish 3"
-.TH blowfish 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BF_ENCRYPT 3"
+.TH BF_ENCRYPT 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-blowfish, BF_set_key, BF_encrypt, BF_decrypt, BF_ecb_encrypt, BF_cbc_encrypt,
-BF_cfb64_encrypt, BF_ofb64_encrypt, BF_options \- Blowfish encryption
+BF_set_key, BF_encrypt, BF_decrypt, BF_ecb_encrypt, BF_cbc_encrypt, BF_cfb64_encrypt, BF_ofb64_encrypt, BF_options \- Blowfish encryption
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
@@ -145,18 +144,20 @@ BF_cfb64_encrypt, BF_ofb64_encrypt, BF_options \- Blowfish encryption
\& void BF_set_key(BF_KEY *key, int len, const unsigned char *data);
\&
\& void BF_ecb_encrypt(const unsigned char *in, unsigned char *out,
-\& BF_KEY *key, int enc);
+\& BF_KEY *key, int enc);
\& void BF_cbc_encrypt(const unsigned char *in, unsigned char *out,
-\& long length, BF_KEY *schedule, unsigned char *ivec, int enc);
+\& long length, BF_KEY *schedule,
+\& unsigned char *ivec, int enc);
\& void BF_cfb64_encrypt(const unsigned char *in, unsigned char *out,
-\& long length, BF_KEY *schedule, unsigned char *ivec, int *num,
-\& int enc);
+\& long length, BF_KEY *schedule,
+\& unsigned char *ivec, int *num, int enc);
\& void BF_ofb64_encrypt(const unsigned char *in, unsigned char *out,
-\& long length, BF_KEY *schedule, unsigned char *ivec, int *num);
+\& long length, BF_KEY *schedule,
+\& unsigned char *ivec, int *num);
\& const char *BF_options(void);
\&
-\& void BF_encrypt(BF_LONG *data,const BF_KEY *key);
-\& void BF_decrypt(BF_LONG *data,const BF_KEY *key);
+\& void BF_encrypt(BF_LONG *data, const BF_KEY *key);
+\& void BF_decrypt(BF_LONG *data, const BF_KEY *key);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -185,7 +186,7 @@ everything after the first 64 bits is ignored.
.PP
The mode functions \fIBF_cbc_encrypt()\fR, \fIBF_cfb64_encrypt()\fR and \fIBF_ofb64_encrypt()\fR
all operate on variable length data. They all take an initialization vector
-\&\fBivec\fR which needs to be passed along into the next call of the same function
+\&\fBivec\fR which needs to be passed along into the next call of the same function
for the same message. \fBivec\fR may be initialized with anything, but the
recipient needs to know what it was initialized with, or it won't be able
to decrypt. Some programs and protocols simplify this, like \s-1SSH,\s0 where
@@ -228,11 +229,17 @@ None of the functions presented here return any value.
.SH "NOTE"
.IX Header "NOTE"
Applications should use the higher level functions
-\&\fIEVP_EncryptInit\fR\|(3) etc. instead of calling the
-blowfish functions directly.
+\&\fIEVP_EncryptInit\fR\|(3) etc. instead of calling these
+functions directly.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
+\&\fIEVP_EncryptInit\fR\|(3),
\&\fIdes_modes\fR\|(7)
-.SH "HISTORY"
-.IX Header "HISTORY"
-The Blowfish functions are available in all versions of SSLeay and OpenSSL.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_ADDR.3 b/secure/lib/libcrypto/man/BIO_ADDR.3
new file mode 100644
index 000000000000..3e647d7283bf
--- /dev/null
+++ b/secure/lib/libcrypto/man/BIO_ADDR.3
@@ -0,0 +1,249 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "BIO_ADDR 3"
+.TH BIO_ADDR 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+BIO_ADDR, BIO_ADDR_new, BIO_ADDR_clear, BIO_ADDR_free, BIO_ADDR_rawmake, BIO_ADDR_family, BIO_ADDR_rawaddress, BIO_ADDR_rawport, BIO_ADDR_hostname_string, BIO_ADDR_service_string, BIO_ADDR_path_string \- BIO_ADDR routines
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 2
+\& #include <sys/types.h>
+\& #include <openssl/bio.h>
+\&
+\& typedef union bio_addr_st BIO_ADDR;
+\&
+\& BIO_ADDR *BIO_ADDR_new(void);
+\& void BIO_ADDR_free(BIO_ADDR *);
+\& void BIO_ADDR_clear(BIO_ADDR *ap);
+\& int BIO_ADDR_rawmake(BIO_ADDR *ap, int family,
+\& const void *where, size_t wherelen, unsigned short port);
+\& int BIO_ADDR_family(const BIO_ADDR *ap);
+\& int BIO_ADDR_rawaddress(const BIO_ADDR *ap, void *p, size_t *l);
+\& unsigned short BIO_ADDR_rawport(const BIO_ADDR *ap);
+\& char *BIO_ADDR_hostname_string(const BIO_ADDR *ap, int numeric);
+\& char *BIO_ADDR_service_string(const BIO_ADDR *ap, int numeric);
+\& char *BIO_ADDR_path_string(const BIO_ADDR *ap);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+The \fB\s-1BIO_ADDR\s0\fR type is a wrapper around all types of socket
+addresses that OpenSSL deals with, currently transparently
+supporting \s-1AF_INET, AF_INET6\s0 and \s-1AF_UNIX\s0 according to what's
+available on the platform at hand.
+.PP
+\&\fIBIO_ADDR_new()\fR creates a new unfilled \fB\s-1BIO_ADDR\s0\fR, to be used
+with routines that will fill it with information, such as
+\&\fIBIO_accept_ex()\fR.
+.PP
+\&\fIBIO_ADDR_free()\fR frees a \fB\s-1BIO_ADDR\s0\fR created with \fIBIO_ADDR_new()\fR.
+.PP
+\&\fIBIO_ADDR_clear()\fR clears any data held within the provided \fB\s-1BIO_ADDR\s0\fR and sets
+it back to an uninitialised state.
+.PP
+\&\fIBIO_ADDR_rawmake()\fR takes a protocol \fBfamily\fR, an byte array of
+size \fBwherelen\fR with an address in network byte order pointed at
+by \fBwhere\fR and a port number in network byte order in \fBport\fR (except
+for the \fB\s-1AF_UNIX\s0\fR protocol family, where \fBport\fR is meaningless and
+therefore ignored) and populates the given \fB\s-1BIO_ADDR\s0\fR with them.
+In case this creates a \fB\s-1AF_UNIX\s0\fR \fB\s-1BIO_ADDR\s0\fR, \fBwherelen\fR is expected
+to be the length of the path string (not including the terminating
+\&\s-1NUL,\s0 such as the result of a call to \fIstrlen()\fR).
+\&\fIRead on about the addresses in \*(L"\s-1RAW ADDRESSES\*(R"\s0 below\fR.
+.PP
+\&\fIBIO_ADDR_family()\fR returns the protocol family of the given
+\&\fB\s-1BIO_ADDR\s0\fR. The possible non-error results are one of the
+constants \s-1AF_INET, AF_INET6\s0 and \s-1AF_UNIX.\s0 It will also return \s-1AF_UNSPEC\s0 if the
+\&\s-1BIO_ADDR\s0 has not been initialised.
+.PP
+\&\fIBIO_ADDR_rawaddress()\fR will write the raw address of the given
+\&\fB\s-1BIO_ADDR\s0\fR in the area pointed at by \fBp\fR if \fBp\fR is non-NULL,
+and will set \fB*l\fR to be the amount of bytes the raw address
+takes up if \fBl\fR is non-NULL.
+A technique to only find out the size of the address is a call
+with \fBp\fR set to \fB\s-1NULL\s0\fR. The raw address will be in network byte
+order, most significant byte first.
+In case this is a \fB\s-1AF_UNIX\s0\fR \fB\s-1BIO_ADDR\s0\fR, \fBl\fR gets the length of the
+path string (not including the terminating \s-1NUL,\s0 such as the result of
+a call to \fIstrlen()\fR).
+\&\fIRead on about the addresses in \*(L"\s-1RAW ADDRESSES\*(R"\s0 below\fR.
+.PP
+\&\fIBIO_ADDR_rawport()\fR returns the raw port of the given \fB\s-1BIO_ADDR\s0\fR.
+The raw port will be in network byte order.
+.PP
+\&\fIBIO_ADDR_hostname_string()\fR returns a character string with the
+hostname of the given \fB\s-1BIO_ADDR\s0\fR. If \fBnumeric\fR is 1, the string
+will contain the numerical form of the address. This only works for
+\&\fB\s-1BIO_ADDR\s0\fR of the protocol families \s-1AF_INET\s0 and \s-1AF_INET6.\s0 The
+returned string has been allocated on the heap and must be freed
+with \fIOPENSSL_free()\fR.
+.PP
+\&\fIBIO_ADDR_service_string()\fR returns a character string with the
+service name of the port of the given \fB\s-1BIO_ADDR\s0\fR. If \fBnumeric\fR
+is 1, the string will contain the port number. This only works
+for \fB\s-1BIO_ADDR\s0\fR of the protocol families \s-1AF_INET\s0 and \s-1AF_INET6.\s0 The
+returned string has been allocated on the heap and must be freed
+with \fIOPENSSL_free()\fR.
+.PP
+\&\fIBIO_ADDR_path_string()\fR returns a character string with the path
+of the given \fB\s-1BIO_ADDR\s0\fR. This only works for \fB\s-1BIO_ADDR\s0\fR of the
+protocol family \s-1AF_UNIX.\s0 The returned string has been allocated
+on the heap and must be freed with \fIOPENSSL_free()\fR.
+.SH "RAW ADDRESSES"
+.IX Header "RAW ADDRESSES"
+Both \fIBIO_ADDR_rawmake()\fR and \fIBIO_ADDR_rawaddress()\fR take a pointer to a
+network byte order address of a specific site. Internally, those are
+treated as a pointer to \fBstruct in_addr\fR (for \fB\s-1AF_INET\s0\fR), \fBstruct
+in6_addr\fR (for \fB\s-1AF_INET6\s0\fR) or \fBchar *\fR (for \fB\s-1AF_UNIX\s0\fR), all
+depending on the protocol family the address is for.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+The string producing functions \fIBIO_ADDR_hostname_string()\fR,
+\&\fIBIO_ADDR_service_string()\fR and \fIBIO_ADDR_path_string()\fR will
+return \fB\s-1NULL\s0\fR on error and leave an error indication on the
+OpenSSL error stack.
+.PP
+All other functions described here return 0 or \fB\s-1NULL\s0\fR when the
+information they should return isn't available.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIBIO_connect\fR\|(3), \fIBIO_s_connect\fR\|(3)
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_ADDRINFO.3 b/secure/lib/libcrypto/man/BIO_ADDRINFO.3
new file mode 100644
index 000000000000..86b1ddc224c6
--- /dev/null
+++ b/secure/lib/libcrypto/man/BIO_ADDRINFO.3
@@ -0,0 +1,235 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "BIO_ADDRINFO 3"
+.TH BIO_ADDRINFO 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+BIO_lookup_type, BIO_ADDRINFO, BIO_ADDRINFO_next, BIO_ADDRINFO_free, BIO_ADDRINFO_family, BIO_ADDRINFO_socktype, BIO_ADDRINFO_protocol, BIO_ADDRINFO_address, BIO_lookup_ex, BIO_lookup \&\- BIO_ADDRINFO type and routines
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 2
+\& #include <sys/types.h>
+\& #include <openssl/bio.h>
+\&
+\& typedef union bio_addrinfo_st BIO_ADDRINFO;
+\&
+\& enum BIO_lookup_type {
+\& BIO_LOOKUP_CLIENT, BIO_LOOKUP_SERVER
+\& };
+\&
+\& int BIO_lookup_ex(const char *host, const char *service, int lookup_type,
+\& int family, int socktype, int protocol, BIO_ADDRINFO **res);
+\& int BIO_lookup(const char *node, const char *service,
+\& enum BIO_lookup_type lookup_type,
+\& int family, int socktype, BIO_ADDRINFO **res);
+\&
+\& const BIO_ADDRINFO *BIO_ADDRINFO_next(const BIO_ADDRINFO *bai);
+\& int BIO_ADDRINFO_family(const BIO_ADDRINFO *bai);
+\& int BIO_ADDRINFO_socktype(const BIO_ADDRINFO *bai);
+\& int BIO_ADDRINFO_protocol(const BIO_ADDRINFO *bai);
+\& const BIO_ADDR *BIO_ADDRINFO_address(const BIO_ADDRINFO *bai);
+\& void BIO_ADDRINFO_free(BIO_ADDRINFO *bai);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+The \fB\s-1BIO_ADDRINFO\s0\fR type is a wrapper for address information
+types provided on your platform.
+.PP
+\&\fB\s-1BIO_ADDRINFO\s0\fR normally forms a chain of several that can be
+picked at one by one.
+.PP
+\&\fIBIO_lookup_ex()\fR looks up a specified \fBhost\fR and \fBservice\fR, and
+uses \fBlookup_type\fR to determine what the default address should
+be if \fBhost\fR is \fB\s-1NULL\s0\fR. \fBfamily\fR, \fBsocktype\fR and \fBprotocol\fR are used to
+determine what protocol family, socket type and protocol should be used for
+the lookup. \fBfamily\fR can be any of \s-1AF_INET, AF_INET6, AF_UNIX\s0 and
+\&\s-1AF_UNSPEC.\s0 \fBsocktype\fR can be \s-1SOCK_STREAM, SOCK_DGRAM\s0 or 0. Specifying 0
+indicates that any type can be used. \fBprotocol\fR specifies a protocol such as
+\&\s-1IPPROTO_TCP, IPPROTO_UDP\s0 or \s-1IPPORTO_SCTP.\s0 If set to 0 than any protocol can be
+used. \fBres\fR points at a pointer to hold the start of a \fB\s-1BIO_ADDRINFO\s0\fR
+chain.
+.PP
+For the family \fB\s-1AF_UNIX\s0\fR, \fIBIO_lookup_ex()\fR will ignore the \fBservice\fR
+parameter and expects the \fBnode\fR parameter to hold the path to the
+socket file.
+.PP
+\&\fIBIO_lookup()\fR does the same as \fIBIO_lookup_ex()\fR but does not provide the ability
+to select based on the protocol (any protocol may be returned).
+.PP
+\&\fIBIO_ADDRINFO_family()\fR returns the family of the given
+\&\fB\s-1BIO_ADDRINFO\s0\fR. The result will be one of the constants
+\&\s-1AF_INET, AF_INET6\s0 and \s-1AF_UNIX.\s0
+.PP
+\&\fIBIO_ADDRINFO_socktype()\fR returns the socket type of the given
+\&\fB\s-1BIO_ADDRINFO\s0\fR. The result will be one of the constants
+\&\s-1SOCK_STREAM\s0 and \s-1SOCK_DGRAM.\s0
+.PP
+\&\fIBIO_ADDRINFO_protocol()\fR returns the protocol id of the given
+\&\fB\s-1BIO_ADDRINFO\s0\fR. The result will be one of the constants
+\&\s-1IPPROTO_TCP\s0 and \s-1IPPROTO_UDP.\s0
+.PP
+\&\fIBIO_ADDRINFO_address()\fR returns the underlying \fB\s-1BIO_ADDR\s0\fR
+of the given \fB\s-1BIO_ADDRINFO\s0\fR.
+.PP
+\&\fIBIO_ADDRINFO_next()\fR returns the next \fB\s-1BIO_ADDRINFO\s0\fR in the chain
+from the given one.
+.PP
+\&\fIBIO_ADDRINFO_free()\fR frees the chain of \fB\s-1BIO_ADDRINFO\s0\fR starting
+with the given one.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIBIO_lookup_ex()\fR and \fIBIO_lookup()\fR return 1 on success and 0 when an error
+occurred, and will leave an error indication on the OpenSSL error stack in that
+case.
+.PP
+All other functions described here return 0 or \fB\s-1NULL\s0\fR when the
+information they should return isn't available.
+.SH "NOTES"
+.IX Header "NOTES"
+The \fIBIO_lookup_ex()\fR implementation uses the platform provided \fIgetaddrinfo()\fR
+function. On Linux it is known that specifying 0 for the protocol will not
+return any \s-1SCTP\s0 based addresses when calling \fIgetaddrinfo()\fR. Therefore if an \s-1SCTP\s0
+address is required then the \fBprotocol\fR parameter to \fIBIO_lookup_ex()\fR should be
+explicitly set to \s-1IPPROTO_SCTP.\s0 The same may be true on other platforms.
+.SH "HISTORY"
+.IX Header "HISTORY"
+The \fIBIO_lookup_ex()\fR function was added in OpenSSL 1.1.1.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2016\-2017 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_connect.3 b/secure/lib/libcrypto/man/BIO_connect.3
new file mode 100644
index 000000000000..07ce276e19f6
--- /dev/null
+++ b/secure/lib/libcrypto/man/BIO_connect.3
@@ -0,0 +1,236 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "BIO_CONNECT 3"
+.TH BIO_CONNECT 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+BIO_socket, BIO_bind, BIO_connect, BIO_listen, BIO_accept_ex, BIO_closesocket \- BIO socket communication setup routines
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/bio.h>
+\&
+\& int BIO_socket(int domain, int socktype, int protocol, int options);
+\& int BIO_bind(int sock, const BIO_ADDR *addr, int options);
+\& int BIO_connect(int sock, const BIO_ADDR *addr, int options);
+\& int BIO_listen(int sock, const BIO_ADDR *addr, int options);
+\& int BIO_accept_ex(int accept_sock, BIO_ADDR *peer, int options);
+\& int BIO_closesocket(int sock);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fIBIO_socket()\fR creates a socket in the domain \fBdomain\fR, of type
+\&\fBsocktype\fR and \fBprotocol\fR. Socket \fBoptions\fR are currently unused,
+but is present for future use.
+.PP
+\&\fIBIO_bind()\fR binds the source address and service to a socket and
+may be useful before calling \fIBIO_connect()\fR. The options may include
+\&\fB\s-1BIO_SOCK_REUSADDR\s0\fR, which is described in \*(L"\s-1FLAGS\*(R"\s0 below.
+.PP
+\&\fIBIO_connect()\fR connects \fBsock\fR to the address and service given by
+\&\fBaddr\fR. Connection \fBoptions\fR may be zero or any combination of
+\&\fB\s-1BIO_SOCK_KEEPALIVE\s0\fR, \fB\s-1BIO_SOCK_NONBLOCK\s0\fR and \fB\s-1BIO_SOCK_NODELAY\s0\fR.
+The flags are described in \*(L"\s-1FLAGS\*(R"\s0 below.
+.PP
+\&\fIBIO_listen()\fR has \fBsock\fR start listening on the address and service
+given by \fBaddr\fR. Connection \fBoptions\fR may be zero or any
+combination of \fB\s-1BIO_SOCK_KEEPALIVE\s0\fR, \fB\s-1BIO_SOCK_NONBLOCK\s0\fR,
+\&\fB\s-1BIO_SOCK_NODELAY\s0\fR, \fB\s-1BIO_SOCK_REUSEADDR\s0\fR and \fB\s-1BIO_SOCK_V6_ONLY\s0\fR.
+The flags are described in \*(L"\s-1FLAGS\*(R"\s0 below.
+.PP
+\&\fIBIO_accept_ex()\fR waits for an incoming connections on the given
+socket \fBaccept_sock\fR. When it gets a connection, the address and
+port of the peer gets stored in \fBpeer\fR if that one is non-NULL.
+Accept \fBoptions\fR may be zero or \fB\s-1BIO_SOCK_NONBLOCK\s0\fR, and is applied
+on the accepted socket. The flags are described in \*(L"\s-1FLAGS\*(R"\s0 below.
+.PP
+\&\fIBIO_closesocket()\fR closes \fBsock\fR.
+.SH "FLAGS"
+.IX Header "FLAGS"
+.IP "\s-1BIO_SOCK_KEEPALIVE\s0" 4
+.IX Item "BIO_SOCK_KEEPALIVE"
+Enables regular sending of keep-alive messages.
+.IP "\s-1BIO_SOCK_NONBLOCK\s0" 4
+.IX Item "BIO_SOCK_NONBLOCK"
+Sets the socket to non-blocking mode.
+.IP "\s-1BIO_SOCK_NODELAY\s0" 4
+.IX Item "BIO_SOCK_NODELAY"
+Corresponds to \fB\s-1TCP_NODELAY\s0\fR, and disables the Nagle algorithm. With
+this set, any data will be sent as soon as possible instead of being
+buffered until there's enough for the socket to send out in one go.
+.IP "\s-1BIO_SOCK_REUSEADDR\s0" 4
+.IX Item "BIO_SOCK_REUSEADDR"
+Try to reuse the address and port combination for a recently closed
+port.
+.IP "\s-1BIO_SOCK_V6_ONLY\s0" 4
+.IX Item "BIO_SOCK_V6_ONLY"
+When creating an IPv6 socket, make it only listen for IPv6 addresses
+and not IPv4 addresses mapped to IPv6.
+.PP
+These flags are bit flags, so they are to be combined with the
+\&\f(CW\*(C`|\*(C'\fR operator, for example:
+.PP
+.Vb 1
+\& BIO_connect(sock, addr, BIO_SOCK_KEEPALIVE | BIO_SOCK_NONBLOCK);
+.Ve
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIBIO_socket()\fR returns the socket number on success or \fB\s-1INVALID_SOCKET\s0\fR
+(\-1) on error. When an error has occurred, the OpenSSL error stack
+will hold the error data and errno has the system error.
+.PP
+\&\fIBIO_bind()\fR, \fIBIO_connect()\fR and \fIBIO_listen()\fR return 1 on success or 0 on error.
+When an error has occurred, the OpenSSL error stack will hold the error
+data and errno has the system error.
+.PP
+\&\fIBIO_accept_ex()\fR returns the accepted socket on success or
+\&\fB\s-1INVALID_SOCKET\s0\fR (\-1) on error. When an error has occurred, the
+OpenSSL error stack will hold the error data and errno has the system
+error.
+.SH "HISTORY"
+.IX Header "HISTORY"
+\&\fIBIO_gethostname()\fR, \fIBIO_get_port()\fR, \fIBIO_get_host_ip()\fR,
+\&\fIBIO_get_accept_socket()\fR and \fIBIO_accept()\fR were deprecated in
+OpenSSL 1.1.0. Use the functions described above instead.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\s-1\fIBIO_ADDR\s0\fR\|(3)
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2016\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_ctrl.3 b/secure/lib/libcrypto/man/BIO_ctrl.3
index 6c502a16120f..6ecb3024c4d4 100644
--- a/secure/lib/libcrypto/man/BIO_ctrl.3
+++ b/secure/lib/libcrypto/man/BIO_ctrl.3
@@ -128,43 +128,40 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_ctrl 3"
-.TH BIO_ctrl 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_CTRL 3"
+.TH BIO_CTRL 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_ctrl, BIO_callback_ctrl, BIO_ptr_ctrl, BIO_int_ctrl, BIO_reset,
-BIO_seek, BIO_tell, BIO_flush, BIO_eof, BIO_set_close, BIO_get_close,
-BIO_pending, BIO_wpending, BIO_ctrl_pending, BIO_ctrl_wpending,
-BIO_get_info_callback, BIO_set_info_callback \- BIO control operations
+BIO_ctrl, BIO_callback_ctrl, BIO_ptr_ctrl, BIO_int_ctrl, BIO_reset, BIO_seek, BIO_tell, BIO_flush, BIO_eof, BIO_set_close, BIO_get_close, BIO_pending, BIO_wpending, BIO_ctrl_pending, BIO_ctrl_wpending, BIO_get_info_callback, BIO_set_info_callback, BIO_info_cb \&\- BIO control operations
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& long BIO_ctrl(BIO *bp,int cmd,long larg,void *parg);
-\& long BIO_callback_ctrl(BIO *b, int cmd, void (*fp)(struct bio_st *, int, const char *, int, long, long));
-\& char * BIO_ptr_ctrl(BIO *bp,int cmd,long larg);
-\& long BIO_int_ctrl(BIO *bp,int cmd,long larg,int iarg);
+\& typedef int BIO_info_cb(BIO *b, int state, int res);
+\&
+\& long BIO_ctrl(BIO *bp, int cmd, long larg, void *parg);
+\& long BIO_callback_ctrl(BIO *b, int cmd, BIO_info_cb *cb);
+\& char *BIO_ptr_ctrl(BIO *bp, int cmd, long larg);
+\& long BIO_int_ctrl(BIO *bp, int cmd, long larg, int iarg);
\&
\& int BIO_reset(BIO *b);
\& int BIO_seek(BIO *b, int ofs);
\& int BIO_tell(BIO *b);
\& int BIO_flush(BIO *b);
\& int BIO_eof(BIO *b);
-\& int BIO_set_close(BIO *b,long flag);
+\& int BIO_set_close(BIO *b, long flag);
\& int BIO_get_close(BIO *b);
\& int BIO_pending(BIO *b);
\& int BIO_wpending(BIO *b);
\& size_t BIO_ctrl_pending(BIO *b);
\& size_t BIO_ctrl_wpending(BIO *b);
\&
-\& int BIO_get_info_callback(BIO *b,bio_info_cb **cbp);
-\& int BIO_set_info_callback(BIO *b,bio_info_cb *cb);
-\&
-\& typedef void bio_info_cb(BIO *b, int oper, const char *ptr, int arg1, long arg2, long arg3);
+\& int BIO_get_info_callback(BIO *b, BIO_info_cb **cbp);
+\& int BIO_set_info_callback(BIO *b, BIO_info_cb *cb);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -225,7 +222,7 @@ return the amount of pending data.
.SH "NOTES"
.IX Header "NOTES"
\&\fIBIO_flush()\fR, because it can write data may return 0 or \-1 indicating
-that the call should be retried later in a similar manner to \fIBIO_write()\fR.
+that the call should be retried later in a similar manner to \fIBIO_write_ex()\fR.
The \fIBIO_should_retry()\fR call should be used and appropriate action taken
is the call fails.
.PP
@@ -252,6 +249,11 @@ Some of the return values are ambiguous and care should be taken. In
particular a return value of 0 can be returned if an operation is not
supported, if an error occurred, if \s-1EOF\s0 has not been reached and in
the case of \fIBIO_seek()\fR on a file \s-1BIO\s0 for a successful operation.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_f_base64.3 b/secure/lib/libcrypto/man/BIO_f_base64.3
index 730aaa3fb524..450f1e15b2a7 100644
--- a/secure/lib/libcrypto/man/BIO_f_base64.3
+++ b/secure/lib/libcrypto/man/BIO_f_base64.3
@@ -128,8 +128,8 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_f_base64 3"
-.TH BIO_f_base64 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_F_BASE64 3"
+.TH BIO_F_BASE64 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -142,7 +142,7 @@ BIO_f_base64 \- base64 BIO filter
\& #include <openssl/bio.h>
\& #include <openssl/evp.h>
\&
-\& BIO_METHOD * BIO_f_base64(void);
+\& const BIO_METHOD *BIO_f_base64(void);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -196,8 +196,8 @@ data to standard output:
\& bio = BIO_new_fp(stdin, BIO_NOCLOSE);
\& bio_out = BIO_new_fp(stdout, BIO_NOCLOSE);
\& BIO_push(b64, bio);
-\& while((inlen = BIO_read(b64, inbuf, 512)) > 0)
-\& BIO_write(bio_out, inbuf, inlen);
+\& while ((inlen = BIO_read(b64, inbuf, 512)) > 0)
+\& BIO_write(bio_out, inbuf, inlen);
\&
\& BIO_flush(bio_out);
\& BIO_free_all(b64);
@@ -209,6 +209,11 @@ data following the base64 encoded block to be misinterpreted.
.PP
There should be some way of specifying a test that the \s-1BIO\s0 can perform
to reliably determine \s-1EOF\s0 (for example a \s-1MIME\s0 boundary).
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_f_buffer.3 b/secure/lib/libcrypto/man/BIO_f_buffer.3
index bac5af9b3ba2..ecb04e40adf0 100644
--- a/secure/lib/libcrypto/man/BIO_f_buffer.3
+++ b/secure/lib/libcrypto/man/BIO_f_buffer.3
@@ -128,26 +128,26 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_f_buffer 3"
-.TH BIO_f_buffer 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_F_BUFFER 3"
+.TH BIO_F_BUFFER 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_f_buffer \- buffering BIO
+BIO_get_buffer_num_lines, BIO_set_read_buffer_size, BIO_set_write_buffer_size, BIO_set_buffer_size, BIO_set_buffer_read_data, BIO_f_buffer \&\- buffering BIO
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD * BIO_f_buffer(void);
+\& const BIO_METHOD *BIO_f_buffer(void);
\&
-\& #define BIO_get_buffer_num_lines(b) BIO_ctrl(b,BIO_C_GET_BUFF_NUM_LINES,0,NULL)
-\& #define BIO_set_read_buffer_size(b,size) BIO_int_ctrl(b,BIO_C_SET_BUFF_SIZE,size,0)
-\& #define BIO_set_write_buffer_size(b,size) BIO_int_ctrl(b,BIO_C_SET_BUFF_SIZE,size,1)
-\& #define BIO_set_buffer_size(b,size) BIO_ctrl(b,BIO_C_SET_BUFF_SIZE,size,NULL)
-\& #define BIO_set_buffer_read_data(b,buf,num) BIO_ctrl(b,BIO_C_SET_BUFF_READ_DATA,num,buf)
+\& long BIO_get_buffer_num_lines(BIO *b);
+\& long BIO_set_read_buffer_size(BIO *b, long size);
+\& long BIO_set_write_buffer_size(BIO *b, long size);
+\& long BIO_set_buffer_size(BIO *b, long size);
+\& long BIO_set_buffer_read_data(BIO *b, void *buf, long num);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -173,7 +173,9 @@ bytes of \fBbuf\fR. If \fBnum\fR is larger than the current buffer size the buff
is expanded.
.SH "NOTES"
.IX Header "NOTES"
-Buffering BIOs implement \fIBIO_gets()\fR by using \fIBIO_read()\fR operations on the
+These functions, other than \fIBIO_f_buffer()\fR, are implemented as macros.
+.PP
+Buffering BIOs implement \fIBIO_gets()\fR by using \fIBIO_read_ex()\fR operations on the
next \s-1BIO\s0 in the chain. By prepending a buffering \s-1BIO\s0 to a chain it is therefore
possible to provide \fIBIO_gets()\fR functionality if the following BIOs do not
support it (for example \s-1SSL\s0 BIOs).
@@ -196,9 +198,16 @@ return 1 if the buffer was successfully resized or 0 for failure.
there was an error.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
-\&\s-1\fIBIO\s0\fR\|(3),
+\&\fIbio\fR\|(7),
\&\fIBIO_reset\fR\|(3),
\&\fIBIO_flush\fR\|(3),
\&\fIBIO_pop\fR\|(3),
-\&\fIBIO_ctrl\fR\|(3),
-\&\fIBIO_int_ctrl\fR\|(3)
+\&\fIBIO_ctrl\fR\|(3).
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_f_cipher.3 b/secure/lib/libcrypto/man/BIO_f_cipher.3
index b210f5192471..858b3280f2fd 100644
--- a/secure/lib/libcrypto/man/BIO_f_cipher.3
+++ b/secure/lib/libcrypto/man/BIO_f_cipher.3
@@ -128,8 +128,8 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_f_cipher 3"
-.TH BIO_f_cipher 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_F_CIPHER 3"
+.TH BIO_F_CIPHER 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -142,9 +142,9 @@ BIO_f_cipher, BIO_set_cipher, BIO_get_cipher_status, BIO_get_cipher_ctx \- ciphe
\& #include <openssl/bio.h>
\& #include <openssl/evp.h>
\&
-\& BIO_METHOD * BIO_f_cipher(void);
-\& void BIO_set_cipher(BIO *b,const EVP_CIPHER *cipher,
-\& unsigned char *key, unsigned char *iv, int enc);
+\& const BIO_METHOD *BIO_f_cipher(void);
+\& void BIO_set_cipher(BIO *b, const EVP_CIPHER *cipher,
+\& unsigned char *key, unsigned char *iv, int enc);
\& int BIO_get_cipher_status(BIO *b)
\& int BIO_get_cipher_ctx(BIO *b, EVP_CIPHER_CTX **pctx)
.Ve
@@ -180,7 +180,7 @@ When encrypting \fIBIO_flush()\fR \fBmust\fR be called to flush the final block
through the \s-1BIO.\s0 If it is not then the final block will fail a subsequent
decrypt.
.PP
-When decrypting an error on the final block is signalled by a zero
+When decrypting an error on the final block is signaled by a zero
return value from the read operation. A successful decrypt followed
by \s-1EOF\s0 will also return zero for the final read. \fIBIO_get_cipher_status()\fR
should be called to determine if the decrypt was successful.
@@ -197,9 +197,11 @@ be achieved by preceding the cipher \s-1BIO\s0 with a buffering \s-1BIO.\s0
for failure.
.PP
\&\fIBIO_get_cipher_ctx()\fR currently always returns 1.
-.SH "EXAMPLES"
-.IX Header "EXAMPLES"
-\&\s-1TBA\s0
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_f_md.3 b/secure/lib/libcrypto/man/BIO_f_md.3
index 03440d513956..73f5fccb51e4 100644
--- a/secure/lib/libcrypto/man/BIO_f_md.3
+++ b/secure/lib/libcrypto/man/BIO_f_md.3
@@ -128,8 +128,8 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_f_md 3"
-.TH BIO_f_md 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_F_MD 3"
+.TH BIO_F_MD 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -142,10 +142,10 @@ BIO_f_md, BIO_set_md, BIO_get_md, BIO_get_md_ctx \- message digest BIO filter
\& #include <openssl/bio.h>
\& #include <openssl/evp.h>
\&
-\& BIO_METHOD * BIO_f_md(void);
-\& int BIO_set_md(BIO *b,EVP_MD *md);
-\& int BIO_get_md(BIO *b,EVP_MD **mdp);
-\& int BIO_get_md_ctx(BIO *b,EVP_MD_CTX **mdcp);
+\& const BIO_METHOD *BIO_f_md(void);
+\& int BIO_set_md(BIO *b, EVP_MD *md);
+\& int BIO_get_md(BIO *b, EVP_MD **mdp);
+\& int BIO_get_md_ctx(BIO *b, EVP_MD_CTX **mdcp);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -154,8 +154,8 @@ BIO_f_md, BIO_set_md, BIO_get_md, BIO_get_md_ctx \- message digest BIO filter
for the digest routines \fIEVP_DigestInit()\fR, \fIEVP_DigestUpdate()\fR
and \fIEVP_DigestFinal()\fR.
.PP
-Any data written or read through a digest \s-1BIO\s0 using \fIBIO_read()\fR and
-\&\fIBIO_write()\fR is digested.
+Any data written or read through a digest \s-1BIO\s0 using \fIBIO_read_ex()\fR and
+\&\fIBIO_write_ex()\fR is digested.
.PP
\&\fIBIO_gets()\fR, if its \fBsize\fR parameter is large enough finishes the
digest calculation and returns the digest value. \fIBIO_puts()\fR is
@@ -190,10 +190,8 @@ If an application needs to call \fIBIO_gets()\fR or \fIBIO_puts()\fR through
a chain containing digest BIOs then this can be done by prepending
a buffering \s-1BIO.\s0
.PP
-Before OpenSSL 1.0.0 the call to \fIBIO_get_md_ctx()\fR would only work if the \s-1BIO\s0
-had been initialized for example by calling \fIBIO_set_md()\fR ). In OpenSSL
-1.0.0 and later the context is always returned and the \s-1BIO\s0 is state is set
-to initialized. This allows applications to initialize the context externally
+Calling \fIBIO_get_md_ctx()\fR will return the context and initialize the \s-1BIO\s0
+state. This allows applications to initialize the context externally
if the standard calls such as \fIBIO_set_md()\fR are not sufficiently flexible.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
@@ -207,13 +205,15 @@ The following example creates a \s-1BIO\s0 chain containing an \s-1SHA1\s0 and \
digest \s-1BIO\s0 and passes the string \*(L"Hello World\*(R" through it. Error
checking has been omitted for clarity.
.PP
-.Vb 10
+.Vb 2
\& BIO *bio, *mdtmp;
\& char message[] = "Hello World";
+\&
\& bio = BIO_new(BIO_s_null());
\& mdtmp = BIO_new(BIO_f_md());
\& BIO_set_md(mdtmp, EVP_sha1());
-\& /* For BIO_push() we want to append the sink BIO and keep a note of
+\& /*
+\& * For BIO_push() we want to append the sink BIO and keep a note of
\& * the start of the chain.
\& */
\& bio = BIO_push(mdtmp, bio);
@@ -226,10 +226,11 @@ checking has been omitted for clarity.
.PP
The next example digests data by reading through a chain instead:
.PP
-.Vb 10
+.Vb 3
\& BIO *bio, *mdtmp;
\& char buf[1024];
\& int rdlen;
+\&
\& bio = BIO_new_file(file, "rb");
\& mdtmp = BIO_new(BIO_f_md());
\& BIO_set_md(mdtmp, EVP_sha1());
@@ -238,31 +239,34 @@ The next example digests data by reading through a chain instead:
\& BIO_set_md(mdtmp, EVP_md5());
\& bio = BIO_push(mdtmp, bio);
\& do {
-\& rdlen = BIO_read(bio, buf, sizeof(buf));
-\& /* Might want to do something with the data here */
-\& } while(rdlen > 0);
+\& rdlen = BIO_read(bio, buf, sizeof(buf));
+\& /* Might want to do something with the data here */
+\& } while (rdlen > 0);
.Ve
.PP
This next example retrieves the message digests from a \s-1BIO\s0 chain and
outputs them. This could be used with the examples above.
.PP
-.Vb 10
+.Vb 4
\& BIO *mdtmp;
\& unsigned char mdbuf[EVP_MAX_MD_SIZE];
\& int mdlen;
\& int i;
+\&
\& mdtmp = bio; /* Assume bio has previously been set up */
\& do {
-\& EVP_MD *md;
-\& mdtmp = BIO_find_type(mdtmp, BIO_TYPE_MD);
-\& if(!mdtmp) break;
-\& BIO_get_md(mdtmp, &md);
-\& printf("%s digest", OBJ_nid2sn(EVP_MD_type(md)));
-\& mdlen = BIO_gets(mdtmp, mdbuf, EVP_MAX_MD_SIZE);
-\& for(i = 0; i < mdlen; i++) printf(":%02X", mdbuf[i]);
-\& printf("\en");
-\& mdtmp = BIO_next(mdtmp);
-\& } while(mdtmp);
+\& EVP_MD *md;
+\&
+\& mdtmp = BIO_find_type(mdtmp, BIO_TYPE_MD);
+\& if (!mdtmp)
+\& break;
+\& BIO_get_md(mdtmp, &md);
+\& printf("%s digest", OBJ_nid2sn(EVP_MD_type(md)));
+\& mdlen = BIO_gets(mdtmp, mdbuf, EVP_MAX_MD_SIZE);
+\& for (i = 0; i < mdlen; i++) printf(":%02X", mdbuf[i]);
+\& printf("\en");
+\& mdtmp = BIO_next(mdtmp);
+\& } while (mdtmp);
\&
\& BIO_free_all(bio);
.Ve
@@ -273,6 +277,15 @@ The lack of support for \fIBIO_puts()\fR and the non standard behaviour of
and \fIBIO_puts()\fR should be passed to the next \s-1BIO\s0 in the chain and digest
the data passed through and that digests should be retrieved using a
separate \fIBIO_ctrl()\fR call.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "HISTORY"
+.IX Header "HISTORY"
+Before OpenSSL 1.0.0., the call to \fIBIO_get_md_ctx()\fR would only work if the
+\&\s-1BIO\s0 was initialized first.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_f_null.3 b/secure/lib/libcrypto/man/BIO_f_null.3
index 45c7d004d54c..912c7bcb57cd 100644
--- a/secure/lib/libcrypto/man/BIO_f_null.3
+++ b/secure/lib/libcrypto/man/BIO_f_null.3
@@ -128,8 +128,8 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_f_null 3"
-.TH BIO_f_null 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_F_NULL 3"
+.TH BIO_F_NULL 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -141,7 +141,7 @@ BIO_f_null \- null filter
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD * BIO_f_null(void);
+\& const BIO_METHOD *BIO_f_null(void);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -157,6 +157,11 @@ As may be apparent a null filter \s-1BIO\s0 is not particularly useful.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
\&\fIBIO_f_null()\fR returns the null filter \s-1BIO\s0 method.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_f_ssl.3 b/secure/lib/libcrypto/man/BIO_f_ssl.3
index bc8580b6cfb4..0713da633b63 100644
--- a/secure/lib/libcrypto/man/BIO_f_ssl.3
+++ b/secure/lib/libcrypto/man/BIO_f_ssl.3
@@ -128,42 +128,36 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_f_ssl 3"
-.TH BIO_f_ssl 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_F_SSL 3"
+.TH BIO_F_SSL 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_f_ssl, BIO_set_ssl, BIO_get_ssl, BIO_set_ssl_mode, BIO_set_ssl_renegotiate_bytes,
-BIO_get_num_renegotiates, BIO_set_ssl_renegotiate_timeout, BIO_new_ssl,
-BIO_new_ssl_connect, BIO_new_buffer_ssl_connect, BIO_ssl_copy_session_id,
-BIO_ssl_shutdown \- SSL BIO
+BIO_do_handshake, BIO_f_ssl, BIO_set_ssl, BIO_get_ssl, BIO_set_ssl_mode, BIO_set_ssl_renegotiate_bytes, BIO_get_num_renegotiates, BIO_set_ssl_renegotiate_timeout, BIO_new_ssl, BIO_new_ssl_connect, BIO_new_buffer_ssl_connect, BIO_ssl_copy_session_id, BIO_ssl_shutdown \- SSL BIO
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 2
\& #include <openssl/bio.h>
\& #include <openssl/ssl.h>
\&
-\& BIO_METHOD *BIO_f_ssl(void);
+\& const BIO_METHOD *BIO_f_ssl(void);
\&
-\& #define BIO_set_ssl(b,ssl,c) BIO_ctrl(b,BIO_C_SET_SSL,c,(char *)ssl)
-\& #define BIO_get_ssl(b,sslp) BIO_ctrl(b,BIO_C_GET_SSL,0,(char *)sslp)
-\& #define BIO_set_ssl_mode(b,client) BIO_ctrl(b,BIO_C_SSL_MODE,client,NULL)
-\& #define BIO_set_ssl_renegotiate_bytes(b,num) \e
-\& BIO_ctrl(b,BIO_C_SET_SSL_RENEGOTIATE_BYTES,num,NULL);
-\& #define BIO_set_ssl_renegotiate_timeout(b,seconds) \e
-\& BIO_ctrl(b,BIO_C_SET_SSL_RENEGOTIATE_TIMEOUT,seconds,NULL);
-\& #define BIO_get_num_renegotiates(b) \e
-\& BIO_ctrl(b,BIO_C_SET_SSL_NUM_RENEGOTIATES,0,NULL);
+\& long BIO_set_ssl(BIO *b, SSL *ssl, long c);
+\& long BIO_get_ssl(BIO *b, SSL **sslp);
+\& long BIO_set_ssl_mode(BIO *b, long client);
+\& long BIO_set_ssl_renegotiate_bytes(BIO *b, long num);
+\& long BIO_set_ssl_renegotiate_timeout(BIO *b, long seconds);
+\& long BIO_get_num_renegotiates(BIO *b);
\&
-\& BIO *BIO_new_ssl(SSL_CTX *ctx,int client);
+\& BIO *BIO_new_ssl(SSL_CTX *ctx, int client);
\& BIO *BIO_new_ssl_connect(SSL_CTX *ctx);
\& BIO *BIO_new_buffer_ssl_connect(SSL_CTX *ctx);
-\& int BIO_ssl_copy_session_id(BIO *to,BIO *from);
+\& int BIO_ssl_copy_session_id(BIO *to, BIO *from);
\& void BIO_ssl_shutdown(BIO *bio);
\&
-\& #define BIO_do_handshake(b) BIO_ctrl(b,BIO_C_DO_STATE_MACHINE,0,NULL)
+\& long BIO_do_handshake(BIO *b);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -196,7 +190,7 @@ manipulated using the standard \s-1SSL\s0 library functions.
is 1 client mode is set. If \fBclient\fR is 0 server mode is set.
.PP
\&\fIBIO_set_ssl_renegotiate_bytes()\fR sets the renegotiate byte count
-to \fBnum\fR. When set after every \fBnum\fR bytes of I/O (read and write)
+to \fBnum\fR. When set after every \fBnum\fR bytes of I/O (read and write)
the \s-1SSL\s0 session is automatically renegotiated. \fBnum\fR must be at
least 512 bytes.
.PP
@@ -217,7 +211,7 @@ client mode if \fBclient\fR is non zero.
of a buffering \s-1BIO,\s0 an \s-1SSL BIO\s0 (using \fBctx\fR) and a connect
\&\s-1BIO.\s0
.PP
-\&\fIBIO_ssl_copy_session_id()\fR copies an \s-1SSL\s0 session id between
+\&\fIBIO_ssl_copy_session_id()\fR copies an \s-1SSL\s0 session id between
\&\s-1BIO\s0 chains \fBfrom\fR and \fBto\fR. It does this by locating the
\&\s-1SSL\s0 BIOs in each chain and calling \fISSL_copy_session_id()\fR on
the internal \s-1SSL\s0 pointer.
@@ -239,10 +233,10 @@ already been established this call has no effect.
\&\s-1SSL\s0 BIOs are exceptional in that if the underlying transport
is non blocking they can still request a retry in exceptional
circumstances. Specifically this will happen if a session
-renegotiation takes place during a \fIBIO_read()\fR operation, one
+renegotiation takes place during a \fIBIO_read_ex()\fR operation, one
case where this happens is when step up occurs.
.PP
-In OpenSSL 0.9.6 and later the \s-1SSL\s0 flag \s-1SSL_AUTO_RETRY\s0 can be
+The \s-1SSL\s0 flag \s-1SSL_AUTO_RETRY\s0 can be
set to disable this behaviour. That is when this flag is set
an \s-1SSL BIO\s0 using a blocking transport will never request a
retry.
@@ -255,9 +249,10 @@ to locate the connect \s-1BIO\s0 first.
Applications do not have to call \fIBIO_do_handshake()\fR but may wish
to do so to separate the handshake process from other I/O
processing.
-.SH "RETURN VALUES"
-.IX Header "RETURN VALUES"
-\&\s-1TBA\s0
+.PP
+\&\fIBIO_set_ssl()\fR, \fIBIO_get_ssl()\fR, \fIBIO_set_ssl_mode()\fR,
+\&\fIBIO_set_ssl_renegotiate_bytes()\fR, \fIBIO_set_ssl_renegotiate_timeout()\fR,
+\&\fIBIO_get_num_renegotiates()\fR, and \fIBIO_do_handshake()\fR are implemented as macros.
.SH "EXAMPLE"
.IX Header "EXAMPLE"
This \s-1SSL/TLS\s0 client example, attempts to retrieve a page from an
@@ -271,57 +266,48 @@ unencrypted example in \fIBIO_s_connect\fR\|(3).
\& SSL_CTX *ctx;
\& SSL *ssl;
\&
-\& ERR_load_crypto_strings();
-\& ERR_load_SSL_strings();
-\& OpenSSL_add_all_algorithms();
+\& /* XXX Seed the PRNG if needed. */
\&
-\& /* We would seed the PRNG here if the platform didn\*(Aqt
-\& * do it automatically
-\& */
+\& ctx = SSL_CTX_new(TLS_client_method());
\&
-\& ctx = SSL_CTX_new(SSLv23_client_method());
-\&
-\& /* We\*(Aqd normally set some stuff like the verify paths and
-\& * mode here because as things stand this will connect to
-\& * any server whose certificate is signed by any CA.
-\& */
+\& /* XXX Set verify paths and mode here. */
\&
\& sbio = BIO_new_ssl_connect(ctx);
-\&
\& BIO_get_ssl(sbio, &ssl);
-\&
-\& if(!ssl) {
-\& fprintf(stderr, "Can\*(Aqt locate SSL pointer\en");
-\& /* whatever ... */
+\& if (ssl == NULL) {
+\& fprintf(stderr, "Can\*(Aqt locate SSL pointer\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
\&
\& /* Don\*(Aqt want any retries */
\& SSL_set_mode(ssl, SSL_MODE_AUTO_RETRY);
\&
-\& /* We might want to do other things with ssl here */
+\& /* XXX We might want to do other things with ssl here */
\&
-\& BIO_set_conn_hostname(sbio, "localhost:https");
+\& /* An empty host part means the loopback address */
+\& BIO_set_conn_hostname(sbio, ":https");
\&
\& out = BIO_new_fp(stdout, BIO_NOCLOSE);
-\& if(BIO_do_connect(sbio) <= 0) {
-\& fprintf(stderr, "Error connecting to server\en");
-\& ERR_print_errors_fp(stderr);
-\& /* whatever ... */
+\& if (BIO_do_connect(sbio) <= 0) {
+\& fprintf(stderr, "Error connecting to server\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
-\&
-\& if(BIO_do_handshake(sbio) <= 0) {
-\& fprintf(stderr, "Error establishing SSL connection\en");
-\& ERR_print_errors_fp(stderr);
-\& /* whatever ... */
+\& if (BIO_do_handshake(sbio) <= 0) {
+\& fprintf(stderr, "Error establishing SSL connection\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
\&
-\& /* Could examine ssl here to get connection info */
+\& /* XXX Could examine ssl here to get connection info */
\&
\& BIO_puts(sbio, "GET / HTTP/1.0\en\en");
-\& for(;;) {
-\& len = BIO_read(sbio, tmpbuf, 1024);
-\& if(len <= 0) break;
-\& BIO_write(out, tmpbuf, len);
+\& for (;;) {
+\& len = BIO_read(sbio, tmpbuf, 1024);
+\& if (len <= 0)
+\& break;
+\& BIO_write(out, tmpbuf, len);
\& }
\& BIO_free_all(sbio);
\& BIO_free(out);
@@ -339,116 +325,107 @@ a client and also echoes the request to standard output.
\& SSL_CTX *ctx;
\& SSL *ssl;
\&
-\& ERR_load_crypto_strings();
-\& ERR_load_SSL_strings();
-\& OpenSSL_add_all_algorithms();
+\& /* XXX Seed the PRNG if needed. */
\&
-\& /* Might seed PRNG here */
-\&
-\& ctx = SSL_CTX_new(SSLv23_server_method());
-\&
-\& if (!SSL_CTX_use_certificate_file(ctx,"server.pem",SSL_FILETYPE_PEM)
-\& || !SSL_CTX_use_PrivateKey_file(ctx,"server.pem",SSL_FILETYPE_PEM)
-\& || !SSL_CTX_check_private_key(ctx)) {
-\&
-\& fprintf(stderr, "Error setting up SSL_CTX\en");
-\& ERR_print_errors_fp(stderr);
-\& return 0;
+\& ctx = SSL_CTX_new(TLS_server_method());
+\& if (!SSL_CTX_use_certificate_file(ctx, "server.pem", SSL_FILETYPE_PEM)
+\& || !SSL_CTX_use_PrivateKey_file(ctx, "server.pem", SSL_FILETYPE_PEM)
+\& || !SSL_CTX_check_private_key(ctx)) {
+\& fprintf(stderr, "Error setting up SSL_CTX\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
\&
-\& /* Might do other things here like setting verify locations and
-\& * DH and/or RSA temporary key callbacks
-\& */
+\& /* XXX Other things like set verify locations, EDH temp callbacks. */
\&
\& /* New SSL BIO setup as server */
-\& sbio=BIO_new_ssl(ctx,0);
-\&
+\& sbio = BIO_new_ssl(ctx, 0);
\& BIO_get_ssl(sbio, &ssl);
-\&
-\& if(!ssl) {
-\& fprintf(stderr, "Can\*(Aqt locate SSL pointer\en");
-\& /* whatever ... */
+\& if (ssl == NULL) {
+\& fprintf(stderr, "Can\*(Aqt locate SSL pointer\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
\&
-\& /* Don\*(Aqt want any retries */
\& SSL_set_mode(ssl, SSL_MODE_AUTO_RETRY);
-\&
-\& /* Create the buffering BIO */
-\&
\& bbio = BIO_new(BIO_f_buffer());
-\&
-\& /* Add to chain */
\& sbio = BIO_push(bbio, sbio);
+\& acpt = BIO_new_accept("4433");
\&
-\& acpt=BIO_new_accept("4433");
-\&
-\& /* By doing this when a new connection is established
+\& /*
+\& * By doing this when a new connection is established
\& * we automatically have sbio inserted into it. The
\& * BIO chain is now \*(Aqswallowed\*(Aq by the accept BIO and
-\& * will be freed when the accept BIO is freed.
+\& * will be freed when the accept BIO is freed.
\& */
-\&
-\& BIO_set_accept_bios(acpt,sbio);
-\&
+\& BIO_set_accept_bios(acpt, sbio);
\& out = BIO_new_fp(stdout, BIO_NOCLOSE);
\&
\& /* Setup accept BIO */
-\& if(BIO_do_accept(acpt) <= 0) {
-\& fprintf(stderr, "Error setting up accept BIO\en");
-\& ERR_print_errors_fp(stderr);
-\& return 0;
-\& }
-\&
-\& /* Now wait for incoming connection */
-\& if(BIO_do_accept(acpt) <= 0) {
-\& fprintf(stderr, "Error in connection\en");
-\& ERR_print_errors_fp(stderr);
-\& return 0;
+\& if (BIO_do_accept(acpt) <= 0) {
+\& fprintf(stderr, "Error setting up accept BIO\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
\&
-\& /* We only want one connection so remove and free
-\& * accept BIO
-\& */
-\&
+\& /* We only want one connection so remove and free accept BIO */
\& sbio = BIO_pop(acpt);
-\&
\& BIO_free_all(acpt);
\&
-\& if(BIO_do_handshake(sbio) <= 0) {
-\& fprintf(stderr, "Error in SSL handshake\en");
-\& ERR_print_errors_fp(stderr);
-\& return 0;
+\& if (BIO_do_handshake(sbio) <= 0) {
+\& fprintf(stderr, "Error in SSL handshake\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
\&
\& BIO_puts(sbio, "HTTP/1.0 200 OK\er\enContent\-type: text/plain\er\en\er\en");
\& BIO_puts(sbio, "\er\enConnection Established\er\enRequest headers:\er\en");
\& BIO_puts(sbio, "\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\er\en");
\&
-\& for(;;) {
-\& len = BIO_gets(sbio, tmpbuf, 1024);
-\& if(len <= 0) break;
-\& BIO_write(sbio, tmpbuf, len);
-\& BIO_write(out, tmpbuf, len);
-\& /* Look for blank line signifying end of headers*/
-\& if((tmpbuf[0] == \*(Aq\er\*(Aq) || (tmpbuf[0] == \*(Aq\en\*(Aq)) break;
+\& for (;;) {
+\& len = BIO_gets(sbio, tmpbuf, 1024);
+\& if (len <= 0)
+\& break;
+\& BIO_write(sbio, tmpbuf, len);
+\& BIO_write(out, tmpbuf, len);
+\& /* Look for blank line signifying end of headers*/
+\& if (tmpbuf[0] == \*(Aq\er\*(Aq || tmpbuf[0] == \*(Aq\en\*(Aq)
+\& break;
\& }
\&
\& BIO_puts(sbio, "\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\er\en");
\& BIO_puts(sbio, "\er\en");
-\&
-\& /* Since there is a buffering BIO present we had better flush it */
\& BIO_flush(sbio);
-\&
\& BIO_free_all(sbio);
.Ve
-.SH "BUGS"
-.IX Header "BUGS"
-In OpenSSL versions before 1.0.0 the \fIBIO_pop()\fR call was handled incorrectly,
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIBIO_f_ssl()\fR returns the \s-1SSL\s0 \fB\s-1BIO_METHOD\s0\fR structure.
+.PP
+\&\fIBIO_set_ssl()\fR, \fIBIO_get_ssl()\fR, \fIBIO_set_ssl_mode()\fR, \fIBIO_set_ssl_renegotiate_bytes()\fR,
+\&\fIBIO_set_ssl_renegotiate_timeout()\fR and \fIBIO_get_num_renegotiates()\fR return 1 on
+success or a value which is less than or equal to 0 if an error occurred.
+.PP
+\&\fIBIO_new_ssl()\fR, \fIBIO_new_ssl_connect()\fR and \fIBIO_new_buffer_ssl_connect()\fR return
+a valid \fB\s-1BIO\s0\fR structure on success or \fB\s-1NULL\s0\fR if an error occurred.
+.PP
+\&\fIBIO_ssl_copy_session_id()\fR returns 1 on success or 0 on error.
+.PP
+\&\fIBIO_do_handshake()\fR returns 1 if the connection was established successfully.
+A zero or negative value is returned if the connection could not be established.
+.SH "HISTORY"
+.IX Header "HISTORY"
+In OpenSSL before 1.0.0 the \fIBIO_pop()\fR call was handled incorrectly,
the I/O \s-1BIO\s0 reference count was incorrectly incremented (instead of
decremented) and dissociated with the \s-1SSL BIO\s0 even if the \s-1SSL BIO\s0 was not
explicitly being popped (e.g. a pop higher up the chain). Applications which
included workarounds for this bug (e.g. freeing BIOs more than once) should
be modified to handle this fix or they may free up an already freed \s-1BIO.\s0
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_find_type.3 b/secure/lib/libcrypto/man/BIO_find_type.3
index 1b732e5858e0..20e5092079e9 100644
--- a/secure/lib/libcrypto/man/BIO_find_type.3
+++ b/secure/lib/libcrypto/man/BIO_find_type.3
@@ -128,8 +128,8 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_find_type 3"
-.TH BIO_find_type 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_FIND_TYPE 3"
+.TH BIO_FIND_TYPE 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -141,46 +141,23 @@ BIO_find_type, BIO_next, BIO_method_type \- BIO chain traversal
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO * BIO_find_type(BIO *b,int bio_type);
-\& BIO * BIO_next(BIO *b);
-\&
-\& #define BIO_method_type(b) ((b)\->method\->type)
-\&
-\& #define BIO_TYPE_NONE 0
-\& #define BIO_TYPE_MEM (1|0x0400)
-\& #define BIO_TYPE_FILE (2|0x0400)
-\&
-\& #define BIO_TYPE_FD (4|0x0400|0x0100)
-\& #define BIO_TYPE_SOCKET (5|0x0400|0x0100)
-\& #define BIO_TYPE_NULL (6|0x0400)
-\& #define BIO_TYPE_SSL (7|0x0200)
-\& #define BIO_TYPE_MD (8|0x0200)
-\& #define BIO_TYPE_BUFFER (9|0x0200)
-\& #define BIO_TYPE_CIPHER (10|0x0200)
-\& #define BIO_TYPE_BASE64 (11|0x0200)
-\& #define BIO_TYPE_CONNECT (12|0x0400|0x0100)
-\& #define BIO_TYPE_ACCEPT (13|0x0400|0x0100)
-\& #define BIO_TYPE_PROXY_CLIENT (14|0x0200)
-\& #define BIO_TYPE_PROXY_SERVER (15|0x0200)
-\& #define BIO_TYPE_NBIO_TEST (16|0x0200)
-\& #define BIO_TYPE_NULL_FILTER (17|0x0200)
-\& #define BIO_TYPE_BER (18|0x0200)
-\& #define BIO_TYPE_BIO (19|0x0400)
-\&
-\& #define BIO_TYPE_DESCRIPTOR 0x0100
-\& #define BIO_TYPE_FILTER 0x0200
-\& #define BIO_TYPE_SOURCE_SINK 0x0400
+\& BIO *BIO_find_type(BIO *b, int bio_type);
+\& BIO *BIO_next(BIO *b);
+\& int BIO_method_type(const BIO *b);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
The \fIBIO_find_type()\fR searches for a \s-1BIO\s0 of a given type in a chain, starting
-at \s-1BIO\s0 \fBb\fR. If \fBtype\fR is a specific type (such as \s-1BIO_TYPE_MEM\s0) then a search
+at \s-1BIO\s0 \fBb\fR. If \fBtype\fR is a specific type (such as \fB\s-1BIO_TYPE_MEM\s0\fR) then a search
is made for a \s-1BIO\s0 of that type. If \fBtype\fR is a general type (such as
\&\fB\s-1BIO_TYPE_SOURCE_SINK\s0\fR) then the next matching \s-1BIO\s0 of the given general type is
searched for. \fIBIO_find_type()\fR returns the next matching \s-1BIO\s0 or \s-1NULL\s0 if none is
found.
.PP
-Note: not all the \fBBIO_TYPE_*\fR types above have corresponding \s-1BIO\s0 implementations.
+The following general types are defined:
+\&\fB\s-1BIO_TYPE_DESCRIPTOR\s0\fR, \fB\s-1BIO_TYPE_FILTER\s0\fR, and \fB\s-1BIO_TYPE_SOURCE_SINK\s0\fR.
+.PP
+For a list of the specific types, see the \fBopenssl/bio.h\fR header file.
.PP
\&\fIBIO_next()\fR returns the next \s-1BIO\s0 in a chain. It can be used to traverse all BIOs
in a chain or used in conjunction with \fIBIO_find_type()\fR to find all BIOs of a
@@ -194,36 +171,29 @@ certain type.
\&\fIBIO_next()\fR returns the next \s-1BIO\s0 in a chain.
.PP
\&\fIBIO_method_type()\fR returns the type of the \s-1BIO\s0 \fBb\fR.
-.SH "NOTES"
-.IX Header "NOTES"
-\&\fIBIO_next()\fR was added to OpenSSL 0.9.6 to provide a 'clean' way to traverse a \s-1BIO\s0
-chain or find multiple matches using \fIBIO_find_type()\fR. Previous versions had to
-use:
-.PP
-.Vb 1
-\& next = bio\->next_bio;
-.Ve
-.SH "BUGS"
-.IX Header "BUGS"
-\&\fIBIO_find_type()\fR in OpenSSL 0.9.5a and earlier could not be safely passed a
-\&\s-1NULL\s0 pointer for the \fBb\fR argument.
.SH "EXAMPLE"
.IX Header "EXAMPLE"
Traverse a chain looking for digest BIOs:
.PP
-.Vb 2
+.Vb 1
\& BIO *btmp;
-\& btmp = in_bio; /* in_bio is chain to search through */
\&
+\& btmp = in_bio; /* in_bio is chain to search through */
\& do {
-\& btmp = BIO_find_type(btmp, BIO_TYPE_MD);
-\& if(btmp == NULL) break; /* Not found */
-\& /* btmp is a digest BIO, do something with it ...*/
-\& ...
+\& btmp = BIO_find_type(btmp, BIO_TYPE_MD);
+\& if (btmp == NULL)
+\& break; /* Not found */
+\& /* btmp is a digest BIO, do something with it ...*/
+\& ...
\&
-\& btmp = BIO_next(btmp);
-\& } while(btmp);
+\& btmp = BIO_next(btmp);
+\& } while (btmp);
.Ve
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_get_data.3 b/secure/lib/libcrypto/man/BIO_get_data.3
new file mode 100644
index 000000000000..406720865988
--- /dev/null
+++ b/secure/lib/libcrypto/man/BIO_get_data.3
@@ -0,0 +1,191 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "BIO_GET_DATA 3"
+.TH BIO_GET_DATA 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+BIO_set_data, BIO_get_data, BIO_set_init, BIO_get_init, BIO_set_shutdown, BIO_get_shutdown \- functions for managing BIO state information
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/bio.h>
+\&
+\& void BIO_set_data(BIO *a, void *ptr);
+\& void *BIO_get_data(BIO *a);
+\& void BIO_set_init(BIO *a, int init);
+\& int BIO_get_init(BIO *a);
+\& void BIO_set_shutdown(BIO *a, int shut);
+\& int BIO_get_shutdown(BIO *a);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+These functions are mainly useful when implementing a custom \s-1BIO.\s0
+.PP
+The \fIBIO_set_data()\fR function associates the custom data pointed to by \fBptr\fR with
+the \s-1BIO.\s0 This data can subsequently be retrieved via a call to \fIBIO_get_data()\fR.
+This can be used by custom BIOs for storing implementation specific information.
+.PP
+The \fIBIO_set_init()\fR function sets the value of the \s-1BIO\s0's \*(L"init\*(R" flag to indicate
+whether initialisation has been completed for this \s-1BIO\s0 or not. A non-zero value
+indicates that initialisation is complete, whilst zero indicates that it is not.
+Often initialisation will complete during initial construction of the \s-1BIO.\s0 For
+some BIOs however, initialisation may not complete until after additional steps
+have occurred (for example through calling custom ctrls). The \fIBIO_get_init()\fR
+function returns the value of the \*(L"init\*(R" flag.
+.PP
+The \fIBIO_set_shutdown()\fR and \fIBIO_get_shutdown()\fR functions set and get the state of
+this \s-1BIO\s0's shutdown (i.e. \s-1BIO_CLOSE\s0) flag. If set then the underlying resource
+is also closed when the \s-1BIO\s0 is freed.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIBIO_get_data()\fR returns a pointer to the implementation specific custom data
+associated with this \s-1BIO,\s0 or \s-1NULL\s0 if none has been set.
+.PP
+\&\fIBIO_get_init()\fR returns the state of the \s-1BIO\s0's init flag.
+.PP
+\&\fIBIO_get_shutdown()\fR returns the stat of the \s-1BIO\s0's shutdown (i.e. \s-1BIO_CLOSE\s0) flag.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+bio, BIO_meth_new
+.SH "HISTORY"
+.IX Header "HISTORY"
+The functions described here were added in OpenSSL 1.1.0.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_get_ex_new_index.3 b/secure/lib/libcrypto/man/BIO_get_ex_new_index.3
new file mode 100644
index 000000000000..382a809a05f7
--- /dev/null
+++ b/secure/lib/libcrypto/man/BIO_get_ex_new_index.3
@@ -0,0 +1,187 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "BIO_GET_EX_NEW_INDEX 3"
+.TH BIO_GET_EX_NEW_INDEX 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+BIO_get_ex_new_index, BIO_set_ex_data, BIO_get_ex_data, ENGINE_get_ex_new_index, ENGINE_set_ex_data, ENGINE_get_ex_data, UI_get_ex_new_index, UI_set_ex_data, UI_get_ex_data, X509_get_ex_new_index, X509_set_ex_data, X509_get_ex_data, X509_STORE_get_ex_new_index, X509_STORE_set_ex_data, X509_STORE_get_ex_data, X509_STORE_CTX_get_ex_new_index, X509_STORE_CTX_set_ex_data, X509_STORE_CTX_get_ex_data, DH_get_ex_new_index, DH_set_ex_data, DH_get_ex_data, DSA_get_ex_new_index, DSA_set_ex_data, DSA_get_ex_data, ECDH_get_ex_new_index, ECDH_set_ex_data, ECDH_get_ex_data, EC_KEY_get_ex_new_index, EC_KEY_set_ex_data, EC_KEY_get_ex_data, RSA_get_ex_new_index, RSA_set_ex_data, RSA_get_ex_data \&\- application\-specific data
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/x509.h>
+\&
+\& int TYPE_get_ex_new_index(long argl, void *argp,
+\& CRYPTO_EX_new *new_func,
+\& CRYPTO_EX_dup *dup_func,
+\& CRYPTO_EX_free *free_func);
+\&
+\& int TYPE_set_ex_data(TYPE *d, int idx, void *arg);
+\&
+\& void *TYPE_get_ex_data(TYPE *d, int idx);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+In the description here, \fI\s-1TYPE\s0\fR is used a placeholder
+for any of the OpenSSL datatypes listed in
+\&\fICRYPTO_get_ex_new_index\fR\|(3).
+.PP
+These functions handle application-specific data for OpenSSL data
+structures.
+.PP
+\&\fITYPE_get_new_ex_index()\fR is a macro that calls \fICRYPTO_get_ex_new_index()\fR
+with the correct \fBindex\fR value.
+.PP
+\&\fITYPE_set_ex_data()\fR is a function that calls \fICRYPTO_set_ex_data()\fR with
+an offset into the opaque exdata part of the \s-1TYPE\s0 object.
+.PP
+\&\fITYPE_get_ex_data()\fR is a function that calls \fICRYPTO_get_ex_data()\fR with
+an offset into the opaque exdata part of the \s-1TYPE\s0 object.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fITYPE_get_new_ex_index()\fR returns a new index on success or \-1 on error.
+.PP
+\&\fITYPE_set_ex_data()\fR returns 1 on success or 0 on error.
+.PP
+\&\fITYPE_get_ex_data()\fR returns the application data or \s-1NULL\s0 if an error occurred.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fICRYPTO_get_ex_new_index\fR\|(3).
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2015\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_meth_new.3 b/secure/lib/libcrypto/man/BIO_meth_new.3
new file mode 100644
index 000000000000..04f5328dfe20
--- /dev/null
+++ b/secure/lib/libcrypto/man/BIO_meth_new.3
@@ -0,0 +1,284 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "BIO_METH_NEW 3"
+.TH BIO_METH_NEW 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+BIO_get_new_index, BIO_meth_new, BIO_meth_free, BIO_meth_get_read_ex, BIO_meth_set_read_ex, BIO_meth_get_write_ex, BIO_meth_set_write_ex, BIO_meth_get_write, BIO_meth_set_write, BIO_meth_get_read, BIO_meth_set_read, BIO_meth_get_puts, BIO_meth_set_puts, BIO_meth_get_gets, BIO_meth_set_gets, BIO_meth_get_ctrl, BIO_meth_set_ctrl, BIO_meth_get_create, BIO_meth_set_create, BIO_meth_get_destroy, BIO_meth_set_destroy, BIO_meth_get_callback_ctrl, BIO_meth_set_callback_ctrl \- Routines to build up BIO methods
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/bio.h>
+\&
+\& int BIO_get_new_index(void);
+\&
+\& BIO_METHOD *BIO_meth_new(int type, const char *name);
+\&
+\& void BIO_meth_free(BIO_METHOD *biom);
+\&
+\& int (*BIO_meth_get_write_ex(const BIO_METHOD *biom))(BIO *, const char *, size_t,
+\& size_t *);
+\& int (*BIO_meth_get_write(const BIO_METHOD *biom))(BIO *, const char *, int);
+\& int BIO_meth_set_write_ex(BIO_METHOD *biom,
+\& int (*bwrite)(BIO *, const char *, size_t, size_t *));
+\& int BIO_meth_set_write(BIO_METHOD *biom,
+\& int (*write)(BIO *, const char *, int));
+\&
+\& int (*BIO_meth_get_read_ex(const BIO_METHOD *biom))(BIO *, char *, size_t, size_t *);
+\& int (*BIO_meth_get_read(const BIO_METHOD *biom))(BIO *, char *, int);
+\& int BIO_meth_set_read_ex(BIO_METHOD *biom,
+\& int (*bread)(BIO *, char *, size_t, size_t *));
+\& int BIO_meth_set_read(BIO_METHOD *biom, int (*read)(BIO *, char *, int));
+\&
+\& int (*BIO_meth_get_puts(const BIO_METHOD *biom))(BIO *, const char *);
+\& int BIO_meth_set_puts(BIO_METHOD *biom, int (*puts)(BIO *, const char *));
+\&
+\& int (*BIO_meth_get_gets(const BIO_METHOD *biom))(BIO *, char *, int);
+\& int BIO_meth_set_gets(BIO_METHOD *biom,
+\& int (*gets)(BIO *, char *, int));
+\&
+\& long (*BIO_meth_get_ctrl(const BIO_METHOD *biom))(BIO *, int, long, void *);
+\& int BIO_meth_set_ctrl(BIO_METHOD *biom,
+\& long (*ctrl)(BIO *, int, long, void *));
+\&
+\& int (*BIO_meth_get_create(const BIO_METHOD *bion))(BIO *);
+\& int BIO_meth_set_create(BIO_METHOD *biom, int (*create)(BIO *));
+\&
+\& int (*BIO_meth_get_destroy(const BIO_METHOD *biom))(BIO *);
+\& int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy)(BIO *));
+\&
+\& long (*BIO_meth_get_callback_ctrl(const BIO_METHOD *biom))(BIO *, int, BIO_info_cb *);
+\& int BIO_meth_set_callback_ctrl(BIO_METHOD *biom,
+\& long (*callback_ctrl)(BIO *, int, BIO_info_cb *));
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+The \fB\s-1BIO_METHOD\s0\fR type is a structure used for the implementation of new \s-1BIO\s0
+types. It provides a set of functions used by OpenSSL for the implementation
+of the various \s-1BIO\s0 capabilities. See the bio page for more information.
+.PP
+\&\fIBIO_meth_new()\fR creates a new \fB\s-1BIO_METHOD\s0\fR structure. It should be given a
+unique integer \fBtype\fR and a string that represents its \fBname\fR.
+Use \fIBIO_get_new_index()\fR to get the value for \fBtype\fR.
+.PP
+The set of
+standard OpenSSL provided \s-1BIO\s0 types is provided in \fBbio.h\fR. Some examples
+include \fB\s-1BIO_TYPE_BUFFER\s0\fR and \fB\s-1BIO_TYPE_CIPHER\s0\fR. Filter BIOs should have a
+type which have the \*(L"filter\*(R" bit set (\fB\s-1BIO_TYPE_FILTER\s0\fR). Source/sink BIOs
+should have the \*(L"source/sink\*(R" bit set (\fB\s-1BIO_TYPE_SOURCE_SINK\s0\fR). File descriptor
+based BIOs (e.g. socket, fd, connect, accept etc) should additionally have the
+\&\*(L"descriptor\*(R" bit set (\fB\s-1BIO_TYPE_DESCRIPTOR\s0\fR). See the BIO_find_type page for
+more information.
+.PP
+\&\fIBIO_meth_free()\fR destroys a \fB\s-1BIO_METHOD\s0\fR structure and frees up any memory
+associated with it.
+.PP
+\&\fIBIO_meth_get_write_ex()\fR and \fIBIO_meth_set_write_ex()\fR get and set the function
+used for writing arbitrary length data to the \s-1BIO\s0 respectively. This function
+will be called in response to the application calling \fIBIO_write_ex()\fR or
+\&\fIBIO_write()\fR. The parameters for the function have the same meaning as for
+\&\fIBIO_write_ex()\fR. Older code may call \fIBIO_meth_get_write()\fR and
+\&\fIBIO_meth_set_write()\fR instead. Applications should not call both
+\&\fIBIO_meth_set_write_ex()\fR and \fIBIO_meth_set_write()\fR or call \fIBIO_meth_get_write()\fR
+when the function was set with \fIBIO_meth_set_write_ex()\fR.
+.PP
+\&\fIBIO_meth_get_read_ex()\fR and \fIBIO_meth_set_read_ex()\fR get and set the function used
+for reading arbitrary length data from the \s-1BIO\s0 respectively. This function will
+be called in response to the application calling \fIBIO_read_ex()\fR or \fIBIO_read()\fR.
+The parameters for the function have the same meaning as for \fIBIO_read_ex()\fR.
+Older code may call \fIBIO_meth_get_read()\fR and \fIBIO_meth_set_read()\fR instead.
+Applications should not call both \fIBIO_meth_set_read_ex()\fR and \fIBIO_meth_set_read()\fR
+or call \fIBIO_meth_get_read()\fR when the function was set with
+\&\fIBIO_meth_set_read_ex()\fR.
+.PP
+\&\fIBIO_meth_get_puts()\fR and \fIBIO_meth_set_puts()\fR get and set the function used for
+writing a \s-1NULL\s0 terminated string to the \s-1BIO\s0 respectively. This function will be
+called in response to the application calling \fIBIO_puts()\fR. The parameters for
+the function have the same meaning as for \fIBIO_puts()\fR.
+.PP
+\&\fIBIO_meth_get_gets()\fR and \fIBIO_meth_set_gets()\fR get and set the function typically
+used for reading a line of data from the \s-1BIO\s0 respectively (see the \fIBIO_gets\fR\|(3)
+page for more information). This function will be called in response to the
+application calling \fIBIO_gets()\fR. The parameters for the function have the same
+meaning as for \fIBIO_gets()\fR.
+.PP
+\&\fIBIO_meth_get_ctrl()\fR and \fIBIO_meth_set_ctrl()\fR get and set the function used for
+processing ctrl messages in the \s-1BIO\s0 respectively. See the BIO_ctrl page for
+more information. This function will be called in response to the application
+calling \fIBIO_ctrl()\fR. The parameters for the function have the same meaning as for
+\&\fIBIO_ctrl()\fR.
+.PP
+\&\fIBIO_meth_get_create()\fR and \fIBIO_meth_set_create()\fR get and set the function used
+for creating a new instance of the \s-1BIO\s0 respectively. This function will be
+called in response to the application calling \fIBIO_new()\fR and passing
+in a pointer to the current \s-1BIO_METHOD.\s0 The \fIBIO_new()\fR function will allocate the
+memory for the new \s-1BIO,\s0 and a pointer to this newly allocated structure will
+be passed as a parameter to the function.
+.PP
+\&\fIBIO_meth_get_destroy()\fR and \fIBIO_meth_set_destroy()\fR get and set the function used
+for destroying an instance of a \s-1BIO\s0 respectively. This function will be
+called in response to the application calling \fIBIO_free()\fR. A pointer to the \s-1BIO\s0
+to be destroyed is passed as a parameter. The destroy function should be used
+for \s-1BIO\s0 specific clean up. The memory for the \s-1BIO\s0 itself should not be freed by
+this function.
+.PP
+\&\fIBIO_meth_get_callback_ctrl()\fR and \fIBIO_meth_set_callback_ctrl()\fR get and set the
+function used for processing callback ctrl messages in the \s-1BIO\s0 respectively. See
+the \fIBIO_callback_ctrl\fR\|(3) page for more information. This function will be called
+in response to the application calling \fIBIO_callback_ctrl()\fR. The parameters for
+the function have the same meaning as for \fIBIO_callback_ctrl()\fR.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIBIO_get_new_index()\fR returns the new \s-1BIO\s0 type value or \-1 if an error occurred.
+.PP
+BIO_meth_new(int type, const char *name) returns a valid \fB\s-1BIO_METHOD\s0\fR or \s-1NULL\s0
+if an error occurred.
+.PP
+The \fBBIO_meth_set\fR functions return 1 on success or 0 on error.
+.PP
+The \fBBIO_meth_get\fR functions return the corresponding function pointers.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+bio, BIO_find_type, BIO_ctrl, BIO_read_ex, BIO_new
+.SH "HISTORY"
+.IX Header "HISTORY"
+The functions described here were added in OpenSSL 1.1.0.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2016\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_new.3 b/secure/lib/libcrypto/man/BIO_new.3
index c45e27d26f2a..349814e78bc1 100644
--- a/secure/lib/libcrypto/man/BIO_new.3
+++ b/secure/lib/libcrypto/man/BIO_new.3
@@ -128,21 +128,21 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_new 3"
-.TH BIO_new 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_NEW 3"
+.TH BIO_NEW 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_new, BIO_set, BIO_free, BIO_vfree, BIO_free_all \- BIO allocation and freeing functions
+BIO_new, BIO_up_ref, BIO_free, BIO_vfree, BIO_free_all \&\- BIO allocation and freeing functions
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO * BIO_new(BIO_METHOD *type);
-\& int BIO_set(BIO *a,BIO_METHOD *type);
+\& BIO * BIO_new(const BIO_METHOD *type);
+\& int BIO_up_ref(BIO *a);
\& int BIO_free(BIO *a);
\& void BIO_vfree(BIO *a);
\& void BIO_free_all(BIO *a);
@@ -151,39 +151,36 @@ BIO_new, BIO_set, BIO_free, BIO_vfree, BIO_free_all \- BIO allocation and freein
.IX Header "DESCRIPTION"
The \fIBIO_new()\fR function returns a new \s-1BIO\s0 using method \fBtype\fR.
.PP
-\&\fIBIO_set()\fR sets the method of an already existing \s-1BIO.\s0
+\&\fIBIO_up_ref()\fR increments the reference count associated with the \s-1BIO\s0 object.
.PP
\&\fIBIO_free()\fR frees up a single \s-1BIO,\s0 \fIBIO_vfree()\fR also frees up a single \s-1BIO\s0
-but it does not return a value. Calling \fIBIO_free()\fR may also have some effect
+but it does not return a value.
+If \fBa\fR is \s-1NULL\s0 nothing is done.
+Calling \fIBIO_free()\fR may also have some effect
on the underlying I/O structure, for example it may close the file being
referred to under certain circumstances. For more details see the individual
\&\s-1BIO_METHOD\s0 descriptions.
.PP
\&\fIBIO_free_all()\fR frees up an entire \s-1BIO\s0 chain, it does not halt if an error
occurs freeing up an individual \s-1BIO\s0 in the chain.
+If \fBa\fR is \s-1NULL\s0 nothing is done.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
\&\fIBIO_new()\fR returns a newly created \s-1BIO\s0 or \s-1NULL\s0 if the call fails.
.PP
-\&\fIBIO_set()\fR, \fIBIO_free()\fR return 1 for success and 0 for failure.
+\&\fIBIO_up_ref()\fR and \fIBIO_free()\fR return 1 for success and 0 for failure.
.PP
\&\fIBIO_free_all()\fR and \fIBIO_vfree()\fR do not return values.
.SH "NOTES"
.IX Header "NOTES"
-Some BIOs (such as memory BIOs) can be used immediately after calling
-\&\fIBIO_new()\fR. Others (such as file BIOs) need some additional initialization,
-and frequently a utility function exists to create and initialize such BIOs.
-.PP
If \fIBIO_free()\fR is called on a \s-1BIO\s0 chain it will only free one \s-1BIO\s0 resulting
in a memory leak.
.PP
-Calling \fIBIO_free_all()\fR a single \s-1BIO\s0 has the same effect as calling \fIBIO_free()\fR
+Calling \fIBIO_free_all()\fR on a single \s-1BIO\s0 has the same effect as calling \fIBIO_free()\fR
on it other than the discarded return value.
-.PP
-Normally the \fBtype\fR argument is supplied by a function which returns a
-pointer to a \s-1BIO_METHOD.\s0 There is a naming convention for such functions:
-a source/sink \s-1BIO\s0 is normally called BIO_s_*() and a filter \s-1BIO\s0
-BIO_f_*();
+.SH "HISTORY"
+.IX Header "HISTORY"
+\&\fIBIO_set()\fR was removed in OpenSSL 1.1.0 as \s-1BIO\s0 type is now opaque.
.SH "EXAMPLE"
.IX Header "EXAMPLE"
Create a memory \s-1BIO:\s0
@@ -191,6 +188,11 @@ Create a memory \s-1BIO:\s0
.Vb 1
\& BIO *mem = BIO_new(BIO_s_mem());
.Ve
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_new_CMS.3 b/secure/lib/libcrypto/man/BIO_new_CMS.3
index 06bab9601782..9dd871a24ea4 100644
--- a/secure/lib/libcrypto/man/BIO_new_CMS.3
+++ b/secure/lib/libcrypto/man/BIO_new_CMS.3
@@ -128,16 +128,14 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_new_CMS 3"
-.TH BIO_new_CMS 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_NEW_CMS 3"
+.TH BIO_NEW_CMS 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-.Vb 1
-\& BIO_new_CMS \- CMS streaming filter BIO
-.Ve
+BIO_new_CMS \- CMS streaming filter BIO
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
@@ -192,3 +190,11 @@ occurred. The error can be obtained from \fIERR_get_error\fR\|(3).
.SH "HISTORY"
.IX Header "HISTORY"
\&\fIBIO_new_CMS()\fR was added to OpenSSL 1.0.0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2008\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_parse_hostserv.3 b/secure/lib/libcrypto/man/BIO_parse_hostserv.3
new file mode 100644
index 000000000000..a90e96f3bbe0
--- /dev/null
+++ b/secure/lib/libcrypto/man/BIO_parse_hostserv.3
@@ -0,0 +1,208 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "BIO_PARSE_HOSTSERV 3"
+.TH BIO_PARSE_HOSTSERV 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+BIO_hostserv_priorities, BIO_parse_hostserv \&\- utility routines to parse a standard host and service string
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/bio.h>
+\&
+\& enum BIO_hostserv_priorities {
+\& BIO_PARSE_PRIO_HOST, BIO_PARSE_PRIO_SERV
+\& };
+\& int BIO_parse_hostserv(const char *hostserv, char **host, char **service,
+\& enum BIO_hostserv_priorities hostserv_prio);
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fIBIO_parse_hostserv()\fR will parse the information given in \fBhostserv\fR,
+create strings with the host name and service name and give those
+back via \fBhost\fR and \fBservice\fR. Those will need to be freed after
+they are used. \fBhostserv_prio\fR helps determine if \fBhostserv\fR shall
+be interpreted primarily as a host name or a service name in ambiguous
+cases.
+.PP
+The syntax the \fIBIO_parse_hostserv()\fR recognises is:
+.PP
+.Vb 7
+\& host + \*(Aq:\*(Aq + service
+\& host + \*(Aq:\*(Aq + \*(Aq*\*(Aq
+\& host + \*(Aq:\*(Aq
+\& \*(Aq:\*(Aq + service
+\& \*(Aq*\*(Aq + \*(Aq:\*(Aq + service
+\& host
+\& service
+.Ve
+.PP
+The host part can be a name or an \s-1IP\s0 address. If it's a IPv6
+address, it \s-1MUST\s0 be enclosed in brackets, such as '[::1]'.
+.PP
+The service part can be a service name or its port number.
+.PP
+The returned values will depend on the given \fBhostserv\fR string
+and \fBhostserv_prio\fR, as follows:
+.PP
+.Vb 5
+\& host + \*(Aq:\*(Aq + service => *host = "host", *service = "service"
+\& host + \*(Aq:\*(Aq + \*(Aq*\*(Aq => *host = "host", *service = NULL
+\& host + \*(Aq:\*(Aq => *host = "host", *service = NULL
+\& \*(Aq:\*(Aq + service => *host = NULL, *service = "service"
+\& \*(Aq*\*(Aq + \*(Aq:\*(Aq + service => *host = NULL, *service = "service"
+\&
+\& in case no \*(Aq:\*(Aq is present in the string, the result depends on
+\& hostserv_prio, as follows:
+\&
+\& when hostserv_prio == BIO_PARSE_PRIO_HOST
+\& host => *host = "host", *service untouched
+\&
+\& when hostserv_prio == BIO_PARSE_PRIO_SERV
+\& service => *host untouched, *service = "service"
+.Ve
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIBIO_parse_hostserv()\fR returns 1 on success or 0 on error.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\s-1\fIBIO_ADDRINFO\s0\fR\|(3)
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2016\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_printf.3 b/secure/lib/libcrypto/man/BIO_printf.3
new file mode 100644
index 000000000000..07a41d73ad75
--- /dev/null
+++ b/secure/lib/libcrypto/man/BIO_printf.3
@@ -0,0 +1,178 @@
+.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. \*(C+ will
+.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.if !\nF .nr F 0
+.if \nF>0 \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "BIO_PRINTF 3"
+.TH BIO_PRINTF 3 "2018-09-11" "1.1.1" "OpenSSL"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+BIO_printf, BIO_vprintf, BIO_snprintf, BIO_vsnprintf \&\- formatted output to a BIO
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& #include <openssl/bio.h>
+\&
+\& int BIO_printf(BIO *bio, const char *format, ...)
+\& int BIO_vprintf(BIO *bio, const char *format, va_list args)
+\&
+\& int BIO_snprintf(char *buf, size_t n, const char *format, ...)
+\& int BIO_vsnprintf(char *buf, size_t n, const char *format, va_list args)
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fIBIO_printf()\fR is similar to the standard C \fIprintf()\fR function, except that
+the output is sent to the specified \s-1BIO,\s0 \fBbio\fR, rather than standard
+output. All common format specifiers are supported.
+.PP
+\&\fIBIO_vprintf()\fR is similar to the \fIvprintf()\fR function found on many platforms,
+the output is sent to the specified \s-1BIO,\s0 \fBbio\fR, rather than standard
+output. All common format specifiers are supported. The argument
+list \fBargs\fR is a stdarg argument list.
+.PP
+\&\fIBIO_snprintf()\fR is for platforms that do not have the common \fIsnprintf()\fR
+function. It is like \fIsprintf()\fR except that the size parameter, \fBn\fR,
+specifies the size of the output buffer.
+.PP
+\&\fIBIO_vsnprintf()\fR is to \fIBIO_snprintf()\fR as \fIBIO_vprintf()\fR is to \fIBIO_printf()\fR.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+All functions return the number of bytes written, or \-1 on error.
+For \fIBIO_snprintf()\fR and \fIBIO_vsnprintf()\fR this includes when the output
+buffer is too small.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2017 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_push.3 b/secure/lib/libcrypto/man/BIO_push.3
index a866109054a1..fa927ad7ad54 100644
--- a/secure/lib/libcrypto/man/BIO_push.3
+++ b/secure/lib/libcrypto/man/BIO_push.3
@@ -128,21 +128,22 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_push 3"
-.TH BIO_push 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_PUSH 3"
+.TH BIO_PUSH 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_push, BIO_pop \- add and remove BIOs from a chain.
+BIO_push, BIO_pop, BIO_set_next \- add and remove BIOs from a chain
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO * BIO_push(BIO *b,BIO *append);
-\& BIO * BIO_pop(BIO *b);
+\& BIO *BIO_push(BIO *b, BIO *append);
+\& BIO *BIO_pop(BIO *b);
+\& void BIO_set_next(BIO *b, BIO *next);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -153,6 +154,10 @@ The \fIBIO_push()\fR function appends the \s-1BIO\s0 \fBappend\fR to \fBb\fR, it
in the chain, or \s-1NULL\s0 if there is no next \s-1BIO.\s0 The removed \s-1BIO\s0 then
becomes a single \s-1BIO\s0 with no association with the original chain,
it can thus be freed or attached to a different chain.
+.PP
+\&\fIBIO_set_next()\fR replaces the existing next \s-1BIO\s0 in a chain with the \s-1BIO\s0 pointed to
+by \fBnext\fR. The new chain may include some of the same BIOs from the old chain
+or it may be completely different.
.SH "NOTES"
.IX Header "NOTES"
The names of these functions are perhaps a little misleading. \fIBIO_push()\fR
@@ -201,4 +206,15 @@ be written to \fBmd1\fR as before.
\&\s-1BIO.\s0
.SH "SEE ALSO"
.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+bio
+.SH "HISTORY"
+.IX Header "HISTORY"
+The \fIBIO_set_next()\fR function was added in OpenSSL 1.1.0.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_read.3 b/secure/lib/libcrypto/man/BIO_read.3
index 90efdf3c0c8e..0f08129151f2 100644
--- a/secure/lib/libcrypto/man/BIO_read.3
+++ b/secure/lib/libcrypto/man/BIO_read.3
@@ -128,44 +128,60 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_read 3"
-.TH BIO_read 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_READ 3"
+.TH BIO_READ 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_read, BIO_write, BIO_gets, BIO_puts \- BIO I/O functions
+BIO_read_ex, BIO_write_ex, BIO_read, BIO_write, BIO_gets, BIO_puts \&\- BIO I/O functions
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& int BIO_read(BIO *b, void *buf, int len);
-\& int BIO_gets(BIO *b, char *buf, int size);
-\& int BIO_write(BIO *b, const void *buf, int len);
-\& int BIO_puts(BIO *b, const char *buf);
+\& int BIO_read_ex(BIO *b, void *data, size_t dlen, size_t *readbytes);
+\& int BIO_write_ex(BIO *b, const void *data, size_t dlen, size_t *written);
+\&
+\& int BIO_read(BIO *b, void *data, int dlen);
+\& int BIO_gets(BIO *b, char *buf, int size);
+\& int BIO_write(BIO *b, const void *data, int dlen);
+\& int BIO_puts(BIO *b, const char *buf);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
+\&\fIBIO_read_ex()\fR attempts to read \fBdlen\fR bytes from \s-1BIO\s0 \fBb\fR and places the data
+in \fBdata\fR. If any bytes were successfully read then the number of bytes read is
+stored in \fB*readbytes\fR.
+.PP
+\&\fIBIO_write_ex()\fR attempts to write \fBdlen\fR bytes from \fBdata\fR to \s-1BIO\s0 \fBb\fR. If
+successful then the number of bytes written is stored in \fB*written\fR.
+.PP
\&\fIBIO_read()\fR attempts to read \fBlen\fR bytes from \s-1BIO\s0 \fBb\fR and places
the data in \fBbuf\fR.
.PP
\&\fIBIO_gets()\fR performs the BIOs \*(L"gets\*(R" operation and places the data
in \fBbuf\fR. Usually this operation will attempt to read a line of data
-from the \s-1BIO\s0 of maximum length \fBlen\fR. There are exceptions to this
-however, for example \fIBIO_gets()\fR on a digest \s-1BIO\s0 will calculate and
+from the \s-1BIO\s0 of maximum length \fBsize\-1\fR. There are exceptions to this,
+however; for example, \fIBIO_gets()\fR on a digest \s-1BIO\s0 will calculate and
return the digest and other BIOs may not support \fIBIO_gets()\fR at all.
+The returned string is always NUL-terminated and the '\en' is preserved
+if present in the input data.
.PP
\&\fIBIO_write()\fR attempts to write \fBlen\fR bytes from \fBbuf\fR to \s-1BIO\s0 \fBb\fR.
.PP
-\&\fIBIO_puts()\fR attempts to write a null terminated string \fBbuf\fR to \s-1BIO\s0 \fBb\fR.
+\&\fIBIO_puts()\fR attempts to write a NUL-terminated string \fBbuf\fR to \s-1BIO\s0 \fBb\fR.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
-All these functions return either the amount of data successfully read or
+\&\fIBIO_read_ex()\fR and \fIBIO_write_ex()\fR return 1 if data was successfully read or
+written, and 0 otherwise.
+.PP
+All other functions return either the amount of data successfully read or
written (if the return value is positive) or that no data was successfully
read or written if the result is 0 or \-1. If the return value is \-2 then
-the operation is not implemented in the specific \s-1BIO\s0 type.
+the operation is not implemented in the specific \s-1BIO\s0 type. The trailing
+\&\s-1NUL\s0 is not included in the length returned by \fIBIO_gets()\fR.
.SH "NOTES"
.IX Header "NOTES"
A 0 or \-1 return is not necessarily an indication of an error. In
@@ -192,5 +208,15 @@ to the chain.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fIBIO_should_retry\fR\|(3)
+.SH "HISTORY"
+.IX Header "HISTORY"
+\&\fIBIO_gets()\fR on 1.1.0 and older when called on \fIBIO_fd()\fR based \s-1BIO\s0 does not
+keep the '\en' at the end of the line in the buffer.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
.PP
-\&\s-1TBA\s0
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_s_accept.3 b/secure/lib/libcrypto/man/BIO_s_accept.3
index 3cc7f81b5eb8..0821758edc4f 100644
--- a/secure/lib/libcrypto/man/BIO_s_accept.3
+++ b/secure/lib/libcrypto/man/BIO_s_accept.3
@@ -128,24 +128,25 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_s_accept 3"
-.TH BIO_s_accept 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_S_ACCEPT 3"
+.TH BIO_S_ACCEPT 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_s_accept, BIO_set_accept_port, BIO_get_accept_port, BIO_new_accept,
-BIO_set_nbio_accept, BIO_set_accept_bios, BIO_set_bind_mode,
-BIO_get_bind_mode, BIO_do_accept \- accept BIO
+BIO_s_accept, BIO_set_accept_name, BIO_set_accept_port, BIO_get_accept_name, BIO_get_accept_port, BIO_new_accept, BIO_set_nbio_accept, BIO_set_accept_bios, BIO_get_peer_name, BIO_get_peer_port, BIO_get_accept_ip_family, BIO_set_accept_ip_family, BIO_set_bind_mode, BIO_get_bind_mode, BIO_do_accept \- accept BIO
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD *BIO_s_accept(void);
+\& const BIO_METHOD *BIO_s_accept(void);
\&
-\& long BIO_set_accept_port(BIO *b, char *name);
+\& long BIO_set_accept_name(BIO *b, char *name);
+\& char *BIO_get_accept_name(BIO *b);
+\&
+\& long BIO_set_accept_port(BIO *b, char *port);
\& char *BIO_get_accept_port(BIO *b);
\&
\& BIO *BIO_new_accept(char *host_port);
@@ -153,12 +154,13 @@ BIO_get_bind_mode, BIO_do_accept \- accept BIO
\& long BIO_set_nbio_accept(BIO *b, int n);
\& long BIO_set_accept_bios(BIO *b, char *bio);
\&
-\& long BIO_set_bind_mode(BIO *b, long mode);
-\& long BIO_get_bind_mode(BIO *b, long dummy);
+\& char *BIO_get_peer_name(BIO *b);
+\& char *BIO_get_peer_port(BIO *b);
+\& long BIO_get_accept_ip_family(BIO *b);
+\& long BIO_set_accept_ip_family(BIO *b, long family);
\&
-\& #define BIO_BIND_NORMAL 0
-\& #define BIO_BIND_REUSEADDR_IF_UNUSED 1
-\& #define BIO_BIND_REUSEADDR 2
+\& long BIO_set_bind_mode(BIO *b, long mode);
+\& long BIO_get_bind_mode(BIO *b);
\&
\& int BIO_do_accept(BIO *b);
.Ve
@@ -182,23 +184,30 @@ If the close flag is set on an accept \s-1BIO\s0 then any active
connection on that chain is shutdown and the socket closed when
the \s-1BIO\s0 is freed.
.PP
-Calling \fIBIO_reset()\fR on a accept \s-1BIO\s0 will close any active
+Calling \fIBIO_reset()\fR on an accept \s-1BIO\s0 will close any active
connection and reset the \s-1BIO\s0 into a state where it awaits another
incoming connection.
.PP
\&\fIBIO_get_fd()\fR and \fIBIO_set_fd()\fR can be called to retrieve or set
the accept socket. See \fIBIO_s_fd\fR\|(3)
.PP
-\&\fIBIO_set_accept_port()\fR uses the string \fBname\fR to set the accept
-port. The port is represented as a string of the form \*(L"host:port\*(R",
+\&\fIBIO_set_accept_name()\fR uses the string \fBname\fR to set the accept
+name. The name is represented as a string of the form \*(L"host:port\*(R",
where \*(L"host\*(R" is the interface to use and \*(L"port\*(R" is the port.
-The host can be can be \*(L"*\*(R" which is interpreted as meaning
-any interface; \*(L"port\*(R" has the same syntax
-as the port specified in \fIBIO_set_conn_port()\fR for connect BIOs,
-that is it can be a numerical port string or a string to lookup
-using \fIgetservbyname()\fR and a string table.
+The host can be \*(L"*\*(R" or empty which is interpreted as meaning
+any interface. If the host is an IPv6 address, it has to be
+enclosed in brackets, for example \*(L"[::1]:https\*(R". \*(L"port\*(R" has the
+same syntax as the port specified in \fIBIO_set_conn_port()\fR for
+connect BIOs, that is it can be a numerical port string or a
+string to lookup using \fIgetservbyname()\fR and a string table.
+.PP
+\&\fIBIO_set_accept_port()\fR uses the string \fBport\fR to set the accept
+port. \*(L"port\*(R" has the same syntax as the port specified in
+\&\fIBIO_set_conn_port()\fR for connect BIOs, that is it can be a numerical
+port string or a string to lookup using \fIgetservbyname()\fR and a string
+table.
.PP
-\&\fIBIO_new_accept()\fR combines \fIBIO_new()\fR and \fIBIO_set_accept_port()\fR into
+\&\fIBIO_new_accept()\fR combines \fIBIO_new()\fR and \fIBIO_set_accept_name()\fR into
a single call: that is it creates a new accept \s-1BIO\s0 with port
\&\fBhost_port\fR.
.PP
@@ -207,19 +216,19 @@ a single call: that is it creates a new accept \s-1BIO\s0 with port
.PP
\&\fIBIO_set_accept_bios()\fR can be used to set a chain of BIOs which
will be duplicated and prepended to the chain when an incoming
-connection is received. This is useful if, for example, a
+connection is received. This is useful if, for example, a
buffering or \s-1SSL BIO\s0 is required for each connection. The
chain of BIOs must not be freed after this call, they will
be automatically freed when the accept \s-1BIO\s0 is freed.
.PP
\&\fIBIO_set_bind_mode()\fR and \fIBIO_get_bind_mode()\fR set and retrieve
-the current bind mode. If \s-1BIO_BIND_NORMAL\s0 (the default) is set
+the current bind mode. If \fB\s-1BIO_BIND_NORMAL\s0\fR (the default) is set
then another socket cannot be bound to the same port. If
-\&\s-1BIO_BIND_REUSEADDR\s0 is set then other sockets can bind to the
-same port. If \s-1BIO_BIND_REUSEADDR_IF_UNUSED\s0 is set then and
+\&\fB\s-1BIO_BIND_REUSEADDR\s0\fR is set then other sockets can bind to the
+same port. If \fB\s-1BIO_BIND_REUSEADDR_IF_UNUSED\s0\fR is set then and
attempt is first made to use \s-1BIO_BIN_NORMAL,\s0 if this fails
and the port is not in use then a second attempt is made
-using \s-1BIO_BIND_REUSEADDR.\s0
+using \fB\s-1BIO_BIND_REUSEADDR\s0\fR.
.PP
\&\fIBIO_do_accept()\fR serves two functions. When it is first
called, after the accept \s-1BIO\s0 has been setup, it will attempt
@@ -271,47 +280,65 @@ then it is an indication that an accept attempt would block: the application
should take appropriate action to wait until the underlying socket has
accepted a connection and retry the call.
.PP
-\&\fIBIO_set_accept_port()\fR, \fIBIO_get_accept_port()\fR, \fIBIO_set_nbio_accept()\fR,
-\&\fIBIO_set_accept_bios()\fR, \fIBIO_set_bind_mode()\fR, \fIBIO_get_bind_mode()\fR and
-\&\fIBIO_do_accept()\fR are macros.
+\&\fIBIO_set_accept_name()\fR, \fIBIO_get_accept_name()\fR, \fIBIO_set_accept_port()\fR,
+\&\fIBIO_get_accept_port()\fR, \fIBIO_set_nbio_accept()\fR, \fIBIO_set_accept_bios()\fR,
+\&\fIBIO_get_peer_name()\fR, \fIBIO_get_peer_port()\fR,
+\&\fIBIO_get_accept_ip_family()\fR, \fIBIO_set_accept_ip_family()\fR,
+\&\fIBIO_set_bind_mode()\fR, \fIBIO_get_bind_mode()\fR and \fIBIO_do_accept()\fR are macros.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
-\&\s-1TBA\s0
+\&\fIBIO_do_accept()\fR,
+\&\fIBIO_set_accept_name()\fR, \fIBIO_set_accept_port()\fR, \fIBIO_set_nbio_accept()\fR,
+\&\fIBIO_set_accept_bios()\fR, \fIBIO_set_accept_ip_family()\fR, and \fIBIO_set_bind_mode()\fR
+return 1 for success and 0 or \-1 for failure.
+.PP
+\&\fIBIO_get_accept_name()\fR returns the accept name or \s-1NULL\s0 on error.
+\&\fIBIO_get_peer_name()\fR returns the peer name or \s-1NULL\s0 on error.
+.PP
+\&\fIBIO_get_accept_port()\fR returns the accept port as a string or \s-1NULL\s0 on error.
+\&\fIBIO_get_peer_port()\fR returns the peer port as a string or \s-1NULL\s0 on error.
+\&\fIBIO_get_accept_ip_family()\fR returns the \s-1IP\s0 family or \-1 on error.
+.PP
+\&\fIBIO_get_bind_mode()\fR returns the set of \fB\s-1BIO_BIND\s0\fR flags, or \-1 on failure.
+.PP
+\&\fIBIO_new_accept()\fR returns a \s-1BIO\s0 or \s-1NULL\s0 on error.
.SH "EXAMPLE"
.IX Header "EXAMPLE"
This example accepts two connections on port 4444, sends messages
down each and finally closes both down.
.PP
-.Vb 3
+.Vb 1
\& BIO *abio, *cbio, *cbio2;
-\& ERR_load_crypto_strings();
-\& abio = BIO_new_accept("4444");
\&
\& /* First call to BIO_accept() sets up accept BIO */
-\& if(BIO_do_accept(abio) <= 0) {
-\& fprintf(stderr, "Error setting up accept\en");
-\& ERR_print_errors_fp(stderr);
-\& exit(0);
+\& abio = BIO_new_accept("4444");
+\& if (BIO_do_accept(abio) <= 0) {
+\& fprintf(stderr, "Error setting up accept\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
\&
\& /* Wait for incoming connection */
-\& if(BIO_do_accept(abio) <= 0) {
-\& fprintf(stderr, "Error accepting connection\en");
-\& ERR_print_errors_fp(stderr);
-\& exit(0);
+\& if (BIO_do_accept(abio) <= 0) {
+\& fprintf(stderr, "Error accepting connection\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
\& fprintf(stderr, "Connection 1 established\en");
+\&
\& /* Retrieve BIO for connection */
\& cbio = BIO_pop(abio);
\& BIO_puts(cbio, "Connection 1: Sending out Data on initial connection\en");
\& fprintf(stderr, "Sent out data on connection 1\en");
+\&
\& /* Wait for another connection */
-\& if(BIO_do_accept(abio) <= 0) {
-\& fprintf(stderr, "Error accepting connection\en");
-\& ERR_print_errors_fp(stderr);
-\& exit(0);
+\& if (BIO_do_accept(abio) <= 0) {
+\& fprintf(stderr, "Error accepting connection\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
\& }
\& fprintf(stderr, "Connection 2 established\en");
+\&
\& /* Close accept BIO to refuse further connections */
\& cbio2 = BIO_pop(abio);
\& BIO_free(abio);
@@ -319,10 +346,16 @@ down each and finally closes both down.
\& fprintf(stderr, "Sent out data on connection 2\en");
\&
\& BIO_puts(cbio, "Connection 1: Second connection established\en");
+\&
\& /* Close the two established connections */
\& BIO_free(cbio);
\& BIO_free(cbio2);
.Ve
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_s_bio.3 b/secure/lib/libcrypto/man/BIO_s_bio.3
index 68732cc44e87..e9a186b7693f 100644
--- a/secure/lib/libcrypto/man/BIO_s_bio.3
+++ b/secure/lib/libcrypto/man/BIO_s_bio.3
@@ -128,40 +128,34 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_s_bio 3"
-.TH BIO_s_bio 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_S_BIO 3"
+.TH BIO_S_BIO 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_s_bio, BIO_make_bio_pair, BIO_destroy_bio_pair, BIO_shutdown_wr,
-BIO_set_write_buf_size, BIO_get_write_buf_size, BIO_new_bio_pair,
-BIO_get_write_guarantee, BIO_ctrl_get_write_guarantee, BIO_get_read_request,
-BIO_ctrl_get_read_request, BIO_ctrl_reset_read_request \- BIO pair BIO
+BIO_s_bio, BIO_make_bio_pair, BIO_destroy_bio_pair, BIO_shutdown_wr, BIO_set_write_buf_size, BIO_get_write_buf_size, BIO_new_bio_pair, BIO_get_write_guarantee, BIO_ctrl_get_write_guarantee, BIO_get_read_request, BIO_ctrl_get_read_request, BIO_ctrl_reset_read_request \- BIO pair BIO
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD *BIO_s_bio(void);
+\& const BIO_METHOD *BIO_s_bio(void);
\&
-\& #define BIO_make_bio_pair(b1,b2) (int)BIO_ctrl(b1,BIO_C_MAKE_BIO_PAIR,0,b2)
-\& #define BIO_destroy_bio_pair(b) (int)BIO_ctrl(b,BIO_C_DESTROY_BIO_PAIR,0,NULL)
+\& int BIO_make_bio_pair(BIO *b1, BIO *b2);
+\& int BIO_destroy_bio_pair(BIO *b);
+\& int BIO_shutdown_wr(BIO *b);
\&
-\& #define BIO_shutdown_wr(b) (int)BIO_ctrl(b, BIO_C_SHUTDOWN_WR, 0, NULL)
-\&
-\& #define BIO_set_write_buf_size(b,size) (int)BIO_ctrl(b,BIO_C_SET_WRITE_BUF_SIZE,size,NULL)
-\& #define BIO_get_write_buf_size(b,size) (size_t)BIO_ctrl(b,BIO_C_GET_WRITE_BUF_SIZE,size,NULL)
+\& int BIO_set_write_buf_size(BIO *b, long size);
+\& size_t BIO_get_write_buf_size(BIO *b, long size);
\&
\& int BIO_new_bio_pair(BIO **bio1, size_t writebuf1, BIO **bio2, size_t writebuf2);
\&
-\& #define BIO_get_write_guarantee(b) (int)BIO_ctrl(b,BIO_C_GET_WRITE_GUARANTEE,0,NULL)
+\& int BIO_get_write_guarantee(BIO *b);
\& size_t BIO_ctrl_get_write_guarantee(BIO *b);
-\&
-\& #define BIO_get_read_request(b) (int)BIO_ctrl(b,BIO_C_GET_READ_REQUEST,0,NULL)
+\& int BIO_get_read_request(BIO *b);
\& size_t BIO_ctrl_get_read_request(BIO *b);
-\&
\& int BIO_ctrl_reset_read_request(BIO *b);
.Ve
.SH "DESCRIPTION"
@@ -179,10 +173,10 @@ One typical use of \s-1BIO\s0 pairs is to place \s-1TLS/SSL I/O\s0 under applica
can be used when the application wishes to use a non standard transport for
\&\s-1TLS/SSL\s0 or the normal socket routines are inappropriate.
.PP
-Calls to \fIBIO_read()\fR will read data from the buffer or request a retry if no
+Calls to \fIBIO_read_ex()\fR will read data from the buffer or request a retry if no
data is available.
.PP
-Calls to \fIBIO_write()\fR will place data in the buffer or request a retry if the
+Calls to \fIBIO_write_ex()\fR will place data in the buffer or request a retry if the
buffer is full.
.PP
The standard calls \fIBIO_ctrl_pending()\fR and \fIBIO_ctrl_wpending()\fR can be used to
@@ -215,9 +209,9 @@ zero then the default size is used. \fIBIO_new_bio_pair()\fR does not check whe
.PP
\&\fIBIO_get_write_guarantee()\fR and \fIBIO_ctrl_get_write_guarantee()\fR return the maximum
length of data that can be currently written to the \s-1BIO.\s0 Writes larger than this
-value will return a value from \fIBIO_write()\fR less than the amount requested or if the
-buffer is full request a retry. \fIBIO_ctrl_get_write_guarantee()\fR is a function
-whereas \fIBIO_get_write_guarantee()\fR is a macro.
+value will return a value from \fIBIO_write_ex()\fR less than the amount requested or
+if the buffer is full request a retry. \fIBIO_ctrl_get_write_guarantee()\fR is a
+function whereas \fIBIO_get_write_guarantee()\fR is a macro.
.PP
\&\fIBIO_get_read_request()\fR and \fIBIO_ctrl_get_read_request()\fR return the
amount of data requested, or the buffer size if it is less, if the
@@ -245,15 +239,20 @@ it to the underlying transport. This must be done before any normal processing
(such as calling \fIselect()\fR ) due to a request and \fIBIO_should_read()\fR being true.
.PP
To see why this is important consider a case where a request is sent using
-\&\fIBIO_write()\fR and a response read with \fIBIO_read()\fR, this can occur during an
-\&\s-1TLS/SSL\s0 handshake for example. \fIBIO_write()\fR will succeed and place data in the write
-buffer. \fIBIO_read()\fR will initially fail and \fIBIO_should_read()\fR will be true. If
-the application then waits for data to be available on the underlying transport
-before flushing the write buffer it will never succeed because the request was
-never sent!
+\&\fIBIO_write_ex()\fR and a response read with \fIBIO_read_ex()\fR, this can occur during an
+\&\s-1TLS/SSL\s0 handshake for example. \fIBIO_write_ex()\fR will succeed and place data in the
+write buffer. \fIBIO_read_ex()\fR will initially fail and \fIBIO_should_read()\fR will be
+true. If the application then waits for data to be available on the underlying
+transport before flushing the write buffer it will never succeed because the
+request was never sent!
.PP
\&\fIBIO_eof()\fR is true if no data is in the peer \s-1BIO\s0 and the peer \s-1BIO\s0 has been
shutdown.
+.PP
+\&\fIBIO_make_bio_pair()\fR, \fIBIO_destroy_bio_pair()\fR, \fIBIO_shutdown_wr()\fR,
+\&\fIBIO_set_write_buf_size()\fR, \fIBIO_get_write_buf_size()\fR,
+\&\fIBIO_get_write_guarantee()\fR, and \fIBIO_get_read_request()\fR are implemented
+as macros.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
\&\fIBIO_new_bio_pair()\fR returns 1 on success, with the new BIOs available in
@@ -267,12 +266,13 @@ The \s-1BIO\s0 pair can be used to have full control over the network access of
application. The application can call \fIselect()\fR on the socket as required
without having to go through the SSL-interface.
.PP
-.Vb 6
+.Vb 1
\& BIO *internal_bio, *network_bio;
+\&
\& ...
-\& BIO_new_bio_pair(internal_bio, 0, network_bio, 0);
+\& BIO_new_bio_pair(&internal_bio, 0, &network_bio, 0);
\& SSL_set_bio(ssl, internal_bio, internal_bio);
-\& SSL_operations();
+\& SSL_operations(); /* e.g SSL_read and SSL_write */
\& ...
\&
\& application | TLS\-engine
@@ -281,9 +281,13 @@ without having to go through the SSL-interface.
\& | /\e ||
\& | || \e/
\& | BIO\-pair (internal_bio)
-\& +\-\-\-\-\-\-\-\-\-\-< BIO\-pair (network_bio)
+\& | BIO\-pair (network_bio)
+\& | || /\e
+\& | \e/ ||
+\& +\-\-\-\-\-\-\-\-\-\-\-< BIO_operations()
\& | |
-\& socket |
+\& | |
+\& socket
\&
\& ...
\& SSL_free(ssl); /* implicitly frees internal_bio */
@@ -297,17 +301,25 @@ buffer is full or the read buffer is drained. Then the application has to
flush the write buffer and/or fill the read buffer.
.PP
Use the \fIBIO_ctrl_pending()\fR, to find out whether data is buffered in the \s-1BIO\s0
-and must be transfered to the network. Use \fIBIO_ctrl_get_read_request()\fR to
+and must be transferred to the network. Use \fIBIO_ctrl_get_read_request()\fR to
find out, how many bytes must be written into the buffer before the
\&\fISSL_operation()\fR can successfully be continued.
.SH "WARNING"
.IX Header "WARNING"
-As the data is buffered, \fISSL_operation()\fR may return with a \s-1ERROR_SSL_WANT_READ\s0
+As the data is buffered, \fISSL_operation()\fR may return with an \s-1ERROR_SSL_WANT_READ\s0
condition, but there is still data in the write buffer. An application must
not rely on the error value of \fISSL_operation()\fR but must assure that the
write buffer is always flushed first. Otherwise a deadlock may occur as
the peer might be waiting for the data before being able to continue.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
-\&\fISSL_set_bio\fR\|(3), \fIssl\fR\|(3), \fIbio\fR\|(3),
-\&\fIBIO_should_retry\fR\|(3), \fIBIO_read\fR\|(3)
+\&\fISSL_set_bio\fR\|(3), \fIssl\fR\|(7), \fIbio\fR\|(7),
+\&\fIBIO_should_retry\fR\|(3), \fIBIO_read_ex\fR\|(3)
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_s_connect.3 b/secure/lib/libcrypto/man/BIO_s_connect.3
index bc361071e98d..39a6f1842f68 100644
--- a/secure/lib/libcrypto/man/BIO_s_connect.3
+++ b/secure/lib/libcrypto/man/BIO_s_connect.3
@@ -128,34 +128,31 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_s_connect 3"
-.TH BIO_s_connect 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_S_CONNECT 3"
+.TH BIO_S_CONNECT 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_s_connect, BIO_new_connect, BIO_set_conn_hostname, BIO_set_conn_port,
-BIO_set_conn_ip, BIO_set_conn_int_port, BIO_get_conn_hostname,
-BIO_get_conn_port, BIO_get_conn_ip, BIO_get_conn_int_port,
-BIO_set_nbio, BIO_do_connect \- connect BIO
+BIO_set_conn_address, BIO_get_conn_address, BIO_s_connect, BIO_new_connect, BIO_set_conn_hostname, BIO_set_conn_port, BIO_set_conn_ip_family, BIO_get_conn_ip_family, BIO_get_conn_hostname, BIO_get_conn_port, BIO_set_nbio, BIO_do_connect \- connect BIO
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD * BIO_s_connect(void);
+\& const BIO_METHOD * BIO_s_connect(void);
\&
\& BIO *BIO_new_connect(char *name);
\&
\& long BIO_set_conn_hostname(BIO *b, char *name);
\& long BIO_set_conn_port(BIO *b, char *port);
-\& long BIO_set_conn_ip(BIO *b, char *ip);
-\& long BIO_set_conn_int_port(BIO *b, char *port);
-\& char *BIO_get_conn_hostname(BIO *b);
-\& char *BIO_get_conn_port(BIO *b);
-\& char *BIO_get_conn_ip(BIO *b);
-\& long BIO_get_conn_int_port(BIO *b);
+\& long BIO_set_conn_address(BIO *b, BIO_ADDR *addr);
+\& long BIO_set_conn_ip_family(BIO *b, long family);
+\& const char *BIO_get_conn_hostname(BIO *b);
+\& const char *BIO_get_conn_port(BIO *b);
+\& const BIO_ADDR *BIO_get_conn_address(BIO *b);
+\& const long BIO_get_conn_ip_family(BIO *b);
\&
\& long BIO_set_nbio(BIO *b, long n);
\&
@@ -190,36 +187,37 @@ it also returns the socket . If \fBc\fR is not \s-1NULL\s0 it should be of
type (int *).
.PP
\&\fIBIO_set_conn_hostname()\fR uses the string \fBname\fR to set the hostname.
-The hostname can be an \s-1IP\s0 address. The hostname can also include the
-port in the form hostname:port . It is also acceptable to use the
-form \*(L"hostname/any/other/path\*(R" or \*(L"hostname:port/any/other/path\*(R".
+The hostname can be an \s-1IP\s0 address; if the address is an IPv6 one, it
+must be enclosed with brackets. The hostname can also include the
+port in the form hostname:port.
.PP
\&\fIBIO_set_conn_port()\fR sets the port to \fBport\fR. \fBport\fR can be the
numerical form or a string such as \*(L"http\*(R". A string will be looked
up first using \fIgetservbyname()\fR on the host platform but if that
-fails a standard table of port names will be used. Currently the
-list is http, telnet, socks, https, ssl, ftp, gopher and wais.
+fails a standard table of port names will be used. This internal
+list is http, telnet, socks, https, ssl, ftp, and gopher.
.PP
-\&\fIBIO_set_conn_ip()\fR sets the \s-1IP\s0 address to \fBip\fR using binary form,
-that is four bytes specifying the \s-1IP\s0 address in big-endian form.
+\&\fIBIO_set_conn_address()\fR sets the address and port information using
+a \s-1\fIBIO_ADDR\s0\fR\|(3ssl).
.PP
-\&\fIBIO_set_conn_int_port()\fR sets the port using \fBport\fR. \fBport\fR should
-be of type (int *).
+\&\fIBIO_set_conn_ip_family()\fR sets the \s-1IP\s0 family.
.PP
\&\fIBIO_get_conn_hostname()\fR returns the hostname of the connect \s-1BIO\s0 or
\&\s-1NULL\s0 if the \s-1BIO\s0 is initialized but no hostname is set.
This return value is an internal pointer which should not be modified.
.PP
\&\fIBIO_get_conn_port()\fR returns the port as a string.
+This return value is an internal pointer which should not be modified.
.PP
-\&\fIBIO_get_conn_ip()\fR returns the \s-1IP\s0 address in binary form.
+\&\fIBIO_get_conn_address()\fR returns the address information as a \s-1BIO_ADDR.\s0
+This return value is an internal pointer which should not be modified.
.PP
-\&\fIBIO_get_conn_int_port()\fR returns the port as an int.
+\&\fIBIO_get_conn_ip_family()\fR returns the \s-1IP\s0 family of the connect \s-1BIO.\s0
.PP
\&\fIBIO_set_nbio()\fR sets the non blocking I/O flag to \fBn\fR. If \fBn\fR is
zero then blocking I/O is set. If \fBn\fR is 1 then non blocking I/O
is set. Blocking I/O is the default. The call to \fIBIO_set_nbio()\fR
-should be made before the connection is established because
+should be made before the connection is established because
non blocking I/O is set during the connect process.
.PP
\&\fIBIO_new_connect()\fR combines \fIBIO_new()\fR and \fIBIO_set_conn_hostname()\fR into
@@ -243,10 +241,10 @@ ports. This can be avoided by checking for the presence of the ':'
character in the passed hostname and either indicating an error or
truncating the string at that point.
.PP
-The values returned by \fIBIO_get_conn_hostname()\fR, \fIBIO_get_conn_port()\fR,
-\&\fIBIO_get_conn_ip()\fR and \fIBIO_get_conn_int_port()\fR are updated when a
-connection attempt is made. Before any connection attempt the values
-returned are those set by the application itself.
+The values returned by \fIBIO_get_conn_hostname()\fR, \fIBIO_get_conn_address()\fR,
+and \fIBIO_get_conn_port()\fR are updated when a connection attempt is made.
+Before any connection attempt the values returned are those set by the
+application itself.
.PP
Applications do not have to call \fIBIO_do_connect()\fR but may wish to do
so to separate the connection process from other I/O processing.
@@ -260,10 +258,10 @@ then this is an indication that a connection attempt would block,
the application should then take appropriate action to wait until
the underlying socket has connected and retry the call.
.PP
-\&\fIBIO_set_conn_hostname()\fR, \fIBIO_set_conn_port()\fR, \fIBIO_set_conn_ip()\fR,
-\&\fIBIO_set_conn_int_port()\fR, \fIBIO_get_conn_hostname()\fR, \fIBIO_get_conn_port()\fR,
-\&\fIBIO_get_conn_ip()\fR, \fIBIO_get_conn_int_port()\fR, \fIBIO_set_nbio()\fR and
-\&\fIBIO_do_connect()\fR are macros.
+\&\fIBIO_set_conn_hostname()\fR, \fIBIO_set_conn_port()\fR, \fIBIO_get_conn_hostname()\fR,
+\&\fIBIO_set_conn_address()\fR, \fIBIO_get_conn_port()\fR, \fIBIO_get_conn_address()\fR,
+\&\fIBIO_set_conn_ip_family()\fR, \fIBIO_get_conn_ip_family()\fR,
+\&\fIBIO_set_nbio()\fR, and \fIBIO_do_connect()\fR are macros.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
\&\fIBIO_s_connect()\fR returns the connect \s-1BIO\s0 method.
@@ -271,21 +269,22 @@ the underlying socket has connected and retry the call.
\&\fIBIO_get_fd()\fR returns the socket or \-1 if the \s-1BIO\s0 has not
been initialized.
.PP
-\&\fIBIO_set_conn_hostname()\fR, \fIBIO_set_conn_port()\fR, \fIBIO_set_conn_ip()\fR and
-\&\fIBIO_set_conn_int_port()\fR always return 1.
+\&\fIBIO_set_conn_address()\fR, \fIBIO_set_conn_port()\fR, and \fIBIO_set_conn_ip_family()\fR
+always return 1.
+.PP
+\&\fIBIO_set_conn_hostname()\fR returns 1 on success and 0 on failure.
.PP
-\&\fIBIO_get_conn_hostname()\fR returns the connected hostname or \s-1NULL\s0 is
+\&\fIBIO_get_conn_address()\fR returns the address information or \s-1NULL\s0 if none
+was set.
+.PP
+\&\fIBIO_get_conn_hostname()\fR returns the connected hostname or \s-1NULL\s0 if
none was set.
.PP
+\&\fIBIO_get_conn_ip_family()\fR returns the address family or \-1 if none was set.
+.PP
\&\fIBIO_get_conn_port()\fR returns a string representing the connected
port or \s-1NULL\s0 if not set.
.PP
-\&\fIBIO_get_conn_ip()\fR returns a pointer to the connected \s-1IP\s0 address in
-binary form or all zeros if not set.
-.PP
-\&\fIBIO_get_conn_int_port()\fR returns the connected port or 0 if none was
-set.
-.PP
\&\fIBIO_set_nbio()\fR always returns 1.
.PP
\&\fIBIO_do_connect()\fR returns 1 if the connection was successfully
@@ -295,27 +294,41 @@ established and 0 or \-1 if the connection failed.
This is example connects to a webserver on the local host and attempts
to retrieve a page and copy the result to standard output.
.PP
-.Vb 10
+.Vb 3
\& BIO *cbio, *out;
\& int len;
\& char tmpbuf[1024];
-\& ERR_load_crypto_strings();
+\&
\& cbio = BIO_new_connect("localhost:http");
\& out = BIO_new_fp(stdout, BIO_NOCLOSE);
-\& if(BIO_do_connect(cbio) <= 0) {
-\& fprintf(stderr, "Error connecting to server\en");
-\& ERR_print_errors_fp(stderr);
-\& /* whatever ... */
-\& }
+\& if (BIO_do_connect(cbio) <= 0) {
+\& fprintf(stderr, "Error connecting to server\en");
+\& ERR_print_errors_fp(stderr);
+\& exit(1);
+\& }
\& BIO_puts(cbio, "GET / HTTP/1.0\en\en");
-\& for(;;) {
-\& len = BIO_read(cbio, tmpbuf, 1024);
-\& if(len <= 0) break;
-\& BIO_write(out, tmpbuf, len);
+\& for (;;) {
+\& len = BIO_read(cbio, tmpbuf, 1024);
+\& if (len <= 0)
+\& break;
+\& BIO_write(out, tmpbuf, len);
\& }
\& BIO_free(cbio);
\& BIO_free(out);
.Ve
.SH "SEE ALSO"
.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+\&\s-1\fIBIO_ADDR\s0\fR\|(3)
+.SH "HISTORY"
+.IX Header "HISTORY"
+\&\fIBIO_set_conn_int_port()\fR, \fIBIO_get_conn_int_port()\fR, \fIBIO_set_conn_ip()\fR, and \fIBIO_get_conn_ip()\fR
+were removed in OpenSSL 1.1.0.
+Use \fIBIO_set_conn_address()\fR and \fIBIO_get_conn_address()\fR instead.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_s_fd.3 b/secure/lib/libcrypto/man/BIO_s_fd.3
index 7b84c4939cf9..1bffafc6ffc1 100644
--- a/secure/lib/libcrypto/man/BIO_s_fd.3
+++ b/secure/lib/libcrypto/man/BIO_s_fd.3
@@ -128,8 +128,8 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_s_fd 3"
-.TH BIO_s_fd 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_S_FD 3"
+.TH BIO_S_FD 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -141,10 +141,10 @@ BIO_s_fd, BIO_set_fd, BIO_get_fd, BIO_new_fd \- file descriptor BIO
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD * BIO_s_fd(void);
+\& const BIO_METHOD *BIO_s_fd(void);
\&
-\& #define BIO_set_fd(b,fd,c) BIO_int_ctrl(b,BIO_C_SET_FD,c,fd)
-\& #define BIO_get_fd(b,c) BIO_ctrl(b,BIO_C_GET_FD,0,(char *)c)
+\& int BIO_set_fd(BIO *b, int fd, int c);
+\& int BIO_get_fd(BIO *b, int *c);
\&
\& BIO *BIO_new_fd(int fd, int close_flag);
.Ve
@@ -153,47 +153,44 @@ BIO_s_fd, BIO_set_fd, BIO_get_fd, BIO_new_fd \- file descriptor BIO
\&\fIBIO_s_fd()\fR returns the file descriptor \s-1BIO\s0 method. This is a wrapper
round the platforms file descriptor routines such as \fIread()\fR and \fIwrite()\fR.
.PP
-\&\fIBIO_read()\fR and \fIBIO_write()\fR read or write the underlying descriptor.
+\&\fIBIO_read_ex()\fR and \fIBIO_write_ex()\fR read or write the underlying descriptor.
\&\fIBIO_puts()\fR is supported but \fIBIO_gets()\fR is not.
.PP
-If the close flag is set then then \fIclose()\fR is called on the underlying
+If the close flag is set then \fIclose()\fR is called on the underlying
file descriptor when the \s-1BIO\s0 is freed.
.PP
\&\fIBIO_reset()\fR attempts to change the file pointer to the start of file
-using lseek(fd, 0, 0).
+such as by using \fBlseek(fd, 0, 0)\fR.
.PP
\&\fIBIO_seek()\fR sets the file pointer to position \fBofs\fR from start of file
-using lseek(fd, ofs, 0).
+such as by using \fBlseek(fd, ofs, 0)\fR.
.PP
-\&\fIBIO_tell()\fR returns the current file position by calling lseek(fd, 0, 1).
+\&\fIBIO_tell()\fR returns the current file position such as by calling
+\&\fBlseek(fd, 0, 1)\fR.
.PP
\&\fIBIO_set_fd()\fR sets the file descriptor of \s-1BIO\s0 \fBb\fR to \fBfd\fR and the close
flag to \fBc\fR.
.PP
\&\fIBIO_get_fd()\fR places the file descriptor in \fBc\fR if it is not \s-1NULL,\s0 it also
-returns the file descriptor. If \fBc\fR is not \s-1NULL\s0 it should be of type
-(int *).
+returns the file descriptor.
.PP
\&\fIBIO_new_fd()\fR returns a file descriptor \s-1BIO\s0 using \fBfd\fR and \fBclose_flag\fR.
.SH "NOTES"
.IX Header "NOTES"
-The behaviour of \fIBIO_read()\fR and \fIBIO_write()\fR depends on the behavior of the
-platforms \fIread()\fR and \fIwrite()\fR calls on the descriptor. If the underlying
+The behaviour of \fIBIO_read_ex()\fR and \fIBIO_write_ex()\fR depends on the behavior of the
+platforms \fIread()\fR and \fIwrite()\fR calls on the descriptor. If the underlying
file descriptor is in a non blocking mode then the \s-1BIO\s0 will behave in the
-manner described in the \fIBIO_read\fR\|(3) and \fIBIO_should_retry\fR\|(3)
+manner described in the \fIBIO_read_ex\fR\|(3) and \fIBIO_should_retry\fR\|(3)
manual pages.
.PP
File descriptor BIOs should not be used for socket I/O. Use socket BIOs
instead.
+.PP
+\&\fIBIO_set_fd()\fR and \fIBIO_get_fd()\fR are implemented as macros.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
\&\fIBIO_s_fd()\fR returns the file descriptor \s-1BIO\s0 method.
.PP
-\&\fIBIO_reset()\fR returns zero for success and \-1 if an error occurred.
-\&\fIBIO_seek()\fR and \fIBIO_tell()\fR return the current file position or \-1
-if an error occurred. These values reflect the underlying \fIlseek()\fR
-behaviour.
-.PP
\&\fIBIO_set_fd()\fR always returns 1.
.PP
\&\fIBIO_get_fd()\fR returns the file descriptor or \-1 if the \s-1BIO\s0 has not
@@ -205,8 +202,9 @@ occurred.
.IX Header "EXAMPLE"
This is a file descriptor \s-1BIO\s0 version of \*(L"Hello World\*(R":
.PP
-.Vb 4
+.Vb 1
\& BIO *out;
+\&
\& out = BIO_new_fd(fileno(stdout), BIO_NOCLOSE);
\& BIO_printf(out, "Hello World\en");
\& BIO_free(out);
@@ -214,7 +212,15 @@ This is a file descriptor \s-1BIO\s0 version of \*(L"Hello World\*(R":
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fIBIO_seek\fR\|(3), \fIBIO_tell\fR\|(3),
-\&\fIBIO_reset\fR\|(3), \fIBIO_read\fR\|(3),
-\&\fIBIO_write\fR\|(3), \fIBIO_puts\fR\|(3),
+\&\fIBIO_reset\fR\|(3), \fIBIO_read_ex\fR\|(3),
+\&\fIBIO_write_ex\fR\|(3), \fIBIO_puts\fR\|(3),
\&\fIBIO_gets\fR\|(3), \fIBIO_printf\fR\|(3),
\&\fIBIO_set_close\fR\|(3), \fIBIO_get_close\fR\|(3)
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_s_file.3 b/secure/lib/libcrypto/man/BIO_s_file.3
index f0612d794146..8aca1b90e520 100644
--- a/secure/lib/libcrypto/man/BIO_s_file.3
+++ b/secure/lib/libcrypto/man/BIO_s_file.3
@@ -128,27 +128,25 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_s_file 3"
-.TH BIO_s_file 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_S_FILE 3"
+.TH BIO_S_FILE 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_s_file, BIO_new_file, BIO_new_fp, BIO_set_fp, BIO_get_fp,
-BIO_read_filename, BIO_write_filename, BIO_append_filename,
-BIO_rw_filename \- FILE bio
+BIO_s_file, BIO_new_file, BIO_new_fp, BIO_set_fp, BIO_get_fp, BIO_read_filename, BIO_write_filename, BIO_append_filename, BIO_rw_filename \- FILE bio
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD * BIO_s_file(void);
+\& const BIO_METHOD *BIO_s_file(void);
\& BIO *BIO_new_file(const char *filename, const char *mode);
\& BIO *BIO_new_fp(FILE *stream, int flags);
\&
-\& BIO_set_fp(BIO *b,FILE *fp, int flags);
-\& BIO_get_fp(BIO *b,FILE **fpp);
+\& BIO_set_fp(BIO *b, FILE *fp, int flags);
+\& BIO_get_fp(BIO *b, FILE **fpp);
\&
\& int BIO_read_filename(BIO *b, char *name)
\& int BIO_write_filename(BIO *b, char *name)
@@ -161,7 +159,7 @@ BIO_rw_filename \- FILE bio
is a wrapper round the stdio \s-1FILE\s0 structure and it is a
source/sink \s-1BIO.\s0
.PP
-Calls to \fIBIO_read()\fR and \fIBIO_write()\fR read and write data to the
+Calls to \fIBIO_read_ex()\fR and \fIBIO_write_ex()\fR read and write data to the
underlying stream. \fIBIO_gets()\fR and \fIBIO_puts()\fR are supported on file BIOs.
.PP
\&\fIBIO_flush()\fR on a file \s-1BIO\s0 calls the \fIfflush()\fR function on the wrapped
@@ -187,7 +185,7 @@ flag is set on the returned \s-1BIO.\s0
stream to text mode, default is binary: this only has any effect under
Win32).
.PP
-\&\fIBIO_set_fp()\fR set the fp of a file \s-1BIO\s0 to \fBfp\fR. \fBflags\fR has the same
+\&\fIBIO_set_fp()\fR sets the fp of a file \s-1BIO\s0 to \fBfp\fR. \fBflags\fR has the same
meaning as in \fIBIO_new_fp()\fR, it is a macro.
.PP
\&\fIBIO_get_fp()\fR retrieves the fp of a file \s-1BIO,\s0 it is a macro.
@@ -215,39 +213,48 @@ lingual environment, encode file names in \s-1UTF\-8.\s0
.IX Header "EXAMPLES"
File \s-1BIO\s0 \*(L"hello world\*(R":
.PP
-.Vb 3
+.Vb 1
\& BIO *bio_out;
+\&
\& bio_out = BIO_new_fp(stdout, BIO_NOCLOSE);
\& BIO_printf(bio_out, "Hello World\en");
.Ve
.PP
Alternative technique:
.PP
-.Vb 5
+.Vb 1
\& BIO *bio_out;
+\&
\& bio_out = BIO_new(BIO_s_file());
-\& if(bio_out == NULL) /* Error ... */
-\& if(!BIO_set_fp(bio_out, stdout, BIO_NOCLOSE)) /* Error ... */
+\& if (bio_out == NULL)
+\& /* Error */
+\& if (!BIO_set_fp(bio_out, stdout, BIO_NOCLOSE))
+\& /* Error */
\& BIO_printf(bio_out, "Hello World\en");
.Ve
.PP
Write to a file:
.PP
-.Vb 5
+.Vb 1
\& BIO *out;
+\&
\& out = BIO_new_file("filename.txt", "w");
-\& if(!out) /* Error occurred */
+\& if (!out)
+\& /* Error */
\& BIO_printf(out, "Hello World\en");
\& BIO_free(out);
.Ve
.PP
Alternative technique:
.PP
-.Vb 6
+.Vb 1
\& BIO *out;
+\&
\& out = BIO_new(BIO_s_file());
-\& if(out == NULL) /* Error ... */
-\& if(!BIO_write_filename(out, "filename.txt")) /* Error ... */
+\& if (out == NULL)
+\& /* Error */
+\& if (!BIO_write_filename(out, "filename.txt"))
+\& /* Error */
\& BIO_printf(out, "Hello World\en");
\& BIO_free(out);
.Ve
@@ -266,7 +273,7 @@ occurred.
.PP
\&\fIBIO_tell()\fR returns the current file position.
.PP
-\&\fIBIO_read_filename()\fR, \fIBIO_write_filename()\fR, \fIBIO_append_filename()\fR and
+\&\fIBIO_read_filename()\fR, \fIBIO_write_filename()\fR, \fIBIO_append_filename()\fR and
\&\fIBIO_rw_filename()\fR return 1 for success or 0 for failure.
.SH "BUGS"
.IX Header "BUGS"
@@ -278,7 +285,15 @@ occurred this differs from other types of \s-1BIO\s0 which will typically return
.IX Header "SEE ALSO"
\&\fIBIO_seek\fR\|(3), \fIBIO_tell\fR\|(3),
\&\fIBIO_reset\fR\|(3), \fIBIO_flush\fR\|(3),
-\&\fIBIO_read\fR\|(3),
-\&\fIBIO_write\fR\|(3), \fIBIO_puts\fR\|(3),
+\&\fIBIO_read_ex\fR\|(3),
+\&\fIBIO_write_ex\fR\|(3), \fIBIO_puts\fR\|(3),
\&\fIBIO_gets\fR\|(3), \fIBIO_printf\fR\|(3),
\&\fIBIO_set_close\fR\|(3), \fIBIO_get_close\fR\|(3)
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_s_mem.3 b/secure/lib/libcrypto/man/BIO_s_mem.3
index 9486ceb89f85..21bdd95faecd 100644
--- a/secure/lib/libcrypto/man/BIO_s_mem.3
+++ b/secure/lib/libcrypto/man/BIO_s_mem.3
@@ -128,37 +128,40 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_s_mem 3"
-.TH BIO_s_mem 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_S_MEM 3"
+.TH BIO_S_MEM 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_s_mem, BIO_set_mem_eof_return, BIO_get_mem_data, BIO_set_mem_buf,
-BIO_get_mem_ptr, BIO_new_mem_buf \- memory BIO
+BIO_s_secmem, BIO_s_mem, BIO_set_mem_eof_return, BIO_get_mem_data, BIO_set_mem_buf, BIO_get_mem_ptr, BIO_new_mem_buf \- memory BIO
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD * BIO_s_mem(void);
+\& const BIO_METHOD *BIO_s_mem(void);
+\& const BIO_METHOD *BIO_s_secmem(void);
\&
-\& BIO_set_mem_eof_return(BIO *b,int v)
+\& BIO_set_mem_eof_return(BIO *b, int v)
\& long BIO_get_mem_data(BIO *b, char **pp)
-\& BIO_set_mem_buf(BIO *b,BUF_MEM *bm,int c)
-\& BIO_get_mem_ptr(BIO *b,BUF_MEM **pp)
+\& BIO_set_mem_buf(BIO *b, BUF_MEM *bm, int c)
+\& BIO_get_mem_ptr(BIO *b, BUF_MEM **pp)
\&
\& BIO *BIO_new_mem_buf(const void *buf, int len);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
-\&\fIBIO_s_mem()\fR return the memory \s-1BIO\s0 method function.
+\&\fIBIO_s_mem()\fR returns the memory \s-1BIO\s0 method function.
.PP
A memory \s-1BIO\s0 is a source/sink \s-1BIO\s0 which uses memory for its I/O. Data
written to a memory \s-1BIO\s0 is stored in a \s-1BUF_MEM\s0 structure which is extended
as appropriate to accommodate the stored data.
.PP
+\&\fIBIO_s_secmem()\fR is like \fIBIO_s_mem()\fR except that the secure heap is used
+for buffer storage.
+.PP
Any data written to a memory \s-1BIO\s0 can be recalled by reading from it.
Unless the memory \s-1BIO\s0 is read only any data read from it is deleted from
the \s-1BIO.\s0
@@ -168,9 +171,10 @@ Memory BIOs support \fIBIO_gets()\fR and \fIBIO_puts()\fR.
If the \s-1BIO_CLOSE\s0 flag is set when a memory \s-1BIO\s0 is freed then the underlying
\&\s-1BUF_MEM\s0 structure is also freed.
.PP
-Calling \fIBIO_reset()\fR on a read write memory \s-1BIO\s0 clears any data in it. On a
-read only \s-1BIO\s0 it restores the \s-1BIO\s0 to its original state and the read only
-data can be read again.
+Calling \fIBIO_reset()\fR on a read write memory \s-1BIO\s0 clears any data in it if the
+flag \s-1BIO_FLAGS_NONCLEAR_RST\s0 is not set. On a read only \s-1BIO\s0 or if the flag
+\&\s-1BIO_FLAGS_NONCLEAR_RST\s0 is set it restores the \s-1BIO\s0 to its original state and
+the data can be read again.
.PP
\&\fIBIO_eof()\fR is true if no data is in the \s-1BIO.\s0
.PP
@@ -210,40 +214,51 @@ an internal copy operation, if a \s-1BIO\s0 contains a lot of data and it is
read in small chunks the operation can be very slow. The use of a read only
memory \s-1BIO\s0 avoids this problem. If the \s-1BIO\s0 must be read write then adding
a buffering \s-1BIO\s0 to the chain will speed up the process.
+.PP
+Calling \fIBIO_set_mem_buf()\fR on a \s-1BIO\s0 created with \fIBIO_new_secmem()\fR will
+give undefined results, including perhaps a program crash.
.SH "BUGS"
.IX Header "BUGS"
There should be an option to set the maximum size of a memory \s-1BIO.\s0
-.PP
-There should be a way to \*(L"rewind\*(R" a read write \s-1BIO\s0 without destroying
-its contents.
-.PP
-The copying operation should not occur after every small read of a large \s-1BIO\s0
-to improve efficiency.
.SH "EXAMPLE"
.IX Header "EXAMPLE"
Create a memory \s-1BIO\s0 and write some data to it:
.PP
-.Vb 2
+.Vb 1
\& BIO *mem = BIO_new(BIO_s_mem());
+\&
\& BIO_puts(mem, "Hello World\en");
.Ve
.PP
Create a read only memory \s-1BIO:\s0
.PP
-.Vb 3
+.Vb 2
\& char data[] = "Hello World";
-\& BIO *mem;
-\& mem = BIO_new_mem_buf(data, \-1);
+\& BIO *mem = BIO_new_mem_buf(data, \-1);
.Ve
.PP
Extract the \s-1BUF_MEM\s0 structure from a memory \s-1BIO\s0 and then free up the \s-1BIO:\s0
.PP
-.Vb 4
+.Vb 1
\& BUF_MEM *bptr;
+\&
\& BIO_get_mem_ptr(mem, &bptr);
\& BIO_set_close(mem, BIO_NOCLOSE); /* So BIO_free() leaves BUF_MEM alone */
\& BIO_free(mem);
.Ve
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIBIO_s_mem()\fR and \fIBIO_s_secmem()\fR return a valid memory \fB\s-1BIO_METHOD\s0\fR structure.
+.PP
+\&\fIBIO_set_mem_eof_return()\fR, \fIBIO_get_mem_data()\fR, \fIBIO_set_mem_buf()\fR and \fIBIO_get_mem_ptr()\fR
+return 1 on success or a value which is less than or equal to 0 if an error occurred.
+.PP
+\&\fIBIO_new_mem_buf()\fR returns a valid \fB\s-1BIO\s0\fR structure on success or \s-1NULL\s0 on error.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_s_null.3 b/secure/lib/libcrypto/man/BIO_s_null.3
index c80aad1fb761..a8ca782dbe22 100644
--- a/secure/lib/libcrypto/man/BIO_s_null.3
+++ b/secure/lib/libcrypto/man/BIO_s_null.3
@@ -128,8 +128,8 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_s_null 3"
-.TH BIO_s_null 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_S_NULL 3"
+.TH BIO_S_NULL 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -141,7 +141,7 @@ BIO_s_null \- null data sink
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD * BIO_s_null(void);
+\& const BIO_METHOD *BIO_s_null(void);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -162,6 +162,11 @@ by adding a null sink \s-1BIO\s0 to the end of the chain
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
\&\fIBIO_s_null()\fR returns the null sink \s-1BIO\s0 method.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_s_socket.3 b/secure/lib/libcrypto/man/BIO_s_socket.3
index 4e173d688048..368ee4941f5e 100644
--- a/secure/lib/libcrypto/man/BIO_s_socket.3
+++ b/secure/lib/libcrypto/man/BIO_s_socket.3
@@ -128,8 +128,8 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_s_socket 3"
-.TH BIO_s_socket 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_S_SOCKET 3"
+.TH BIO_S_SOCKET 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -141,10 +141,7 @@ BIO_s_socket, BIO_new_socket \- socket BIO
.Vb 1
\& #include <openssl/bio.h>
\&
-\& BIO_METHOD *BIO_s_socket(void);
-\&
-\& long BIO_set_fd(BIO *b, int fd, long close_flag);
-\& long BIO_get_fd(BIO *b, int *c);
+\& const BIO_METHOD *BIO_s_socket(void);
\&
\& BIO *BIO_new_socket(int sock, int close_flag);
.Ve
@@ -153,18 +150,12 @@ BIO_s_socket, BIO_new_socket \- socket BIO
\&\fIBIO_s_socket()\fR returns the socket \s-1BIO\s0 method. This is a wrapper
round the platform's socket routines.
.PP
-\&\fIBIO_read()\fR and \fIBIO_write()\fR read or write the underlying socket.
+\&\fIBIO_read_ex()\fR and \fIBIO_write_ex()\fR read or write the underlying socket.
\&\fIBIO_puts()\fR is supported but \fIBIO_gets()\fR is not.
.PP
If the close flag is set then the socket is shut down and closed
when the \s-1BIO\s0 is freed.
.PP
-\&\fIBIO_set_fd()\fR sets the socket of \s-1BIO\s0 \fBb\fR to \fBfd\fR and the close
-flag to \fBclose_flag\fR.
-.PP
-\&\fIBIO_get_fd()\fR places the socket in \fBc\fR if it is not \s-1NULL,\s0 it also
-returns the socket. If \fBc\fR is not \s-1NULL\s0 it should be of type (int *).
-.PP
\&\fIBIO_new_socket()\fR returns a socket \s-1BIO\s0 using \fBsock\fR and \fBclose_flag\fR.
.SH "NOTES"
.IX Header "NOTES"
@@ -175,19 +166,17 @@ The reason for having separate file descriptor and socket BIOs is that on some
platforms sockets are not file descriptors and use distinct I/O routines,
Windows is one such platform. Any code mixing the two will not work on
all platforms.
-.PP
-\&\fIBIO_set_fd()\fR and \fIBIO_get_fd()\fR are macros.
.SH "RETURN VALUES"
.IX Header "RETURN VALUES"
\&\fIBIO_s_socket()\fR returns the socket \s-1BIO\s0 method.
.PP
-\&\fIBIO_set_fd()\fR always returns 1.
-.PP
-\&\fIBIO_get_fd()\fR returns the socket or \-1 if the \s-1BIO\s0 has not been
-initialized.
-.PP
\&\fIBIO_new_socket()\fR returns the newly allocated \s-1BIO\s0 or \s-1NULL\s0 is an error
occurred.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_set_callback.3 b/secure/lib/libcrypto/man/BIO_set_callback.3
index 5619a14cbb51..965e80ba7902 100644
--- a/secure/lib/libcrypto/man/BIO_set_callback.3
+++ b/secure/lib/libcrypto/man/BIO_set_callback.3
@@ -128,102 +128,261 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_set_callback 3"
-.TH BIO_set_callback 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_SET_CALLBACK 3"
+.TH BIO_SET_CALLBACK 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_set_callback, BIO_get_callback, BIO_set_callback_arg, BIO_get_callback_arg,
-BIO_debug_callback \- BIO callback functions
+BIO_set_callback_ex, BIO_get_callback_ex, BIO_set_callback, BIO_get_callback, BIO_set_callback_arg, BIO_get_callback_arg, BIO_debug_callback, BIO_callback_fn_ex, BIO_callback_fn \&\- BIO callback functions
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& #define BIO_set_callback(b,cb) ((b)\->callback=(cb))
-\& #define BIO_get_callback(b) ((b)\->callback)
-\& #define BIO_set_callback_arg(b,arg) ((b)\->cb_arg=(char *)(arg))
-\& #define BIO_get_callback_arg(b) ((b)\->cb_arg)
+\& typedef long (*BIO_callback_fn_ex)(BIO *b, int oper, const char *argp,
+\& size_t len, int argi,
+\& long argl, int ret, size_t *processed);
+\& typedef long (*BIO_callback_fn)(BIO *b, int oper, const char *argp, int argi,
+\& long argl, long ret);
\&
-\& long BIO_debug_callback(BIO *bio,int cmd,const char *argp,int argi,
-\& long argl,long ret);
+\& void BIO_set_callback_ex(BIO *b, BIO_callback_fn_ex callback);
+\& BIO_callback_fn_ex BIO_get_callback_ex(const BIO *b);
\&
-\& typedef long (*callback)(BIO *b, int oper, const char *argp,
-\& int argi, long argl, long retvalue);
+\& void BIO_set_callback(BIO *b, BIO_callback_fn cb);
+\& BIO_callback_fn BIO_get_callback(BIO *b);
+\& void BIO_set_callback_arg(BIO *b, char *arg);
+\& char *BIO_get_callback_arg(const BIO *b);
+\&
+\& long BIO_debug_callback(BIO *bio, int cmd, const char *argp, int argi,
+\& long argl, long ret);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
-\&\fIBIO_set_callback()\fR and \fIBIO_get_callback()\fR set and retrieve the \s-1BIO\s0 callback,
-they are both macros. The callback is called during most high level \s-1BIO\s0
-operations. It can be used for debugging purposes to trace operations on
-a \s-1BIO\s0 or to modify its operation.
+\&\fIBIO_set_callback_ex()\fR and \fIBIO_get_callback_ex()\fR set and retrieve the \s-1BIO\s0
+callback. The callback is called during most high level \s-1BIO\s0 operations. It can
+be used for debugging purposes to trace operations on a \s-1BIO\s0 or to modify its
+operation.
+.PP
+\&\fIBIO_set_callback()\fR and \fIBIO_get_callback()\fR set and retrieve the old format \s-1BIO\s0
+callback. New code should not use these functions, but they are retained for
+backwards compatibility. Any callback set via \fIBIO_set_callback_ex()\fR will get
+called in preference to any set by \fIBIO_set_callback()\fR.
.PP
\&\fIBIO_set_callback_arg()\fR and \fIBIO_get_callback_arg()\fR are macros which can be
used to set and retrieve an argument for use in the callback.
.PP
\&\fIBIO_debug_callback()\fR is a standard debugging callback which prints
out information relating to each \s-1BIO\s0 operation. If the callback
-argument is set if is interpreted as a \s-1BIO\s0 to send the information
+argument is set it is interpreted as a \s-1BIO\s0 to send the information
to, otherwise stderr is used.
.PP
-\&\fIcallback()\fR is the callback function itself. The meaning of each
-argument is described below.
-.PP
+\&\fIBIO_callback_fn_ex()\fR is the type of the callback function and \fIBIO_callback_fn()\fR
+is the type of the old format callback function. The meaning of each argument
+is described below:
+.IP "\fBb\fR" 4
+.IX Item "b"
The \s-1BIO\s0 the callback is attached to is passed in \fBb\fR.
-.PP
+.IP "\fBoper\fR" 4
+.IX Item "oper"
\&\fBoper\fR is set to the operation being performed. For some operations
the callback is called twice, once before and once after the actual
operation, the latter case has \fBoper\fR or'ed with \s-1BIO_CB_RETURN.\s0
-.PP
+.IP "\fBlen\fR" 4
+.IX Item "len"
+The length of the data requested to be read or written. This is only useful if
+\&\fBoper\fR is \s-1BIO_CB_READ, BIO_CB_WRITE\s0 or \s-1BIO_CB_GETS.\s0
+.IP "\fBargp\fR \fBargi\fR \fBargl\fR" 4
+.IX Item "argp argi argl"
The meaning of the arguments \fBargp\fR, \fBargi\fR and \fBargl\fR depends on
the value of \fBoper\fR, that is the operation being performed.
-.PP
-\&\fBretvalue\fR is the return value that would be returned to the
+.IP "\fBprocessed\fR" 4
+.IX Item "processed"
+\&\fBprocessed\fR is a pointer to a location which will be updated with the amount of
+data that was actually read or written. Only used for \s-1BIO_CB_READ, BIO_CB_WRITE,
+BIO_CB_GETS\s0 and \s-1BIO_CB_PUTS.\s0
+.IP "\fBret\fR" 4
+.IX Item "ret"
+\&\fBret\fR is the return value that would be returned to the
application if no callback were present. The actual value returned
is the return value of the callback itself. In the case of callbacks
-called before the actual \s-1BIO\s0 operation 1 is placed in retvalue, if
+called before the actual \s-1BIO\s0 operation 1 is placed in \fBret\fR, if
the return value is not positive it will be immediately returned to
the application and the \s-1BIO\s0 operation will not be performed.
.PP
-The callback should normally simply return \fBretvalue\fR when it has
-finished processing, unless if specifically wishes to modify the
+The callback should normally simply return \fBret\fR when it has
+finished processing, unless it specifically wishes to modify the
value returned to the application.
.SH "CALLBACK OPERATIONS"
.IX Header "CALLBACK OPERATIONS"
+In the notes below, \fBcallback\fR defers to the actual callback
+function that is called.
.IP "\fBBIO_free(b)\fR" 4
.IX Item "BIO_free(b)"
-callback(b, \s-1BIO_CB_FREE, NULL, 0L, 0L, 1L\s0) is called before the
-free operation.
-.IP "\fBBIO_read(b, out, outl)\fR" 4
-.IX Item "BIO_read(b, out, outl)"
-callback(b, \s-1BIO_CB_READ,\s0 out, outl, 0L, 1L) is called before
-the read and callback(b, BIO_CB_READ|BIO_CB_RETURN, out, outl, 0L, retvalue)
+.Vb 1
+\& callback_ex(b, BIO_CB_FREE, NULL, 0, 0, 0L, 1L, NULL)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_FREE, NULL, 0L, 0L, 1L)
+.Ve
+.Sp
+is called before the free operation.
+.IP "\fBBIO_read_ex(b, data, dlen, readbytes)\fR" 4
+.IX Item "BIO_read_ex(b, data, dlen, readbytes)"
+.Vb 1
+\& callback_ex(b, BIO_CB_READ, data, dlen, 0, 0L, 1L, NULL)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_READ, data, dlen, 0L, 1L)
+.Ve
+.Sp
+is called before the read and
+.Sp
+.Vb 2
+\& callback_ex(b, BIO_CB_READ | BIO_CB_RETURN, data, dlen, 0, 0L, retvalue,
+\& &readbytes)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_READ|BIO_CB_RETURN, data, dlen, 0L, retvalue)
+.Ve
+.Sp
after.
-.IP "\fBBIO_write(b, in, inl)\fR" 4
-.IX Item "BIO_write(b, in, inl)"
-callback(b, \s-1BIO_CB_WRITE,\s0 in, inl, 0L, 1L) is called before
-the write and callback(b, BIO_CB_WRITE|BIO_CB_RETURN, in, inl, 0L, retvalue)
+.IP "\fBBIO_write(b, data, dlen, written)\fR" 4
+.IX Item "BIO_write(b, data, dlen, written)"
+.Vb 1
+\& callback_ex(b, BIO_CB_WRITE, data, dlen, 0, 0L, 1L, NULL)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_WRITE, datat, dlen, 0L, 1L)
+.Ve
+.Sp
+is called before the write and
+.Sp
+.Vb 2
+\& callback_ex(b, BIO_CB_WRITE | BIO_CB_RETURN, data, dlen, 0, 0L, retvalue,
+\& &written)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_WRITE|BIO_CB_RETURN, data, dlen, 0L, retvalue)
+.Ve
+.Sp
after.
-.IP "\fBBIO_gets(b, out, outl)\fR" 4
-.IX Item "BIO_gets(b, out, outl)"
-callback(b, \s-1BIO_CB_GETS,\s0 out, outl, 0L, 1L) is called before
-the operation and callback(b, BIO_CB_GETS|BIO_CB_RETURN, out, outl, 0L, retvalue)
+.IP "\fBBIO_gets(b, buf, size)\fR" 4
+.IX Item "BIO_gets(b, buf, size)"
+.Vb 1
+\& callback_ex(b, BIO_CB_GETS, buf, size, 0, 0L, 1, NULL, NULL)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_GETS, buf, size, 0L, 1L)
+.Ve
+.Sp
+is called before the operation and
+.Sp
+.Vb 2
+\& callback_ex(b, BIO_CB_GETS | BIO_CB_RETURN, buf, size, 0, 0L, retvalue,
+\& &readbytes)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_GETS|BIO_CB_RETURN, buf, size, 0L, retvalue)
+.Ve
+.Sp
after.
-.IP "\fBBIO_puts(b, in)\fR" 4
-.IX Item "BIO_puts(b, in)"
-callback(b, \s-1BIO_CB_WRITE,\s0 in, 0, 0L, 1L) is called before
-the operation and callback(b, BIO_CB_WRITE|BIO_CB_RETURN, in, 0, 0L, retvalue)
+.IP "\fBBIO_puts(b, buf)\fR" 4
+.IX Item "BIO_puts(b, buf)"
+.Vb 1
+\& callback_ex(b, BIO_CB_PUTS, buf, 0, 0, 0L, 1L, NULL);
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_PUTS, buf, 0, 0L, 1L)
+.Ve
+.Sp
+is called before the operation and
+.Sp
+.Vb 1
+\& callback_ex(b, BIO_CB_PUTS | BIO_CB_RETURN, buf, 0, 0, 0L, retvalue, &written)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_PUTS|BIO_CB_RETURN, buf, 0, 0L, retvalue)
+.Ve
+.Sp
after.
.IP "\fBBIO_ctrl(\s-1BIO\s0 *b, int cmd, long larg, void *parg)\fR" 4
.IX Item "BIO_ctrl(BIO *b, int cmd, long larg, void *parg)"
-callback(b,BIO_CB_CTRL,parg,cmd,larg,1L) is called before the call and
-callback(b,BIO_CB_CTRL|BIO_CB_RETURN,parg,cmd, larg,ret) after.
+.Vb 1
+\& callback_ex(b, BIO_CB_CTRL, parg, 0, cmd, larg, 1L, NULL)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_CTRL, parg, cmd, larg, 1L)
+.Ve
+.Sp
+is called before the call and
+.Sp
+.Vb 1
+\& callback_ex(b, BIO_CB_CTRL | BIO_CB_RETURN, parg, 0, cmd, larg, ret, NULL)
+.Ve
+.Sp
+or
+.Sp
+.Vb 1
+\& callback(b, BIO_CB_CTRL|BIO_CB_RETURN, parg, cmd, larg, ret)
+.Ve
+.Sp
+after.
+.Sp
+Note: \fBcmd\fR == \fB\s-1BIO_CTRL_SET_CALLBACK\s0\fR is special, because \fBparg\fR is not the
+argument of type \fBBIO_info_cb\fR itself. In this case \fBparg\fR is a pointer to
+the actual call parameter, see \fBBIO_callback_ctrl\fR.
.SH "EXAMPLE"
.IX Header "EXAMPLE"
The \fIBIO_debug_callback()\fR function is a good example, its source is
in crypto/bio/bio_cb.c
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIBIO_get_callback_ex()\fR and \fIBIO_get_callback()\fR return the callback function
+previously set by a call to \fIBIO_set_callback_ex()\fR and \fIBIO_set_callback()\fR
+respectively.
+.PP
+\&\fIBIO_get_callback_arg()\fR returns a \fBchar\fR pointer to the value previously set
+via a call to \fIBIO_set_callback_arg()\fR.
+.PP
+\&\fIBIO_debug_callback()\fR returns 1 or \fBret\fR if it's called after specific \s-1BIO\s0
+operations.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BIO_should_retry.3 b/secure/lib/libcrypto/man/BIO_should_retry.3
index 826fd35a4422..e107c5c4605c 100644
--- a/secure/lib/libcrypto/man/BIO_should_retry.3
+++ b/secure/lib/libcrypto/man/BIO_should_retry.3
@@ -128,40 +128,33 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BIO_should_retry 3"
-.TH BIO_should_retry 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BIO_SHOULD_RETRY 3"
+.TH BIO_SHOULD_RETRY 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BIO_should_retry, BIO_should_read, BIO_should_write,
-BIO_should_io_special, BIO_retry_type, BIO_should_retry,
-BIO_get_retry_BIO, BIO_get_retry_reason \- BIO retry functions
+BIO_should_read, BIO_should_write, BIO_should_io_special, BIO_retry_type, BIO_should_retry, BIO_get_retry_BIO, BIO_get_retry_reason, BIO_set_retry_reason \- BIO retry functions
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bio.h>
\&
-\& #define BIO_should_read(a) ((a)\->flags & BIO_FLAGS_READ)
-\& #define BIO_should_write(a) ((a)\->flags & BIO_FLAGS_WRITE)
-\& #define BIO_should_io_special(a) ((a)\->flags & BIO_FLAGS_IO_SPECIAL)
-\& #define BIO_retry_type(a) ((a)\->flags & BIO_FLAGS_RWS)
-\& #define BIO_should_retry(a) ((a)\->flags & BIO_FLAGS_SHOULD_RETRY)
+\& int BIO_should_read(BIO *b);
+\& int BIO_should_write(BIO *b);
+\& int BIO_should_io_special(iBIO *b);
+\& int BIO_retry_type(BIO *b);
+\& int BIO_should_retry(BIO *b);
\&
-\& #define BIO_FLAGS_READ 0x01
-\& #define BIO_FLAGS_WRITE 0x02
-\& #define BIO_FLAGS_IO_SPECIAL 0x04
-\& #define BIO_FLAGS_RWS (BIO_FLAGS_READ|BIO_FLAGS_WRITE|BIO_FLAGS_IO_SPECIAL)
-\& #define BIO_FLAGS_SHOULD_RETRY 0x08
-\&
-\& BIO * BIO_get_retry_BIO(BIO *bio, int *reason);
-\& int BIO_get_retry_reason(BIO *bio);
+\& BIO *BIO_get_retry_BIO(BIO *bio, int *reason);
+\& int BIO_get_retry_reason(BIO *bio);
+\& void BIO_set_retry_reason(BIO *bio, int reason);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
These functions determine why a \s-1BIO\s0 is not able to read or write data.
-They will typically be called after a failed \fIBIO_read()\fR or \fIBIO_write()\fR
+They will typically be called after a failed \fIBIO_read_ex()\fR or \fIBIO_write_ex()\fR
call.
.PP
\&\fIBIO_should_retry()\fR is true if the call that produced this condition
@@ -169,11 +162,13 @@ should then be retried at a later time.
.PP
If \fIBIO_should_retry()\fR is false then the cause is an error condition.
.PP
-\&\fIBIO_should_read()\fR is true if the cause of the condition is that a \s-1BIO\s0
-needs to read data.
+\&\fIBIO_should_read()\fR is true if the cause of the condition is that the \s-1BIO\s0
+has insufficient data to return. Check for readability and/or retry the
+last operation.
.PP
-\&\fIBIO_should_write()\fR is true if the cause of the condition is that a \s-1BIO\s0
-needs to read data.
+\&\fIBIO_should_write()\fR is true if the cause of the condition is that the \s-1BIO\s0
+has pending data to write. Check for writability and/or retry the
+last operation.
.PP
\&\fIBIO_should_io_special()\fR is true if some \*(L"special\*(R" condition, that is a
reason other than reading or writing is the cause of the condition.
@@ -184,18 +179,24 @@ consisting of the values \fB\s-1BIO_FLAGS_READ\s0\fR, \fB\s-1BIO_FLAGS_WRITE\s0\
these.
.PP
\&\fIBIO_get_retry_BIO()\fR determines the precise reason for the special
-condition, it returns the \s-1BIO\s0 that caused this condition and if
+condition, it returns the \s-1BIO\s0 that caused this condition and if
\&\fBreason\fR is not \s-1NULL\s0 it contains the reason code. The meaning of
the reason code and the action that should be taken depends on
the type of \s-1BIO\s0 that resulted in this condition.
.PP
\&\fIBIO_get_retry_reason()\fR returns the reason for a special condition if
passed the relevant \s-1BIO,\s0 for example as returned by \fIBIO_get_retry_BIO()\fR.
+.PP
+\&\fIBIO_set_retry_reason()\fR sets the retry reason for a special condition for a given
+\&\s-1BIO.\s0 This would usually only be called by \s-1BIO\s0 implementations.
.SH "NOTES"
.IX Header "NOTES"
+\&\fIBIO_should_read()\fR, \fIBIO_should_write()\fR, \fIBIO_should_io_special()\fR,
+\&\fIBIO_retry_type()\fR, and \fIBIO_should_retry()\fR, are implemented as macros.
+.PP
If \fIBIO_should_retry()\fR returns false then the precise \*(L"error condition\*(R"
depends on the \s-1BIO\s0 type that caused it and the return code of the \s-1BIO\s0
-operation. For example if a call to \fIBIO_read()\fR on a socket \s-1BIO\s0 returns
+operation. For example if a call to \fIBIO_read_ex()\fR on a socket \s-1BIO\s0 returns
0 and \fIBIO_should_retry()\fR is false then the cause will be that the
connection closed. A similar condition on a file \s-1BIO\s0 will mean that it
has reached \s-1EOF.\s0 Some \s-1BIO\s0 types may place additional information on
@@ -239,6 +240,30 @@ The OpenSSL \s-1ASN1\s0 functions cannot gracefully deal with non blocking I/O:
that is they cannot retry after a partial read or write. This is usually
worked around by only passing the relevant data to \s-1ASN1\s0 functions when
the entire structure can be read or written.
+.SH "RETURN VALUES"
+.IX Header "RETURN VALUES"
+\&\fIBIO_should_read()\fR, \fIBIO_should_write()\fR, \fIBIO_should_io_special()\fR, and
+\&\fIBIO_should_retry()\fR return either 1 or 0 based on the actual conditions
+of the \fB\s-1BIO\s0\fR.
+.PP
+\&\fIBIO_retry_type()\fR returns a flag combination presenting the cause of a retry
+condition or false if there is no retry condition.
+.PP
+\&\fIBIO_get_retry_BIO()\fR returns a valid \fB\s-1BIO\s0\fR structure.
+.PP
+\&\fIBIO_get_retry_reason()\fR returns the reason for a special condition.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
-\&\s-1TBA\s0
+bio
+.SH "HISTORY"
+.IX Header "HISTORY"
+The \fIBIO_get_retry_reason()\fR and \fIBIO_set_retry_reason()\fR functions were added in
+OpenSSL 1.1.0.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2000\-2018 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file \s-1LICENSE\s0 in the source distribution or at
+<https://www.openssl.org/source/license.html>.
diff --git a/secure/lib/libcrypto/man/BN_BLINDING_new.3 b/secure/lib/libcrypto/man/BN_BLINDING_new.3
index 967bc0857d46..6bdbf13691b7 100644
--- a/secure/lib/libcrypto/man/BN_BLINDING_new.3
+++ b/secure/lib/libcrypto/man/BN_BLINDING_new.3
@@ -128,45 +128,44 @@
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
-.IX Title "BN_BLINDING_new 3"
-.TH BN_BLINDING_new 3 "2018-08-14" "1.0.2p" "OpenSSL"
+.IX Title "BN_BLINDING_NEW 3"
+.TH BN_BLINDING_NEW 3 "2018-09-11" "1.1.1" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-BN_BLINDING_new, BN_BLINDING_free, BN_BLINDING_update, BN_BLINDING_convert,
-BN_BLINDING_invert, BN_BLINDING_convert_ex, BN_BLINDING_invert_ex,
-BN_BLINDING_get_thread_id, BN_BLINDING_set_thread_id, BN_BLINDING_thread_id, BN_BLINDING_get_flags,
-BN_BLINDING_set_flags, BN_BLINDING_create_param \- blinding related BIGNUM
-functions.
+BN_BLINDING_new, BN_BLINDING_free, BN_BLINDING_update, BN_BLINDING_convert, BN_BLINDING_invert, BN_BLINDING_convert_ex, BN_BLINDING_invert_ex, BN_BLINDING_is_current_thread, BN_BLINDING_set_current_thread, BN_BLINDING_lock, BN_BLINDING_unlock, BN_BLINDING_get_flags, BN_BLINDING_set_flags, BN_BLINDING_create_param \- blinding related BIGNUM functions
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& #include <openssl/bn.h>
\&
\& BN_BLINDING *BN_BLINDING_new(const BIGNUM *A, const BIGNUM *Ai,
-\& BIGNUM *mod);
+\& BIGNUM *mod);
\& void BN_BLINDING_free(BN_BLINDING *b);
-\& int BN_BLINDING_update(BN_BLINDING *b,BN_CTX *ctx);
+\& int BN_BLINDING_update(BN_BLINDING *b, BN_CTX *ctx);
\& int BN_BLINDING_convert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx);
\& int BN_BLINDING_invert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx);
\& int BN_BLINDING_convert_ex(BIGNUM *n, BIGNUM *r, BN_BLINDING *b,
-\& BN_CTX *ctx);
+\& BN_CTX *ctx);
\& int BN_BLINDING_invert_ex(BIGNUM *n, const BIGNUM *r, BN_BLINDING *b,
-\& BN_CTX *ctx);
-\& #ifndef OPENSSL_NO_DEPRECATED
-\& unsigned long BN_BLINDING_get_thread_id(const BN_BLINDING *);
-\& void BN_BLINDING_set_thread_id(BN_BLINDING *, unsigned long);
-\& #endif
-\& CRYPTO_THREADID *BN_BLINDING_thread_id(BN_BLINDING *);
+\& BN_CTX *ctx);
+\& int BN_BLINDING_is_current_thread(BN_BLINDING *b);
+\& void BN_BLINDING_set_current_thread(BN_BLINDING *b);
+\& int BN_BLINDING_lock(BN_BLINDING *b);
+\& int BN_BLINDING_unlock(BN_BLINDING *b);
\& unsigned long BN_BLINDING_get_flags(const BN_BLINDING *);
\& void BN_BLINDING_set_flags(BN_BLINDING *, unsigned long);
\& BN_BLINDING *BN_BLINDING_create_param(BN_BLINDING *b,
-\& const BIGNUM *e, BIGNUM *m, BN_CTX *ctx,
-\& int (*bn_mod_exp)(BIGNUM *r, const BIGNUM *a, const BIGNUM *p,
-\& const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *m_ctx),
-\& BN_MONT_CTX *m_ctx);
+\& const BIGNUM *e, BIGNUM *m, BN_CTX *ctx,
+\& int (*bn_mod_exp)(BIGNUM *r,
+\& const BIGNUM *a,
+\& const BIGNUM *p,
+\& const BIGNUM *m,
+\& BN_CTX *ctx,
+\& BN_MONT_CTX *m_ctx),
+\& BN_MONT_CTX *m_ctx);
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
@@ -174,6 +173,7 @@ functions.
the \fBA\fR and \fBAi\fR values into the newly created \fB\s-1BN_BLINDING\s0\fR object.
.PP
\&\fIBN_BLINDING_free()\fR frees the \fB\s-1BN_BLINDING\s0\fR structure.
+If \fBb\fR is \s-1NULL,\s0 nothing is done.
.PP
\&\fIBN_BLINDING_update()\fR updates the \fB\s-1BN_BLINDING\s0\fR parameters by squaring
the \fBA\fR and \fBAi\fR or, after specific number of uses and if the
@@ -190,11 +190,16 @@ the inverse blinding.
functions for \fIBN_BLINDING_convert_ex()\fR and \fIBN_BLINDING_invert_ex()\fR
with \fBr\fR set to \s-1NULL.\s0
.PP
-\&\fIBN_BLINDING_thread_id()\fR provides access to the \fB\s-1CRYPTO_THREADID\s0\fR
-object within the \fB\s-1BN_BLINDING\s0\fR structure. This is to help users
-provide proper locking if needed for multi-threaded use. The \*(L"thread
-id\*(R" object of a newly allocated \fB\s-1BN_BLINDING\s0\fR structure is
-initialised to the thread id in which \fIBN_BLINDING_new()\fR was called.
+\&\fIBN_BLINDING_is_current_thread()\fR returns whether the \fB\s-1BN_BLINDING\s0\fR
+structure is owned by the current thread. This is to help users
+provide proper locking if needed for multi-threaded use.
+.PP
+\&\fIBN_BLINDING_set_current_thread()\fR sets the current thread as the
+owner of the \fB\s-1BN_BLINDING\s0\fR structure.
+.PP
+\&\fIBN_BLINDING_lock()\fR locks the \fB\s-1BN_BLINDING\s0\fR structure.
+.PP
+\&\fIBN_BLINDING_unlock()\fR unlocks the \fB\s-1BN_BLINDING\s0\fR structure.
.PP
\&\fIBN_BLINDING_get_flags()\fR returns the \s-1BN_BLINDING\s0 flags. Currently
there are two supported flags: \fB\s-1BN_BLINDING_NO_UPDATE\s0\fR and
@@ -218,25 +223,28 @@ or \s-1NULL\s0 in case of an error.
\&\fIBN_BLINDING_convert_ex()\fR and \fIBN_BLINDING_invert_ex()\fR return 1 on
success and 0 if an error occurred.
.PP
-\&\fIBN_BLINDING_thread_id()\fR returns a pointer to the thread id object
-within a \fB\s-1BN_BLINDING\s0\fR object.
+\&\fIBN_BLINDING_is_current_thread()\fR returns 1 if the current thread owns
+the \fB\s-1BN_BLINDING\s0\fR object, 0 otherwise.
+.PP
+\&\fIBN_BLINDING_set_current_thread()\fR doesn't return anything.
+.PP
+\&\fIBN_BLINDING_lock()\fR, \fIBN_BLINDING_unlock()\fR return 1 if the operation
+succeeded or 0 on error.
.PP
\&\fIBN_BLINDING_get_flags()\fR returns the currently set \fB\s-1BN_BLINDING\s0\fR flags
(a \fBunsigned long\fR value).
.PP
-\&\fIBN_BLINDING_create_param()\fR returns the newly created \fB\s-1BN_BLINDING\s0\fR
+\&\fIBN_BLINDING_create_param()\fR returns the newly created \fB\s-1BN_BLINDING\s0\fR
parameters or \s-1NULL\s0 on error.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\fIbn\fR\|(3)
.SH "HISTORY"
.IX Header "HISTORY"
-BN_BLINDING_thread_id was first introduced in OpenSSL 1.0.0, and it
-deprecates BN_BLINDING_set_thread_id and BN_BLINDING_get_thread_id.
-.PP
-BN_BLINDING_convert_ex, BN_BLINDIND_invert_ex, BN_BLINDING_get_thread_id,
-BN_BLINDING_set_thread_id, BN_BLINDING_set_flags, BN_BLINDING_get_flags
-and BN_BLINDING_create_param were first introduced in OpenSSL 0.9.8
-.SH "AUTHOR"
-.IX Header "AUTHOR"
-Nils Larsch for the OpenSSL project (http://www.openssl.org).
+\&\fIBN_BLINDING_thread_id()\fR was first introduced in OpenSSL 1.0.0, and it
+deprecates \fIBN_BLINDING_set_thread_id()\fR and \fIBN_BLINDING_get_thread_id()\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright 2005\-2017 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
+this file