openssl/doc/man7
Matthias St. Pierre 6ebdbba76a doc: improve documentation of EVP in-place encryption
The EVP interface explicitly allows in-place encryption/decryption,
but this fact is just 'partially' documented in `EVP_EncryptUpdate(3)`
(pun intended): the manual page mentions only operation failure in
case of 'partial' overlaps. This is not even correct, because
the check for partially overlapping buffers is only implemented
in legacy code paths.

Currently, in-place encryption/decryption is only documented for
RSA (`RSA_public_encrypt(3)`) and DES (`DES_ecb_encrypt(3)`), as
well as in the provider interface (`provider-cipher(7)`).

This commit amends `EVP_EncryptUpdate(3)` and `provider-cipher(7)`
to make the front-end and back-end documentation consistent.

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
(Merged from https://github.com/openssl/openssl/pull/22875)
2023-12-12 10:40:56 +01:00
..
img Add EVP_DigestSqueeze() API. 2023-11-10 13:27:00 +01:00
bio.pod Change all references to OpenSSL 3.1 to OpenSSL 3.2 in the master branch 2022-10-07 10:05:50 +02:00
ct.pod
des_modes.pod
EVP_ASYM_CIPHER-RSA.pod Add doc for EVP_ASYM_CIPHER-RSA and clean up OSSL_PROVIDER-FIPS.pod. 2022-11-18 14:29:01 +01:00
EVP_ASYM_CIPHER-SM2.pod
EVP_CIPHER-AES.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_CIPHER-ARIA.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-BLOWFISH.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-CAMELLIA.pod Add support for camellia cbc cts mode 2021-08-18 08:38:40 +10:00
EVP_CIPHER-CAST.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-CHACHA.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-DES.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-IDEA.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-NULL.pod Add documentation for "NULL" cipher and digest algorithms. 2023-02-28 14:26:33 +11:00
EVP_CIPHER-RC2.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-RC4.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-RC5.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-SEED.pod Add Docs for EVP_CIPHER-* 2021-05-28 14:29:13 +02:00
EVP_CIPHER-SM4.pod doc: add note for sm4 xts 2022-11-29 16:18:07 +01:00
EVP_KDF-ARGON2.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_KDF-HKDF.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-HMAC-DRBG.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_KDF-KB.pod Add KMAC support to KBKDF. 2022-12-16 16:36:49 +01:00
EVP_KDF-KRB5KDF.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-PBKDF1.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-PBKDF2.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-PKCS12KDF.pod Copyright year updates 2023-09-28 14:23:29 +01:00
EVP_KDF-PVKKDF.pod Fix version mistake in some HISTORY sections 2022-11-23 08:23:17 +01:00
EVP_KDF-SCRYPT.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-SS.pod Use proper KDF SS parameter name 2023-11-06 10:54:22 +01:00
EVP_KDF-SSHKDF.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-TLS1_PRF.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-TLS13_KDF.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-X942-ASN1.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-X942-CONCAT.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KDF-X963.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KEM-EC.pod Add HISTORY section to EVP_KEM-EC document. 2022-11-24 06:39:22 +00:00
EVP_KEM-RSA.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
EVP_KEM-X25519.pod Fix version mistake in some HISTORY sections 2022-11-23 08:23:17 +01:00
EVP_KEYEXCH-DH.pod Update copyright year 2022-05-03 13:34:51 +01:00
EVP_KEYEXCH-ECDH.pod Update copyright year 2022-05-03 13:34:51 +01:00
EVP_KEYEXCH-X25519.pod
EVP_MAC-BLAKE2.pod doc: fix description of mac "block-size" parameter 2023-11-22 10:51:10 +01:00
EVP_MAC-CMAC.pod doc: fix description of mac "block-size" parameter 2023-11-22 10:51:10 +01:00
EVP_MAC-GMAC.pod
EVP_MAC-HMAC.pod doc: fix description of mac "block-size" parameter 2023-11-22 10:51:10 +01:00
EVP_MAC-KMAC.pod doc: fix description of mac "block-size" parameter 2023-11-22 10:51:10 +01:00
EVP_MAC-Poly1305.pod mac: improve MAC documentation (Poly 1305 key reuse, nomenclature) 2021-05-14 22:24:00 +10:00
EVP_MAC-Siphash.pod
EVP_MD-BLAKE2.pod Properly limit the variable output size for BLAKE2 2023-11-13 12:13:17 +01:00
EVP_MD-common.pod Update copyright year 2021-06-17 13:24:59 +01:00
EVP_MD-KECCAK.pod Add default provider support for Keccak 224, 256, 384 and 512 2021-09-23 12:07:57 +10:00
EVP_MD-MD2.pod
EVP_MD-MD4.pod
EVP_MD-MD5-SHA1.pod
EVP_MD-MD5.pod
EVP_MD-MDC2.pod
EVP_MD-NULL.pod Add documentation for "NULL" cipher and digest algorithms. 2023-02-28 14:26:33 +11:00
EVP_MD-RIPEMD160.pod ripemd: document as being present in the default provider 2022-10-19 13:21:01 +02:00
EVP_MD-SHA1.pod
EVP_MD-SHA2.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_MD-SHA3.pod
EVP_MD-SHAKE.pod doc: improve display of KECCAK-KMAC128, KECCAK-KMAC256 defs 2023-12-04 09:33:25 +01:00
EVP_MD-SM3.pod
EVP_MD-WHIRLPOOL.pod
EVP_PKEY-DH.pod Add documentation for key validation that indicates the difference between the 2022-05-09 10:07:42 +10:00
EVP_PKEY-DSA.pod Add documentation for key validation that indicates the difference between the 2022-05-09 10:07:42 +10:00
EVP_PKEY-EC.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_PKEY-FFC.pod Add documentation for key validation that indicates the difference between the 2022-05-09 10:07:42 +10:00
EVP_PKEY-HMAC.pod
EVP_PKEY-RSA.pod rsa-doc: fix typo 2023-12-01 10:31:37 +01:00
EVP_PKEY-SM2.pod Documentation: SM2 keys can use only the SM2 curve 2021-06-24 11:29:58 +02:00
EVP_PKEY-X25519.pod Add HPKE DHKEM provider support for EC, X25519 and X448. 2022-09-23 09:24:47 +01:00
EVP_RAND-CTR-DRBG.pod Fix docs related to EVP_RAND_CTX_new() that were not passing the parent 2022-11-30 07:31:53 +00:00
EVP_RAND-HASH-DRBG.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_RAND-HMAC-DRBG.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_RAND-SEED-SRC.pod Fix EVP_RAND-SEED-SRC documentation example 2023-11-30 12:33:17 +01:00
EVP_RAND-TEST-RAND.pod Copyright year updates 2023-09-28 14:23:29 +01:00
EVP_RAND.pod
EVP_SIGNATURE-DSA.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_SIGNATURE-ECDSA.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_SIGNATURE-ED25519.pod Copyright year updates 2023-09-07 09:59:15 +01:00
EVP_SIGNATURE-HMAC.pod
EVP_SIGNATURE-RSA.pod signature: Clamp PSS salt len to MD len 2022-12-08 11:02:52 +01:00
evp.pod
fips_module.pod Copyright year updates 2023-09-07 09:59:15 +01:00
life_cycle-cipher.pod doc: remove end of line whitespace 2021-09-22 16:22:50 +10:00
life_cycle-digest.pod Add EVP_DigestSqueeze() API. 2023-11-10 13:27:00 +01:00
life_cycle-kdf.pod doc: remove end of line whitespace 2021-09-22 16:22:50 +10:00
life_cycle-mac.pod doc: remove end of line whitespace 2021-09-22 16:22:50 +10:00
life_cycle-pkey.pod Update copyright year 2022-05-03 13:34:51 +01:00
life_cycle-rand.pod doc: remove end of line whitespace 2021-09-22 16:22:50 +10:00
openssl_user_macros.pod.in Update copyright year 2021-07-29 15:41:35 +01:00
openssl-core_dispatch.h.pod
openssl-core_names.h.pod
openssl-core.h.pod Move the description of the core types into their own pages 2022-12-08 07:32:34 +01:00
openssl-env.pod Add basic RISC-V cpuid and OPENSSL_riscvcap 2022-05-19 16:32:49 +10:00
openssl-glossary.pod Update copyright year 2022-05-03 13:34:51 +01:00
openssl-quic.pod Copyright year updates 2023-09-07 09:59:15 +01:00
openssl-threads.pod doc: add note to indicate that the OBJ_ functions were not thread safe in 3.0 2021-09-25 10:39:20 +10:00
OSSL_PROVIDER-base.pod Update the provider documentation 2023-11-22 10:43:37 +01:00
OSSL_PROVIDER-default.pod Update the provider documentation 2023-11-22 10:43:37 +01:00
OSSL_PROVIDER-FIPS.pod Update the provider documentation 2023-11-22 10:43:37 +01:00
OSSL_PROVIDER-legacy.pod Update the provider documentation 2023-11-22 10:43:37 +01:00
OSSL_PROVIDER-null.pod Add missing HISTORY sections for OpenSSL 3.0 related documents. 2022-11-21 12:03:10 +01:00
ossl_store-file.pod
ossl_store.pod doc: fix macro name 2021-11-25 16:04:05 +10:00
ossl-guide-introduction.pod Add a new guide page on writing a non-blocking QUIC client 2023-09-08 15:44:37 +01:00
ossl-guide-libcrypto-introduction.pod Incorporate the crypto man page into the OpenSSL guide 2023-08-08 18:42:41 +02:00
ossl-guide-libraries-introduction.pod Fix new typos found by codespell 2023-09-18 09:04:22 +10:00
ossl-guide-libssl-introduction.pod Incorporate the ssl man page into the OpenSSL guide 2023-08-08 18:42:41 +02:00
ossl-guide-migration.pod augment man pages with information about PKCS12KDF in FIPS mode 2023-09-11 11:00:41 +02:00
ossl-guide-quic-client-block.pod augment quic demos to support ipv4/6 connections 2023-11-21 13:01:54 +01:00
ossl-guide-quic-client-non-block.pod Update the OpenSSL Guide tutorials with changes to the demos 2023-11-02 08:14:46 +00:00
ossl-guide-quic-introduction.pod Update README-QUIC.md 2023-10-30 07:53:40 +00:00
ossl-guide-quic-multi-stream.pod Update the OpenSSL Guide tutorials with changes to the demos 2023-11-02 08:14:46 +00:00
ossl-guide-tls-client-block.pod augment quic demos to support ipv4/6 connections 2023-11-21 13:01:54 +01:00
ossl-guide-tls-client-non-block.pod Update the OpenSSL Guide tutorials with changes to the demos 2023-11-02 08:14:46 +00:00
ossl-guide-tls-introduction.pod doc: change "certifictes" to "certificates" 2023-10-26 15:23:59 +01:00
passphrase-encoding.pod Update copyright year 2021-09-07 13:35:43 +02:00
property.pod Copyright year updates 2023-09-07 09:59:15 +01:00
provider-asym_cipher.pod Copyright year updates 2023-09-07 09:59:15 +01:00
provider-base.pod rand: add callbacks to cleanup the user entropy resp. nonce 2023-10-20 09:48:34 +01:00
provider-cipher.pod doc: improve documentation of EVP in-place encryption 2023-12-12 10:40:56 +01:00
provider-decoder.pod Copyright year updates 2023-09-07 09:59:15 +01:00
provider-digest.pod Add EVP_DigestSqueeze() API. 2023-11-10 13:27:00 +01:00
provider-encoder.pod Replace some boldened types with a corresponding man page link 2022-12-08 07:32:34 +01:00
provider-kdf.pod Replace some boldened types with a corresponding man page link 2022-12-08 07:32:34 +01:00
provider-kem.pod Copyright year updates 2023-09-07 09:59:15 +01:00
provider-keyexch.pod Replace some boldened types with a corresponding man page link 2022-12-08 07:32:34 +01:00
provider-keymgmt.pod EVP_PKEY_get_size.pod and provider-keymgmt.pod: document their relation 2023-10-26 16:03:48 +01:00
provider-mac.pod Replace some boldened types with a corresponding man page link 2022-12-08 07:32:34 +01:00
provider-object.pod Update copyright year 2022-05-03 13:34:51 +01:00
provider-rand.pod Replace some boldened types with a corresponding man page link 2022-12-08 07:32:34 +01:00
provider-signature.pod Copyright year updates 2023-09-07 09:59:15 +01:00
provider-storemgmt.pod Copyright year updates 2023-09-28 14:23:29 +01:00
provider.pod Replace some boldened types with a corresponding man page link 2022-12-08 07:32:34 +01:00
proxy-certificates.pod doc: remove end of line whitespace 2021-09-22 16:22:50 +10:00
RAND.pod Fix heading in random generator man7 page 2021-10-08 12:09:46 +10:00
RSA-PSS.pod
x509.pod
X25519.pod