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
des_modes.pod
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
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
EVP_MD-common.pod
EVP_MD-MD2.pod
EVP_MD-MD4.pod
EVP_MD-MD5-SHA1.pod
EVP_MD-MD5.pod
EVP_MD-MDC2.pod Update copyright year 2021-02-18 15:05:17 +00:00
EVP_MD-RIPEMD160.pod
EVP_MD-SHA1.pod
EVP_MD-SHA2.pod
EVP_MD-SHA3.pod
EVP_MD-SHAKE.pod
EVP_MD-SM3.pod
EVP_MD-WHIRLPOOL.pod
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
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
EVP_SIGNATURE-ECDSA.pod
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
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
ossl_store-file.pod
ossl_store.pod
passphrase-encoding.pod
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
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
ssl.pod
x509.pod Fix typos in x509.pod 2021-04-09 19:04:21 +10:00
X25519.pod