diff options
author | Richard Levitte <levitte@openssl.org> | 2020-10-17 08:23:43 +0200 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2020-11-11 12:43:27 +0100 |
commit | b9a2afdfe68a5212dc2352a574a6ca98d8cf5140 (patch) | |
tree | 1f399dba2607d07779eeb57419d9bc2484d3a135 /doc | |
parent | cd861ab73d57ea21dd7342b13f4a733da229e15e (diff) |
ENCODER: Add output structure support for EVP_PKEY encoding
OSSL_ENCODER_CTX_new_by_EVP_PKEY() takes one more argument to express
the desired outermost structure for the output.
This also adds OSSL_ENCODER_CTX_prune_encoders(), which is used to
reduce the stack of encoders found according to criteria formed from
the combination of desired selection, output type and output
structure.
squash! ENCODER: Add output structure support for EVP_PKEY encoding
Replace the paragraph talking about OSSL_ENCODER_CTX_prune_encoders() with:
The encoding processor encoder_process() is enhanced with better
analysis of the stack of encoder implementations. To avoid having to
keep an on the side array of information, it uses recursion.
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/13167)
Diffstat (limited to 'doc')
-rw-r--r-- | doc/man3/OSSL_ENCODER_CTX_new_by_EVP_PKEY.pod | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/doc/man3/OSSL_ENCODER_CTX_new_by_EVP_PKEY.pod b/doc/man3/OSSL_ENCODER_CTX_new_by_EVP_PKEY.pod index f90d13d551..97ffaa56cd 100644 --- a/doc/man3/OSSL_ENCODER_CTX_new_by_EVP_PKEY.pod +++ b/doc/man3/OSSL_ENCODER_CTX_new_by_EVP_PKEY.pod @@ -15,8 +15,9 @@ OSSL_ENCODER_CTX_set_passphrase_ui #include <openssl/encoder.h> OSSL_ENCODER_CTX * - OSSL_ENCODER_CTX_new_by_EVP_PKEY(const EVP_PKEY *pkey, - const char *output_type, int selection, + OSSL_ENCODER_CTX_new_by_EVP_PKEY(const EVP_PKEY *pkey, int selection, + const char *output_type, + const char *output_structure, OSSL_LIB_CTX *libctx, const char *propquery); int OSSL_ENCODER_CTX_set_cipher(OSSL_ENCODER_CTX *ctx, @@ -48,7 +49,8 @@ L</Selections>. Internally, OSSL_ENCODER_CTX_new_by_EVP_PKEY() uses the names from the L<EVP_KEYMGMT(3)> implementation associated with I<pkey> to build a list of applicable encoder implementations that are used to process the I<pkey> into -the encoding named by I<output_type>. All these implementations are +the encoding named by I<output_type>, with the outermost structure named by +I<output_structure> if that's relevant. All these implementations are implicitly fetched using I<libctx> and I<propquery>. If no suitable encoder implementation is found, |