Latest update.
This commit is contained in:
+46
-16
@@ -7,11 +7,12 @@ EVP_MD_get_params, EVP_MD_gettable_params,
|
||||
EVP_MD_CTX_new, EVP_MD_CTX_reset, EVP_MD_CTX_free, EVP_MD_CTX_copy,
|
||||
EVP_MD_CTX_copy_ex, EVP_MD_CTX_ctrl,
|
||||
EVP_MD_CTX_set_params, EVP_MD_CTX_get_params,
|
||||
EVP_MD_settable_ctx_params, EVP_MD_gettable_ctx_params,
|
||||
EVP_MD_CTX_settable_params, EVP_MD_CTX_gettable_params,
|
||||
EVP_MD_CTX_set_flags, EVP_MD_CTX_clear_flags, EVP_MD_CTX_test_flags,
|
||||
EVP_Digest, EVP_DigestInit_ex, EVP_DigestInit, EVP_DigestUpdate,
|
||||
EVP_DigestFinal_ex, EVP_DigestFinalXOF, EVP_DigestFinal,
|
||||
EVP_MD_name, EVP_MD_provider,
|
||||
EVP_MD_is_a, EVP_MD_name, EVP_MD_number, EVP_MD_names_do_all, EVP_MD_provider,
|
||||
EVP_MD_type, EVP_MD_pkey_type, EVP_MD_size, EVP_MD_block_size, EVP_MD_flags,
|
||||
EVP_MD_CTX_name,
|
||||
EVP_MD_CTX_md, EVP_MD_CTX_type, EVP_MD_CTX_size, EVP_MD_CTX_block_size,
|
||||
@@ -19,7 +20,7 @@ EVP_MD_CTX_md_data, EVP_MD_CTX_update_fn, EVP_MD_CTX_set_update_fn,
|
||||
EVP_md_null,
|
||||
EVP_get_digestbyname, EVP_get_digestbynid, EVP_get_digestbyobj,
|
||||
EVP_MD_CTX_pkey_ctx, EVP_MD_CTX_set_pkey_ctx,
|
||||
EVP_MD_do_all_ex
|
||||
EVP_MD_do_all_provided
|
||||
- EVP digest routines
|
||||
|
||||
=head1 SYNOPSIS
|
||||
@@ -38,8 +39,10 @@ EVP_MD_do_all_ex
|
||||
void EVP_MD_CTX_ctrl(EVP_MD_CTX *ctx, int cmd, int p1, void* p2);
|
||||
int EVP_MD_CTX_get_params(EVP_MD_CTX *ctx, OSSL_PARAM params[]);
|
||||
int EVP_MD_CTX_set_params(EVP_MD_CTX *ctx, const OSSL_PARAM params[]);
|
||||
const OSSL_PARAM *EVP_MD_CTX_settable_params(const EVP_MD *digest);
|
||||
const OSSL_PARAM *EVP_MD_CTX_gettable_params(const EVP_MD *digest);
|
||||
const OSSL_PARAM *EVP_MD_settable_ctx_params(const EVP_MD *md);
|
||||
const OSSL_PARAM *EVP_MD_gettable_ctx_params(const EVP_MD *md);
|
||||
const OSSL_PARAM *EVP_MD_CTX_settable_params(EVP_MD_CTX *ctx);
|
||||
const OSSL_PARAM *EVP_MD_CTX_gettable_params(EVP_MD_CTX *ctx);
|
||||
void EVP_MD_CTX_set_flags(EVP_MD_CTX *ctx, int flags);
|
||||
void EVP_MD_CTX_clear_flags(EVP_MD_CTX *ctx, int flags);
|
||||
int EVP_MD_CTX_test_flags(const EVP_MD_CTX *ctx, int flags);
|
||||
@@ -59,6 +62,11 @@ EVP_MD_do_all_ex
|
||||
int EVP_MD_CTX_copy(EVP_MD_CTX *out, EVP_MD_CTX *in);
|
||||
|
||||
const char *EVP_MD_name(const EVP_MD *md);
|
||||
int EVP_MD_number(const EVP_MD *md);
|
||||
int EVP_MD_is_a(const EVP_MD *md, const char *name);
|
||||
void EVP_MD_names_do_all(const EVP_MD *md,
|
||||
void (*fn)(const char *name, void *data),
|
||||
void *data);
|
||||
const OSSL_PROVIDER *EVP_MD_provider(const EVP_MD *md);
|
||||
int EVP_MD_type(const EVP_MD *md);
|
||||
int EVP_MD_pkey_type(const EVP_MD *md);
|
||||
@@ -87,9 +95,9 @@ EVP_MD_do_all_ex
|
||||
EVP_PKEY_CTX *EVP_MD_CTX_pkey_ctx(const EVP_MD_CTX *ctx);
|
||||
void EVP_MD_CTX_set_pkey_ctx(EVP_MD_CTX *ctx, EVP_PKEY_CTX *pctx);
|
||||
|
||||
void EVP_MD_do_all_ex(OPENSSL_CTX *libctx,
|
||||
void (*fn)(EVP_MD *mac, void *arg),
|
||||
void *arg);
|
||||
void EVP_MD_do_all_provided(OPENSSL_CTX *libctx,
|
||||
void (*fn)(EVP_MD *mac, void *arg),
|
||||
void *arg);
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
@@ -158,12 +166,17 @@ See L</PARAMETERS> below for more information.
|
||||
Sets the list of B<params> into a MD context B<ctx>.
|
||||
See L</PARAMETERS> below for more information.
|
||||
|
||||
=item EVP_MD_gettable_params(), EVP_MD_CTX_gettable_params(),
|
||||
=item EVP_MD_gettable_params(), EVP_MD_gettable_ctx_params(),
|
||||
EVP_MD_settable_ctx_params(), EVP_MD_CTX_gettable_params(),
|
||||
EVP_MD_CTX_settable_params()
|
||||
|
||||
Get a B<OSSL_PARAM> array that describes the retrievable and settable
|
||||
parameters, i.e. parameters that can be used with EVP_MD_get_params(),
|
||||
EVP_MD_CTX_get_params() and EVP_MD_CTX_set_params(), respectively.
|
||||
parameters. EVP_MD_gettable_params() returns parameters that can be used with
|
||||
EVP_MD_get_params(). EVP_MD_gettable_ctx_params() and
|
||||
EVP_MD_CTX_gettable_params() return parameters that can be used with
|
||||
EVP_MD_CTX_get_params(). EVP_MD_settable_ctx_params() and
|
||||
EVP_MD_CTX_settable_params() return parameters that can be used with
|
||||
EVP_MD_CTX_set_params().
|
||||
See L<OSSL_PARAM(3)> for the use of B<OSSL_PARAM> as parameter descriptor.
|
||||
|
||||
=item EVP_MD_CTX_set_flags(), EVP_MD_CTX_clear_flags(), EVP_MD_CTX_test_flags()
|
||||
@@ -218,7 +231,7 @@ few bytes.
|
||||
=item EVP_DigestInit()
|
||||
|
||||
Behaves in the same way as EVP_DigestInit_ex() except it always uses the
|
||||
default digest implementation.
|
||||
default digest implementation and calls EVP_MD_CTX_reset().
|
||||
|
||||
=item EVP_DigestFinal()
|
||||
|
||||
@@ -230,10 +243,27 @@ automatically cleaned up.
|
||||
Similar to EVP_MD_CTX_copy_ex() except the destination B<out> does not have to
|
||||
be initialized.
|
||||
|
||||
=item EVP_MD_is_a()
|
||||
|
||||
Returns 1 if I<md> is an implementation of an algorithm that's
|
||||
identifiable with I<name>, otherwise 0.
|
||||
|
||||
=item EVP_MD_number()
|
||||
|
||||
Returns the internal dynamic number assigned to the I<md>. This is
|
||||
only useful with fetched B<EVP_MD>s.
|
||||
|
||||
=item EVP_MD_name(),
|
||||
EVP_MD_CTX_name()
|
||||
|
||||
Return the name of the given message digest.
|
||||
Return the name of the given message digest. For fetched message
|
||||
digests with multiple names, only one of them is returned; it's
|
||||
recommended to use EVP_MD_names_do_all() instead.
|
||||
|
||||
=item EVP_MD_names_do_all()
|
||||
|
||||
Traverses all names for the I<md>, and calls I<fn> with each name and
|
||||
I<data>. This is only useful with fetched B<EVP_MD>s.
|
||||
|
||||
=item EVP_MD_provider()
|
||||
|
||||
@@ -322,7 +352,7 @@ by the caller. A NULL B<pctx> pointer is also allowed to clear the B<EVP_PKEY_CT
|
||||
assigned to B<ctx>. In such case, freeing the cleared B<EVP_PKEY_CTX> or not
|
||||
depends on how the B<EVP_PKEY_CTX> is created.
|
||||
|
||||
=item EVP_MD_do_all_ex()
|
||||
=item EVP_MD_do_all_provided()
|
||||
|
||||
Traverses all messages digests implemented by all activated providers
|
||||
in the given library context I<libctx>, and for each of the implementations,
|
||||
@@ -339,13 +369,13 @@ EVP_MD_CTX_set_params() can be used with the following OSSL_PARAM keys:
|
||||
|
||||
=over 4
|
||||
|
||||
=item OSSL_PARAM_DIGEST_KEY_XOFLEN <unsigned integer>
|
||||
=item "xoflen" (B<OSSL_PARAM_DIGEST_KEY_XOFLEN>) <unsigned integer>
|
||||
|
||||
Sets the digest length for extendable output functions.
|
||||
It is used by the SHAKE algorithm and should not exceed what can be given
|
||||
using a B<size_t>.
|
||||
|
||||
=item OSSL_PARAM_DIGEST_KEY_PAD_TYPE <integer>
|
||||
=item "pad_type" (B<OSSL_PARAM_DIGEST_KEY_PAD_TYPE>) <integer>
|
||||
|
||||
Sets the pad type.
|
||||
It is used by the MDC2 algorithm.
|
||||
@@ -356,7 +386,7 @@ EVP_MD_CTX_get_params() can be used with the following OSSL_PARAM keys:
|
||||
|
||||
=over 4
|
||||
|
||||
=item OSSL_PARAM_DIGEST_KEY_MICALG <UTF8 string>.
|
||||
=item "micalg" (B<OSSL_PARAM_DIGEST_KEY_MICALG>) <UTF8 string>.
|
||||
|
||||
Gets the digest Message Integrity Check algorithm string. This is used when
|
||||
creating S/MIME multipart/signed messages, as specified in RFC 3851.
|
||||
|
||||
Reference in New Issue
Block a user