Sortix 1.1dev nightly manual
This manual documents Sortix 1.1dev nightly, a development build that has not been officially released. You can instead view this document in the latest official manual.
EVP_PKEY_CTX_NEW(3) | Library Functions Manual | EVP_PKEY_CTX_NEW(3) |
NAME
EVP_PKEY_CTX_new
,
EVP_PKEY_CTX_new_id
,
EVP_PKEY_CTX_dup
,
EVP_PKEY_CTX_free
—
public key algorithm context functions
SYNOPSIS
#include
<openssl/evp.h>
EVP_PKEY_CTX *
EVP_PKEY_CTX_new
(EVP_PKEY
*pkey, ENGINE *e);
EVP_PKEY_CTX *
EVP_PKEY_CTX_new_id
(int
id, ENGINE *e);
EVP_PKEY_CTX *
EVP_PKEY_CTX_dup
(EVP_PKEY_CTX
*ctx);
void
EVP_PKEY_CTX_free
(EVP_PKEY_CTX
*ctx);
DESCRIPTION
TheEVP_PKEY_CTX_new
() function allocates a
public key algorithm context using the algorithm specified in
pkey and using
e unless it is
NULL
. If
pkey is associated with an engine, that
engine is used and e is ignored.
The EVP_PKEY_CTX_new_id
() function allocates
a public key algorithm context using the algorithm specified by
id and using
e unless it is
NULL
. It is normally used when no
EVP_PKEY structure is associated with the
operations, for example during parameter generation of key generation for some
algorithms. The id argument can be any of the
constants that
EVP_PKEY_base_id(3)
and
EVP_PKEY_id(3)
may return.
EVP_PKEY_CTX_dup
() duplicates the context
ctx.
EVP_PKEY_CTX_free
() frees up the context
ctx. If ctx
is a NULL
pointer, no action occurs.
RETURN VALUES
EVP_PKEY_CTX_new
(),
EVP_PKEY_CTX_new_id
(), and
EVP_PKEY_CTX_dup
() return either the newly
allocated EVP_PKEY_CTX structure or
NULL
if an error occurred.
SEE ALSO
EVP_DigestSignInit(3), EVP_DigestVerifyInit(3), EVP_PKEY_base_id(3), EVP_PKEY_CTX_ctrl(3), EVP_PKEY_decrypt(3), EVP_PKEY_derive(3), EVP_PKEY_encrypt(3), EVP_PKEY_keygen(3), EVP_PKEY_meth_set_init(3), EVP_PKEY_new(3), EVP_PKEY_sign(3), EVP_PKEY_verify(3), EVP_PKEY_verify_recover(3), RSA_pkey_ctx_ctrl(3), X25519(3)HISTORY
These functions first appeared in OpenSSL 1.0.0 and have been available since OpenBSD 4.9.CAVEATS
The EVP_PKEY_CTX structure is an opaque public key algorithm context used by the OpenSSL high level public key API. Contexts MUST NOT be shared between threads. It is not permissible to use the same context simultaneously in two threads.June 24, 2020 | Debian |