Replace L<> link to header-file with a C<> reference.
Change some broken L<provider(3)> links to L<provider(7)>.
For consistency, rename four cipher pages to have a specific mode.
Fix up all references to any "generic" names to point to specific names.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
(Merged from https://github.com/openssl/openssl/pull/10100)
L<EVP_MAC-GMAC(7)>,
L<EVP_MAC-HMAC(7)>,
L<EVP_MAC-KMAC(7)>,
-L<EVP_MAC-SIPHASH(7)>,
-L<EVP_MAC-POLY1305(7)>
+L<EVP_MAC-Siphash(7)>,
+L<EVP_MAC-Poly1305(7)>
=head1 COPYRIGHT
Supported ciphers are listed in:
-L<EVP_aes(3)>,
-L<EVP_aria(3)>,
-L<EVP_bf(3)>,
-L<EVP_camellia(3)>,
-L<EVP_cast5(3)>,
+L<EVP_aes_128_gcm(3)>,
+L<EVP_aria_128_gcm(3)>,
+L<EVP_bf_cbc(3)>,
+L<EVP_camellia_128_ecb(3)>,
+L<EVP_cast5_cbc(3)>,
L<EVP_chacha20(3)>,
-L<EVP_des(3)>,
-L<EVP_desx(3)>,
-L<EVP_idea(3)>,
-L<EVP_rc2(3)>,
+L<EVP_des_cbc(3)>,
+L<EVP_desx_cbc(3)>,
+L<EVP_idea_cbc(3)>,
+L<EVP_rc2_cbc(3)>,
L<EVP_rc4(3)>,
-L<EVP_rc5(3)>,
-L<EVP_seed(3)>,
-L<EVP_sm4(3)>
+L<EVP_rc5_32_12_16_cbc(3)>,
+L<EVP_seed_cbc(3)>,
+L<EVP_sm4_cbc(3)>
=head1 HISTORY
L<property(7)>
L<OSSL_PARAM(3)>,
-L<EVP_MAC_BLAKE2(7)>,
-L<EVP_MAC_CMAC(7)>,
-L<EVP_MAC_GMAC(7)>,
-L<EVP_MAC_HMAC(7)>,
-L<EVP_MAC_KMAC(7)>,
-L<EVP_MAC_SIPHASH(7)>,
-L<EVP_MAC_POLY1305(7)>
+L<EVP_MAC-BLAKE2(7)>,
+L<EVP_MAC-CMAC(7)>,
+L<EVP_MAC-GMAC(7)>,
+L<EVP_MAC-HMAC(7)>,
+L<EVP_MAC-KMAC(7)>,
+L<EVP_MAC-Siphash(7)>,
+L<EVP_MAC-Poly1305(7)>
=head1 HISTORY
+++ /dev/null
-=pod
-
-=head1 NAME
-
-EVP_aes_128_cbc,
-EVP_aes_192_cbc,
-EVP_aes_256_cbc,
-EVP_aes_128_cfb,
-EVP_aes_192_cfb,
-EVP_aes_256_cfb,
-EVP_aes_128_cfb1,
-EVP_aes_192_cfb1,
-EVP_aes_256_cfb1,
-EVP_aes_128_cfb8,
-EVP_aes_192_cfb8,
-EVP_aes_256_cfb8,
-EVP_aes_128_cfb128,
-EVP_aes_192_cfb128,
-EVP_aes_256_cfb128,
-EVP_aes_128_ctr,
-EVP_aes_192_ctr,
-EVP_aes_256_ctr,
-EVP_aes_128_ecb,
-EVP_aes_192_ecb,
-EVP_aes_256_ecb,
-EVP_aes_128_ofb,
-EVP_aes_192_ofb,
-EVP_aes_256_ofb,
-EVP_aes_128_cbc_hmac_sha1,
-EVP_aes_256_cbc_hmac_sha1,
-EVP_aes_128_cbc_hmac_sha256,
-EVP_aes_256_cbc_hmac_sha256,
-EVP_aes_128_ccm,
-EVP_aes_192_ccm,
-EVP_aes_256_ccm,
-EVP_aes_128_gcm,
-EVP_aes_192_gcm,
-EVP_aes_256_gcm,
-EVP_aes_128_ocb,
-EVP_aes_192_ocb,
-EVP_aes_256_ocb,
-EVP_aes_128_wrap,
-EVP_aes_192_wrap,
-EVP_aes_256_wrap,
-EVP_aes_128_wrap_pad,
-EVP_aes_192_wrap_pad,
-EVP_aes_256_wrap_pad,
-EVP_aes_128_xts,
-EVP_aes_256_xts
-- EVP AES cipher
-
-=head1 SYNOPSIS
-
-=for openssl generic
-
- #include <openssl/evp.h>
-
- const EVP_CIPHER *EVP_ciphername(void)
-
-I<EVP_ciphername> is used a placeholder for any of the described cipher
-functions, such as I<EVP_aes_128_cbc>.
-
-=head1 DESCRIPTION
-
-The AES encryption algorithm for EVP.
-
-=over 4
-
-=item EVP_aes_128_cbc(),
-EVP_aes_192_cbc(),
-EVP_aes_256_cbc(),
-EVP_aes_128_cfb(),
-EVP_aes_192_cfb(),
-EVP_aes_256_cfb(),
-EVP_aes_128_cfb1(),
-EVP_aes_192_cfb1(),
-EVP_aes_256_cfb1(),
-EVP_aes_128_cfb8(),
-EVP_aes_192_cfb8(),
-EVP_aes_256_cfb8(),
-EVP_aes_128_cfb128(),
-EVP_aes_192_cfb128(),
-EVP_aes_256_cfb128(),
-EVP_aes_128_ctr(),
-EVP_aes_192_ctr(),
-EVP_aes_256_ctr(),
-EVP_aes_128_ecb(),
-EVP_aes_192_ecb(),
-EVP_aes_256_ecb(),
-EVP_aes_128_ofb(),
-EVP_aes_192_ofb(),
-EVP_aes_256_ofb()
-
-AES for 128, 192 and 256 bit keys in the following modes: CBC, CFB with 128-bit
-shift, CFB with 1-bit shift, CFB with 8-bit shift, CTR, ECB, and OFB.
-
-=item EVP_aes_128_cbc_hmac_sha1(),
-EVP_aes_256_cbc_hmac_sha1()
-
-Authenticated encryption with AES in CBC mode using SHA-1 as HMAC, with keys of
-128 and 256 bits length respectively. The authentication tag is 160 bits long.
-
-WARNING: this is not intended for usage outside of TLS and requires calling of
-some undocumented ctrl functions. These ciphers do not conform to the EVP AEAD
-interface.
-
-=item EVP_aes_128_cbc_hmac_sha256(),
-EVP_aes_256_cbc_hmac_sha256()
-
-Authenticated encryption with AES in CBC mode using SHA256 (SHA-2, 256-bits) as
-HMAC, with keys of 128 and 256 bits length respectively. The authentication tag
-is 256 bits long.
-
-WARNING: this is not intended for usage outside of TLS and requires calling of
-some undocumented ctrl functions. These ciphers do not conform to the EVP AEAD
-interface.
-
-=item EVP_aes_128_ccm(),
-EVP_aes_192_ccm(),
-EVP_aes_256_ccm(),
-EVP_aes_128_gcm(),
-EVP_aes_192_gcm(),
-EVP_aes_256_gcm(),
-EVP_aes_128_ocb(),
-EVP_aes_192_ocb(),
-EVP_aes_256_ocb()
-
-AES for 128, 192 and 256 bit keys in CBC-MAC Mode (CCM), Galois Counter Mode
-(GCM) and OCB Mode respectively. These ciphers require additional control
-operations to function correctly, see the L<EVP_EncryptInit(3)/AEAD Interface>
-section for details.
-
-=item EVP_aes_128_wrap(),
-EVP_aes_192_wrap(),
-EVP_aes_256_wrap(),
-EVP_aes_128_wrap_pad(),
-EVP_aes_128_wrap(),
-EVP_aes_192_wrap(),
-EVP_aes_256_wrap(),
-EVP_aes_192_wrap_pad(),
-EVP_aes_128_wrap(),
-EVP_aes_192_wrap(),
-EVP_aes_256_wrap(),
-EVP_aes_256_wrap_pad()
-
-AES key wrap with 128, 192 and 256 bit keys, as according to RFC 3394 section
-2.2.1 ("wrap") and RFC 5649 section 4.1 ("wrap with padding") respectively.
-
-=item EVP_aes_128_xts(),
-EVP_aes_256_xts()
-
-AES XTS mode (XTS-AES) is standardized in IEEE Std. 1619-2007 and described in NIST
-SP 800-38E. The XTS (XEX-based tweaked-codebook mode with ciphertext stealing)
-mode was designed by Prof. Phillip Rogaway of University of California, Davis,
-intended for encrypting data on a storage device.
-
-XTS-AES provides confidentiality but not authentication of data. It also
-requires a key of double-length for protection of a certain key size.
-In particular, XTS-AES-128 (B<EVP_aes_128_xts>) takes input of a 256-bit key to
-achieve AES 128-bit security, and XTS-AES-256 (B<EVP_aes_256_xts>) takes input
-of a 512-bit key to achieve AES 256-bit security.
-
-=back
-
-=head1 RETURN VALUES
-
-These functions return an B<EVP_CIPHER> structure that contains the
-implementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for
-details of the B<EVP_CIPHER> structure.
-
-=head1 SEE ALSO
-
-L<evp(7)>,
-L<EVP_EncryptInit(3)>,
-L<EVP_CIPHER_meth_new(3)>
-
-=head1 COPYRIGHT
-
-Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
-
-Licensed under the Apache License 2.0 (the "License"). You may not use
-this file except in compliance with the License. You can obtain a copy
-in the file LICENSE in the source distribution or at
-L<https://www.openssl.org/source/license.html>.
-
-=cut
-
--- /dev/null
+=pod
+
+=head1 NAME
+
+EVP_aes_128_cbc,
+EVP_aes_192_cbc,
+EVP_aes_256_cbc,
+EVP_aes_128_cfb,
+EVP_aes_192_cfb,
+EVP_aes_256_cfb,
+EVP_aes_128_cfb1,
+EVP_aes_192_cfb1,
+EVP_aes_256_cfb1,
+EVP_aes_128_cfb8,
+EVP_aes_192_cfb8,
+EVP_aes_256_cfb8,
+EVP_aes_128_cfb128,
+EVP_aes_192_cfb128,
+EVP_aes_256_cfb128,
+EVP_aes_128_ctr,
+EVP_aes_192_ctr,
+EVP_aes_256_ctr,
+EVP_aes_128_ecb,
+EVP_aes_192_ecb,
+EVP_aes_256_ecb,
+EVP_aes_128_ofb,
+EVP_aes_192_ofb,
+EVP_aes_256_ofb,
+EVP_aes_128_cbc_hmac_sha1,
+EVP_aes_256_cbc_hmac_sha1,
+EVP_aes_128_cbc_hmac_sha256,
+EVP_aes_256_cbc_hmac_sha256,
+EVP_aes_128_ccm,
+EVP_aes_192_ccm,
+EVP_aes_256_ccm,
+EVP_aes_128_gcm,
+EVP_aes_192_gcm,
+EVP_aes_256_gcm,
+EVP_aes_128_ocb,
+EVP_aes_192_ocb,
+EVP_aes_256_ocb,
+EVP_aes_128_wrap,
+EVP_aes_192_wrap,
+EVP_aes_256_wrap,
+EVP_aes_128_wrap_pad,
+EVP_aes_192_wrap_pad,
+EVP_aes_256_wrap_pad,
+EVP_aes_128_xts,
+EVP_aes_256_xts
+- EVP AES cipher
+
+=head1 SYNOPSIS
+
+=for openssl generic
+
+ #include <openssl/evp.h>
+
+ const EVP_CIPHER *EVP_ciphername(void)
+
+I<EVP_ciphername> is used a placeholder for any of the described cipher
+functions, such as I<EVP_aes_128_cbc>.
+
+=head1 DESCRIPTION
+
+The AES encryption algorithm for EVP.
+
+=over 4
+
+=item EVP_aes_128_cbc(),
+EVP_aes_192_cbc(),
+EVP_aes_256_cbc(),
+EVP_aes_128_cfb(),
+EVP_aes_192_cfb(),
+EVP_aes_256_cfb(),
+EVP_aes_128_cfb1(),
+EVP_aes_192_cfb1(),
+EVP_aes_256_cfb1(),
+EVP_aes_128_cfb8(),
+EVP_aes_192_cfb8(),
+EVP_aes_256_cfb8(),
+EVP_aes_128_cfb128(),
+EVP_aes_192_cfb128(),
+EVP_aes_256_cfb128(),
+EVP_aes_128_ctr(),
+EVP_aes_192_ctr(),
+EVP_aes_256_ctr(),
+EVP_aes_128_ecb(),
+EVP_aes_192_ecb(),
+EVP_aes_256_ecb(),
+EVP_aes_128_ofb(),
+EVP_aes_192_ofb(),
+EVP_aes_256_ofb()
+
+AES for 128, 192 and 256 bit keys in the following modes: CBC, CFB with 128-bit
+shift, CFB with 1-bit shift, CFB with 8-bit shift, CTR, ECB, and OFB.
+
+=item EVP_aes_128_cbc_hmac_sha1(),
+EVP_aes_256_cbc_hmac_sha1()
+
+Authenticated encryption with AES in CBC mode using SHA-1 as HMAC, with keys of
+128 and 256 bits length respectively. The authentication tag is 160 bits long.
+
+WARNING: this is not intended for usage outside of TLS and requires calling of
+some undocumented ctrl functions. These ciphers do not conform to the EVP AEAD
+interface.
+
+=item EVP_aes_128_cbc_hmac_sha256(),
+EVP_aes_256_cbc_hmac_sha256()
+
+Authenticated encryption with AES in CBC mode using SHA256 (SHA-2, 256-bits) as
+HMAC, with keys of 128 and 256 bits length respectively. The authentication tag
+is 256 bits long.
+
+WARNING: this is not intended for usage outside of TLS and requires calling of
+some undocumented ctrl functions. These ciphers do not conform to the EVP AEAD
+interface.
+
+=item EVP_aes_128_ccm(),
+EVP_aes_192_ccm(),
+EVP_aes_256_ccm(),
+EVP_aes_128_gcm(),
+EVP_aes_192_gcm(),
+EVP_aes_256_gcm(),
+EVP_aes_128_ocb(),
+EVP_aes_192_ocb(),
+EVP_aes_256_ocb()
+
+AES for 128, 192 and 256 bit keys in CBC-MAC Mode (CCM), Galois Counter Mode
+(GCM) and OCB Mode respectively. These ciphers require additional control
+operations to function correctly, see the L<EVP_EncryptInit(3)/AEAD Interface>
+section for details.
+
+=item EVP_aes_128_wrap(),
+EVP_aes_192_wrap(),
+EVP_aes_256_wrap(),
+EVP_aes_128_wrap_pad(),
+EVP_aes_128_wrap(),
+EVP_aes_192_wrap(),
+EVP_aes_256_wrap(),
+EVP_aes_192_wrap_pad(),
+EVP_aes_128_wrap(),
+EVP_aes_192_wrap(),
+EVP_aes_256_wrap(),
+EVP_aes_256_wrap_pad()
+
+AES key wrap with 128, 192 and 256 bit keys, as according to RFC 3394 section
+2.2.1 ("wrap") and RFC 5649 section 4.1 ("wrap with padding") respectively.
+
+=item EVP_aes_128_xts(),
+EVP_aes_256_xts()
+
+AES XTS mode (XTS-AES) is standardized in IEEE Std. 1619-2007 and described in NIST
+SP 800-38E. The XTS (XEX-based tweaked-codebook mode with ciphertext stealing)
+mode was designed by Prof. Phillip Rogaway of University of California, Davis,
+intended for encrypting data on a storage device.
+
+XTS-AES provides confidentiality but not authentication of data. It also
+requires a key of double-length for protection of a certain key size.
+In particular, XTS-AES-128 (B<EVP_aes_128_xts>) takes input of a 256-bit key to
+achieve AES 128-bit security, and XTS-AES-256 (B<EVP_aes_256_xts>) takes input
+of a 512-bit key to achieve AES 256-bit security.
+
+=back
+
+=head1 RETURN VALUES
+
+These functions return an B<EVP_CIPHER> structure that contains the
+implementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for
+details of the B<EVP_CIPHER> structure.
+
+=head1 SEE ALSO
+
+L<evp(7)>,
+L<EVP_EncryptInit(3)>,
+L<EVP_CIPHER_meth_new(3)>
+
+=head1 COPYRIGHT
+
+Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
+
+Licensed under the Apache License 2.0 (the "License"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file LICENSE in the source distribution or at
+L<https://www.openssl.org/source/license.html>.
+
+=cut
+
+++ /dev/null
-=pod
-
-=head1 NAME
-
-EVP_aria_128_cbc,
-EVP_aria_192_cbc,
-EVP_aria_256_cbc,
-EVP_aria_128_cfb,
-EVP_aria_192_cfb,
-EVP_aria_256_cfb,
-EVP_aria_128_cfb1,
-EVP_aria_192_cfb1,
-EVP_aria_256_cfb1,
-EVP_aria_128_cfb8,
-EVP_aria_192_cfb8,
-EVP_aria_256_cfb8,
-EVP_aria_128_cfb128,
-EVP_aria_192_cfb128,
-EVP_aria_256_cfb128,
-EVP_aria_128_ctr,
-EVP_aria_192_ctr,
-EVP_aria_256_ctr,
-EVP_aria_128_ecb,
-EVP_aria_192_ecb,
-EVP_aria_256_ecb,
-EVP_aria_128_ofb,
-EVP_aria_192_ofb,
-EVP_aria_256_ofb,
-EVP_aria_128_ccm,
-EVP_aria_192_ccm,
-EVP_aria_256_ccm,
-EVP_aria_128_gcm,
-EVP_aria_192_gcm,
-EVP_aria_256_gcm,
-- EVP ARIA cipher
-
-=head1 SYNOPSIS
-
-=for openssl generic
-
- #include <openssl/evp.h>
-
- const EVP_CIPHER *EVP_ciphername(void)
-
-I<EVP_ciphername> is used a placeholder for any of the described cipher
-functions, such as I<EVP_aria_128_cbc>.
-
-=head1 DESCRIPTION
-
-The ARIA encryption algorithm for EVP.
-
-=over 4
-
-=item EVP_aria_128_cbc(),
-EVP_aria_192_cbc(),
-EVP_aria_256_cbc(),
-EVP_aria_128_cfb(),
-EVP_aria_192_cfb(),
-EVP_aria_256_cfb(),
-EVP_aria_128_cfb1(),
-EVP_aria_192_cfb1(),
-EVP_aria_256_cfb1(),
-EVP_aria_128_cfb8(),
-EVP_aria_192_cfb8(),
-EVP_aria_256_cfb8(),
-EVP_aria_128_cfb128(),
-EVP_aria_192_cfb128(),
-EVP_aria_256_cfb128(),
-EVP_aria_128_ctr(),
-EVP_aria_192_ctr(),
-EVP_aria_256_ctr(),
-EVP_aria_128_ecb(),
-EVP_aria_192_ecb(),
-EVP_aria_256_ecb(),
-EVP_aria_128_ofb(),
-EVP_aria_192_ofb(),
-EVP_aria_256_ofb()
-
-ARIA for 128, 192 and 256 bit keys in the following modes: CBC, CFB with
-128-bit shift, CFB with 1-bit shift, CFB with 8-bit shift, CTR, ECB and OFB.
-
-=item EVP_aria_128_ccm(),
-EVP_aria_192_ccm(),
-EVP_aria_256_ccm(),
-EVP_aria_128_gcm(),
-EVP_aria_192_gcm(),
-EVP_aria_256_gcm(),
-
-ARIA for 128, 192 and 256 bit keys in CBC-MAC Mode (CCM) and Galois Counter
-Mode (GCM). These ciphers require additional control operations to function
-correctly, see the L<EVP_EncryptInit(3)/AEAD Interface> section for details.
-
-=back
-
-=head1 RETURN VALUES
-
-These functions return an B<EVP_CIPHER> structure that contains the
-implementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for
-details of the B<EVP_CIPHER> structure.
-
-=head1 SEE ALSO
-
-L<evp(7)>,
-L<EVP_EncryptInit(3)>,
-L<EVP_CIPHER_meth_new(3)>
-
-=head1 COPYRIGHT
-
-Copyright 2017-2019 The OpenSSL Project Authors. All Rights Reserved.
-
-Licensed under the Apache License 2.0 (the "License"). You may not use
-this file except in compliance with the License. You can obtain a copy
-in the file LICENSE in the source distribution or at
-L<https://www.openssl.org/source/license.html>.
-
-=cut
-
--- /dev/null
+=pod
+
+=head1 NAME
+
+EVP_aria_128_cbc,
+EVP_aria_192_cbc,
+EVP_aria_256_cbc,
+EVP_aria_128_cfb,
+EVP_aria_192_cfb,
+EVP_aria_256_cfb,
+EVP_aria_128_cfb1,
+EVP_aria_192_cfb1,
+EVP_aria_256_cfb1,
+EVP_aria_128_cfb8,
+EVP_aria_192_cfb8,
+EVP_aria_256_cfb8,
+EVP_aria_128_cfb128,
+EVP_aria_192_cfb128,
+EVP_aria_256_cfb128,
+EVP_aria_128_ctr,
+EVP_aria_192_ctr,
+EVP_aria_256_ctr,
+EVP_aria_128_ecb,
+EVP_aria_192_ecb,
+EVP_aria_256_ecb,
+EVP_aria_128_ofb,
+EVP_aria_192_ofb,
+EVP_aria_256_ofb,
+EVP_aria_128_ccm,
+EVP_aria_192_ccm,
+EVP_aria_256_ccm,
+EVP_aria_128_gcm,
+EVP_aria_192_gcm,
+EVP_aria_256_gcm,
+- EVP ARIA cipher
+
+=head1 SYNOPSIS
+
+=for openssl generic
+
+ #include <openssl/evp.h>
+
+ const EVP_CIPHER *EVP_ciphername(void)
+
+I<EVP_ciphername> is used a placeholder for any of the described cipher
+functions, such as I<EVP_aria_128_cbc>.
+
+=head1 DESCRIPTION
+
+The ARIA encryption algorithm for EVP.
+
+=over 4
+
+=item EVP_aria_128_cbc(),
+EVP_aria_192_cbc(),
+EVP_aria_256_cbc(),
+EVP_aria_128_cfb(),
+EVP_aria_192_cfb(),
+EVP_aria_256_cfb(),
+EVP_aria_128_cfb1(),
+EVP_aria_192_cfb1(),
+EVP_aria_256_cfb1(),
+EVP_aria_128_cfb8(),
+EVP_aria_192_cfb8(),
+EVP_aria_256_cfb8(),
+EVP_aria_128_cfb128(),
+EVP_aria_192_cfb128(),
+EVP_aria_256_cfb128(),
+EVP_aria_128_ctr(),
+EVP_aria_192_ctr(),
+EVP_aria_256_ctr(),
+EVP_aria_128_ecb(),
+EVP_aria_192_ecb(),
+EVP_aria_256_ecb(),
+EVP_aria_128_ofb(),
+EVP_aria_192_ofb(),
+EVP_aria_256_ofb()
+
+ARIA for 128, 192 and 256 bit keys in the following modes: CBC, CFB with
+128-bit shift, CFB with 1-bit shift, CFB with 8-bit shift, CTR, ECB and OFB.
+
+=item EVP_aria_128_ccm(),
+EVP_aria_192_ccm(),
+EVP_aria_256_ccm(),
+EVP_aria_128_gcm(),
+EVP_aria_192_gcm(),
+EVP_aria_256_gcm(),
+
+ARIA for 128, 192 and 256 bit keys in CBC-MAC Mode (CCM) and Galois Counter
+Mode (GCM). These ciphers require additional control operations to function
+correctly, see the L<EVP_EncryptInit(3)/AEAD Interface> section for details.
+
+=back
+
+=head1 RETURN VALUES
+
+These functions return an B<EVP_CIPHER> structure that contains the
+implementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for
+details of the B<EVP_CIPHER> structure.
+
+=head1 SEE ALSO
+
+L<evp(7)>,
+L<EVP_EncryptInit(3)>,
+L<EVP_CIPHER_meth_new(3)>
+
+=head1 COPYRIGHT
+
+Copyright 2017-2019 The OpenSSL Project Authors. All Rights Reserved.
+
+Licensed under the Apache License 2.0 (the "License"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file LICENSE in the source distribution or at
+L<https://www.openssl.org/source/license.html>.
+
+=cut
+
+++ /dev/null
-=pod
-
-=head1 NAME
-
-EVP_camellia_128_cbc,
-EVP_camellia_192_cbc,
-EVP_camellia_256_cbc,
-EVP_camellia_128_cfb,
-EVP_camellia_192_cfb,
-EVP_camellia_256_cfb,
-EVP_camellia_128_cfb1,
-EVP_camellia_192_cfb1,
-EVP_camellia_256_cfb1,
-EVP_camellia_128_cfb8,
-EVP_camellia_192_cfb8,
-EVP_camellia_256_cfb8,
-EVP_camellia_128_cfb128,
-EVP_camellia_192_cfb128,
-EVP_camellia_256_cfb128,
-EVP_camellia_128_ctr,
-EVP_camellia_192_ctr,
-EVP_camellia_256_ctr,
-EVP_camellia_128_ecb,
-EVP_camellia_192_ecb,
-EVP_camellia_256_ecb,
-EVP_camellia_128_ofb,
-EVP_camellia_192_ofb,
-EVP_camellia_256_ofb
-- EVP Camellia cipher
-
-=head1 SYNOPSIS
-
-=for openssl generic
-
- #include <openssl/evp.h>
-
- const EVP_CIPHER *EVP_ciphername(void)
-
-I<EVP_ciphername> is used a placeholder for any of the described cipher
-functions, such as I<EVP_camellia_128_cbc>.
-
-=head1 DESCRIPTION
-
-The Camellia encryption algorithm for EVP.
-
-=over 4
-
-=item EVP_camellia_128_cbc(),
-EVP_camellia_192_cbc(),
-EVP_camellia_256_cbc(),
-EVP_camellia_128_cfb(),
-EVP_camellia_192_cfb(),
-EVP_camellia_256_cfb(),
-EVP_camellia_128_cfb1(),
-EVP_camellia_192_cfb1(),
-EVP_camellia_256_cfb1(),
-EVP_camellia_128_cfb8(),
-EVP_camellia_192_cfb8(),
-EVP_camellia_256_cfb8(),
-EVP_camellia_128_cfb128(),
-EVP_camellia_192_cfb128(),
-EVP_camellia_256_cfb128(),
-EVP_camellia_128_ctr(),
-EVP_camellia_192_ctr(),
-EVP_camellia_256_ctr(),
-EVP_camellia_128_ecb(),
-EVP_camellia_192_ecb(),
-EVP_camellia_256_ecb(),
-EVP_camellia_128_ofb(),
-EVP_camellia_192_ofb(),
-EVP_camellia_256_ofb()
-
-Camellia for 128, 192 and 256 bit keys in the following modes: CBC, CFB with
-128-bit shift, CFB with 1-bit shift, CFB with 8-bit shift, CTR, ECB and OFB.
-
-=back
-
-=head1 RETURN VALUES
-
-These functions return an B<EVP_CIPHER> structure that contains the
-implementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for
-details of the B<EVP_CIPHER> structure.
-
-=head1 SEE ALSO
-
-L<evp(7)>,
-L<EVP_EncryptInit(3)>,
-L<EVP_CIPHER_meth_new(3)>
-
-=head1 COPYRIGHT
-
-Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
-
-Licensed under the Apache License 2.0 (the "License"). You may not use
-this file except in compliance with the License. You can obtain a copy
-in the file LICENSE in the source distribution or at
-L<https://www.openssl.org/source/license.html>.
-
-=cut
-
--- /dev/null
+=pod
+
+=head1 NAME
+
+EVP_camellia_128_cbc,
+EVP_camellia_192_cbc,
+EVP_camellia_256_cbc,
+EVP_camellia_128_cfb,
+EVP_camellia_192_cfb,
+EVP_camellia_256_cfb,
+EVP_camellia_128_cfb1,
+EVP_camellia_192_cfb1,
+EVP_camellia_256_cfb1,
+EVP_camellia_128_cfb8,
+EVP_camellia_192_cfb8,
+EVP_camellia_256_cfb8,
+EVP_camellia_128_cfb128,
+EVP_camellia_192_cfb128,
+EVP_camellia_256_cfb128,
+EVP_camellia_128_ctr,
+EVP_camellia_192_ctr,
+EVP_camellia_256_ctr,
+EVP_camellia_128_ecb,
+EVP_camellia_192_ecb,
+EVP_camellia_256_ecb,
+EVP_camellia_128_ofb,
+EVP_camellia_192_ofb,
+EVP_camellia_256_ofb
+- EVP Camellia cipher
+
+=head1 SYNOPSIS
+
+=for openssl generic
+
+ #include <openssl/evp.h>
+
+ const EVP_CIPHER *EVP_ciphername(void)
+
+I<EVP_ciphername> is used a placeholder for any of the described cipher
+functions, such as I<EVP_camellia_128_cbc>.
+
+=head1 DESCRIPTION
+
+The Camellia encryption algorithm for EVP.
+
+=over 4
+
+=item EVP_camellia_128_cbc(),
+EVP_camellia_192_cbc(),
+EVP_camellia_256_cbc(),
+EVP_camellia_128_cfb(),
+EVP_camellia_192_cfb(),
+EVP_camellia_256_cfb(),
+EVP_camellia_128_cfb1(),
+EVP_camellia_192_cfb1(),
+EVP_camellia_256_cfb1(),
+EVP_camellia_128_cfb8(),
+EVP_camellia_192_cfb8(),
+EVP_camellia_256_cfb8(),
+EVP_camellia_128_cfb128(),
+EVP_camellia_192_cfb128(),
+EVP_camellia_256_cfb128(),
+EVP_camellia_128_ctr(),
+EVP_camellia_192_ctr(),
+EVP_camellia_256_ctr(),
+EVP_camellia_128_ecb(),
+EVP_camellia_192_ecb(),
+EVP_camellia_256_ecb(),
+EVP_camellia_128_ofb(),
+EVP_camellia_192_ofb(),
+EVP_camellia_256_ofb()
+
+Camellia for 128, 192 and 256 bit keys in the following modes: CBC, CFB with
+128-bit shift, CFB with 1-bit shift, CFB with 8-bit shift, CTR, ECB and OFB.
+
+=back
+
+=head1 RETURN VALUES
+
+These functions return an B<EVP_CIPHER> structure that contains the
+implementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for
+details of the B<EVP_CIPHER> structure.
+
+=head1 SEE ALSO
+
+L<evp(7)>,
+L<EVP_EncryptInit(3)>,
+L<EVP_CIPHER_meth_new(3)>
+
+=head1 COPYRIGHT
+
+Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
+
+Licensed under the Apache License 2.0 (the "License"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file LICENSE in the source distribution or at
+L<https://www.openssl.org/source/license.html>.
+
+=cut
+
+++ /dev/null
-=pod
-
-=head1 NAME
-
-EVP_des_cbc,
-EVP_des_cfb,
-EVP_des_cfb1,
-EVP_des_cfb8,
-EVP_des_cfb64,
-EVP_des_ecb,
-EVP_des_ofb,
-EVP_des_ede,
-EVP_des_ede_cbc,
-EVP_des_ede_cfb,
-EVP_des_ede_cfb64,
-EVP_des_ede_ecb,
-EVP_des_ede_ofb,
-EVP_des_ede3,
-EVP_des_ede3_cbc,
-EVP_des_ede3_cfb,
-EVP_des_ede3_cfb1,
-EVP_des_ede3_cfb8,
-EVP_des_ede3_cfb64,
-EVP_des_ede3_ecb,
-EVP_des_ede3_ofb,
-EVP_des_ede3_wrap
-- EVP DES cipher
-
-=head1 SYNOPSIS
-
-=for openssl generic
-
- #include <openssl/evp.h>
-
- const EVP_CIPHER *EVP_ciphername(void)
-
-I<EVP_ciphername> is used a placeholder for any of the described cipher
-functions, such as I<EVP_des_cbc>.
-
-=head1 DESCRIPTION
-
-The DES encryption algorithm for EVP.
-
-=over 4
-
-=item EVP_des_cbc(),
-EVP_des_ecb(),
-EVP_des_cfb(),
-EVP_des_cfb1(),
-EVP_des_cfb8(),
-EVP_des_cfb64(),
-EVP_des_ofb()
-
-DES in CBC, ECB, CFB with 64-bit shift, CFB with 1-bit shift, CFB with 8-bit
-shift and OFB modes.
-
-=item EVP_des_ede(),
-EVP_des_ede_cbc(),
-EVP_des_ede_cfb(),
-EVP_des_ede_cfb64(),
-EVP_des_ede_ecb(),
-EVP_des_ede_ofb()
-
-Two key triple DES in ECB, CBC, CFB with 64-bit shift and OFB modes.
-
-=item EVP_des_ede3(),
-EVP_des_ede3_cbc(),
-EVP_des_ede3_cfb(),
-EVP_des_ede3_cfb1(),
-EVP_des_ede3_cfb8(),
-EVP_des_ede3_cfb64(),
-EVP_des_ede3_ecb(),
-EVP_des_ede3_ofb()
-
-Three-key triple DES in ECB, CBC, CFB with 64-bit shift, CFB with 1-bit shift,
-CFB with 8-bit shift and OFB modes.
-
-=item EVP_des_ede3_wrap()
-
-Triple-DES key wrap according to RFC 3217 Section 3.
-
-=back
-
-=head1 RETURN VALUES
-
-These functions return an B<EVP_CIPHER> structure that contains the
-implementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for
-details of the B<EVP_CIPHER> structure.
-
-=head1 SEE ALSO
-
-L<evp(7)>,
-L<EVP_EncryptInit(3)>,
-L<EVP_CIPHER_meth_new(3)>
-
-=head1 COPYRIGHT
-
-Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
-
-Licensed under the Apache License 2.0 (the "License"). You may not use
-this file except in compliance with the License. You can obtain a copy
-in the file LICENSE in the source distribution or at
-L<https://www.openssl.org/source/license.html>.
-
-=cut
-
--- /dev/null
+=pod
+
+=head1 NAME
+
+EVP_des_cbc,
+EVP_des_cfb,
+EVP_des_cfb1,
+EVP_des_cfb8,
+EVP_des_cfb64,
+EVP_des_ecb,
+EVP_des_ofb,
+EVP_des_ede,
+EVP_des_ede_cbc,
+EVP_des_ede_cfb,
+EVP_des_ede_cfb64,
+EVP_des_ede_ecb,
+EVP_des_ede_ofb,
+EVP_des_ede3,
+EVP_des_ede3_cbc,
+EVP_des_ede3_cfb,
+EVP_des_ede3_cfb1,
+EVP_des_ede3_cfb8,
+EVP_des_ede3_cfb64,
+EVP_des_ede3_ecb,
+EVP_des_ede3_ofb,
+EVP_des_ede3_wrap
+- EVP DES cipher
+
+=head1 SYNOPSIS
+
+=for openssl generic
+
+ #include <openssl/evp.h>
+
+ const EVP_CIPHER *EVP_ciphername(void)
+
+I<EVP_ciphername> is used a placeholder for any of the described cipher
+functions, such as I<EVP_des_cbc>.
+
+=head1 DESCRIPTION
+
+The DES encryption algorithm for EVP.
+
+=over 4
+
+=item EVP_des_cbc(),
+EVP_des_ecb(),
+EVP_des_cfb(),
+EVP_des_cfb1(),
+EVP_des_cfb8(),
+EVP_des_cfb64(),
+EVP_des_ofb()
+
+DES in CBC, ECB, CFB with 64-bit shift, CFB with 1-bit shift, CFB with 8-bit
+shift and OFB modes.
+
+=item EVP_des_ede(),
+EVP_des_ede_cbc(),
+EVP_des_ede_cfb(),
+EVP_des_ede_cfb64(),
+EVP_des_ede_ecb(),
+EVP_des_ede_ofb()
+
+Two key triple DES in ECB, CBC, CFB with 64-bit shift and OFB modes.
+
+=item EVP_des_ede3(),
+EVP_des_ede3_cbc(),
+EVP_des_ede3_cfb(),
+EVP_des_ede3_cfb1(),
+EVP_des_ede3_cfb8(),
+EVP_des_ede3_cfb64(),
+EVP_des_ede3_ecb(),
+EVP_des_ede3_ofb()
+
+Three-key triple DES in ECB, CBC, CFB with 64-bit shift, CFB with 1-bit shift,
+CFB with 8-bit shift and OFB modes.
+
+=item EVP_des_ede3_wrap()
+
+Triple-DES key wrap according to RFC 3217 Section 3.
+
+=back
+
+=head1 RETURN VALUES
+
+These functions return an B<EVP_CIPHER> structure that contains the
+implementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for
+details of the B<EVP_CIPHER> structure.
+
+=head1 SEE ALSO
+
+L<evp(7)>,
+L<EVP_EncryptInit(3)>,
+L<EVP_CIPHER_meth_new(3)>
+
+=head1 COPYRIGHT
+
+Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
+
+Licensed under the Apache License 2.0 (the "License"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file LICENSE in the source distribution or at
+L<https://www.openssl.org/source/license.html>.
+
+=cut
+
=head1 NAME
-EVP_MAC-KMAC, EVP_MAC-KMAC256, EVP_MAC-KMAC256
+EVP_MAC-KMAC, EVP_MAC-KMAC128, EVP_MAC-KMAC256
- The KMAC EVP_MAC implementations
=head1 DESCRIPTION
=head1 DESCRIPTION
-The <openssl/core.h> header file defines a number of public types that
+The F<< <openssl/core.h> >> header defines a number of public types that
are used to communicate between the OpenSSL libraries and
implementation providers.
These types are designed to minimise the need for intimate knowledge
identity zero and function pointer NULL.
The available function identities and corresponding function
-signatures are defined by L<openssl-core_numbers.h(7)>.
+signatures are defined in L<openssl-core_numbers.h(7)>.
Any function identity not recognised by the recipient of this type
will be ignored.
A pointer to this context will be passed back in a number of the other cipher
operation function calls.
The parameter I<provctx> is the provider context generated during provider
-initialisation (see L<provider(3)>).
+initialisation (see L<provider(7)>).
OP_cipher_freectx() is passed a pointer to the provider side cipher context in
the I<cctx> parameter.
A pointer to this context will be passed back in a number of the other digest
operation function calls.
The parameter I<provctx> is the provider context generated during provider
-initialisation (see L<provider(3)>).
+initialisation (see L<provider(7)>).
OP_digest_freectx() is passed a pointer to the provider side digest context in
the I<dctx> parameter.
OP_digest_digest() is a "oneshot" digest function.
No provider side digest context is used.
Instead the provider context that was created during provider initialisation is
-passed in the I<provctx> parameter (see L<provider(3)>).
+passed in the I<provctx> parameter (see L<provider(7)>).
I<inl> bytes at I<in> should be digested and the result should be stored at
I<out>. The length of the digest should be stored in I<*outl> which should not
exceed I<outsz> bytes.
A pointer to this context will be passed back in a number of the other key
exchange operation function calls.
The paramater I<provctx> is the provider context generated during provider
-initialisation (see L<provider(3)>).
+initialisation (see L<provider(7)>).
OP_keyexch_freectx() is passed a pointer to the provider side key exchange
context in the I<ctx> parameter.
A pointer to this context will be passed back in a number of the other mac
operation function calls.
The paramater I<provctx> is the provider context generated during provider
-initialisation (see L<provider(3)>).
+initialisation (see L<provider(7)>).
OP_mac_freectx() is passed a pointer to the provider side mac context in
the I<mctx> parameter.
A pointer to this context will be passed back in a number of the other signature
operation function calls.
The parameter I<provctx> is the provider context generated during provider
-initialisation (see L<provider(3)>).
+initialisation (see L<provider(7)>).
OP_signature_freectx() is passed a pointer to the provider side signature
context in the I<ctx> parameter.