OpenBSD manual page server

Manual Page Search Parameters

EVP_PKEY_ASN1_GET_COUNT(3) Library Functions Manual EVP_PKEY_ASN1_GET_COUNT(3)

EVP_PKEY_asn1_get_count, EVP_PKEY_asn1_get0, EVP_PKEY_get0_asn1, EVP_PKEY_asn1_find, EVP_PKEY_asn1_find_str, EVP_PKEY_asn1_get0_infoenumerate public key ASN.1 methods

#include <openssl/evp.h>

int
EVP_PKEY_asn1_get_count(void);

const EVP_PKEY_ASN1_METHOD *
EVP_PKEY_asn1_get0(int idx);

const EVP_PKEY_ASN1_METHOD *
EVP_PKEY_get0_asn1(const EVP_PKEY *pkey);

const EVP_PKEY_ASN1_METHOD *
EVP_PKEY_asn1_find(ENGINE **pe, int type);

const EVP_PKEY_ASN1_METHOD *
EVP_PKEY_asn1_find_str(ENGINE **pe, const char *str, int len);

int
EVP_PKEY_asn1_get0_info(int *ppkey_id, int *pkey_base_id, int *ppkey_flags, const char **pinfo, const char **ppem_str, const EVP_PKEY_ASN1_METHOD *ameth);

() returns the number of public key ASN.1 methods available. It includes standard methods and any methods added by the application.

() returns the public key ASN.1 method idx. The value of idx must be in the range from zero to EVP_PKEY_asn1_get_count() - 1.

() looks up the method with NID type, which can be any of the values that EVP_PKEY_base_id(3) and EVP_PKEY_id(3) may return. If pe is not NULL, it first looks for an engine implementing a method for the NID type. If one is found, *pe is set to that engine and the method from that engine is returned instead.

() looks up the method with PEM type string str. The PEM type strings supported by default are listed in the EVP_PKEY_base_id(3) manual page. Just like EVP_PKEY_asn1_find(), if pe is not NULL, methods from engines are preferred.

() retrieves the public key ID as returned by EVP_PKEY_id(3), the base public key ID as returned by EVP_PKEY_base_id(3) (both NIDs), any flags, the method description, and the PEM type string associated with ameth.

(), EVP_PKEY_asn1_get0(), EVP_PKEY_asn1_find() and EVP_PKEY_asn1_find_str() are not thread safe, but as long as all EVP_PKEY_ASN1_METHOD objects are added before the application gets threaded, using them is safe. See EVP_PKEY_asn1_add0(3).

EVP_PKEY_asn1_get_count() returns the number of available public key methods.

EVP_PKEY_asn1_get0() returns a public key method or NULL if idx is out of range.

EVP_PKEY_get0_asn1() returns the public key method used by pkey.

EVP_PKEY_asn1_get0_info() returns 1 on success or 0 on failure.

EVP_PKEY_asn1_new(3), EVP_PKEY_base_id(3), EVP_PKEY_new(3)

These functions first appeared in OpenSSL 1.0.0 and have been available since OpenBSD 4.9.

June 24, 2020 OpenBSD-7.2