openssl/doc/man3
Richard Levitte 567db2c17d Add EVP_MAC API
We currently implement EVP MAC methods as EVP_PKEY methods.  This
change creates a separate EVP API for MACs, to replace the current
EVP_PKEY ones.

A note about this EVP API and how it interfaces with underlying MAC
implementations:

Other EVP APIs pass the EVP API context down to implementations, and
it can be observed that the implementations use the pointer to their
own private data almost exclusively.  The EVP_MAC API deviates from
that pattern by passing the pointer to the implementation's private
data directly, and thereby deny the implementations access to the
EVP_MAC context structure.  This change is made to provide a clearer
separation between the EVP library itself and the implementations of
its supported algorithm classes.

Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/7393)
2018-10-29 13:35:19 +01:00
..
ADMISSIONS.pod
ASN1_generate_nconf.pod
ASN1_INTEGER_get_int64.pod Update copyright year 2018-09-11 13:45:17 +01:00
ASN1_ITEM_lookup.pod
ASN1_OBJECT_new.pod
ASN1_STRING_length.pod
ASN1_STRING_new.pod
ASN1_STRING_print_ex.pod
ASN1_STRING_TABLE_add.pod
ASN1_TIME_set.pod
ASN1_TYPE_get.pod
ASYNC_start_job.pod
ASYNC_WAIT_CTX_new.pod
BF_encrypt.pod
BIO_ADDR.pod
BIO_ADDRINFO.pod
BIO_connect.pod
BIO_ctrl.pod
BIO_f_base64.pod
BIO_f_buffer.pod
BIO_f_cipher.pod
BIO_f_md.pod
BIO_f_null.pod
BIO_f_ssl.pod
BIO_find_type.pod
BIO_get_data.pod
BIO_get_ex_new_index.pod
BIO_meth_new.pod
BIO_new_CMS.pod
BIO_new.pod
BIO_parse_hostserv.pod
BIO_printf.pod
BIO_push.pod
BIO_read.pod
BIO_s_accept.pod
BIO_s_bio.pod
BIO_s_connect.pod
BIO_s_fd.pod
BIO_s_file.pod Update copyright year 2018-09-11 13:45:17 +01:00
BIO_s_mem.pod
BIO_s_null.pod
BIO_s_socket.pod
BIO_set_callback.pod
BIO_should_retry.pod
BN_add_word.pod
BN_add.pod
BN_BLINDING_new.pod
BN_bn2bin.pod Update copyright year 2018-09-11 13:45:17 +01:00
BN_cmp.pod
BN_copy.pod
BN_CTX_new.pod
BN_CTX_start.pod
BN_generate_prime.pod Update copyright year 2018-09-11 13:45:17 +01:00
BN_mod_inverse.pod
BN_mod_mul_montgomery.pod
BN_mod_mul_reciprocal.pod
BN_new.pod
BN_num_bytes.pod
BN_rand.pod
BN_security_bits.pod
BN_set_bit.pod
BN_swap.pod
BN_zero.pod
BUF_MEM_new.pod
CMS_add0_cert.pod
CMS_add1_recipient_cert.pod
CMS_add1_signer.pod
CMS_compress.pod
CMS_decrypt.pod
CMS_encrypt.pod
CMS_final.pod
CMS_get0_RecipientInfos.pod
CMS_get0_SignerInfos.pod
CMS_get0_type.pod
CMS_get1_ReceiptRequest.pod
CMS_sign_receipt.pod
CMS_sign.pod
CMS_uncompress.pod
CMS_verify_receipt.pod
CMS_verify.pod
CONF_modules_free.pod
CONF_modules_load_file.pod
CRYPTO_get_ex_new_index.pod
CRYPTO_THREAD_run_once.pod
CT_POLICY_EVAL_CTX_new.pod
CTLOG_new.pod
CTLOG_STORE_get0_log_by_id.pod
CTLOG_STORE_new.pod
d2i_DHparams.pod
d2i_PKCS8PrivateKey_bio.pod
d2i_PrivateKey.pod
d2i_SSL_SESSION.pod
d2i_X509.pod
DEFINE_STACK_OF.pod
DES_random_key.pod Cleanup typos and grammar in DES_random_key.pod 2018-10-08 09:09:15 +02:00
DH_generate_key.pod
DH_generate_parameters.pod
DH_get0_pqg.pod
DH_get_1024_160.pod
DH_meth_new.pod
DH_new_by_nid.pod
DH_new.pod
DH_set_method.pod
DH_size.pod
DSA_do_sign.pod
DSA_dup_DH.pod
DSA_generate_key.pod
DSA_generate_parameters.pod
DSA_get0_pqg.pod
DSA_meth_new.pod
DSA_new.pod
DSA_set_method.pod
DSA_SIG_new.pod
DSA_sign.pod
DSA_size.pod
DTLS_get_data_mtu.pod
DTLS_set_timer_cb.pod
DTLSv1_listen.pod
EC_GFp_simple_method.pod
EC_GROUP_copy.pod
EC_GROUP_new.pod Update copyright year 2018-09-11 13:45:17 +01:00
EC_KEY_get_enc_flags.pod
EC_KEY_new.pod
EC_POINT_add.pod
EC_POINT_new.pod
ECDSA_SIG_new.pod
ECPKParameters_print.pod
ENGINE_add.pod
ERR_clear_error.pod
ERR_error_string.pod
ERR_get_error.pod
ERR_GET_LIB.pod
ERR_load_crypto_strings.pod
ERR_load_strings.pod
ERR_print_errors.pod
ERR_put_error.pod
ERR_remove_state.pod
ERR_set_mark.pod
EVP_aes.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_aria.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_bf_cbc.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_blake2b512.pod
EVP_BytesToKey.pod
EVP_camellia.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_cast5_cbc.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_chacha20.pod
EVP_CIPHER_CTX_get_cipher_data.pod
EVP_CIPHER_meth_new.pod
EVP_des.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_desx_cbc.pod
EVP_DigestInit.pod Fix compiling warnings in example code 2018-10-11 11:17:36 +08:00
EVP_DigestSignInit.pod Update document for SM2 stuffs 2018-09-07 18:12:26 +08:00
EVP_DigestVerifyInit.pod Update document for SM2 stuffs 2018-09-07 18:12:26 +08:00
EVP_EncodeInit.pod
EVP_EncryptInit.pod
EVP_idea_cbc.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_MAC.pod Add EVP_MAC API 2018-10-29 13:35:19 +01:00
EVP_md2.pod
EVP_md4.pod
EVP_md5.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_MD_meth_new.pod
EVP_mdc2.pod
EVP_OpenInit.pod
EVP_PKEY_asn1_get_count.pod
EVP_PKEY_ASN1_METHOD.pod
EVP_PKEY_cmp.pod
EVP_PKEY_CTX_ctrl.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_PKEY_CTX_new.pod
EVP_PKEY_CTX_set1_pbe_pass.pod
EVP_PKEY_CTX_set_hkdf_md.pod Fixed typos in hkdf documentation. 2018-09-17 13:46:08 +10:00
EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_PKEY_CTX_set_scrypt_N.pod
EVP_PKEY_CTX_set_tls1_prf_md.pod
EVP_PKEY_decrypt.pod
EVP_PKEY_derive.pod
EVP_PKEY_encrypt.pod
EVP_PKEY_get_default_digest_nid.pod Update copyright year 2018-09-11 13:45:17 +01:00
EVP_PKEY_keygen.pod
EVP_PKEY_meth_get_count.pod
EVP_PKEY_meth_new.pod Add missing SM2err and fix doc nits 2018-09-07 18:12:26 +08:00
EVP_PKEY_new.pod
EVP_PKEY_print_private.pod
EVP_PKEY_set1_RSA.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_PKEY_sign.pod
EVP_PKEY_verify_recover.pod
EVP_PKEY_verify.pod
EVP_rc2_cbc.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_rc4.pod
EVP_rc5_32_12_16_cbc.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_ripemd160.pod
EVP_SealInit.pod
EVP_seed_cbc.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_sha1.pod
EVP_sha3_224.pod
EVP_sha224.pod
EVP_SignInit.pod
EVP_sm3.pod Add semicolon at the end of the function prototypes 2018-08-24 20:45:47 +08:00
EVP_sm4_cbc.pod EVP module documentation pass 2018-10-17 13:22:14 +03:00
EVP_VerifyInit.pod
EVP_whirlpool.pod
HMAC.pod
i2d_CMS_bio_stream.pod
i2d_PKCS7_bio_stream.pod
i2d_re_X509_tbs.pod
MD5.pod
MDC2_Init.pod
o2i_SCT_LIST.pod
OBJ_nid2obj.pod man3/OBJ_nid2obj.pod: mention failure code for OBJ_create. 2018-08-22 21:37:43 +02:00
OCSP_cert_to_id.pod
OCSP_request_add1_nonce.pod
OCSP_REQUEST_new.pod
OCSP_resp_find_status.pod Update copyright year 2018-09-11 13:45:17 +01:00
OCSP_response_status.pod
OCSP_sendreq_new.pod
OpenSSL_add_all_algorithms.pod
OPENSSL_Applink.pod
OPENSSL_config.pod
OPENSSL_fork_prepare.pod
OPENSSL_ia32cap.pod
OPENSSL_init_crypto.pod
OPENSSL_init_ssl.pod
OPENSSL_instrument_bus.pod
OPENSSL_LH_COMPFUNC.pod
OPENSSL_LH_stats.pod
OPENSSL_load_builtin_modules.pod
OPENSSL_malloc.pod
OPENSSL_s390xcap.pod s390x assembly pack: add OPENSSL_s390xcap man page. 2018-10-17 14:03:59 +02:00
OPENSSL_secure_malloc.pod
OPENSSL_VERSION_NUMBER.pod Document OPENSSL_VERSION_TEXT macro 2018-09-24 12:00:22 +02:00
OSSL_STORE_expect.pod
OSSL_STORE_INFO.pod
OSSL_STORE_LOADER.pod
OSSL_STORE_open.pod
OSSL_STORE_SEARCH.pod
PEM_bytes_read_bio.pod
PEM_read_bio_ex.pod
PEM_read_bio_PrivateKey.pod
PEM_read_CMS.pod
PEM_read.pod
PEM_write_bio_CMS_stream.pod
PEM_write_bio_PKCS7_stream.pod
PKCS5_PBKDF2_HMAC.pod
PKCS7_decrypt.pod
PKCS7_encrypt.pod
PKCS7_sign_add_signer.pod
PKCS7_sign.pod
PKCS7_verify.pod
PKCS12_create.pod
PKCS12_newpass.pod
PKCS12_parse.pod
RAND_add.pod
RAND_bytes.pod
RAND_cleanup.pod
RAND_DRBG_generate.pod
RAND_DRBG_get0_master.pod
RAND_DRBG_new.pod Change DRBG's to DRBGs 2018-10-02 09:25:59 +10:00
RAND_DRBG_reseed.pod
RAND_DRBG_set_callbacks.pod
RAND_DRBG_set_ex_data.pod
RAND_egd.pod
RAND_load_file.pod
RAND_set_rand_method.pod
RC4_set_key.pod
RIPEMD160_Init.pod
RSA_blinding_on.pod
RSA_check_key.pod
RSA_generate_key.pod Fix typos in documentation 2018-08-22 07:06:44 +02:00
RSA_get0_key.pod
RSA_meth_new.pod Use 'i' as parameter name not 'I'. 2018-09-17 09:14:03 +10:00
RSA_new.pod
RSA_padding_add_PKCS1_type_1.pod
RSA_print.pod
RSA_private_encrypt.pod
RSA_public_encrypt.pod
RSA_set_method.pod
RSA_sign_ASN1_OCTET_STRING.pod
RSA_sign.pod
RSA_size.pod
SCT_new.pod
SCT_print.pod
SCT_validate.pod
SHA256_Init.pod
SMIME_read_CMS.pod
SMIME_read_PKCS7.pod
SMIME_write_CMS.pod
SMIME_write_PKCS7.pod
SSL_accept.pod
SSL_alert_type_string.pod
SSL_alloc_buffers.pod
SSL_check_chain.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_CIPHER_get_name.pod
SSL_clear.pod
SSL_COMP_add_compression_method.pod
SSL_CONF_cmd_argv.pod
SSL_CONF_cmd.pod TLSv1.3 related changes to man pages 2018-09-01 08:45:04 +08:00
SSL_CONF_CTX_new.pod
SSL_CONF_CTX_set1_prefix.pod
SSL_CONF_CTX_set_flags.pod
SSL_CONF_CTX_set_ssl_ctx.pod
SSL_connect.pod
SSL_CTX_add1_chain_cert.pod
SSL_CTX_add_extra_chain_cert.pod
SSL_CTX_add_session.pod
SSL_CTX_config.pod
SSL_CTX_ctrl.pod
SSL_CTX_dane_enable.pod
SSL_CTX_flush_sessions.pod
SSL_CTX_free.pod
SSL_CTX_get0_param.pod
SSL_CTX_get_verify_mode.pod
SSL_CTX_has_client_custom_ext.pod
SSL_CTX_load_verify_locations.pod
SSL_CTX_new.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_CTX_sess_number.pod
SSL_CTX_sess_set_cache_size.pod
SSL_CTX_sess_set_get_cb.pod
SSL_CTX_sessions.pod
SSL_CTX_set0_CA_list.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_CTX_set1_curves.pod
SSL_CTX_set1_sigalgs.pod
SSL_CTX_set1_verify_cert_store.pod
SSL_CTX_set_alpn_select_cb.pod
SSL_CTX_set_cert_cb.pod TLSv1.3 related changes to man pages 2018-09-01 08:45:04 +08:00
SSL_CTX_set_cert_store.pod
SSL_CTX_set_cert_verify_callback.pod
SSL_CTX_set_cipher_list.pod
SSL_CTX_set_client_CA_list.pod
SSL_CTX_set_client_cert_cb.pod
SSL_CTX_set_client_hello_cb.pod
SSL_CTX_set_ct_validation_callback.pod
SSL_CTX_set_ctlog_list_file.pod
SSL_CTX_set_default_passwd_cb.pod
SSL_CTX_set_ex_data.pod
SSL_CTX_set_generate_session_id.pod
SSL_CTX_set_info_callback.pod
SSL_CTX_set_keylog_callback.pod
SSL_CTX_set_max_cert_list.pod
SSL_CTX_set_min_proto_version.pod
SSL_CTX_set_mode.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_CTX_set_msg_callback.pod
SSL_CTX_set_num_tickets.pod
SSL_CTX_set_options.pod
SSL_CTX_set_psk_client_callback.pod Add a note in the docs about sharing PSKs between TLSv1.2 and TLSv1.3 2018-09-01 09:06:10 +08:00
SSL_CTX_set_quiet_shutdown.pod Improve SSL_shutdown() documentation 2018-09-16 13:39:44 +02:00
SSL_CTX_set_read_ahead.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_CTX_set_record_padding_callback.pod
SSL_CTX_set_security_level.pod
SSL_CTX_set_session_cache_mode.pod
SSL_CTX_set_session_id_context.pod
SSL_CTX_set_session_ticket_cb.pod
SSL_CTX_set_split_send_fragment.pod
SSL_CTX_set_ssl_version.pod
SSL_CTX_set_stateless_cookie_generate_cb.pod
SSL_CTX_set_timeout.pod
SSL_CTX_set_tlsext_servername_callback.pod
SSL_CTX_set_tlsext_status_cb.pod
SSL_CTX_set_tlsext_ticket_key_cb.pod
SSL_CTX_set_tlsext_use_srtp.pod
SSL_CTX_set_tmp_dh_callback.pod
SSL_CTX_set_verify.pod Remove a reference to SSL_force_post_handshake_auth() 2018-09-07 11:17:55 +01:00
SSL_CTX_use_certificate.pod
SSL_CTX_use_psk_identity_hint.pod Add a note in the docs about sharing PSKs between TLSv1.2 and TLSv1.3 2018-09-01 09:06:10 +08:00
SSL_CTX_use_serverinfo.pod
SSL_do_handshake.pod
SSL_export_keying_material.pod
SSL_extension_supported.pod
SSL_free.pod
SSL_get0_peer_scts.pod
SSL_get_all_async_fds.pod
SSL_get_ciphers.pod
SSL_get_client_CA_list.pod
SSL_get_client_random.pod
SSL_get_current_cipher.pod
SSL_get_default_timeout.pod
SSL_get_error.pod Improve SSL_shutdown() documentation 2018-09-16 13:39:44 +02:00
SSL_get_extms_support.pod
SSL_get_fd.pod
SSL_get_peer_cert_chain.pod
SSL_get_peer_certificate.pod
SSL_get_peer_signature_nid.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_get_psk_identity.pod
SSL_get_rbio.pod
SSL_get_server_tmp_key.pod
SSL_get_session.pod
SSL_get_shared_sigalgs.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_get_SSL_CTX.pod
SSL_get_verify_result.pod
SSL_get_version.pod Clarify the return value of SSL_client_version() 2018-09-04 11:34:40 +01:00
SSL_in_init.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_key_update.pod
SSL_library_init.pod
SSL_load_client_CA_file.pod
SSL_new.pod
SSL_pending.pod
SSL_read_early_data.pod
SSL_read.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_rstate_string.pod
SSL_SESSION_free.pod
SSL_SESSION_get0_cipher.pod
SSL_SESSION_get0_hostname.pod
SSL_SESSION_get0_id_context.pod
SSL_SESSION_get0_peer.pod
SSL_SESSION_get_compress_id.pod
SSL_SESSION_get_ex_data.pod
SSL_SESSION_get_protocol_version.pod Update copyright year 2018-09-11 13:45:17 +01:00
SSL_SESSION_get_time.pod
SSL_SESSION_has_ticket.pod
SSL_SESSION_is_resumable.pod
SSL_SESSION_print.pod
SSL_session_reused.pod
SSL_SESSION_set1_id.pod
SSL_set1_host.pod
SSL_set_bio.pod doc/man3/SSL_set_bio.pod: Fix wrong function name in return values section 2018-09-26 11:33:42 +08:00
SSL_set_connect_state.pod
SSL_set_fd.pod
SSL_set_session.pod
SSL_set_shutdown.pod Improve SSL_shutdown() documentation 2018-09-16 13:39:44 +02:00
SSL_set_verify_result.pod
SSL_shutdown.pod Improve SSL_shutdown() documentation 2018-09-16 13:39:44 +02:00
SSL_state_string.pod
SSL_want.pod
SSL_write.pod Update copyright year 2018-09-11 13:45:17 +01:00
UI_create_method.pod
UI_new.pod
UI_STRING.pod
UI_UTIL_read_pw.pod
X509_ALGOR_dup.pod
X509_check_ca.pod
X509_check_host.pod
X509_check_issued.pod
X509_check_private_key.pod
X509_cmp_time.pod
X509_CRL_get0_by_serial.pod
X509_digest.pod Update copyright year 2018-09-11 13:45:17 +01:00
X509_dup.pod
X509_EXTENSION_set_object.pod
X509_get0_notBefore.pod
X509_get0_signature.pod
X509_get0_uids.pod
X509_get_extension_flags.pod
X509_get_pubkey.pod
X509_get_serialNumber.pod
X509_get_subject_name.pod
X509_get_version.pod
X509_LOOKUP_hash_dir.pod
X509_LOOKUP_meth_new.pod
X509_NAME_add_entry_by_txt.pod
X509_NAME_ENTRY_get_object.pod
X509_NAME_get0_der.pod
X509_NAME_get_index_by_NID.pod
X509_NAME_print_ex.pod
X509_new.pod
X509_PUBKEY_new.pod
X509_SIG_get0.pod
X509_sign.pod
X509_STORE_add_cert.pod
X509_STORE_CTX_get_error.pod
X509_STORE_CTX_new.pod
X509_STORE_CTX_set_verify_cb.pod
X509_STORE_get0_param.pod
X509_STORE_new.pod
X509_STORE_set_verify_cb_func.pod
X509_verify_cert.pod
X509_VERIFY_PARAM_set_flags.pod
X509v3_get_ext_by_NID.pod
X509V3_get_d2i.pod