openssl/doc/man7
Richard Levitte f99659535d ENCODER & DECODER: Allow decoder implementations to specify "carry on"
So far, decoder implementations would return true (1) for a successful
decode all the way, including what the callback it called returned,
and false (0) in all other cases.

This construction didn't allow to stop to decoding process on fatal
errors, nor to choose what to report in the provider code.

This is now changed so that decoders implementations are made to
return false only on errors that should stop the decoding process from
carrying on with other implementations, and return true for all other
cases, even if that didn't result in a constructed object (EVP_PKEY
for example), essentially making it OK to return "empty handed".

The success of the decoding process is now all about successfully
constructing the final object, rather than about the return value of
the decoding chain.  If no construction is attempted, the central
decoding processing code concludes that whatever the input consisted
of, it's not supported by the available decoder implementations.

Fixes #14423

Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14834)
2021-04-21 10:53:03 +02:00
..
bio.pod Fix typos in bio.pod 2021-03-30 19:01:52 +02:00
crypto.pod Update copyright year 2021-04-08 13:04:41 +01:00
ct.pod Fix function names in ct(7) documentation 2018-12-19 19:00:08 +01:00
des_modes.pod Following the license change, modify the boilerplates in doc/man7/ 2018-12-06 15:36:02 +01:00
EVP_ASYM_CIPHER-SM2.pod Document the provider side SM2 Asymmetric Cipher support 2020-09-25 11:13:54 +01:00
EVP_KDF-HKDF.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_KDF-KB.pod EVP_KDF-KB man page: fixup ABI/API change 2021-03-17 12:32:39 +10:00
EVP_KDF-KRB5KDF.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_KDF-PBKDF2.pod Revert "kdf: make function naming consistent." 2020-07-16 14:21:07 +02:00
EVP_KDF-PKCS12KDF.pod Move PKCS#12 KDF to provider. 2020-08-14 18:15:12 +10:00
EVP_KDF-SCRYPT.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_KDF-SS.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_KDF-SSHKDF.pod doc: document additional argument to KDF derive calls 2021-02-28 17:25:49 +10:00
EVP_KDF-TLS1_PRF.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_KDF-X942-ASN1.pod doc: document additional argument to KDF derive calls 2021-02-28 17:25:49 +10:00
EVP_KDF-X942-CONCAT.pod Add EVP_KDF-X942 to the fips module 2020-12-02 12:15:05 +10:00
EVP_KDF-X963.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_KEM-RSA.pod Add KEM (Key encapsulation mechanism) support to providers 2020-09-19 18:08:46 +10:00
EVP_KEYEXCH-DH.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_KEYEXCH-ECDH.pod Deprecated EVP_PKEY_CTX_get0_dh_kdf_ukm() and EVP_PKEY_CTX_get0_ecdh_kdf_ukm() 2021-02-24 10:44:15 +01:00
EVP_KEYEXCH-X25519.pod Update core_names.h fields and document most fields. 2020-05-26 13:53:07 +10:00
EVP_MAC-BLAKE2.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_MAC-CMAC.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_MAC-GMAC.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_MAC-HMAC.pod DOCS: Fix provider-mac.pod and the docs of our implementations 2021-03-03 14:08:00 +01:00
EVP_MAC-KMAC.pod kmac: update the documention for the customisation string maximum length 2021-04-12 14:59:09 +10:00
EVP_MAC-Poly1305.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_MAC-Siphash.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_MD-BLAKE2.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-common.pod Clean up some doc nits 2020-05-27 00:35:00 +02:00
EVP_MD-MD2.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-MD4.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-MD5-SHA1.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-MD5.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-MDC2.pod Update copyright year 2021-02-18 15:05:17 +00:00
EVP_MD-RIPEMD160.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-SHA1.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-SHA2.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-SHA3.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-SHAKE.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-SM3.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_MD-WHIRLPOOL.pod DOCS: Move implementation specific docs away from provider-digest(7) 2020-03-10 13:32:06 +01:00
EVP_PKEY-DH.pod Add DHX FIPS 186-4 domain parameter validation example 2021-04-19 09:30:02 +10:00
EVP_PKEY-DSA.pod Add DHX FIPS 186-4 domain parameter validation example 2021-04-19 09:30:02 +10:00
EVP_PKEY-EC.pod Update copyright year 2021-01-28 13:54:57 +01:00
EVP_PKEY-FFC.pod Update copyright year 2021-04-08 13:04:41 +01:00
EVP_PKEY-HMAC.pod Update the EVP_PKEY MAC documentation 2020-09-03 09:40:52 +01:00
EVP_PKEY-RSA.pod Add ACVP fips module tests 2020-06-17 11:33:16 +10:00
EVP_PKEY-SM2.pod Document the provider side SM2 Asymmetric Cipher support 2020-09-25 11:13:54 +01:00
EVP_PKEY-X25519.pod Rename EVP_PKEY_set1_tls_encodedpoint to EVP_PKEY_set1_encoded_public_key 2020-10-20 16:39:41 +01:00
EVP_RAND-CTR-DRBG.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_RAND-HASH-DRBG.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_RAND-HMAC-DRBG.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_RAND-SEED-SRC.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_RAND-TEST-RAND.pod Update copyright year 2021-03-11 13:27:36 +00:00
EVP_RAND.pod rand_drbg: remove RAND_DRBG. 2020-08-07 14:16:47 +10:00
EVP_SIGNATURE-DSA.pod Update core_names.h fields and document most fields. 2020-05-26 13:53:07 +10:00
EVP_SIGNATURE-ECDSA.pod Update core_names.h fields and document most fields. 2020-05-26 13:53:07 +10:00
EVP_SIGNATURE-ED25519.pod Update copyright year 2021-01-07 13:38:50 +00:00
EVP_SIGNATURE-HMAC.pod Update the EVP_PKEY MAC documentation 2020-09-03 09:40:52 +01:00
EVP_SIGNATURE-RSA.pod Update copyright year 2021-03-11 13:27:36 +00:00
evp.pod Add EVP_PKEY_todata() and EVP_PKEY_export() functions. 2021-04-15 18:42:04 +02:00
kdf.png doc: life-cycle description for KDFs/PRFs 2021-03-26 18:21:36 +10:00
life_cycle-kdf.pod doc: life-cycle description for KDFs/PRFs 2021-03-26 18:21:36 +10:00
life_cycle-mac.pod lifecycle: correct [sg]ettable to [sg]et 2021-04-16 17:59:25 +10:00
life_cycle-rand.pod Fix naming for EVP_RAND_CTX_gettable functions. 2021-04-17 18:22:13 +10:00
mac.png doc: life-cycle descritpion for MACs 2021-03-26 18:21:37 +10:00
openssl_user_macros.pod.in Document how deprecation should be done 2020-10-12 08:29:31 +02:00
openssl-core_dispatch.h.pod Rename <openssl/core_numbers.h> -> <openssl/core_dispatch.h> 2020-06-24 22:01:22 +02:00
openssl-core_names.h.pod DOCS: add openssl-core_names.h(7) 2020-05-29 08:26:10 +02:00
openssl-core.h.pod Update copyright year 2020-06-25 14:13:12 +01:00
openssl-env.pod PKCS12 etc.: Add hints on using -legacy and -provider-path options 2021-04-19 16:23:46 +02:00
openssl-glossary.pod Update copyright year 2021-04-08 13:04:41 +01:00
openssl-threads.pod Document openssl thread-safety 2021-01-15 10:51:51 +01:00
OSSL_PROVIDER-base.pod Rename OSSL_SERIALIZER / OSSL_DESERIALIZER to OSSL_ENCODE / OSSL_DECODE 2020-08-21 09:23:58 +02:00
OSSL_PROVIDER-default.pod Update copyright year 2021-01-28 13:54:57 +01:00
OSSL_PROVIDER-FIPS.pod Add FIPS Self test for AES_ECB decrypt 2021-04-13 13:06:37 +10:00
OSSL_PROVIDER-legacy.pod Rename <openssl/core_numbers.h> -> <openssl/core_dispatch.h> 2020-06-24 22:01:22 +02:00
OSSL_PROVIDER-null.pod Add a null provider which implements no algorithms. 2020-04-09 17:12:35 +10:00
ossl_store-file.pod POD: stop abusing comment 2019-10-11 15:30:57 +02:00
ossl_store.pod POD: stop abusing comment 2019-10-11 15:30:57 +02:00
passphrase-encoding.pod Update copyright year 2020-04-23 13:55:52 +01:00
property.pod Re-word null->empty property; improve iteration.count example in property.pod 2020-08-21 09:04:09 +02:00
provider-asym_cipher.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-base.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-cipher.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-decoder.pod ENCODER & DECODER: Allow decoder implementations to specify "carry on" 2021-04-21 10:53:03 +02:00
provider-digest.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-encoder.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-kdf.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-kem.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-keyexch.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-keymgmt.pod Remove keymgmt_copy function from the provider API 2021-04-15 09:19:39 +02:00
provider-mac.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-object.pod CORE: Add support for specifying the outermost object structure 2020-11-11 12:43:27 +01:00
provider-rand.pod doc: note that RAND lifecycle transitions will be enforced at some point 2021-03-26 18:21:36 +10:00
provider-signature.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider-storemgmt.pod Small fixes and cleanups of provider API documentation 2021-04-09 10:32:00 +02:00
provider.pod Update provider.pod 2021-04-08 12:20:22 +01:00
proxy-certificates.pod Update copyright year 2020-06-04 14:33:57 +01:00
rand.png doc: life-cycle descritpion for RANDs 2021-03-26 18:21:37 +10:00
RAND.pod Update copyright year 2021-03-11 13:27:36 +00:00
RSA-PSS.pod Following the license change, modify the boilerplates in doc/man7/ 2018-12-06 15:36:02 +01:00
ssl.pod Strip much out of ssl.pod 2019-11-06 19:38:32 +01:00
x509.pod Fix typos in x509.pod 2021-04-09 19:04:21 +10:00
X25519.pod Update copyright year 2020-04-23 13:55:52 +01:00